Try   HackMD

Substrate change log since v1.0

Last updated: 28/01/2020

  • Breaking changes:
    • Enable CORS checks: #2248 #2291
    • Constify storage values and type parameter: #2565 #2883 #2975 #3112 #3093 #3191
    • Light client friendly events: #2491
    • New sessions module & remove consensus module: #2802
    • Transaction Dispatch Info / Weight: #2799 #4124
    • Implement a proper generic resolution in decl_storage!: #2913
    • Make privileged functions explicitly use origin: #3045
    • Remove ./scripts/build.sh: #2868 #3057 #3195
    • Extensible transactions (and tips): #3102 #3229
    • Signed transactions now have affinity with runtime versions: #3430
    • Use BABE instead of AuRa in node: #3171 #3211
    • Include Genesis hash in extrinsic v3 format: #3286
    • Refactor key management: #3296
    • Custom runtime module errors: #3433 #3752 #4449
    • Service factory refactor: #3382
    • Simplify deposit_event declaration in decl_module: #3506
    • srml_support storage reorganize: #3344
    • srml-contract: Rename Contract::create to instantiate: #3645 #3649
    • Change decl_storage! to forbid default value for Option types: #3682
    • Transaction-Payment module: #3816
    • Remove support for secp256k1 for network keys: #3897 #4234
    • Substrate runtime interface 2.0: #4057
    • Reorganising the repository - SRML to FRAME: #4074 #4161 #4182 #4184 #4223
    • Implement all storage after prefix: #4227
    • Introduce OnReapAccount: #4585
    • Modify doublemap syntax: #4576
    • Pallet session new API: #4609
    • Remove default hasher: #4739
    • Refactor the balances module: #4649
    • Rename StorageMap::exists to contains_key: #4847
    • Per-things trait: #4904
    • Composite accounts: #4820
    • Remove default expansion from construct_runtime!: #4937
  • Improvements:
    • Improved economic model implementation: #2912 #2854 #2882
    • Use milliseconds for timestamp resolution: #3210
    • Update to schnorrkel 0.8.0: #3267
    • Use optimized append and len storage methods in SRML: #3071
    • Change decl_storage! to import the storage traits automatically: #3674
    • Use EncodeLike for storages traits: #3676
    • Add SECP256k1/ECDSA support for transaction signing: #3861
    • Add the code for compiling node-cli for WASM-browser: #3974
    • Typed chain state queries over rpc: #4079
    • Weight annotation for block hooks: #4058
    • Publish the dispatch info in extrinsic events: #4148
    • Support custom runtime interfaces in native executor: #4129
    • Add instrumentation, with performance profiling capability: #4132
    • Economic fixes for democracy module: #4256
    • Add linear back-off for aura slot workers: #4293
    • Impl iter_prefix on DoubleMap: #4388
    • Return early when fees/balances/values are zero: #4628
    • --dev activates --execution native and build wasm in release mode by default: #4683
    • Support u128/i128 in runtime interface: #4703
    • Expose information about the extrinsic in the metadata: #4774
    • Allow to distinguish out of gas from other traps: #4883
    • Adds fork-awareness and finalization notifications to transaction pool watchers: #4740
  • New major features:
    • Offline worker
    • BABE consensus
    • babe: Introduce secondary slots (Aurababeous): #3380
    • Polite Grandpa
    • Contract state rent system: #2230 #2502
    • Inherent digests: #2466
    • Weight annotation: #3157
    • Submit (& sign) extrinsics from the runtime: #3514
    • Consensus: Proof of Work: #3473
    • sr-arithmetic: #3743 #3456 #3799
    • ChainSpec extensions: #3692
    • Runtime logging: #3821
    • Integrate Wasmtime for runtime execution: #3869 #4542
    • Substrate EVM #3927 #4261
    • Grafana integration: #3913
    • Introduce prefixed storage with enumeration: #4185
    • Manual Seal block production engine: #4143
  • New minor features:
    • CLI --ws-max-connections: #2632
    • CLI --grandpa-voter: #3018
    • CLI --execution-all: #3098
    • CLI --disable-default-bootnode: #3888
    • CLI --sentry: #3959
    • CLI --sentry-nodes: #4285
    • CLI --max-parallel-downloads: #4045
    • CLI --no-private-ipv4: #4042
    • CLI check-block: #4240
    • CLI --unsafe-rpc-external / --unsafe-ws-external: #4448
    • CLI subcommand generate-node-key: #4884
    • CLI subcommand inspect: #4697
    • RPC author_removeExtrinsic: #2732
    • RPC author_insertKey: #3296
    • RPC author_rotateKeys: #3337
    • RPC account_nextIndex / Able to implement custom RPC: #3109
    • RPC contracts_call for calling a contract: #3563
    • RPC contract_getStorage: #3944
    • RPC rpc_methods to get all RPC methods: #3613
    • RPC system_nodeRoles: #3719
    • RPC payment_queryInfo: #3876
    • RPC system_addReservedPeer / system_removeReservedPeer: #4423
    • RPC author_hasKey / author_hasSessionKeys: #4720
    • RPC offchain_localStorageSet / offchain_localStorageGet: #4694
    • RPC contracts_rentProjection: #4754
    • RPC state_getKeysPaged: #4718
    • RPC state_getPairs: #4803
    • RPC babe_epochAuthorship: #4729
    • Allow batch query for block hash: #4210
    • Subkey support 24-word phrases: #2827
    • Allow where bounds on decl_module! and decl_storage!: #3000
    • Allow sub accounts to be derived from an TypeId: #3039
    • GenericAsset module: #2790
    • Technical Committee: #3041
    • SS58 versioning (Network IDs): #3147
    • Introduce srml-im-online: #3079
    • Pause/resume current authority set: #3068
    • Expose instancing in metadata: #3188
    • Declare and implement authorities endpoint: #3207
    • Decouple Phragmen from Staking: #3498
    • Introduce srml/scored-pool: #3381
    • srml/authority-discovery: Introduce srml module to sign and verify: #3385 #3955
    • srml-module: Phragmen election: #3364
    • Sudo can dispatch from an account: #3604
    • Split off System random functions into a new Randomness module: #3699 #3792
    • Utility module for doing stuff like batch calls: #3759
    • Extend Utility pallet with multisig and pseudonyms #4462
    • chain spec builder: add generate mode for authority keys: #3811
    • Explicitly declare decl_storage! getters as functions: #3870
    • cli: disable pruning on validators #3835
    • srml-nicks Account nicknames: #3930 #3932 #3934
    • WithdrawReason::Tip: #3937
    • Add translate API for storage values: #3947 #4052 #4555
    • srml-contracts: Add ability to read substrate's storage: #4108
    • Introduce efficient Hash-based RNG streamer: #4169
    • Add sha2-256 hash function: #4218
    • PaysFee for DispatchInfo: #4165
    • Commission is stated as percent of rewards: #4243
    • Introduce VestingCurrency trait: #4257
    • decl_storage: Allow storage value builder to put no value: #4319
    • pallet-identity More comprehensive identity system: #4326 #4401
    • Add tipping into treasury: #4480
    • Introduce rebond: #4374
    • pallet-society: #4170 #4604
    • Add documentation to SubmitSignedTransaction and actually make it work: #4200
    • pallet-recovery: #4531
    • Allow node to add externalities extensions: #4583
    • custom weight function wrapper: #4158
    • Deposit event on frame-system::set_code: #4726
    • pallet-contracts add ext_tombstone_deposit: #4722
    • Added GetCallMetadata for extrinsic calls: #4791
    • Expose information about the extrinsic in the metadata: #4774
    • Add trait to get module and call names: #4854
    • impl Randomness trait for Babe: #4886
    • Add support for json output in subkey: #4882
  • Other changes:
    • BABE
    • Polite Grandpa
    • Peer Set Manager for p2p reputation management
    • TrieDB improvements
    • Transaction factory: #2481
    • Rust JSON RPC client generation: #2778
    • srml-contract renamed to srml-contracts: #2905
    • Contract storage limit: #3126
    • Forbid declaration of float types in contracts: #3234
    • srml-contracts: Deferred actions #3255
    • srml-contracts: Contract calls/instantiations to return exit statuses: #3320
    • Update to parity-scale-codec: #3232
    • Set uncles inherent: #3317
    • Pluralise newHead RPC subscription: #3463
    • Do not allow zero Existential Deposit when using Balances: #4894

polkadot.js

Changelog: https://github.com/polkadot-js/api/blob/master/CHANGELOG.md
Upgrade guide: https://github.com/polkadot-js/api/blob/master/UPGRADING.md