Engineering Weekly Update - 2021-11-30

Brief Summary

  • We released sharding on Mainnet!
  • If you use NFT contract, please update them to use NFT events standard. Otherwise Explorer/Indexer will not surface all data about your contract;
  • We kicked-off development of TheStreamer and TheAnalytics products that will allow subscribing to complex triggers and execute complex queries on our on-chain data;
  • Simonas Kazlauskas joined our team working on Wasm VM!
  • Nearcore v1.23.0 will be released on Mainnet on Dec 6, 2021;
  • Developer Console is planning public beta release on 2nd week of December;
  • We patched Rust RocksDB to make debug-only tools read-only;
  • We now have PoC of JS SDK with a basic example!
  • RPC as a service is shipped for Mainnet and Testnet;
  • FastRPC is rolled out on Testnet;


  • Node Interfaces team optimized explorer so that it can display transaction count for accounts with >1M incoming/outgoing transactions;
  • Node Interfaces made some progress on documenting Rosetta API (one and two);
  • Node Interfaces made lots of improvements to near-jsonrpc-client-rs;
  • Node Interfaces started working on improving DevX and UX of lockup contracts;
  • @frol has given an workshop on writing Rust contracts (in Russian), here is the recording;
  • Node Interfaces proposed new near-cli-rs command layout. Comment if you care!
  • Contract Runtime fixed some important safety issues in the VM, including gas counting overflow, O(n^2) attack, and limiting number of functions in a contract;
  • Contract Runtime has updated our fork of Wasmer to use VecAssembler for significantly faster compilation;
  • Developer Console team added RPC API key support into: RPC service, near-api-js, and near-api-json-client-rs;
  • Developer Console is now surfacing data from Explorer and on RPC usage;
  • Developer Console also now allows login with NEAR;
  • Core Tools team is preparing for the release of Sandbox Workspace!
  • Core Tools ave also added extension framework and Validator extension to near-cli-rs;
  • Node Experience team added monitoring of chunk delays;
  • Frontier Tools team had to switch from Duktape to QuickJS for JS SDK, because Duktape does not have big num support;
  • Core team added storage benchmark to debug performance inconsistencies;
  • Core team fixed lots of tests and bugs for Nayduck, block production, chunk requesting, view client, chunk storage;
  • Core team refactored lots of network code (~20 PRs);

Full Reports


RPC as a service architecture overview: