v2026.2.0
·
386 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
What's Changed
- [deployer] Cache AMI Lookup + Batch DescribeInstances + Surface Capacity Limit Errors by @patrick-ogrady in #2822
- [storage/journal]: add distinct labels to subjournals by @SuperFluffy in #2830
- [consensus/marshal] Add pruning API by @clabby in #2827
- [cryptography] 2701, document RecvCipher::recv caveats by @cronokirby in #2826
- [deployer] Rolling Updates and
samplySupport by @patrick-ogrady in #2828 - [runtime/fuzz] fix blob_integrity fuzz test by @roberto-bayardo in #2839
- [deployer] Update AWS config by @clabby in #2844
- [runtime/deterministic] Assert Metric Uniqueness by @patrick-ogrady in #2841
- [runtime/utils/buffer] use an arena instead of vector-per-page for buffer pool data by @roberto-bayardo in #2832
- [deployer] Improve S3 Fetch Robustness by @patrick-ogrady in #2851
- [storage/bmt] Constrain leaf count in root by @clabby in #2840
- [storage/qmdb/benches] split init from generation benchmarks by @roberto-bayardo in #2834
- [runtime] add composite iouring feature by @andresilva in #2850
- [deployer] Multi-AZ Deploys by @patrick-ogrady in #2862
- [runtime] Support
Attributesby @patrick-ogrady in #2864 - [consensus/simplex] Add Standard Threshold + Clarify Usage by @patrick-ogrady in #2863
- [runtime] Remove (erroneous) claim about cardinality explosion by @patrick-ogrady in #2867
- [Storage] Replace
mmr::Hashergeneric with associated type by @danlaine in #2868 - [ci] Fix Fuzz Panics by @patrick-ogrady in #2869
- [cryptography/bloomfilter] generic Hasher and optimizations by @andresilva in #2729
- [storage/mmr] change mmr Proof to store leaves instead of size by @roberto-bayardo in #2852
- Improve proofs malleability fuzz test by @dnkolegov-ar in #2853
- Fix panicing in qmdb_any_fixed_sync by @dnkolegov-ar in #2880
- [ci] Don't cancel other build jobs if one fails by @clabby in #2887
- [storage/metadata] change metadata sync so it doesn't block concurrent reads by @roberto-bayardo in #2875
- [cryptography] allow "unclosed" appends in Transcript by @cronokirby in #2885
- [storage/qmdb/current] share more code across unordered & ordered current db variants by @roberto-bayardo in #2818
- Defer deserializing signatures by @cronokirby in #2833
- [cryptography/bls12381] Use Batch Inversion in Interpolator by @patrick-ogrady in #2900
- [consensus/marshaled] Deferred verification by @clabby in #2604
- [Storage] Return error on invalid range argument in
mmr::mem::Mmrby @danlaine in #2899 - [cryptography/bls12381] Implement Concurrent MSM by @patrick-ogrady in #2878
- [mcp] Fix Flaky Test by @patrick-ogrady in #2902
- Use quint v0.30.0 by @dnkolegov-ar in #2879
- [pipeline] Fix Minnimit nullification interval by @clabby in #2903
- [cryptography] Clarify handshake re-ordering properties by @cronokirby in #2908
- [p2p] Add Regression Test for Duplicate Addresses by @patrick-ogrady in #2907
- [examples/flood] add latency measurement by @andresilva in #2894
- [deployer] Store Deployment Metadata by @patrick-ogrady in #2877
- [runtime] Introduce
IoBuftypes and update network and storage APIs by @andresilva in #2881 - [AGENTS.md] add example for imports at top of module by @andresilva in #2925
- [deployer] Limit
aptUsage by @patrick-ogrady in #2915 - [cryptography/certificate] improve docs on duplicate signatures by @andresilva in #2922
- [runtime] Add
Stream::peekfor non-consuming buffer inspection by @andresilva in #2906 - [macros] add support for on_start/on_end to select_loop! by @andresilva in #2671
- [deployer] Remove
dpkgRetry by @patrick-ogrady in #2934 - Don't store bytes again for ed25519 keys by @cronokirby in #2926
- refactor(codec): deduplicate read_ordered_map function by @reallesee in #2711
- [p2p] remove dead recipients in run_network by @radik878 in #2901
- [storage/qmdb/current] current dbs with variable length values by @roberto-bayardo in #2819
- [deployer] Ensure All Dependencies Installed by @patrick-ogrady in #2943
- [utils] Remove
Faults::quorum_from_sliceby @clabby in #2946 - [examples/estimator] Update
MinimmitErasure Coding by @patrick-ogrady in #2874 - [deployer] Validate Regions + Fix Partial Deploy Teardown by @patrick-ogrady in #2953
- [Storage] Factor out
qmdb::anystate sync; implement forqmdb::any::ordered::*by @danlaine in #2748 - [storage]
bmt::Tree<Hasher>->bmt::Tree<Digest>by @clabby in #2951 - [Storage] Fix
journal::contiguous::Variable::init_at_sizeby @danlaine in #2872 - [p2p] Respect
dialer_frequencyby @patrick-ogrady in #2956 - [storage/freezer] fix empty-slot bug during resize by @roberto-bayardo in #2966
- Make clippy happy by @clabby in #2971
- [treewide] rustfmt over select! by @andresilva in #2927
- [cryptography] Use
aws-lc-rsfor ChaCha20-Poly1305 on x86_64/aarch64 by @clabby in #2962 - [ci] run conformance tests on x86_64 and arm64 by @clabby in #2967
- [reshare] Add per-peer metrics for latest share and acknowledgements by @clabby in #2987
- [Storage] Reduce stack size in batch tests by moving state to heap by @danlaine in #2991
- [cryptography] Add some helpers for debugging DKG by @cronokirby in #2992
- [consensus/simplex] Tracked nullifications and skipped views per leader by @clabby in #2990
- [math] Clarify that 2^lg_rows needs to be a usize by @cronokirby in #2996
- [deployer] Unique Bucket Name by @patrick-ogrady in #2997
- [runtime] rename buffer::pool to buffer::paged by @andresilva in #2973
- [deployer] Fix Instrument by @patrick-ogrady in #2998
- [consensus/simplex] Fix Conflicting Enforcement by @patrick-ogrady in #2999
- [macros] Add
Stabilityby @patrick-ogrady in #2870 - [ci] Deny Warnings by @patrick-ogrady in #3000
- [macros] Don't emit stability cfg warning on
debug/testprofiles by @clabby in #3004 - [ci] use /mnt on linux runners by @andresilva in #2986
- [math] fix no_std by @andresilva in #3007
- [storage] fix bug in init_sync related to pinned nodes by @roberto-bayardo in #2994
- [macros] commonware_macros::select! uses tokio::select! by @andresilva in #3003
- [Storage] Use
into_merkleized()function instead of manual re-implementation by @danlaine in #3008 - [macros] Standardize Docs by @patrick-ogrady in #3012
- [workspace] Link
stdincfg(test)by @clabby in #3011 - [justfile] don't use cargo fmt by @andresilva in #3010
- [workspace] re-export and migrate to tokio channels by @andresilva in #2993
- [macros] add refutable pattern support with else clause to select_loop! by @andresilva in #2933
- [workspace] rustfmt cfg_if and stability_scope by @andresilva in #3016
- Fix collector fuzz panic by @dnkolegov-ar in #3018
- [justfile] Use
findinstead ofgit ls-filesby @clabby in #3022 - [justfile] fix fix-fmt on windows by @andresilva in #3023
- [Utils] Use type state pattern in historical bitmap by @danlaine in #3006
- [Storage] [Runtime] Add configurable faultiness to deterministic storage by @danlaine in #2941
- [runtime] introduce
IoBufpool by @andresilva in #2940 - add crc fuzz test by @technovision99 in #3028
- [Storage] Replace
oldest_retained_X()andpruning_boundary()withbounds() -> Range<T>by @danlaine in #2975 - [Storage] Remove
popfrommmr::mem::CleanMmrand downstream types by @danlaine in #3034 - [Storage] Add type for
bitmap::authenticatedtype state by @danlaine in #3009 - Improve check-stability speed by @cronokirby in #3031
- [consensus::simplex] Improve
nullifydocumentation by @BrendanChou in #3036 - [consensus::simplex] Improve notarization view-advancement documentation by @BrendanChou in #3037
- [Storage] Remove
add_leaf_digestfrommmr::mem::CleanMmrby @danlaine in #3027 - [consensus/simplex] Cleanup Notarize/Notarization Check Prior to Finalize by @BrendanChou in #2693
- Refactor and adapt simplex fuzzer for other testing modes by @dnkolegov-ar in #2446
- [consensus] Documentation: explicitly call out the determinism requirement of certify() by @BrendanChou in #3046
- [consensus::simplex] Add genesis documentation by @BrendanChou in #3049
- [Consensus] Improve certification documentation by @BrendanChou in #3048
- [deployer] Extract duplicate file upload logic to shared function by @syrupipy in #3030
- [Storage] [Nit] Replace loop with .
ok_or_elseby @danlaine in #3051 - [stream] use buffer pool by @andresilva in #3033
- [p2p/lookup] Support IP Updates Between Set Updates by @patrick-ogrady in #3047
- [release] v2026.2.0 by @patrick-ogrady in #3053
New Contributors
- @radik878 made their first contribution in #2901
- @technovision99 made their first contribution in #3028
Full Changelog: v0.0.65...v2026.2.0
Stats
.github/actions/setup/action.yml | 11 +
.github/workflows/fast.yml | 68 +-
.github/workflows/publish.yml | 5 +
.github/workflows/quint.yml | 2 +-
.github/workflows/slow.yml | 39 +-
AGENTS.md | 100 +-
Cargo.lock | 251 ++-
Cargo.toml | 52 +-
README.md | 24 +
broadcast/Cargo.toml | 4 +-
broadcast/fuzz/Cargo.toml | 1 -
.../fuzz_targets/broadcast_engine_operations.rs | 5 +-
broadcast/src/buffered/engine.rs | 139 +-
broadcast/src/buffered/ingress.rs | 3 +-
broadcast/src/buffered/mocks.rs | 2 +-
broadcast/src/buffered/mod.rs | 7 +-
broadcast/src/lib.rs | 52 +-
clippy.toml | 23 +
codec/Cargo.toml | 13 +-
codec/README.md | 2 +-
codec/src/lib.rs | 32 +-
codec/src/types/btree_map.rs | 48 +-
codec/src/types/bytes.rs | 2 -
codec/src/types/hash_map.rs | 49 +-
codec/src/types/lazy.rs | 310 +++
codec/src/types/mod.rs | 49 +-
codec/src/types/vec.rs | 2 -
codec/src/varint.rs | 38 +-
coding/Cargo.toml | 2 +-
coding/README.md | 2 +-
coding/conformance.toml | 6 +-
coding/src/lib.rs | 367 ++--
coding/src/reed_solomon.rs | 58 +-
coding/src/zoda.rs | 78 +-
collector/Cargo.toml | 4 +-
collector/README.md | 2 +-
collector/fuzz/Cargo.toml | 2 +-
collector/fuzz/fuzz_targets/collector.rs | 31 +-
collector/src/lib.rs | 151 +-
collector/src/p2p/engine.rs | 88 +-
collector/src/p2p/ingress.rs | 3 +-
collector/src/p2p/mocks/handler.rs | 23 +-
collector/src/p2p/mocks/monitor.rs | 19 +-
collector/src/p2p/mocks/sender.rs | 8 +-
collector/src/p2p/mocks/types.rs | 2 +-
collector/src/p2p/mod.rs | 35 +-
conformance/README.md | 2 +-
conformance/macros/Cargo.toml | 1 +
conformance/macros/README.md | 2 +-
conformance/macros/src/lib.rs | 5 +
conformance/src/lib.rs | 5 +
consensus/Cargo.toml | 3 +-
consensus/README.md | 2 +-
consensus/conformance.toml | 12 +-
consensus/fuzz/Cargo.toml | 49 +-
consensus/fuzz/README.md | 84 +
consensus/fuzz/fuzz_targets/attributable_map.rs | 2 +-
.../simplex_bls12381_multisig_minpk.rs | 25 +-
.../simplex_bls12381_multisig_minpk_twin.rs | 8 +
.../simplex_bls12381_multisig_minsig.rs | 25 +-
.../simplex_bls12381_multisig_minsig_twin.rs | 8 +
.../simplex_bls12381_threshold_minpk.rs | 25 +-
.../simplex_bls12381_threshold_minpk_twin.rs | 8 +
.../simplex_bls12381_threshold_minsig.rs | 25 +-
.../simplex_bls12381_threshold_minsig_twin.rs | 8 +
consensus/fuzz/fuzz_targets/simplex_ed25519.rs | 22 +-
.../fuzz/fuzz_targets/simplex_ed25519_twin.rs | 8 +
consensus/fuzz/fuzz_targets/simplex_elector.rs | 10 +-
consensus/fuzz/fuzz_targets/simplex_messages.rs | 8 +-
consensus/fuzz/fuzz_targets/simplex_secp256r1.rs | 24 +-
.../fuzz/fuzz_targets/simplex_secp256r1_twin.rs | 8 +
consensus/fuzz/proptest-regressions/simplex.txt | 7 +
consensus/fuzz/src/bounds.rs | 146 ++
consensus/fuzz/src/disrupter.rs | 564 ++++--
consensus/fuzz/src/invariants.rs | 105 +-
consensus/fuzz/src/lib.rs | 755 +++++--
consensus/fuzz/src/simplex.rs | 221 +++
consensus/fuzz/src/strategy.rs | 734 +++++++
consensus/fuzz/src/utils.rs | 6 +-
consensus/src/aggregation/config.rs | 6 +-
consensus/src/aggregation/engine.rs | 276 +--
consensus/src/aggregation/mocks/application.rs | 2 +-
consensus/src/aggregation/mocks/monitor.rs | 3 +-
consensus/src/aggregation/mocks/reporter.rs | 7 +-
consensus/src/aggregation/mod.rs | 17 +-
consensus/src/aggregation/types.rs | 15 +-
consensus/src/application/marshaled.rs | 535 +++--
consensus/src/lib.rs | 440 +++--
consensus/src/marshal/actor.rs | 866 ++++----
consensus/src/marshal/cache.rs | 17 +-
consensus/src/marshal/config.rs | 6 +-
consensus/src/marshal/ingress/handler.rs | 10 +-
consensus/src/marshal/ingress/mailbox.rs | 36 +-
consensus/src/marshal/mocks/application.rs | 2 +-
consensus/src/marshal/mocks/block.rs | 62 +-
consensus/src/marshal/mod.rs | 849 +++++++-
consensus/src/marshal/resolver/p2p.rs | 12 +-
consensus/src/marshal/store.rs | 4 +-
consensus/src/ordered_broadcast/config.rs | 6 +-
consensus/src/ordered_broadcast/engine.rs | 348 ++--
consensus/src/ordered_broadcast/mocks/automaton.rs | 2 +-
consensus/src/ordered_broadcast/mocks/monitor.rs | 3 +-
consensus/src/ordered_broadcast/mocks/reporter.rs | 7 +-
consensus/src/ordered_broadcast/mod.rs | 31 +-
consensus/src/ordered_broadcast/types.rs | 5 +-
consensus/src/simplex/actors/batcher/actor.rs | 642 +++---
consensus/src/simplex/actors/batcher/ingress.rs | 3 +-
consensus/src/simplex/actors/batcher/mod.rs | 556 +++++-
consensus/src/simplex/actors/batcher/round.rs | 14 +-
consensus/src/simplex/actors/batcher/verifier.rs | 196 +-
consensus/src/simplex/actors/resolver/actor.rs | 28 +-
consensus/src/simplex/actors/resolver/ingress.rs | 6 +-
consensus/src/simplex/actors/voter/actor.rs | 465 +++--
consensus/src/simplex/actors/voter/ingress.rs | 3 +-
consensus/src/simplex/actors/voter/mod.rs | 571 ++++--
consensus/src/simplex/actors/voter/round.rs | 55 +-
consensus/src/simplex/actors/voter/state.rs | 57 +-
consensus/src/simplex/config.rs | 6 +-
consensus/src/simplex/elector.rs | 48 +-
consensus/src/simplex/engine.rs | 2 +-
consensus/src/simplex/mocks/application.rs | 59 +-
consensus/src/simplex/mocks/relay.rs | 8 +-
consensus/src/simplex/mocks/reporter.rs | 8 +-
consensus/src/simplex/mod.rs | 596 ++++--
.../src/simplex/scheme/bls12381_threshold/mod.rs | 20 +
.../simplex/scheme/bls12381_threshold/standard.rs | 16 +
.../vrf.rs} | 434 ++--
consensus/src/simplex/scheme/mod.rs | 19 +-
consensus/src/simplex/scheme/reporter.rs | 10 +-
consensus/src/simplex/types.rs | 318 ++-
cryptography/Cargo.toml | 20 +-
cryptography/README.md | 2 +-
cryptography/conformance.toml | 32 +-
cryptography/fuzz/Cargo.toml | 11 +-
cryptography/fuzz/fuzz_targets/bloomfilter.rs | 76 +-
cryptography/fuzz/fuzz_targets/crc32_hasher.rs | 145 ++
cryptography/src/bloomfilter.rs | 274 ---
cryptography/src/bloomfilter/benches/bench.rs | 6 +
cryptography/src/bloomfilter/benches/contains.rs | 86 +
cryptography/src/bloomfilter/benches/insert.rs | 65 +
cryptography/src/bloomfilter/conformance.rs | 66 +
cryptography/src/bloomfilter/mod.rs | 619 ++++++
cryptography/src/bls12381/benches/msm.rs | 114 +-
.../src/bls12381/certificate/multisig/mod.rs | 468 ++---
.../src/bls12381/certificate/threshold/mod.rs | 578 +++---
cryptography/src/bls12381/dkg.rs | 37 +
cryptography/src/bls12381/primitives/group.rs | 495 ++++-
cryptography/src/bls12381/primitives/mod.rs | 1 +
.../src/bls12381/primitives/ops/aggregate.rs | 2 -
cryptography/src/bls12381/primitives/ops/mod.rs | 2 -
cryptography/src/bls12381/primitives/sharing.rs | 17 +-
cryptography/src/certificate.rs | 29 +-
cryptography/src/crc32/mod.rs | 2 -
cryptography/src/ed25519/certificate/mod.rs | 434 ++--
cryptography/src/ed25519/scheme.rs | 92 +-
cryptography/src/handshake.rs | 8 +-
cryptography/src/handshake/cipher.rs | 305 ++-
cryptography/src/lib.rs | 460 +++--
cryptography/src/secp256r1/certificate/mod.rs | 387 ++--
cryptography/src/secp256r1/common.rs | 4 +-
cryptography/src/secp256r1/recoverable.rs | 2 +-
cryptography/src/secp256r1/standard.rs | 2 +-
cryptography/src/transcript.rs | 38 +-
deployer/Cargo.toml | 3 +
deployer/README.md | 4 +-
deployer/src/{ec2 => aws}/authorize.rs | 8 +-
deployer/src/aws/clean.rs | 43 +
deployer/src/{ec2 => aws}/create.rs | 923 +++++----
deployer/src/{ec2 => aws}/destroy.rs | 113 +-
deployer/src/{ec2/aws.rs => aws/ec2.rs} | 279 ++-
deployer/src/aws/list.rs | 65 +
deployer/src/{ec2 => aws}/mod.rs | 198 +-
deployer/src/aws/profile.rs | 222 +++
deployer/src/aws/s3.rs | 584 ++++++
deployer/src/{ec2 => aws}/services.rs | 636 ++++--
deployer/src/aws/update.rs | 186 ++
deployer/src/{ec2 => aws}/utils.rs | 53 +-
deployer/src/ec2/clean.rs | 35 -
deployer/src/ec2/s3.rs | 361 ----
deployer/src/ec2/update.rs | 247 ---
deployer/src/lib.rs | 12 +-
deployer/src/main.rs | 121 +-
docs/blogs/adb-current.html | 2 +-
examples/bridge/Cargo.toml | 2 -
examples/bridge/src/application/actor.rs | 21 +-
examples/bridge/src/application/ingress.rs | 5 +-
examples/bridge/src/application/mod.rs | 2 +-
examples/bridge/src/bin/indexer.rs | 21 +-
examples/bridge/src/bin/validator.rs | 12 +-
examples/bridge/src/lib.rs | 4 +-
examples/bridge/src/types/block.rs | 24 +-
examples/bridge/src/types/inbound.rs | 17 +-
examples/bridge/src/types/outbound.rs | 21 +-
examples/chat/src/handler.rs | 127 +-
examples/chat/src/main.rs | 2 +-
examples/estimator/Cargo.toml | 1 -
.../estimator/minimmit_large_block_coding_50.lazy | 6 +-
examples/estimator/src/main.rs | 13 +-
examples/flood/Cargo.toml | 2 +-
examples/flood/README.md | 8 +-
examples/flood/dashboard.json | 129 +-
examples/flood/src/bin/flood.rs | 59 +-
examples/flood/src/bin/setup.rs | 14 +-
examples/flood/src/lib.rs | 6 +-
examples/log/Cargo.toml | 2 -
examples/log/src/application/actor.rs | 5 +-
examples/log/src/application/ingress.rs | 5 +-
examples/log/src/gui.rs | 6 +-
examples/log/src/main.rs | 6 +-
examples/reshare/Cargo.toml | 1 -
examples/reshare/src/application/core.rs | 23 +-
examples/reshare/src/application/scheme.rs | 3 +-
examples/reshare/src/application/types.rs | 38 +-
examples/reshare/src/dkg/actor.rs | 354 ++--
examples/reshare/src/dkg/ingress.rs | 6 +-
examples/reshare/src/dkg/state.rs | 261 ++-
examples/reshare/src/engine.rs | 25 +-
examples/reshare/src/orchestrator/actor.rs | 117 +-
examples/reshare/src/orchestrator/ingress.rs | 3 +-
examples/reshare/src/validator.rs | 85 +-
examples/sync/Cargo.toml | 1 -
examples/sync/src/bin/client.rs | 8 +-
examples/sync/src/bin/server.rs | 46 +-
examples/sync/src/databases/any.rs | 9 +-
examples/sync/src/databases/immutable.rs | 13 +-
examples/sync/src/databases/mod.rs | 8 +-
examples/sync/src/error.rs | 2 +-
examples/sync/src/net/io.rs | 62 +-
examples/sync/src/net/mod.rs | 2 +-
examples/sync/src/net/resolver.rs | 5 +-
examples/sync/src/net/wire.rs | 2 +-
justfile | 71 +-
macros/Cargo.toml | 20 +-
macros/README.md | 4 +-
macros/impl/Cargo.toml | 24 +
macros/impl/README.md | 10 +
macros/impl/build.rs | 79 +
macros/impl/src/lib.rs | 744 +++++++
macros/{ => impl}/src/nextest.rs | 0
macros/src/lib.rs | 762 +++-----
macros/tests/select.rs | 431 +++-
macros/tests/stability.rs | 159 ++
math/Cargo.toml | 6 +
math/README.md | 2 +-
math/src/algebra.rs | 8 +-
math/src/fields/goldilocks.rs | 32 +-
math/src/lib.rs | 21 +-
math/src/ntt.rs | 6 +
math/src/poly.rs | 119 +-
math/src/test.rs | 42 +-
mcp/README.md | 2 +-
mcp/integration-test.mjs | 28 +-
p2p/Cargo.toml | 3 +-
p2p/README.md | 2 +-
p2p/conformance.toml | 8 +-
p2p/fuzz/Cargo.toml | 1 -
p2p/fuzz/fuzz_targets/simulated.rs | 9 +-
p2p/fuzz/src/lib.rs | 21 +-
p2p/src/authenticated/data.rs | 28 +-
p2p/src/authenticated/discovery/actors/dialer.rs | 125 +-
p2p/src/authenticated/discovery/actors/listener.rs | 30 +-
.../authenticated/discovery/actors/peer/actor.rs | 190 +-
.../authenticated/discovery/actors/peer/ingress.rs | 2 +-
p2p/src/authenticated/discovery/actors/peer/mod.rs | 4 +-
.../authenticated/discovery/actors/router/actor.rs | 69 +-
.../discovery/actors/router/ingress.rs | 40 +-
.../discovery/actors/spawner/actor.rs | 17 +-
.../discovery/actors/spawner/ingress.rs | 4 +-
.../discovery/actors/tracker/actor.rs | 78 +-
.../discovery/actors/tracker/ingress.rs | 36 +-
.../authenticated/discovery/actors/tracker/mod.rs | 2 +-
.../discovery/actors/tracker/reservation.rs | 1 +
p2p/src/authenticated/discovery/channels.rs | 16 +-
p2p/src/authenticated/discovery/mod.rs | 311 ++-
p2p/src/authenticated/discovery/network.rs | 19 +-
p2p/src/authenticated/discovery/types.rs | 18 +-
p2p/src/authenticated/lookup/actors/dialer.rs | 126 +-
p2p/src/authenticated/lookup/actors/listener.rs | 67 +-
p2p/src/authenticated/lookup/actors/peer/actor.rs | 150 +-
.../authenticated/lookup/actors/peer/ingress.rs | 2 +-
p2p/src/authenticated/lookup/actors/peer/mod.rs | 4 +-
.../authenticated/lookup/actors/router/actor.rs | 68 +-
.../authenticated/lookup/actors/router/ingress.rs | 42 +-
.../authenticated/lookup/actors/spawner/actor.rs | 19 +-
.../authenticated/lookup/actors/spawner/ingress.rs | 4 +-
.../authenticated/lookup/actors/tracker/actor.rs | 417 +++-
.../lookup/actors/tracker/directory.rs | 258 ++-
.../authenticated/lookup/actors/tracker/ingress.rs | 37 +-
p2p/src/authenticated/lookup/actors/tracker/mod.rs | 2 +-
.../authenticated/lookup/actors/tracker/record.rs | 14 +-
.../lookup/actors/tracker/reservation.rs | 1 +
p2p/src/authenticated/lookup/channels.rs | 16 +-
p2p/src/authenticated/lookup/mod.rs | 447 +++--
p2p/src/authenticated/lookup/network.rs | 22 +-
p2p/src/authenticated/lookup/types.rs | 12 +-
p2p/src/authenticated/mailbox.rs | 4 +-
p2p/src/authenticated/relay.rs | 24 +-
p2p/src/lib.rs | 496 ++---
p2p/src/simulated/ingress.rs | 49 +-
p2p/src/simulated/mod.rs | 269 +--
p2p/src/simulated/network.rs | 250 ++-
p2p/src/simulated/transmitter.rs | 61 +-
p2p/src/types.rs | 6 +-
p2p/src/utils/codec.rs | 1 +
p2p/src/utils/limited.rs | 47 +-
p2p/src/utils/mod.rs | 28 +-
p2p/src/utils/mux.rs | 97 +-
parallel/Cargo.toml | 3 +-
parallel/README.md | 2 +-
parallel/src/lib.rs | 893 +++++----
pipeline/minimmit/minimmit.md | 2 +-
pipeline/minimmit/quint/replica.qnt | 2 +-
resolver/Cargo.toml | 2 +-
resolver/README.md | 2 +-
resolver/src/lib.rs | 179 +-
resolver/src/p2p/config.rs | 6 +-
resolver/src/p2p/engine.rs | 396 ++--
resolver/src/p2p/fetcher.rs | 11 +-
resolver/src/p2p/ingress.rs | 7 +-
resolver/src/p2p/mocks/consumer.rs | 7 +-
resolver/src/p2p/mocks/producer.rs | 3 +-
resolver/src/p2p/mod.rs | 86 +-
runtime/Cargo.toml | 11 +-
runtime/README.md | 2 +-
runtime/conformance.toml | 6 +-
runtime/fuzz/Cargo.toml | 1 -
runtime/fuzz/fuzz_targets/blob_integrity.rs | 39 +-
runtime/fuzz/fuzz_targets/buffer.rs | 60 +-
runtime/src/benchmarks/mod.rs | 2 +-
runtime/src/deterministic.rs | 487 ++++-
runtime/src/iobuf/mod.rs | 2062 ++++++++++++++++++++
runtime/src/iobuf/pool.rs | 1944 ++++++++++++++++++
runtime/src/iouring/mod.rs | 112 +-
runtime/src/lib.rs | 2022 ++++++++++++-------
runtime/src/macros.rs | 6 +
runtime/src/mocks.rs | 270 ++-
runtime/src/network/audited.rs | 53 +-
runtime/src/network/deterministic.rs | 24 +-
runtime/src/network/iouring.rs | 291 ++-
runtime/src/network/metered.rs | 35 +-
runtime/src/network/mod.rs | 161 +-
runtime/src/network/tokio.rs | 166 +-
runtime/src/process/mod.rs | 3 +-
runtime/src/storage/audited.rs | 36 +-
runtime/src/storage/faulty.rs | 694 +++++++
runtime/src/storage/iouring.rs | 118 +-
runtime/src/storage/memory.rs | 21 +-
runtime/src/storage/metered.rs | 32 +-
runtime/src/storage/mod.rs | 541 ++---
runtime/src/storage/tokio/fallback.rs | 45 +-
runtime/src/storage/tokio/mod.rs | 14 +-
runtime/src/storage/tokio/unix.rs | 36 +-
runtime/src/tokio/runtime.rs | 136 +-
runtime/src/utils/buffer/benches/append.rs | 37 +
runtime/src/utils/buffer/benches/bench.rs | 42 +
runtime/src/utils/buffer/benches/read.rs | 57 +
runtime/src/utils/buffer/mod.rs | 188 +-
runtime/src/utils/buffer/{pool => paged}/append.rs | 488 +++--
.../buffer/{pool/page_cache.rs => paged/cache.rs} | 316 +--
runtime/src/utils/buffer/{pool => paged}/mod.rs | 30 +-
runtime/src/utils/buffer/{pool => paged}/read.rs | 39 +-
runtime/src/utils/buffer/read.rs | 36 +-
runtime/src/utils/buffer/write.rs | 142 +-
runtime/src/utils/cell.rs | 141 +-
runtime/src/utils/handle.rs | 3 +-
runtime/src/utils/mod.rs | 231 ++-
runtime/src/utils/signal.rs | 7 +-
scripts/find_unstable_public.sh | 112 ++
scripts/rustc_stability_wrapper.sh | 10 +
storage/Cargo.toml | 11 +-
storage/README.md | 2 +-
storage/conformance.toml | 26 +-
storage/fuzz/Cargo.toml | 17 +-
storage/fuzz/fuzz_targets/archive_operations.rs | 4 +-
storage/fuzz/fuzz_targets/bmt_operations.rs | 152 +-
storage/fuzz/fuzz_targets/cache_operations.rs | 32 +-
.../fuzz_targets/current_ordered_operations.rs | 16 +-
.../fuzz_targets/current_unordered_operations.rs | 14 +-
storage/fuzz/fuzz_targets/extract_pinned_nodes.rs | 4 +-
.../fuzz/fuzz_targets/fixed_journal_operations.rs | 24 +-
storage/fuzz/fuzz_targets/freezer_operations.rs | 4 +-
.../fuzz/fuzz_targets/journal_crash_recovery.rs | 595 ++++++
storage/fuzz/fuzz_targets/mmr_bitmap.rs | 133 +-
storage/fuzz/fuzz_targets/mmr_journaled.rs | 77 +-
.../fuzz_targets/mmr_journaled_crash_recovery.rs | 388 ++++
storage/fuzz/fuzz_targets/mmr_operations.rs | 28 +-
storage/fuzz/fuzz_targets/ordinal_operations.rs | 6 +-
storage/fuzz/fuzz_targets/oversized_recovery.rs | 19 +-
storage/fuzz/fuzz_targets/proof_store.rs | 4 +-
storage/fuzz/fuzz_targets/proofs_malleability.rs | 301 +--
storage/fuzz/fuzz_targets/qmdb_any_fixed_sync.rs | 28 +-
.../fuzz/fuzz_targets/qmdb_any_variable_sync.rs | 19 +-
storage/fuzz/fuzz_targets/qmdb_immutable.rs | 20 +-
storage/fuzz/fuzz_targets/qmdb_keyless.rs | 20 +-
storage/fuzz/fuzz_targets/qmdb_ordered_batching.rs | 4 +-
.../fuzz/fuzz_targets/qmdb_ordered_operations.rs | 23 +-
.../fuzz/fuzz_targets/qmdb_unordered_operations.rs | 11 +-
storage/fuzz/fuzz_targets/store_operations.rs | 21 +-
storage/fuzz/fuzz_targets/verify_proof.rs | 6 +-
storage/src/archive/benches/utils.rs | 10 +-
storage/src/archive/conformance.rs | 6 +-
storage/src/archive/immutable/mod.rs | 26 +-
storage/src/archive/immutable/storage.rs | 5 +-
storage/src/archive/mod.rs | 30 +-
storage/src/archive/prunable/mod.rs | 64 +-
storage/src/archive/prunable/storage.rs | 9 +-
storage/src/bitmap/authenticated.rs | 446 +++--
storage/src/bitmap/mod.rs | 5 +-
storage/src/bmt/benches/prove_range.rs | 2 +-
storage/src/bmt/mod.rs | 1155 ++++-------
storage/src/cache/mod.rs | 46 +-
storage/src/cache/storage.rs | 5 +-
storage/src/freezer/benches/utils.rs | 6 +-
storage/src/freezer/conformance.rs | 64 +
storage/src/freezer/mod.rs | 180 +-
storage/src/freezer/storage.rs | 211 +-
storage/src/index/benches/insert.rs | 4 +
storage/src/index/mod.rs | 152 +-
storage/src/index/partitioned/ordered.rs | 2 +-
storage/src/index/partitioned/unordered.rs | 2 +-
storage/src/index/storage.rs | 19 +-
storage/src/journal/authenticated.rs | 362 ++--
storage/src/journal/benches/bench.rs | 8 +-
storage/src/journal/conformance.rs | 13 +-
storage/src/journal/contiguous/fixed.rs | 1532 ++++++++++++---
storage/src/journal/contiguous/mod.rs | 49 +-
storage/src/journal/contiguous/tests.rs | 315 ++-
storage/src/journal/contiguous/variable.rs | 1024 +++++++---
storage/src/journal/mod.rs | 4 +-
storage/src/journal/segmented/fixed.rs | 227 +--
storage/src/journal/segmented/glob.rs | 32 +-
storage/src/journal/segmented/manager.rs | 39 +-
storage/src/journal/segmented/oversized.rs | 159 +-
storage/src/journal/segmented/variable.rs | 257 ++-
storage/src/kv/mod.rs | 16 +-
storage/src/lib.rs | 90 +-
storage/src/metadata/mod.rs | 176 +-
storage/src/metadata/storage.rs | 132 +-
storage/src/mmr/benches/append.rs | 5 +-
storage/src/mmr/benches/append_additional.rs | 9 +-
storage/src/mmr/benches/prove_many_elements.rs | 5 +-
storage/src/mmr/benches/prove_single_element.rs | 5 +-
storage/src/mmr/benches/update.rs | 14 +-
storage/src/mmr/conformance.rs | 43 +
storage/src/mmr/grafting.rs | 257 +--
storage/src/mmr/hasher.rs | 48 +-
storage/src/mmr/iterator.rs | 6 +-
storage/src/mmr/journaled.rs | 779 +++++---
storage/src/mmr/location.rs | 77 +
storage/src/mmr/mem.rs | 496 ++---
storage/src/mmr/mod.rs | 13 +-
storage/src/mmr/position.rs | 85 +-
storage/src/mmr/proof.rs | 264 +--
storage/src/mmr/stability.rs | 221 ---
storage/src/mmr/verification.rs | 30 +-
storage/src/ordinal/mod.rs | 226 ++-
storage/src/ordinal/storage.rs | 11 +-
storage/src/qmdb/any/db.rs | 69 +-
storage/src/qmdb/any/mod.rs | 23 +-
storage/src/qmdb/any/operation/fixed.rs | 2 +-
storage/src/qmdb/any/operation/mod.rs | 9 +-
storage/src/qmdb/any/operation/update/ordered.rs | 2 +-
storage/src/qmdb/any/operation/update/unordered.rs | 2 +-
storage/src/qmdb/any/operation/variable.rs | 2 +-
storage/src/qmdb/any/ordered/fixed.rs | 180 +-
storage/src/qmdb/any/ordered/mod.rs | 69 +-
storage/src/qmdb/any/ordered/variable.rs | 169 +-
storage/src/qmdb/any/sync/mod.rs | 286 +++
.../any/{unordered/sync_tests.rs => sync/tests.rs} | 538 ++++-
.../qmdb/any/unordered/{fixed/mod.rs => fixed.rs} | 101 +-
storage/src/qmdb/any/unordered/fixed/sync.rs | 675 -------
storage/src/qmdb/any/unordered/mod.rs | 185 +-
.../any/unordered/{variable/mod.rs => variable.rs} | 153 +-
storage/src/qmdb/any/unordered/variable/sync.rs | 402 ----
storage/src/qmdb/benches/bench.rs | 13 -
storage/src/qmdb/benches/fixed/generate.rs | 29 +-
storage/src/qmdb/benches/fixed/init.rs | 58 +-
storage/src/qmdb/benches/fixed/mod.rs | 74 +-
storage/src/qmdb/benches/generate_bench.rs | 17 +
storage/src/qmdb/benches/init_bench.rs | 15 +
.../{keyless_generate.rs => keyless/generate.rs} | 12 +-
storage/src/qmdb/benches/keyless/mod.rs | 3 +
storage/src/qmdb/benches/variable/generate.rs | 28 +-
storage/src/qmdb/benches/variable/init.rs | 53 +-
storage/src/qmdb/benches/variable/mod.rs | 69 +-
storage/src/qmdb/current/db.rs | 578 ++++++
storage/src/qmdb/current/mod.rs | 629 +++++-
storage/src/qmdb/current/ordered/db.rs | 383 ++++
storage/src/qmdb/current/ordered/fixed.rs | 1365 +------------
storage/src/qmdb/current/ordered/mod.rs | 125 +-
.../src/qmdb/current/ordered/test_trait_impls.rs | 257 +++
storage/src/qmdb/current/ordered/variable.rs | 853 ++++++++
storage/src/qmdb/current/proof.rs | 52 +-
storage/src/qmdb/current/unordered/db.rs | 253 +++
storage/src/qmdb/current/unordered/fixed.rs | 1266 +-----------
storage/src/qmdb/current/unordered/mod.rs | 125 ++
.../src/qmdb/current/unordered/test_trait_impls.rs | 257 +++
storage/src/qmdb/current/unordered/variable.rs | 623 ++++++
storage/src/qmdb/immutable/mod.rs | 217 +-
storage/src/qmdb/immutable/operation.rs | 2 +-
.../src/qmdb/immutable/{sync/mod.rs => sync.rs} | 348 ++--
storage/src/qmdb/keyless/mod.rs | 189 +-
storage/src/qmdb/keyless/operation.rs | 2 +-
storage/src/qmdb/mod.rs | 16 +-
storage/src/qmdb/store/batch.rs | 133 +-
storage/src/qmdb/store/db.rs | 157 +-
storage/src/qmdb/store/mod.rs | 13 +-
storage/src/qmdb/sync/database.rs | 80 +-
storage/src/qmdb/sync/engine.rs | 42 +-
storage/src/qmdb/sync/journal.rs | 85 +-
storage/src/qmdb/sync/resolver.rs | 357 +---
storage/src/qmdb/sync/target.rs | 4 +-
storage/src/qmdb/verify.rs | 130 +-
stream/Cargo.toml | 9 +-
stream/fuzz/Cargo.toml | 6 +-
stream/fuzz/fuzz_targets/connection.rs | 10 +-
stream/fuzz/fuzz_targets/e2e.rs | 34 +-
stream/fuzz/fuzz_targets/lazy_transport.rs | 6 +-
stream/fuzz/fuzz_targets/transport.rs | 10 +-
stream/src/encrypted.rs | 443 +++++
stream/src/lib.rs | 407 +---
stream/src/utils/codec.rs | 164 +-
utils/Cargo.toml | 4 +
utils/README.md | 2 +-
utils/conformance.toml | 4 +
utils/fuzz/Cargo.toml | 11 +-
.../fuzz/fuzz_targets/{channels.rs => channel.rs} | 14 +-
utils/fuzz/fuzz_targets/historical_bitmap.rs | 87 +-
utils/fuzz/fuzz_targets/lib_functions.rs | 10 -
utils/fuzz/fuzz_targets/stable_buf.rs | 191 --
utils/src/bitmap/historical/batch.rs | 514 -----
utils/src/bitmap/historical/bitmap.rs | 776 ++++++--
utils/src/bitmap/historical/mod.rs | 79 +-
utils/src/bitmap/historical/tests.rs | 653 +++----
utils/src/bitmap/mod.rs | 6 +-
utils/src/bitmap/prunable.rs | 2 +-
utils/src/{channels => channel}/fallible.rs | 42 +-
utils/src/{channels => channel}/mod.rs | 2 +
utils/src/{channels => channel}/ring.rs | 4 +-
utils/src/{channels => channel}/tracked.rs | 43 +-
utils/src/faults.rs | 29 -
utils/src/futures.rs | 117 +-
utils/src/lib.rs | 463 +++--
utils/src/rational.rs | 403 +++-
utils/src/rng.rs | 257 +++
utils/src/sequence/u32.rs | 6 +-
utils/src/sequence/u64.rs | 6 +-
utils/src/sequence/unit.rs | 4 +-
utils/src/stable_buf.rs | 125 --
utils/src/time.rs | 14 +-
utils/src/vec.rs | 2 +-
551 files changed, 46797 insertions(+), 24388 deletions(-)