Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Releases: paritytech/substrate

Substrate v2.0.1 – "unbreak my build"

11 Jan 10:26
2cd2096
Compare
Choose a tag to compare

Substrate v2.0.0 – two dot 😮

22 Sep 17:52
v2.0.0
a200cdb
Compare
Choose a tag to compare

Latest Changes (since 2.0.0-rc6)

Runtime

  • Rename ModuleToIndex to PalletRuntimeSetup (#7148)
  • Bounties (#5715)
  • pallet-collective: allow customized default vote (#6984)
  • add instantiable support for treasury pallet (#7058)
  • frame/authority-discovery: Have authorities() return both current and next (#6788)
  • add generated weight info for pallet-collective (#6789)
  • Support Staking Payout to Any Account (#6832)
  • Time-delay proxies (#6770)
  • Refcounts are now u32 (#7164)

Client

  • Rename inspect-key to inspect (#7160)
  • Send import notification always for re-orgs (#7118)
  • Allow remotes to not open a legacy substream (#7075)
  • Fix storage::read (#7084)
  • Support hex encoded secret key for --node-key (#7052)
  • Update the service tasks Grafana dashboard (#7038)
  • manual seal is now consensus agnostic (#7010)
  • Move subcommands from sc-cli to nodes (#6948)
  • Implement request-responses protocols (#6634)
  • fix bench db wipe (#6965)
  • Fix benchmark read/write key tracker for keys in child storages. (#6905)
  • *: Update to next libp2p version 0.24.0 (#6891)

API

  • grandpa-rpc: use FinalityProofProvider to check finality for rpc (#6215)
  • pow: replace the thread-base mining loop with a future-based mining worker (#7060)
  • Tracing for wasm with bridging to native (#6916)
  • Frame-support storage: make iterations and translate consistent (#5470)
  • pow: support uniform tie breaking in fork choice (#7073)
  • Make decoding of compact<perthing> saturating instead of invalid (#7062)
  • Set reserved nodes with offchain worker. (#6996)
  • client/*: Treat protocol name as str and not [u8] (#6967)
  • Add a LightSyncState field to the chain spec (#6894)
  • *: Update to next libp2p version 0.24.0 (#6891)

Runtime Migrations

  • Time-delay proxies (#6770)
  • Refcounts are now u32 (#7164)

Substrate v2.0.0-rc6 – Rock Hyrax

20 Aug 17:42
v2.0.0-rc6
be8bb18
Compare
Choose a tag to compare

Runtime

  • Custom Codec Implenetation for NPoS Election (#6720)
  • Successful note_imminent_preimage is free (#6793)
  • pallet-democracy use of weightinfo (#6783)
  • Update Balances Pallet to use WeightInfo (#6610)
  • pallet-evm: add builtin support for the four basic Ethereum precompiles (#6743)
  • Allow PostDispatchInfo to disable fees (#6749)
  • pallet-evm: add support for tuple-based precompile declarations (#6681)
  • grandpa: allow noting that the set has stalled (#6725)

Client

  • Merge Subkey into sc-cli (#4954)
  • RpcHandlers Refactorings (#6846)
  • client/authority-discovery: Introduce AuthorityDiscoveryService (#6760)
  • Implement tracing::Event handling & parent_id for spans and events (#6672)
  • Move to upstream wasmtime, refactor globals snapshot (#6759)
  • Revalidate transactions only on latest best block (#6824)
  • Allow task manager to have children (#6771)
  • client/network: Expose DHT query duration to Prometheus (#6784)
  • client/network: Add peers to DHT only if protocols match (#6549)
  • Name all the tasks! (#6726)
  • Child nodes can be handled by adding a child TaskManager to the parent's TaskManager (#6771)

API

  • pow: add access to pre-digest for algorithm verifiers (#6900)
  • babe, aura, pow: only call check_inherents if authoring version is compatible (#6862)
  • Implement 'transactional' annotation for runtime functions. (#6763)
  • seal: Change prefix and module name from "ext_" to "seal_" for contract callable functions (#6798)
  • Add Subscription RPC for Grandpa Finality (#5732)
  • seal: Fix and improve error reporting (#6773)
  • Allow blacklisting blocks from being finalized again after block revert (#6301)
  • BABE slot and epoch event notifications (#6563)
  • Add memory-tracker feature to sp-trie to fix wasm panic (#6745)

Substrate v2.0.0-rc5+2 - River Dolphin

24 Jul 19:15
v2.0.0-rc5+2
Compare
Choose a tag to compare

Changelog

2.0.0-rc4 -> 2.0.0-rc5

Runtime

  • Support using system storage directly for EVM balance and nonce (#6659)
  • Properly filter out duplicate voters in elections. (#6693)
  • Treasury burning can be directed (#6671)
  • identity: Don't let subs be re-registered (#6667)
  • Regression test to ensure we don't break deterministic builds in wasm (#6597)
  • allow to specify schedule time as a relative value (#6578)
  • Make signature batching use specialized methods (#6616)
  • Rename CheckEra to CheckMortality (#6619)
  • Add WeightInfo to all pallets with benchmarks. (#6575)
  • Don't require module name in inherents (#6576)
  • pallet-evm: return Ok(()) when EVM execution fails (#6493)
  • Make the encoded-Call Vec explicitly so in metadata (#6566)
  • Allow specify schedule dispatch origin (#6387)
  • pallet-evm: customizable chain id (#6537)
  • Refactor as_sub to make things clearer. (#6503)

Client

  • Update wasmtime to (almost) lastest master (#6662)
  • Update to latest sysinfo prevents leaking fd-handlers (#6708)
  • Tracing values (#6679)
  • Graceful shutdown for the task manager (#6654)
  • Update substrate-networking Grafana dashboard (#6649)
  • *: Update to libp2p v0.21.1 (#6559)
  • Send Status message on all newly-opened legacy substreams (#6593)
  • babe: report equivocations (#6362)
  • Support synching of blocks that are not new_best (#6508)
  • Remove the service, replacing it with a struct of individual chain components (#6352)
  • Fix tx-pool returning the same transaction multiple times (#6535)

API

  • Better handling of stable-only build (#6569)
  • Remove the service builder (#6557)
  • seal: Prevent contracts from going below subsistence (#6623)
  • seal: Rework contracts API (#6573)
  • Make evm errors public (#6598)
  • Add log rotation (#6564)
  • decl_module! macro: use 'frame_system' instead of system as default ident (#6500)
  • Restrict Protected to some heap types. (#6471)

Substrate v2.0.0-rc4 – Rhinoceros

25 Jun 21:25
v2.0.0-rc4
00768a1
Compare
Choose a tag to compare

Changelog

2.0.0-rc3 -> 2.0.0-rc4

Runtime

  • Staking Payout Creates Controller (#6496)
  • pallet-scheduler: Check that when is not in the past (#6480)
  • Fix sp-api handling of multiple arguments (#6484)
  • Fix issues with Operational transactions validity and prioritization. (#6435)
  • pallet-atomic-swap: generialized swap action (#6421)
  • Avoid multisig reentrancy (#6445)
  • Root origin use no filter by default. Scheduler and Democracy dispatch without asserting BaseCallFilter (#6408)
  • Scale and increase validator count (#6417)
  • Pallet: Atomic Swap (#6349)
  • Restrict remove_proxies (#6383)
  • Stored call in multisig (#6319)
  • Allow Sudo to do anything (#6375)
  • vesting: Force Vested Transfer (#6368)
  • Add events for balance reserve and unreserve functions (#6330)
  • Introduce frozen indices. (#6307)

Client

  • client/network/service: Add primary dimension to connection metrics (#6472)
  • Fix Babe secondary plain slots claiming (#6451)
  • add network propagated metrics (#6438)
  • client/authority-discovery: Compare PeerIds and not Multihashes (#6414)
  • Update sync chain info on own block import (#6424)
  • Remove --legacy-network-protocol CLI flag (#6411)
  • Runtime interface to add support for tracing from wasm (#6381)
  • Remove penalty on duplicate Status message (#6377)
  • Fix the broken weight multiplier update function (#6334)
  • client/authority-discovery: Don't add own address to priority group (#6370)
  • Split the service initialisation up into seperate functions (#6332)
  • Fix transaction pool event sending (#6341)
  • Add a [prefix]_process_start_time_seconds metric (#6315)
  • new crate sc-light (#6235)
  • Allow adding a prefix to the informant (#6174)

API

  • seal: Remove ext_dispatch_call and ext_get_runtime_storage (#6464)
  • seal: Refactor ext_gas_price (#6478)
  • Implement nested storage transactions (#6269)
  • Allow empty values in the storage (#6364)
  • add system_dryRun (#6300)
  • Introduce in-origin filtering (#6318)
  • add extend_lock for StorageLock (#6323)
  • Deprecate FunctionOf and remove its users (#6340)
  • transaction-pool: expose blocking api for tx submission (#6325)

Substrate v2.0.0-rc3 – Red Panda

08 Jun 21:23
v2.0.0-rc3
Compare
Choose a tag to compare
Pre-release

Changelog

2.0.0-rc1 -> 2.0.0-rc3

Runtime

  • Introduce stacked filtering (#6273)
  • Allow "anonymous" proxied accounts (#6236)
  • Allow over-weight collective proposals to be closed (#6163)
  • Fix Election when ForceNone V1 (#6166)

Client

  • Make transaction pool prune transactions only of canonical blocks (#6123)
  • Rename all the election operations (#6245)
  • Sentry nodes and validator nodes also imply reserved (#6251)
  • Fix peerset not filtering incoming connections in reserved-only (#6249)
  • Use Subscription Manager from jsonrpc-pubsub (#6208)
  • Add a Substrate networking Grafana dashboard template (#6171)
  • Add subkey inspect-node-key (#6153)

Substrate v2.0.0-rc1 – Rabbit

25 May 19:12
v2.0.0-rc1
Compare
Choose a tag to compare
Pre-release

Changelog

2.0.0-alpha.8 -> 2.0.0-rc1

Runtime

  • Allow operational recovery path if on_initialize use fullblock. (#6089)
  • Maximum extrinsic weight limit (#6067)

Client

  • Add JSON format to import blocks and set it as default (#5816)
  • Upgrade to libp2p v0.19 - Changes the default PeerId representation (#6064)

v2.0.0-alpha.8 – Anteater

15 May 20:01
v2.0.0-alpha.8
7e9a2ae
Compare
Choose a tag to compare

2.0.0-alpha.7 -> 2.0.0-alpha.8

License Changed
From this release forward, the code is released under a new – more relaxed – license scheme: Client (sc-*) is released under "GPL 3.0 or newer with the Classpath Exception", while primitives, FRAME, the pallets, utils and test-utils are released under "Apache 2.0". More details in the Relax licensing scheme PR.

Runtime

  • Democracy weight (#5828)
  • Make Digest support StorageAppend (#5922)
  • Added RuntimePublic for ecdsa public key. (#6029)
  • Benchmarks for elections-phragmen pallet (#5845)

Client

  • Meter block import results via prometheus (#6025)
  • Monitor transactions rejected from the pool as invalid (#5992)
  • client/network: Remove default Kademlia DHT in favor of per protocol DHT (#5993)
  • Allow passing multiple --log CLI options (#5982)
  • client: Replace unsafe_rpc_expose with an RpcMethods enum (#5729)

v2.0.0-alpha.7 – Angelfish

05 May 18:57
v2.0.0-alpha.7
Compare
Choose a tag to compare
Pre-release

2.0.0-alpha.6 -> 2.0.0-alpha.7

Runtime

  • Use storage::append in the implementation of the storage types (#5889)
  • pallet-sudo: Store DispatchResult in Sudid event (#5804)
  • Enable Offchain Equalise (#5683)
  • Add support for custom runtime upgrade logic (#5782)
  • Require fn token in decl_storage get (#5717)
  • Child trie api changes BREAKING (#4857)
  • Pass max-total to RewardRemainder on end_era (#5697)
  • Transaction versioning in the RuntimeVersion (#5582)
  • emit TipClosed event on success tip payout (#5656)

Client

  • Adds export-state subcommand (#5842)
  • Drop ClientProvider (#5823)
  • Move spawning tasks from thread pools to Service's TaskManager for block importing (#5647)
  • Reputation penalty for sending empty block response (#5814)
  • Move sc-client into sc-service (#5502)
  • Use new block requests protocol (#5760)
  • Fix leak in stream notifications (#5739)
  • network: Only insert global addresses into the DHT. (#5735)
  • enum Pays for PaysFee (#5733)
  • Migrate away from SimpleDispatchInfo (#5686)
  • Child trie api changes BREAKING (#4857)
  • subkey: compute and inspect a moduleid (#5676)
  • Listen on ipv6 by default as well (#5677)
  • Adjustments to Kademlia-related metrics (#5660)
  • client/authority-discovery: Allow to be run by sentry node (#5568)
  • Add alternative RPC methods to system_networkState (#5643)
  • Several tweaks to networking Prometheus metrics (#5636)
  • Use a Kademlia instance per ProtocolId. (#5045)
  • Report tasks metrics to Prometheus (#5619)

API

  • Child trie api changes BREAKING (#4857)
  • Pass max-total to RewardRemainder on end_era (#5697)
  • Implement iter for doublemap (#5504)

v2.0.0-alpha.6 – Alligator

14 Apr 19:52
v2.0.0-alpha.6
67f354f
Compare
Choose a tag to compare
Pre-release

Changelog 2.0.0-alpha.5 -> 2.0.0-alpha.6

Runtime

  • Unsigned Validation best practices (#5563)
  • Generate Unit Tests for Benchmarks (#5527)
  • Mandate weight annotation (#5357)
  • Make Staking pallet using a proper Time module. (#4662)
  • Pass transaction source to validate_transaction (#5366)
  • on_initialize return weight consumed and default cost to default DispatchInfo instead of zero (#5382)

Client

  • Add new RPC method to get the chain type (#5576)
  • Reuse wasmtime instances, the PR (#5567)
  • Prometheus Metrics: Turn notifications_total counter into notifications_sizes histogram (#5535)
  • Make verbosity level mandatory with telemetry opt (#5057)
  • Additional Metrics collected and exposed via prometheus (#5414)
  • Switch to new light client protocol (#5472)
  • client/finality-grandpa: Instrument until-imported queue (#5438)
  • Batch benchmarks together with * notation. (#5436)
  • src/service/src/builder: Fix memory metric exposed in bytes not KiB (#5459)
  • Make transactions and block announces use notifications substre… (#5360)
  • Adds state_queryStorageAt (#5362)
  • Offchain Phragmén BREAKING. (#4517)
  • sc_rpc::system::SystemInfo.impl_version now returns the full version (2.0.0-alpha.2-b950f731c-x86_64-linux-gnu) instead of the short version (1.0.0) (#5271)

API

  • Unsigned Validation best practices (#5563)
  • Split the Roles in three types (#5520)
  • Pass transaction source to validate_transaction (#5366)
  • on_initialize return weight consumed and default cost to default DispatchInfo instead of zero (#5382)