BLOG September 14, 2020
Neo Monthly Report - August 2020
August was filled with milestones for the Neo ecosystem, led by the release of Neo3 Preview3 on August 7th. As the latest release on the road to Neo3 MainNet, Preview3 focused on protocol improvements and bug fixes, intended to help community teams currently updating existing development tools and infrastructure by providing a more stable platform to work on.
Updates included a new block synchronization mechanism, governance features, and smart contract system improvements.
Just one week later, the Neo2 MainNet was upgraded to run version 2.11.0 of Neo’s core client. The new version incorporated state root as a method for checking data consistency between different nodes, and allowed for its distribution via the P2P messages emitted -
This paved the way for the release of Poly Network, a new protocol alliance formed to facilitate cross-chain transactions between all participating blockchains without issuing a new token and with minimal overhead needed for integration.
The network currently supports cross-chain transactions between Neo, Ethereum, Ontology, and Cosmos, with the intention to add Bitcoin support in the near future. Switcheo, one of Poly Network’s founding members, was the first to make use of the protocol with the launch of TradeHub - it’s new stand alone order matching engine. Switcheo TradeHub is currently processing millions of dollars in cross chain transactions, and will also be the foundation for Switcheo’s upcoming derivatives exchange.
To top off a big month, Neo announced Flamingo Finance - a new Neo-based full-stack decentralized finance protocol. Under incubation by Neo Global Development, Flamingo is expected to begin rolling out in September 2020, with features such as a cross-chain asset gateway, automated market making (AMM)-based swaps, synthetic stablecoins, and AMM-based perpetual trading contracts.
Flamingo Finance is intended to fill the gaps of missing DeFi pieces within the Neo ecosystem and will feature its own Neo-based project token, FLM, which will be 100% distributed through contribution-based participation from the community.
On the announcement of Flamingo, Da Hongfei said, “This is just the beginning. As a community-driven open ecosystem, Neo welcomes all public chains, developers, and investors to build the smart economy of the future with us together.”
The full Neo Global Monthly Report for August can be found below:
With Neo3 Preview3 released on August 3rd, we took one step closer to shipping Neo3. The next step is to release Preview4, expected in October, which will likely be the release candidate version used for the official Neo3 TestNet. This version will add more features including the built-in oracle, economic model update, state root support and more. Several of these features have already been merged into the master branch, including some significant optimizations.
Unlike the previous releases, Preview3 was more stable and included the majority of protocol layer functions. In particular, two key changes were included in this release:
- We enhanced the smart contract module with a try-catch mechanism for exception handling and a contract callback feature. The Main method was also removed as a single point of entry.
- The foundations were laid down for the governance mechanism, responsible for managing the committee. This will be followed by the economic model in the next release, allowing community developers to prepare tools and infrastructure to enable this functionality for Neo3.
Governance & Economic Model
One of the most significant improvements for Neo3 is the governance & economic model. The system is designed to encourage NEO holders to participate in Neo's decentralization by actively participating in governance, achieved in part by providing stronger incentives for voters. Neo3 Preview3 included the code for the governance model (#1491), and branches for the economic model are now being merged, including the incentive for NEO holders (#1845), the incentive for committee members (#1847), and the incentive for voters (#1848). The next steps will involve collaborating with community development teams to bring the new governance features to NEO holders in a more user-friendly manner.
To prevent delaying the launch of the Neo3 MainNet, the decision was made to continue with state root distribution through P2P messages, however the relevant issue (#1526) will remain open for further discussion. If improved solutions are found, the approach can be changed after MainNet launch. The implementation was completed in the neox branch, however due to a logic dependency the PR (#1793) has been temporarily closed until optimizations for disk usage are applied to Neo2. The optimization logic will first be applied to Neo2.x, then included with #1793 for the master branch.
All pull requests related to state root functionality have been merged into the master-2.x branch, completing the implementation. Now live on MainNet, this feature is in use by the cross-chain interoperability protocol Poly Network, which launched on Aug 18, 2020 with Neo, Ontology, and Switcheo as founding members. The previously mentioned disk usage optimization is currently under development (#1878) and involves refactoring work for the Merkle Patricia Trie. An additional PR will also be submitted to enable a node to only store the current state.
Following many back and forth discussions regarding the asynchronous and synchronous oracle solutions (#1676) (#1738), the core developers elected to focus on the asynchronous solution. The final decision was made due to problems for oracle transactions in the mempool when using the synchronous approach. Work is now underway on an OracleService plugin for the neo-modules repository, which will be used for implementation and testing.
Several other key infrastructure improvements have been completed this month, including parallelized transaction verification (#1507). This was achieved by splitting the transaction verification into two parts, one state dependent and one state independent, and running the latter in parallel using a separate Akka actor pool. The result is a potential TPS improvement of up to 3 or 4 times.
Other noteworthy changes include the addition of an exception method for CreateContract (#1787), adding the ability for committee members to send high priority transactions (#1816), and allowed smart contract verification (#1800 and #628). The priority was also raised on Ping/Pong messages to assist with node synchronization (#1812), and a restriction to the nesting depth in Neo's try/catch logic was added to prevent nodes running out of memory (#365).
Infrastructure and Tools Development
This month, we have adjusted the format of the Infrastructure & Tools section. The shift to project-based milestones should make it easier to follow the progression of each community product as Neo's tooling continues to mature. Similar project types have been grouped together in the report for convenience.
Currently, most Neo development communities are primarily focused on developing Neo3 Preview3-compatible versions of their existing tools. The updates provide similar functionality to those found on Neo2, in some cases introducing new features enabled by platform improvements.
COZ announced its rebranding and published new tools. New releases include Dora, a new blockchain explorer, and the Boa compiler and Mamba SDK for Python developers.
Neo Tracker reported significant progress in preparing its tooling for Neo3 Preview3, expected to be completed in September.
AxLabs updated its neow3j SDK to be compatible with Neo3 Preview3, and extended the neow3j compiler with new Java language support including operators, if-else statements, and loops.
NGD Seattle completed support for time-travel debugging and exception breakpoints in its Smart Contract Debugger and Neo Express releases for Neo3 Preview3.
NEXT published new versions of its NeoLine wallet for Android and iOS, and added seven new languages to its NeoTube explorer as part of its internationalization efforts.
O3 Labs completed a brand update and released new versions of its wallet for desktop and mobile devices, adding NFTs and initial multi-chain support.
Neo SPCC prepared NeoFS for the v2.0 release of its API, SDK, and node software. New versions of NeoGo were released, providing full compatibility with Neo2 and Neo3 Preview3.
Red4Sec conducted a review of the Preview3 release, delivering a report with several vulnerabilities discovered, and began auditing the Preview4 code.
NeoResearch submitted a new academic paper with MILP proofs for dBFT consensus. The team is now working on an official spec for dBFT 3.0.
NEL completed an analysis of data retrieved from the Neo3 test network, a required step before it can update Neoray’s debugger function for Preview3.
NeoGo by Neo SPCC
August saw two new versions of the Go node released by Neo SPCC. The new v0.77.0 version provides full compatibility with 2.11.0, the current C# node version in use on the Neo2 MainNet. Likewise, the v0.91.0 node release provides a near-fully featured alternative to the core node client in use on the Neo3 Preview3 network. Recent benchmarking tests demonstrated the performance improvements achieved in this milestone release, with further improvements expected as Neo3 evolves.
Explorer & Monitor
Dora by COZ
Released this month, Dora is a new block explorer from COZ, intended to eventually replace NeoScan. The explorer currently supports the Neo2 MainNet and TestNet, with an expansion to its feature-set expected over the coming months.
NeoTube by NEXT
Following its earlier roadmap, NEXT focused efforts on internationalization. Alongside various backend optimizations, the NeoTube block explorer now offers support for 9 languages: simplified Chinese, English, Korean, Japanese, German, Spanish, French, Italian, and Russian.
NEO Tracker by NEO Tracker
In August, the team resolved an issue that was causing downtime for the block explorer. Other fixes corrected errors with how some NEP-5 tokens were being displayed.
Smart Contract Compiler
Boa by COZ
Released this month for Neo3 preview3, Boa is a smart contract compiler designed to let users write contracts using Pythonic syntax. Its first release includes initial documentation, a NEP5 template, compatibility with the Neo Blockchain Toolkit’s contract debugger, alongside various examples and tests to demonstrate currently available functionality.
neow3j by AxLabs
The neow3j v3.2.0 release adds key pieces of functionality to its compiler, opening up new areas of the Java language to developers of smart contracts. New functionality includes all operators (arithmetic, relational, bitwise, logical, assignment), if-else statements, and loops.
NeoGo by Neo SPCC
Alongside node improvements, Neo SPCC also updated its smart contract compiler for Go developers. Go smart contract examples and workshops are now brought in line with Preview3. The changes were accompanied with improvements to the included contract compiler.
Mamba by COZ
Another new release, Mamba is a Python SDK which simplifies interaction with the Neo3 Preview3 blockchain. The preliminary version adds features required for initial Neo3 integration in the lead up to the MainNet launch and includes the new universal Neo3 VM written in C++ that was also developed by COZ for use in the ecosystem.
neow3j by AxLabs
Alongside its work on the compiler, the AxLabs team spent August bringing its Java SDK up to date with Neo3 Preview3, now completed with release v3.2.0. Additionally, the update includes a new Gradle plugin to simplify the compilation of a given smart contract written in Java.
Smart Contract & dApp framework
NEO•ONE by NEO Tracker
Neo Blockchain Toolkit by NGD Seattle
In August, NGD Seattle released updated versions of two tools included in the toolkit, the Smart Contract Debugger and Neo Express. The new versions bring complete compatibility with Neo3 Preview3, including new features such as the recent addition of try/catch exception handling support for contracts.
The debugger update provides the first true implementation of time-travel debugging support. Allow developers to step backwards or forwards through code in order to detect errors, this feature is powered by contract execution traces. These traces can now be captured using Neo Express, however in the future plugins will be made available for capturing traces on TestNet, MainNet, or any other Neo network. Step-by-step instructions have been provided alongside the release to show developers how to use the new functionality.
Neon Wallet Mobile by COZ
Recently announced by COZ, work has been underway on bringing the popular Neon desktop wallet to mobile devices. The wallet will be available on iOS and Android devices and is currently undergoing internal testing. Beta signups are available at wakeup.neon.coz.io.
NeoLine by NEXT
In August, NEXT released new versions of the NeoLine wallet for Android (v2.5.1) and iOS (2.5.4), fixing various bugs and implementing optimizations. The team has also begun work on a new version of its Chrome extension and reported backend improvements to the API structure and network.
O3 Wallet by O3 Labs
In August, the team released new versions of the O3 Wallet for mobile and desktop users, adding support for non-fungible tokens and multi-chain assets including Bitcoin and Ethereum. The update also includes optimization of the dAPI, and reintroduces the Buy NEO feature. The next series of improvements will enable the management of cross-chain assets on the Neo3 TestNet.
The flagship product by Neo SPCC, in August the team made preparations for the v2.0 release of NeoFS. This new version will affect each component, including the Go SDK, node software, and API. The API update is noted as a final redesign to prime it for the Neo3 TestNet, also establishing the foundation for future backward compatibility.
Further, the team also completed work on its Amazon S3 gateway, allowing users to access NeoFS through S3, and refactored the existing HTTP gateway. Work is now underway on basic components of the NeoFS content delivery network (CDN), including an edge manager, task coordination, and cache invalidator.
dBFT 3.0 specification by NeoResearch
Following recent academic publications on the history and evolution of dBFT 3.0, NeoResearch began working on an official specification. The spec will provide practical instruction that enables developers to completely recreate the consensus mechanism using any programming language. The first draft of the document has been completed and is undergoing final revisions.
Visual Token Designer by NGD Seattle
With its milestone v1.0 release adding full support for the Token Taxonomy Framework, NGD Seattle's Visual Token Designer is the first broadly available toolset with full support for InterWork Alliance standards.
Auditing by Red4Sec
During August, the team carried out a code audit of the Neo3 Preview3 version, identifying several vulnerabilities that are currently being worked on or have been fixed. After submitting its report, Red4Sec began its review of Preview4 changes, a process that it will repeat to cover all Neo3 source code in the lead up to its release.
Marketing and Operations
In August, Neo continued its efforts towards its strategic position as the “Digital Asset Protocol” of the smart economy.
Heterogenous blockchain network interoperability is no longer a theory on paper. The launch of Poly Network equipped Neo with the capability to migrate assets from major networks such as Bitcoin, Ethereum, COSMOS SDK-based blockchains, and Ontology with low friction. The Poly Network open alliance is welcoming partners and networks to join the effort to further expand the reach.
On the adoption front, Neo announced a major initiative to support the open-source project Rosetta, started by Coinbase, which lays the foundation of seamless asset access and management into Rosetta compatible digital asset wallets. This work complements the deepening collaboration effort with organizations such as the BSN network and IWA.
In his recent article: “Up the DeFi Game: Introducing Flamingo”, Hongfei emphasized the importance of a robust DeFi infrastructure to the Neo ecosystem, and announced the launch of Flamingo, an interoperable full-stack DeFi protocol on Neo. Flamingo will accelerate DeFi adoption by introducing our last few missing pieces: a cross chain asset gateway, an AMM-based on-chain liquidity provision mechanism, and an algorithm based collateralized stablecoin. The Flamingo litepaper and further details will be released this week to all community members. The project is expected to roll out in phases starting in September.
- Yuan Gao, NGD Marketing Director
- August 5th, Neo attended the Great Bay Area Blockchain Week in Shenzhen, China hosted by Cointelegraph CN. Da Hongfei delivered an opening speech on Neo3, the current challenges of blockchain mainstream adoption, and missing elements necessary for DeFi in the Neo ecosystem. NGD EcoGrowth director, John Wang also participated in a panel discussion about how public blockchains have evolved over time. In addition, Neo had a booth that attendees could visit.
- August 10th - 13th, Neo and ChainNews jointly launched the first of a three-season “Neo Summer Challenge” Q&A competition via a WeChat mini-program. Top-ranked participants and lucky draw winners received NEO tokens and Neo merchandise.
- August 11th, Da Hongfei attended the POW’ER Blockchain Technology and Application Summit in Shanghai, China hosted by Huoxing Finance, and delivered a keynote speech titled “The Re-evolution of Public Blockchains.”
- August 11th, Gao Yuan, NGD Marketing Director joined Neo News Today’s Byzant series and shared his thoughts on the emergence of decentralized finance, it’s underlying components, and how to bring it to the Neo blockchain.
- August 17th, Head of NGD Seattle, John deVadoss, published an article on CoinTelegraph titled Blockchain Interoperability: The Big Picture to discuss how a unified language for digital assets would provide the foundation for our decentralized economic and social infrastructure.
- August 18th, Neo launched the Poly Network heterogeneous interoperability protocol as a founding member, together with Ontology and Switcheo Network.
- August 21st, The Neo Foundation released its financial report for 2020 H1.
- August 25th, Neo published a walkthrough guide for developing on Neo using the newly launched BSN Global Portal.
- August 26th, John Wang joined Asia Public Blockchain Week online and shared about the latest developments and future directions of the Neo ecosystem.
- August 27 - 28th, Neo hosted an AMA on Reddit with He Yifan, CEO of Red Date Technology and managing director of BSN Development Association, and John Wang to answer community questions regarding the recent BSN partnership and future plans.
- August 27th, Da Hongfei officially unveiled Flamingo Finance - an interoperable full-stack DeFi protocol on the Neo blockchain. The Flamingo Finance website also went live with a one-pager highlighting project goals and a product timeline. The first batch product release is expected in mid-September.
- August 28th, Li Chen, senior developer of NGD, and Tan Yuan, the person in charge of Poly Network development, joined Neo Live on WeChat to discuss Poly Network and how Neo could benefit from the heterogeneous interoperability protocol.
- August 30th, John deVadoss attended REIMAGINE 2020 V2.0 and talked about Neo’s recent initiatives, such as the launch of IWA and interoperability.
The Neo ecosystem took many steps forward in August, led by the release of the Switcheo TradeHub order matching engine which minted its MainNet genesis block on August 13th. Switcheo TradeHub uses the Poly Network to execute cross chain transactions and currently has 17 validator nodes, run by organizations such as the Neo Foundation, Houbi, IOSG, O3 Labs, and Neo Economy. Moving forward, TradeHub will also be a major component of Switcheo's upcoming Demex derivatives exchange.
Another milestone was the relaunch of the O3 Wallet from O3 Labs. After being removed from the iOS App Store earlier in the year over a trademark dispute, the O3 Wallet has returned with a revamped design and new features. It is also available on the Play Store for Android devices, and O3 Labs is encouraging users to submit their feedback in order to earn GAS rewards.
On the integration front, Neo announced it is developing plugins for the Coinbase-led Rosetta project, which aims to simplify the integration of blockchains with the wallets, websites, and exchanges that support them. Moonlight also exposed its developer portal which allows applications to integrate with its Vivid DSSI.
- 13th August, Switcheo TradeHub officially minted its MainNet genesis block. In the week that followed, Switcheo opened SWTH token staking, allowing token holders to delegate voting power to TradeHub validators such as Neo Foundation, Neo EcoFund, Binance, Huobi, NGC, IOSG, Zilliqa, and more.
- 13th August, Moonlight exposed its Vivid developer portal, which allows third-party applications to integrate the Vivid DSSI.
- 28th August, Neo announced integration with Rosetta, an open-source project led by Coinbase that aims to simplify the integration of blockchains with the wallets, websites, and exchanges that support them. Neo will be providing development and data support for Rosetta.
- 30th August, Guardian Circle announced Saepio, a hotel housekeeper panic button service to address the hotel employee safety industry valued at approximately US $5 billion. By making “a few key modifications” to its existing platform, Guardian plans to offer Saepio at 1/6th the cost of current market competition.
- 31st August, O3 Labs released its revamped O3 Wallet for public download, now available on both the Apple App Store for desktop and mobile, and the Google Play Store. The revamped O3 Wallet features a redesigned interface and an optimized user experience.
- Blockchain Cuties improved its gameplay with redesigned functions to encourage user engagement. In addition, the game incorporated special new NFT elements into items and currently has more than 10,000 items on Neo.