Skip to content
  1. Mar 11, 2021
  2. Mar 10, 2021
    • Ashley's avatar
      Return babe configuration information in the babe api epoch functions (#8072) · 7ace5e21
      Ashley authored
      
      
      * Make changes
      
      * Add serialize/deserialize, copy babe epoch config defaults from node runtime
      
      * Fix line widths and turn default features off for serde
      
      * Remove ser/deser from Epoch, fix node-cli
      
      * Apply suggestions
      
      * Add comment to BABE_GENESIS_EPOCH_CONFIG in bin
      
      * Apply suggestions
      
      * Add a sketchy migration function
      
      * Add a migration test
      
      * Check for PendingEpochConfigChange as well
      
      * Make epoch_config in node-cli
      
      * Move updating EpochConfig out of the if
      
      * Fix executor tests
      
      * Calculate weight for add_epoch_configurations
      
      * Fix babe test
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * Add more asserts to tests, remove unused changes to primitives/slots
      
      * Allow setting the migration pallet prefix
      
      * Rename to BabePalletPrefix
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      7ace5e21
  3. Mar 09, 2021
    • Bastian Köcher's avatar
      Introduce new concept of "slot portion for proposing" (#8280) · 7599e0d6
      Bastian Köcher authored
      * Introduce new concept of "slot portion for proposing"
      
      Currently when building a block we actually give the proposer all of the
      time in the slot, while this is wrong. The slot is actually split in at
      least two phases proposing and propagation or in the polkadot case into
      three phases validating pov's, proposing and propagation. As we don't
      want to bring that much polkadot concepts into Substrate, we only
      support splitting the slot into proposing and propagation. The portion
      can now be passed as parameter to AuRa and BABE to configure this value.
      However, this slot portion for propagation doesn't mean that the
      proposer can not go over this limit. When we miss slots we still apply
      the lenience factor to increase the proposing time, so that we have
      enough time to build a heavy block.
      
      Besides all what was said above, this is especially required for
      parachains. Parachains have a much more constraint proposing window.
      Currently the slot duration is at minimum 12 seconds, but we only have
      around 500ms for proposing. So, this slot portion for proposing is
      really required to make it working without hacks.
      
      * Offgit feedback
      
      * Cast cast cast
      7599e0d6
    • Liu-Cheng Xu's avatar
      Simplify the code a little bit (#8295) · ed7e4853
      Liu-Cheng Xu authored
      ed7e4853
  4. Mar 05, 2021
    • Bastian Köcher's avatar
      AuRa improvements (#8255) · 1680422f
      Bastian Köcher authored
      
      
      * AuRa improvements
      
      Hot and fresh AuRa improvements. This pr does the following:
      
      - Move code belonging to the import queue etc to import_queue.rs
      - Introduce `ImportQueueParams` and `StartAuraParams` structs to make
      it more easier to understand what parameters we pass to AuRa.
      - Introduce `CheckForEquivocation` to tell AuRa if it should check for
      equivocation on block import. This is required for parachains, because
      they are allowed to equivocate when they build two blocks for the same
      slot, but for different relay chain parents.
      
      * Update client/consensus/aura/src/import_queue.rs
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * Fix compilation
      
      * AAA
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      1680422f
  5. Mar 04, 2021
  6. Mar 03, 2021
  7. Feb 24, 2021
  8. Feb 22, 2021
  9. Feb 19, 2021
    • Bastian Köcher's avatar
      Ensure we spawn the block import worker as an essential task (#8155) · 821e018d
      Bastian Köcher authored
      * Ensure we spawn the block import worker as an essential task
      
      This pr ensures that we spawn the block import worker as an essential
      task. This is quite important as we need to bring down the node when the
      block import is done. Besides that it adds some debug output to the
      block import worker.
      
      * Don't be stupid :D
      821e018d
  10. Feb 18, 2021
  11. Feb 15, 2021
  12. Feb 10, 2021
  13. Feb 04, 2021
  14. Jan 29, 2021
  15. Jan 28, 2021
    • Bastian Köcher's avatar
      Introduce a `Slot` type (#7997) · b6294418
      Bastian Köcher authored
      
      
      * Introduce a `Slot` type
      
      Instead of having some type definition that only was used in half of the
      code or directly using `u64`, this adds a new unit type wrapper `Slot`.
      This makes it especially easy for the outside api to know what type is
      expected/returned.
      
      * Change epoch duratioC
      
      * rename all instances of slot number to slot
      
      * Make the constructor private
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      b6294418
  16. Jan 18, 2021
  17. Jan 12, 2021
  18. Jan 11, 2021
    • Igor Matuszewski's avatar
      Merge 2.0.1 backport branch into mainline master (#7842) · 028f3d26
      Igor Matuszewski authored
      
      
      * Backport paritytech/substrate#7381
      
      * Bring back genesis storage build in aura/timestamp
      
      To not change spec version, see
      https://github.com/paritytech/substrate/pull/7686#discussion_r540032743
      
      * Backport paritytech/substrate#7238
      
      * Backport paritytech/substrate#7395
      
      * Bump impl_version
      
      * Fix UI tests and bump trybuild dep
      
      See https://github.com/rust-lang/rust/pull/73996
      
      Backports:
      https://github.com/paritytech/substrate/pull/7764
      https://github.com/paritytech/substrate/pull/7656
      
      * Partially backport paritytech/substrate#7838
      
      * Release frame-support with a dep compilation fix
      
      * Bump patch level for remaining crates
      
      This is done because at the time of writing cargo-unleash does not fully
      support partial workspace publishing and mixes both local and crates.io
      versions of the packages, leading to errors in the release check workflow.
      
      * Backport paritytech/substrate#7854
      
      ...to fix compilation error when using futures-* v0.3.9.
      
      * Adding Changelog  entry for patch release
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarBenjamin Kampmann <[email protected]>
      028f3d26
  19. Jan 08, 2021
  20. Jan 06, 2021
    • ordian's avatar
      upgrade a few dependencies (#7831) · 2b48e09b
      ordian authored
      * upgrade a few dependencies
      
      * make it compile at the expense of duplicate deps
      
      * fix web-wasm and a warning
      
      * introduce activate-wasm-bindgen-features crate
      
      * Revert "introduce activate-wasm-bindgen-features crate"
      
      This reverts commit 5a6e41e683f8a4844c0a735dcd08caabb2313f11.
      
      * add getrandom feature to sc-consensus-aura
      2b48e09b
  21. Jan 05, 2021
  22. Jan 04, 2021
    • Bastian Köcher's avatar
      Happy new year (#7814) · e3e651f7
      Bastian Köcher authored
      * Happy new year
      
      Updates the copyright years and fixes wrong license headers.
      
      * Fix the template
      
      * Split HEADER into HEADER-APACHE & HEADER-GPL
      e3e651f7
  23. Dec 28, 2020
  24. Dec 17, 2020
  25. Nov 30, 2020
    • Bernhard Schuster's avatar
      resolve unresolved error nits of #7617 (#7631) · 4ccf6672
      Bernhard Schuster authored
      
      
      * handle executor should_panic test better
      
      * Revert "reduce should panic, due to extended error messages"
      
      This reverts commit c0805940184a62cd9302603ad911c3591e70a60c.
      
      * remove excessive constraints
      
      * remove duplicate documentation messages for error variants
      
      * reduce T: constraints to the abs minimum
      
      * whoops
      
      * fewer bounds again
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      4ccf6672
  26. Nov 27, 2020
  27. Nov 23, 2020
  28. Nov 11, 2020
    • Jon Häggblad's avatar
      slots: incrementally backoff claiming slots if finality lags behind (#7186) · 7cf78c16
      Jon Häggblad authored
      
      
      * babe: backoff authoring blocks when finality lags
      
      * babe: move backoff authoring params to default constructor
      
      * babe: deduplicate the test a bit
      
      * babe: set backoff constants in service
      
      * babe: use better names for backoff authoring block parameters
      
      * babe: remove last unwrap
      
      * babe: slight style tweak
      
      * babe: fix comment
      
      * slots: move backoff block authorship logic to SimpleSlotWorker
      
      * aura: append SlotInfo in on_slot
      
      * slots: use the correct types for parameters
      
      * slots: fix review comments
      
      * aura: add missing backoff authoring blocks parameters
      
      * slots: add comments for default values
      
      * slots: add additional checks in test
      
      * slots: update implementation for new master
      
      * slots: revert the change to SlotInfo
      
      * Fix review comments
      
      * slots: rework unit tests for backing off claiming slots
      
      * slots: add test for asymptotic behaviour for slot claims
      
      * slots: address review comments
      
      * slots: add test for max_interval
      
      * slots: add assertion for intervals between between claimed slots
      
      * slots: remove rustfmt directive
      
      * slots: another attempt at explaining authoring_rate
      
      * slots: up unfinalized_slack to 50 by default
      
      * slots: add tests for time to reach max_interval
      
      * slots: fix typo in comments
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * slots: additional tweaks to comments and info calls
      
      * slots: rename to BackoffAuthoringOnFinalizedHeadLagging
      
      * slots: make the backing off strategy generic
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * slots: implement backoff trait for () for simplicity
      
      * slots: move logging inside backing off function to make it more specific
      
      * aura: add missing function parameter
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      7cf78c16
    • Bastian Köcher's avatar
      Skip slot lenience on first block in BABE (#7515) · 48a84f90
      Bastian Köcher authored
      The genesis header doesn't have the BABE pre-digest and we insert `0` as
      slot number. The slot lenience calculation will return the maximum in
      this situation. Besides returning the maximum which is not bad at all,
      it also prints some a debug message that can be confusing in the first
      moment. To prevent printing this debug message, we now just return early
      when we see that the parent block is the genesis block.
      48a84f90
  29. Nov 05, 2020
  30. Nov 04, 2020
    • Web3 Philosopher's avatar
      Allow BabeConsensusDataProvider fork existing chain (#7078) · 6328f874
      Web3 Philosopher authored
      * parent affbc38a
      
      
      author Seun Lanlege <[email protected]> 1599568164 +0100
      committer Seun Lanlege <[email protected]> 1604321289 +0100
      gpgsig -----BEGIN PGP SIGNATURE-----
      
       iQGzBAABCgAdFiEECvQ02MnjnssnSbjr3HzzEhjN254FAl+gAAkACgkQ3HzzEhjN
       254soAv+KO5JA0HXSe0R0XS5TnwA3IxYsW+UvdF5dXFeC3jFdGTMvor818uoBePD
       dxzYEsUK6gjsNcM9+hpFhoy5JnUrUPInd2BZ7pmZiDuXmYJrHi0s7K5qL0EYDoe0
       m1egPNNyRR125ozJ24M+09c3OQsi3bvTx1TJaV9Aov8hK4So8UmlJTHWpkLw97ku
       HuTre2IPSFbV4GwJE40V+KNuDVHxaKL7zrInYScqbr6/hOTqBCvFn4ib3CjpF5HG
       zDAA5S2PrcbL9NQOothVcVB/TZr3IkhglCFqEjVyCX80IL0JkNZkw8jAh0B8uqXx
       Ug/c1/Mssa8F1jLZMmW45Cway60txqVbcWntPJAymGJbrRErOO/++oUrV0u1C65u
       LW7gXAaIJWQTX9KnX0SEyejNod7ubZktBz7n5WfkJAPIzdw5wtJalhLa673YTgQ9
       zyTPKiWjJj2myCq1AYrJvlK8hSsIBqbBFcUf1zX4SzZWKS+5mtp51o4gfVzcCRPd
       z/6/iPbB
       =g5tx
       -----END PGP SIGNATURE-----
      
      BabeConsensusDataProvider works with existing chains
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      6328f874
  31. Oct 27, 2020
    • Bastian Köcher's avatar
      Make consensus `SlotWorker` don't assume a slot is time / duration (#7441) · 05af334b
      Bastian Köcher authored
      
      
      * Make consensus `SlotWorker` don't assume a slot is time / duration
      
      This removes the last bit of assumption that a slot is always `time /
      duration`. This will be required by parachains where a slot will be the
      relay chain block number. Besides this there are also some other drive
      by changes. One more notable is that `on_slot` now returns a
      `SlotResult` that holds the block and a potential storage proof.
      
      To simplify the implementation and usage of the `SimpleSlotWorker` the
      `SlotWorker` trait is now implemented for each type that implements
      `SimpleSlotWorker`.
      
      * Update client/consensus/slots/src/lib.rs
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      * Update client/consensus/slots/src/lib.rs
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      05af334b
  32. Oct 21, 2020
    • Cecile Tonglet's avatar
      Add node name to the log lines (#7328) · 8cebbd14
      Cecile Tonglet authored
      * Initial commit
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * CLEANUP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * Add notes to original source code
      
      * CLEANUP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * CLEANUP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * CLEANUP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * WIP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * Some doc
      
      * Test with trybuild
      
      * Revert "Test with trybuild" (issue with trybuild atm)
      
      This reverts commit 9055ec2206808ba3ddce6e3d87eb358907fa5e42.
      
      https://github.com/dtolnay/trybuild/issues/53
      
      * Apply suggestions
      
      * Rename derive to proc-macro
      
      * Remove "prefix" feature from informant
      
      * Blocking task should use SpawnHandle::spawn_blocking
      
      * Improve doc as suggested
      
      * Fixes
      
      Forked at: 601e2fa1
      
      
      Parent branch: origin/master
      
      * Apply suggestion
      
      * Update client/cli/proc-macro/src/lib.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * More suggestions
      
      * CLEANUP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * Improve error message
      
      * CLEANUP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * Fix async issue
      
      * CLEANUP
      
      Forked at: 601e2fa1
      Parent branch: origin/master
      
      * CLEANUP
      
      Forked at: 601e2fa1
      
      
      Parent branch: origin/master
      
      * Add test
      
      * fix doc test
      
      * Update client/cli/src/logging.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update client/basic-authorship/src/basic_authorship.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update client/basic-authorship/src/basic_authorship.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Apply suggestions
      
      * Suggestions
      
      * Clarify doc
      
      * WIP
      
      Forked at: 601e2fa1
      
      
      Parent branch: origin/master
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      8cebbd14
  33. Oct 15, 2020
    • Ashley's avatar
      Add missing fields to the light sync state (#7225) · d1ef8507
      Ashley authored
      * Initial draft
      
      * Add an iterator that helps us get most items
      
      * Revert changes to grandpa
      
      * Change fields to just be the grandpa authority set and babe epoch changes
      
      * Only use the fields we need from the shared authority set
      
      * Switch to RPC call
      
      * Revert "Only use the fields we need from the shared authority set"
      
      This reverts commit 6ede87b0c5fe53f251d7cb45951006a7dc8f9b83.
      
      * Add babe_finalized_block_weight from `ashley-improve-sync-state-WIP-loading`
      
      * Fix rpc test
      
      * Move sync state rpc stuff into sc-sync-state-rpc
      
      * Remove as_json_value and remove unwraps from sc-sync-state-rpc
      
      * Add clone_inner to SharedAuthoritySet
      d1ef8507
  34. Oct 08, 2020
    • Rakan Alhneiti's avatar
      Async keystore + Authority-Discovery async/await (#7000) · 3aa4bfac
      Rakan Alhneiti authored
      
      
      * Asyncify sign_with
      
      * Asyncify generate/get keys
      
      * Complete BareCryptoStore asyncification
      
      * Cleanup
      
      * Rebase
      
      * Add Proxy
      
      * Inject keystore proxy into extensions
      
      * Implement some methods
      
      * Await on send
      
      * Cleanup
      
      * Send result over the oneshot channel sender
      
      * Process one future at a time
      
      * Fix cargo stuff
      
      * Asyncify sr25519_vrf_sign
      
      * Cherry-pick and fix changes
      
      * Introduce SyncCryptoStore
      
      * SQUASH ME WITH THE first commit
      
      * Implement into SyncCryptoStore
      
      * Implement BareCryptoStore for KeystoreProxyAdapter
      
      * authority-discovery
      
      * AURA
      
      * BABE
      
      * finality-grandpa
      
      * offchain-workers
      
      * benchmarking-cli
      
      * sp_io
      
      * test-utils
      
      * application-crypto
      
      * Extensions and RPC
      
      * Client Service
      
      * bin
      
      * Update cargo.lock
      
      * Implement BareCryptoStore on proxy directly
      
      * Simplify proxy setup
      
      * Fix authority-discover
      
      * Pass async keystore to authority-discovery
      
      * Fix tests
      
      * Use async keystore in authority-discovery
      
      * Rename BareCryptoStore to CryptoStore
      
      * WIP
      
      * Remote mutable borrow in CryptoStore trait
      
      * Implement Keystore with backends
      
      * Remove Proxy implementation
      
      * Fix service builder and keystore user-crates
      
      * Fix tests
      
      * Rework authority-discovery after refactoring
      
      * futures::select!
      
      * Fix multiple mut borrows in authority-discovery
      
      * Merge fixes
      
      * Require sync
      
      * Restore Cargo.lock
      
      * PR feedback - round 1
      
      * Remove Keystore and use LocalKeystore directly
      
      Also renamed KeystoreParams to KeystoreContainer
      
      * Join
      
      * Remove sync requirement
      
      * Fix keystore tests
      
      * Fix tests
      
      * client/authority-discovery: Remove event stream dynamic dispatching
      
      With authority-discovery moving from a poll based future to an `async`
      future Rust has difficulties propagating the `Sync` trade through the
      generated state machine.
      
      Instead of using dynamic dispatching, use a trait parameter to specify
      the DHT event stream.
      
      * Make it compile
      
      * Fix submit_transaction
      
      * Fix block_on issue
      
      * Use await in async context
      
      * Fix manual seal keystore
      
      * Fix authoring_blocks test
      
      * fix aura authoring_blocks
      
      * Try to fix tests for auth-discovery
      
      * client/authority-discovery: Fix lookup_throttling test
      
      * client/authority-discovery: Fix triggers_dht_get_query test
      
      * Fix epoch_authorship_works
      
      * client/authority-discovery: Remove timing assumption in unit test
      
      * client/authority-discovery: Revert changes to termination test
      
      * PR feedback
      
      * Remove deadcode and mark test code
      
      * Fix test_sync
      
      * Use the correct keyring type
      
      * Return when from_service stream is closed
      
      * Convert SyncCryptoStore to a trait
      
      * Fix line width
      
      * Fix line width - take 2
      
      * Remove unused import
      
      * Fix keystore instantiation
      
      * PR feedback
      
      * Remove KeystoreContainer
      
      * Revert "Remove KeystoreContainer"
      
      This reverts commit ea4a37c7d74f9772b93d974e05e4498af6192730.
      
      * Take a ref of keystore
      
      * Move keystore to dev-dependencies
      
      * Address some PR feedback
      
      * Missed one
      
      * Pass keystore reference - take 2
      
      * client/finality-grandpa: Use `Arc<dyn CryptoStore>` instead of SyncXXX
      
      Instead of using `SyncCryptoStorePtr` within `client/finality-grandpa`,
      which is a type alias for `Arc<dyn SyncCryptoStore>`, use `Arc<dyn
      CryptoStore>`. Benefits are:
      
      1. No additional mental overhead of a `SyncCryptoStorePtr`.
      
      2. Ability for new code to use the asynchronous methods of `CryptoStore`
      instead of the synchronous `SyncCryptoStore` methods within
      `client/finality-granpa` without the need for larger refactorings.
      
      Note: This commit uses `Arc<dyn CryptoStore>` instead of
      `CryptoStorePtr`, as I find the type signature more descriptive. This is
      subjective and in no way required.
      
      * Remove SyncCryptoStorePtr
      
      * Remove KeystoreContainer & SyncCryptoStorePtr
      
      * PR feedback
      
      * *: Use CryptoStorePtr whereever possible
      
      * *: Define SyncCryptoStore as a pure extension trait of CryptoStore
      
      * Follow up to SyncCryptoStore extension trait
      
      * Adjust docs for SyncCryptoStore as Ben suggested
      
      * Cleanup unnecessary requirements
      
      * sp-keystore
      
      * Use async_std::task::block_on in keystore
      
      * Fix block_on std requirement
      
      * Update primitives/keystore/src/lib.rs
      
      Co-authored-by: default avatarMax Inden <[email protected]>
      
      * Fix wasm build
      
      * Remove unused var
      
      * Fix wasm compilation - take 2
      
      * Revert async-std in keystore
      
      * Fix indent
      
      * Fix version and copyright
      
      * Cleanup feature = "std"
      
      * Auth Discovery: Ignore if from_service is cloed
      
      * Max's suggestion
      
      * Revert async-std usage for block_on
      
      * Address PR feedback
      
      * Fix example offchain worker build
      
      * Address PR feedback
      
      * Update Cargo.lock
      
      * Move unused methods to test helper functions
      
      * Restore accidentally deleted cargo.lock files
      
      * Fix unused imports
      
      Co-authored-by: default avatarMax Inden <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      3aa4bfac
  35. Sep 23, 2020
    • Kian Paimani's avatar
      PhragMMS election. (#6685) · 313f86ec
      Kian Paimani authored
      
      
      * Revamp npos-elections and implement phragmms
      
      * Update primitives/npos-elections/src/phragmms.rs
      
      * Fix build
      
      * Some review grumbles
      
      * Add some stuff for remote testing
      
      * fix some of the grumbles.
      
      * Add remote testing stuff.
      
      * Cleanup
      
      * fix docs
      
      * Update primitives/arithmetic/src/rational.rs
      
      Co-authored-by: default avatarDan Forbes <[email protected]>
      
      * Small config change
      
      * Better handling of approval_stake == 0
      
      * Final touhces.
      
      * Clean fuzzer a bit
      
      * Clean fuzzer a bit
      
      * Update primitives/npos-elections/src/balancing.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Fix fuzzer.
      
      * Better api for normalize
      
      * Add noramlize_up
      
      * A large number of small fixes.
      
      * make it merge ready
      
      * Fix warns
      
      * bump
      
      * Fix fuzzers a bit.
      
      * Fix warns as well.
      
      * Fix more tests.
      
      Co-authored-by: default avatarDan Forbes <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      313f86ec