This month, Neo core developers were actively working on Oracles, the NeoGUI, and the Neo blockchain itself. Additionally, test cases were documented in November to help developers to test and fix PRs, and work started on replacing Travis with the new GitHub actions system.
NeoGUI for Neo 3
A new user interface is being designed for Neo GUI. The technology used for the implementation is still under discussion, however following tests and discussions on the Github, the proposed solution should be built using Electron.
Coding the Oracles
The team has now started to code the Oracle functionality. Efforts have been led by core developers Shargon and Belane, who have divided this feature into smaller tasks to make the implementation process more efficient.
NeoFS through Oracles
A new URL scheme is being added to enable NeoFS content to be accessed using the Oracle API.
Documented tests
Test cases are being created and saved on an external tool. These tests are designed to ensure PRs are properly evaluated, and to help developers to identify and fix problems faster. Test cases were created for 23 pull requests.
Travis is being replaced
NeoVM and NeoCLI are the first repositories to replace Travis with GitHub Actions. This change is planned to occur in all projects using Travis.
Primitive and Compound Type
Two new classes were added to the NeoVM. These classes are used to differentiate the primitive types boolean, integers, and byte arrays from compound types, maps, and arrays.
Adoption of .Net Standard 2.1 and .Net Core 3.0
The Neo target framework was updated to target .NET Standard 2.1 and refactored to use the Span<T> class. Dependent applications were also updated to use .NET Core 3.0.
Replacing LINQ with helper methods
Tests made by core developer, Shargon, indicated that LINQ had performance impacts on Neo’s code. Replacing LINQ in the ECDSA and UInt classes demonstrated a performance increase of 216%.