Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
835 commits
Select commit Hold shift + click to select a range
b007e16
[vm sint] update test cases for `ty_interner`
junxzm1990 Oct 11, 2025
abf1425
[Compiler v2] support signed integers
junxzm1990 Sep 23, 2025
c487e0f
[compiler sint] update trans test results
junxzm1990 Oct 8, 2025
c94c50c
[compiler sint]: increase coverage of edge test cases
junxzm1990 Oct 8, 2025
455c4df
[compiler sint] update test case results
junxzm1990 Oct 9, 2025
950946f
[vm] Removing `IntegerValue` and Value wrapper
wrwg Sep 26, 2025
343997b
[vm] Add layout caches (#17788)
georgemitenkov Oct 12, 2025
3b8ff98
[txn-emitter] support for orderless txns
ibalajiarun Oct 5, 2025
7ca04d6
use txn summaries api instead of per txn api call
ibalajiarun Oct 6, 2025
ce0f691
support for orderless txn fa transfer
ibalajiarun Oct 7, 2025
b0b33ca
[replay] parallelize on chunk level
Oct 10, 2025
a1ad678
[move core] Allow Identifiers to contain `$` (#17814)
wrwg Oct 14, 2025
ef8d5ba
[lint] Added `empty_if` lint and tests
Helios-vmg Oct 9, 2025
047b4d8
Improved tests.
Helios-vmg Oct 10, 2025
52ae042
[compiler & language] Support builtin constant `__COMPILE_FOR_TESTING…
wrwg Oct 14, 2025
6319b6b
map modifiers (#17821)
igor-aptos Oct 14, 2025
e0b5356
[Keyless] Small improvements to logging and timeout.
JoshLind Oct 11, 2025
bbea594
[Keyless] Use spawn_blocking for crypto operations.
JoshLind Oct 12, 2025
28dc629
[Keyless] Make Firestore DB update async.
JoshLind Oct 12, 2025
b188fc5
[storage] lower compaction threads more
wqfish Oct 14, 2025
06d69ca
[Rest API] support for signed int
junxzm1990 Oct 3, 2025
4e73a99
[txt arg]: update recorded format
junxzm1990 Oct 14, 2025
d7abce7
OrderBook use of BigOrderedMap utilities to avoid double lookups (#17…
igor-aptos Oct 15, 2025
535c6b5
delete unused code (#17849)
rahxephon89 Oct 15, 2025
095f861
[benchmark] Enable layout caches for external benchmark (#17876)
georgemitenkov Oct 15, 2025
490e80c
add script to automate building and running with PGO (#17831)
vgao1996 Oct 15, 2025
d4ee6a8
Address security review feedback (#17874)
sitalkedia Oct 15, 2025
59e7c8c
[vm] Strengthen indexed ref checks (#16386)
georgemitenkov Oct 16, 2025
4bf49f7
[vm] Disable static checks for depth in favour of runtime checks (#17…
georgemitenkov Oct 16, 2025
eb5bb71
[Orderbook] Ability to return order actions when a maker order is pla…
sitalkedia Oct 16, 2025
a7258ab
[forge-stable] scheduled by PIES (#17888)
rustielin Oct 16, 2025
cbf533c
fix experiments flag and add it to prebuild (#17883)
rahxephon89 Oct 16, 2025
c5c5d54
Add sigma proofs to aptos-dkg (#17735)
waamm Oct 17, 2025
064ca48
[vm] keep MEMORY_LIMIT_EXCEEDED (#17851)
rahxephon89 Oct 17, 2025
d7c9f36
[linter] Added `needless_return` lint and tests
Helios-vmg Oct 7, 2025
abd1f56
Sorted linters.
Helios-vmg Oct 14, 2025
49c5e7f
Added test case.
Helios-vmg Oct 14, 2025
9fb4ab1
Rewritten is_empty_tuple() so it's clearer.
Helios-vmg Oct 17, 2025
2ea36f2
aptos-executor: move aptos-indexer-grpc-table-info to [dev-dependenci…
mkurnikov Oct 17, 2025
53829fb
remove `RTCaches` from `make_call_frame` as it's not used inside the …
mkurnikov Oct 17, 2025
f542561
new pepper param jwk issuer (#17894)
zjma Oct 17, 2025
bbff2b8
[gha] cleanup; move to PIES scheduler (#17890)
rustielin Oct 17, 2025
a1fa89e
[compiler] change default byte version of lang v2.3 to v9
junxzm1990 Oct 17, 2025
6200465
[vm] Make sure we cache index to avoid lookups via loader / interpret…
georgemitenkov Oct 17, 2025
40bb694
[Keyless] Add verify() call to pepper base logic.
JoshLind Oct 14, 2025
12b552c
[Aptos CLI] release CLI 7.10.0
junxzm1990 Oct 17, 2025
5b4f8e7
[table natives] fix double counting of memory usage (#17900)
vgao1996 Oct 17, 2025
84cc840
Print tps delta in benchmark
wqfish Oct 4, 2025
d739ca5
Fix comments for AccumulatorRangeProof
wqfish Oct 17, 2025
4c71aa3
[Orderbook] Various improvements to the bulk order event framework (#…
sitalkedia Oct 19, 2025
8171b52
[gha] fullnode-sync fix dump (#17905)
rustielin Oct 19, 2025
6fde6b5
Emit bulkOrderModified after bulkOrderCancel (#17891)
dermanyang Oct 20, 2025
bbe49e2
[Move Prover] add signed int support
junxzm1990 Sep 29, 2025
15ca214
[prover sint] unify error handling
junxzm1990 Oct 14, 2025
bb93d37
[prover sint] add test cases with error msg reported
junxzm1990 Oct 14, 2025
bc92b8f
[prover sint] support casting bitvector to sint
junxzm1990 Oct 15, 2025
e1c64b0
Add hiding KZG polynomial commitment scheme (#17896)
waamm Oct 20, 2025
243c43a
[compiler]: gate signed int types with language version
junxzm1990 Oct 19, 2025
3d4b6d1
[consensus] update the committed label
Oct 20, 2025
7979e94
[opt-proposal] enable by default
ibalajiarun Oct 21, 2025
77a8a2b
[smoke-test][optqs] add opt proposal handling to test_node_rewards
ibalajiarun Oct 21, 2025
706c8b3
[move linter] fix FPs due to sint
junxzm1990 Oct 21, 2025
48d90cf
[move] refactor option: step 2 (#17774)
rahxephon89 Oct 22, 2025
8b6c5de
Add validation for commission percentage in switch_operator (#17912)
GotenJBZ Oct 22, 2025
489a795
move some deps from `[dependencies]` to `[dev-dependencies]` where po…
mkurnikov Oct 22, 2025
113fe78
reconfigure manual inlining (#17819)
mkurnikov Oct 22, 2025
52ad39e
[vm] Remove static cache config in interpreter (#17913)
georgemitenkov Oct 22, 2025
c4ae233
Add DeKARTv2 zk range proof to aptos-dkg (#17925)
waamm Oct 22, 2025
c2760b5
[Move VM] fix `LdConst` on signed integers
junxzm1990 Oct 22, 2025
d5e10f3
[Storage] Use a single block cache for all major RocksDB instances
wqfish Oct 22, 2025
cc87494
[Keyless] Add constant-time checks for VUF in pepper service.
alinush Oct 16, 2025
c0e10b8
fix and reenable jwk smoke tests (#17948)
zjma Oct 23, 2025
3b06cbd
fix confusing errors when printing supported oidc providers on chain …
zjma Oct 23, 2025
f31f5f9
[gas] cache value sizes for read_ref, copy_loc (#17902)
vgao1996 Oct 23, 2025
e8a3205
[chore] bump gas version on main branch for 1.39 release
aptos-bot Oct 23, 2025
f82bfb6
update version (#17945)
rahxephon89 Oct 23, 2025
8f42023
[session][1/n] Introduce session API for extensions (#17522)
georgemitenkov Oct 23, 2025
bf5ea92
[session][2/n] GlobalValue to use Value (#17525)
georgemitenkov Oct 23, 2025
79e1bd8
[aptos-token-objects] Add test-only event data inspection functions f…
garciatroisi Oct 23, 2025
1e4f544
[session][3/n] MoveVM to use data cache trait (#17535)
georgemitenkov Oct 23, 2025
5e6f3f6
[move-prover] Fixing issues with reference parameters for function va…
wrwg Oct 23, 2025
610ce53
[Indexer-Grpc-V2] Add more logs. (#17921)
grao1991 Oct 23, 2025
97e7151
[Orderbook] Add support for order cancellation from place_maker_order…
sitalkedia Oct 23, 2025
68ed0d1
fix abi for option (#17955)
rahxephon89 Oct 24, 2025
16beac6
[APTOS CLI] release 7.10.1
junxzm1990 Oct 25, 2025
6693c9e
[compiler] Do not inline function with abort (#17950)
rahxephon89 Oct 25, 2025
90a5d8f
Improve BigOrderedMap.for_each_ref efficiency (#17926)
igor-aptos Oct 27, 2025
77ea387
[Keyless] Add critical startup invariant checks.
JoshLind Oct 22, 2025
e3fb8b7
Move unit test for monotonically increasing counter native function (…
vusirikala Oct 28, 2025
452b44a
[Move VM] optimize ReentrancyChecker (alternative approach) (#17877)
vgao1996 Oct 28, 2025
2dc388f
[Aptos CLI] release 7.10.2
junxzm1990 Oct 28, 2025
ecf0022
[Aptos CLI] update Cargo.toml for new version
junxzm1990 Oct 28, 2025
9ac1ec0
Inlines `drop_all_values` into `drop`, `swap_loc` into callsites to b…
mkurnikov Oct 28, 2025
659530d
fix (#17974)
rahxephon89 Oct 28, 2025
0ce3ac3
Initial serialization modifications for field element PVSS (#17969)
waamm Oct 29, 2025
966d69a
[Orderbook] Address critical security review feedback (#17959)
sitalkedia Oct 29, 2025
600aa44
In-Memory Cache Crate (#12312)
just-in-chang Oct 30, 2025
91a087c
[Orderbook] Address all non critical feedback from security review (#…
sitalkedia Oct 30, 2025
789c4ae
Set block cache size to 36GB for replay-verify
wqfish Oct 30, 2025
dacefa7
Make certain items in aptos crate public for external use (#17995)
banool Oct 30, 2025
409d603
[move linter] fix issues due to missing handling function values
junxzm1990 Oct 29, 2025
cb08499
Use monotonic counter in order book (#17980)
igor-aptos Oct 30, 2025
d4a27cf
[Orderbook] Various fixes and improvements to order events (#17997)
sitalkedia Oct 30, 2025
f2e95f1
fix visibility (#18006)
sitalkedia Oct 31, 2025
9405d9c
[forge] support emit mode in raw transactions workload
ibalajiarun Oct 24, 2025
09cdc5b
adjust duration
ibalajiarun Oct 24, 2025
b27c361
[emitter] reduce job setup time from total duration
ibalajiarun Oct 30, 2025
ee75ec4
Fix BulkOrder Prices Sizes Ordering for consistent function and event…
dermanyang Oct 31, 2025
957463f
[api] log trace context (#18000)
rustielin Oct 31, 2025
0d9a2b3
Hash-to-curve and Shamir secret sharing for `arkworks` (#17991)
waamm Oct 31, 2025
8ae6deb
Add detectors and test-cases
jgcrosta Jul 10, 2025
1643972
Update third_party/move/tools/move-linter/src/model_ast_lints/nested_…
jgcrosta Aug 30, 2025
30d8427
Change detector name to: collapsible_if
jgcrosta Aug 30, 2025
01cdf04
Fix test error and add requested one
jgcrosta Aug 30, 2025
3da6f76
Report only once in multiple collapsible-if chains
jgcrosta Aug 30, 2025
daf4ddc
Address comments
jgcrosta Oct 28, 2025
d251c8c
Reorder lints
jgcrosta Oct 28, 2025
6c5ca67
Fix some issues
jgcrosta Oct 28, 2025
acb83eb
[cli] Update script to support rocky linux in building (#18010)
gregnazario Nov 1, 2025
6dfaf07
[forge] upgrade deployer
ibalajiarun Nov 3, 2025
7ab3e78
[Mempool] Reduce max_sync_lag_before_unhealthy_secs to 30s
JoshLind Nov 2, 2025
3e1c577
Add permissions for actions in workflow (#17930)
jkao97 Nov 3, 2025
bbfb3a0
Use monotonic counter in order book (#18005)
igor-aptos Nov 3, 2025
bd5c048
[forge] increase chaos timeout
ibalajiarun Nov 3, 2025
e6e3e94
[buffer_manager] ack if commit vote round is highest committed round
ibalajiarun Oct 31, 2025
20120ba
Public parameters and associated types for new field PVSS (#18011)
waamm Nov 4, 2025
309b50c
aptos-experimental-layered-map: move `jemallocator` to `[dev-dependen…
mkurnikov Nov 4, 2025
a3b3991
[forge] upgrade deployer
ibalajiarun Nov 4, 2025
e86983e
make all `[build-dependencies]` `opt-level=3` for release build (#18015)
mkurnikov Nov 5, 2025
95c1f12
[move VM] fix remaining sint issues
junxzm1990 Nov 4, 2025
01a7a5e
pepper service should skip constant-time scalarMul check in dev mode.…
zjma Nov 5, 2025
ebacc96
fix replay (#18038)
rahxephon89 Nov 5, 2025
887a32a
add Groth16 arkworks proving benchmarks for keyless (#18032)
alinush Nov 5, 2025
2c73dbb
recalibrate bench (#18003)
igor-aptos Nov 5, 2025
0ded2af
[vm] Runtime tracing & post-commit replay infrastructure (#17678)
georgemitenkov Nov 5, 2025
6539ccf
[Fullnode Sync] Add support for historical data syncing.
JoshLind Nov 5, 2025
6d90d74
[fuzzer] Enhance transactional fuzzer and module cache management for…
zi0Black Nov 5, 2025
454ad08
[Orderbook] Add trigger condition to clearinghouse order info (#18014)
sitalkedia Nov 6, 2025
738d846
[Bulk order] Fail bulk order placement synchronously instead of an ev…
sitalkedia Nov 6, 2025
b3dc2c5
[crypto] range proof benchmarks
alinush Nov 5, 2025
f1ce471
switch to script
alinush Nov 5, 2025
72529a8
lints
alinush Nov 6, 2025
f6324ef
oops
alinush Nov 6, 2025
c5fd2db
[move value annotator] Cache FatType computation (#18013)
wrwg Nov 6, 2025
68b3162
Refactored so HKZG supports sigma protocols
waamm Nov 4, 2025
e72ec08
Simplifications to DeKART <-> HKZG
waamm Nov 4, 2025
45739f0
Added SCRAPE
waamm Nov 4, 2025
346eb07
Added group test to SCRAPE
waamm Nov 4, 2025
1743603
Refactored fiat-shamir for new PVSS
waamm Nov 4, 2025
47197c9
Small changes to comments
waamm Nov 4, 2025
0eaf35e
Added SCRAPE test but soundness is failing
waamm Nov 4, 2025
9ddcea3
Fixed bug
waamm Nov 4, 2025
d06d7c9
Fix lint
waamm Nov 4, 2025
fefdef4
Fix possible bug
waamm Nov 4, 2025
890e687
SCRAPE tests are bugged
waamm Nov 5, 2025
a198a27
Added diagram, still need to fix SCRAPE tests
waamm Nov 5, 2025
fa675b2
Working on debugging SCRAPE...
waamm Nov 5, 2025
26f1837
Small edit
waamm Nov 5, 2025
2713b61
Tests passing yay
waamm Nov 5, 2025
63c094f
Final comments
waamm Nov 5, 2025
6721e76
[State Sync] Bump max message size from 15MB to 20MB.
JoshLind Nov 6, 2025
94db6e7
[module view] move validation state to resource viewer
Oct 29, 2025
2bb62e7
[vm] introduce Instruction (vm-internal code representation) (#18046)
vgao1996 Nov 7, 2025
ca9b3a0
recalibrate single node perf (#18057)
igor-aptos Nov 7, 2025
72949fe
[benchmarks] Add fibonacci benchmark (#17988)
calintat Nov 7, 2025
f60b058
[compiler] Fix name which became invalid with Rust 2024 (#18055)
wrwg Nov 7, 2025
5405a47
[compiler] Use MASM for baselines of compiler tests (#18056)
wrwg Nov 7, 2025
0e1bbd4
[vm] Gas charging optimizations (#18030)
mkurnikov Nov 7, 2025
3cfa9d9
Fix localnet txn stream connection address (#18060)
banool Nov 7, 2025
673d69d
[vm] avoid cloning metadata
Nov 5, 2025
24ef37d
add e2e test for lib (#18048)
igor-aptos Nov 7, 2025
74943b9
fix txn index for gas profiling (#18034)
igor-aptos Nov 7, 2025
adfab69
[consensus] fix block gas limit in opt qs payload
Nov 6, 2025
cd873ea
[consensus] increse min txns per block
Nov 6, 2025
b264f30
[qs] reduce max txn per batch
Nov 6, 2025
5aabfdb
Add BSGS for new field PVSS (#18049)
waamm Nov 7, 2025
d8b0e9f
feat: add fail-fast flag to aptos move test (#17549)
joske Nov 8, 2025
fa75af3
feat: allow to suppress printing errors to stderr (#17737)
joske Nov 8, 2025
c6ae38e
[compiler] Avoid jumps to pure exit blocks (#18054)
wrwg Nov 8, 2025
9bcd460
`values_impl::Value` 48 bytes -> 32 bytes (#17968)
mkurnikov Nov 10, 2025
53827bb
[executor-benchmark] Support indexer grpc. (#18024)
grao1991 Nov 10, 2025
c531ae8
Various small edits to aptos-dkg (#18066)
waamm Nov 11, 2025
e7b2c9d
[compiler] Add a simplifier rule to replace `match` with `is` (#18070)
wrwg Nov 11, 2025
154b201
[localnet] Add support for using existing Docker network (#18079)
banool Nov 11, 2025
c94ee27
[CLI] Release version 7.11.0 (#18080)
banool Nov 11, 2025
1f6dca3
[vm][perf] Inline `TypeBuilder::check` (#18073)
mkurnikov Nov 12, 2025
6189316
[vm][perf] Get rid of closure in `Container::copy_value::copy_rc_ref_…
mkurnikov Nov 12, 2025
7ff0e29
[move compiler] address nits (#18092)
junxzm1990 Nov 12, 2025
64cb9ff
Rust 1.90
wqfish Nov 12, 2025
bfc7a4b
[consensus] add counters to preparer
Nov 12, 2025
b5aa9ee
[compiler] add visibility modifier to structs/enums: step 1 (#18022)
rahxephon89 Nov 13, 2025
6967d46
[move] Various bytecode optimizations (#18039)
georgemitenkov Nov 13, 2025
aa35f75
remove fill_id (#18096)
igor-aptos Nov 13, 2025
a406880
randomize order id to reduce conflicts (#18099)
igor-aptos Nov 13, 2025
5166000
[opt-proposal] cache opt blocks to support retrivals (#18108)
ibalajiarun Nov 14, 2025
236dc1c
[move-unit-test][CLI] override option module in move unit tests (#18105)
rahxephon89 Nov 14, 2025
f69994f
Migrate obsolete Runson parameter
sionescu Nov 14, 2025
1d018cd
Revert "Migrate obsolete Runson parameter" (#18132)
ibalajiarun Nov 15, 2025
345cac2
Add new field PVSS (#18077)
waamm Nov 15, 2025
1f76df4
[types] Introduce new payload for encrypted mempool (#17919)
ibalajiarun Nov 15, 2025
0747e09
[qs] SignedBatchInfo and ProofOfStore with Generic BatchInfo (#18062)
ibalajiarun Nov 16, 2025
663d6f6
[annotator] Avoid constructing and scanning values for tables (#18088)
wrwg Nov 17, 2025
2b478d3
revert unreleased BigOrderdedMap API (#18131)
igor-aptos Nov 17, 2025
c31852e
[indexer] Missed changes from PR#18088 (#18144)
wrwg Nov 17, 2025
c09a320
reconstruct edits (#18102)
rex1fernando Nov 17, 2025
344879b
[indexer] do not clone things if not needed (#18146)
georgemitenkov Nov 17, 2025
8c52ba7
Generic `WeightedConfig` (#18141)
rex1fernando Nov 18, 2025
535ff0f
[framework] generate a burn_ref to facilitate APT FA burning. (#18153)
lightmark Nov 18, 2025
bc1abc4
[replay-verify] Use performance images
wqfish Nov 18, 2025
0921493
[move-package] Split git handling logic into its own Rust file (#18147)
mkurnikov Nov 18, 2025
0e0f22c
[move package] fix unitfication of named addresses and remove addr_su…
vgao1996 Nov 19, 2025
3ed08bf
[docker] Install a newer version of clang
wqfish Nov 19, 2025
85f94e2
Edits for new field PVSS, focused on SoK (#18155)
waamm Nov 19, 2025
200e844
[vm] Move VM profiler (#18072)
calintat Nov 19, 2025
6b94793
[Faucet] Add Multi Asset support to the Aptos faucet (#18078)
0xmaayan Nov 19, 2025
a763b1b
[Storage] Enable filters for state kv
wqfish Nov 19, 2025
4f44a3d
[vm] Add stack size checking at function boundaries (#18167)
georgemitenkov Nov 20, 2025
c119c06
Edits around new field PVSS (#18172)
waamm Nov 20, 2025
bf2f2d8
release 7.11.1 (#18179)
rahxephon89 Nov 20, 2025
0d82cb3
Use the new runners for Docker Rust builds and checks
sionescu Nov 19, 2025
bab75db
Revert "Use the new runners for Docker Rust builds and checks"
sionescu Nov 20, 2025
a84bcc9
[forge] Enable upcoming VM features on forge (#18178)
georgemitenkov Nov 21, 2025
f134e67
[vm] Use &[Type] for native type args (#18171)
georgemitenkov Nov 21, 2025
e33e3c1
[executor] optimize ledger update
Nov 20, 2025
d6feb23
chore(m1): merge pre-license upstream e33e3c1b — mechanical conflicts…
rubujubi Jun 25, 2026
3f6d6ae
chore(merge): resolve feature-flag, foundation-type, and crate-rename…
rubujubi Jun 25, 2026
d52b140
resolve(aptos-vm): preserve full-size txn metering + abort-info-exact…
rubujubi Jun 25, 2026
7a4553f
resolve(move-vm): keep Movement verifier-config-digest module cache, …
rubujubi Jun 25, 2026
ffbd128
resolve(move-vm): adopt e33 deserialize-arg param + function-tag API …
rubujubi Jun 25, 2026
3ef4740
resolve(move-vm): adopt e33 VMConfig fields/defaults (config + prod_c…
rubujubi Jun 25, 2026
234f028
resolve(move-vm): adopt e33 interpreter refactor (struct-based ty_dep…
rubujubi Jun 25, 2026
d61b8e7
resolve(move-vm): adopt e33 flattened Value representation across mov…
rubujubi Jun 25, 2026
107e4b8
fix(move-vm): reconcile e33/m1 boundaries (popn_tys usize, ty_depth_c…
rubujubi Jun 25, 2026
bb23773
resolve(framework/gas): adopt e33 gas visitor/block-epilogue/natives,…
rubujubi Jun 25, 2026
7134fd1
resolve(storage): adopt e33 hot-state/auxiliary-infos, preserve Movem…
rubujubi Jun 25, 2026
f25bb53
resolve(framework): account (e33 _account), keep Movement fungible_as…
rubujubi Jun 25, 2026
820a014
resolve(infra): keep Movement CLI endpoints/release/CI runners; take …
rubujubi Jun 25, 2026
23e3006
resolve(test-infra): adopt e33 transactional-test-runner output (cros…
rubujubi Jun 25, 2026
55f20ce
resolve(framework): adopt e33 stake.move (BigOrderedMap + fee acquire…
rubujubi Jun 25, 2026
70bdc35
fix(timed-features): remove duplicate FixTableNativesMemoryDoubleCoun…
rubujubi Jun 25, 2026
8a43dbb
fix(move-vm): route transactional-tests verifier cache bypass through…
rubujubi Jun 25, 2026
b54c09b
resolve(consensus): union imports for e33 rebase (tier 1)
apenzk Jul 1, 2026
ac07d93
Resolve remaining consensus conflicts from the e33 rebase (#388)
apenzk Jul 1, 2026
a675251
resolve(e33): fix compile errors in vm-genesis and consensus rand tests
apenzk Jul 1, 2026
cc97e55
fix(cli): route Replay client through Movement rest_endpoint, qualify…
rubujubi Jul 1, 2026
7546f74
fix(rebase): align downstream code with e33 API changes
rubujubi Jul 2, 2026
ce1fa04
fix(framework): dedup ordered_map append tests and add fee acquires t…
rubujubi Jul 2, 2026
bc4ab3e
fix(migration): pin unsharded storage layout after e33 default flip
rubujubi Jul 2, 2026
f77b478
fix(move-vm): restore #354 verify-before-pack order in PackClosureGen…
rubujubi Jul 2, 2026
f283762
fix(move-vm-tests): regenerate closure_compare.exp for e33 test-runne…
rubujubi Jul 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
42 changes: 24 additions & 18 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,34 +8,40 @@ xclippy = [
"-Wunexpected_cfgs",
"-Dwarnings",
"-Wclippy::all", # TODO: at some point we need to clean up all the exceptions listed below
"-Aclippy::upper_case_acronyms",
"-Aclippy::enum-variant-names",
"-Aclippy::result-large-err",
"-Aclippy::mutable-key-type",
"-Aclippy::map_identity", # We temporarily ignore this due to: https://github.com/rust-lang/rust-clippy/issues/11764
"-Aclippy::doc_lazy_continuation",
"-Aclippy::collapsible_if",
"-Aclippy::collapsible_match",
"-Aclippy::needless_borrows_for_generic_args",
"-Anon_local_definitions",
"-Aclippy::needless_lifetimes",
"-Aclippy::empty_line_after_doc_comments",
"-Aclippy::manual-ok-err",
"-Aclippy::doc_lazy_continuation",
"-Aclippy::doc-overindented-list-items",
"-Aclippy::unneeded_struct_pattern",
"-Aclippy::manual_div_ceil",
"-Aclippy::manual-repeat-n",
"-Aclippy::empty_line_after_doc_comments",
"-Aclippy::enum-variant-names",
"-Aclippy::large-enum-variant",
"-Aclippy::mutable-key-type",
"-Aclippy::result-large-err",
"-Aclippy::sliced-string-as-bytes",
"-Aclippy::obfuscated-if-else",
"-Aclippy::unnecessary-map-or",
"-Aclippy::upper_case_acronyms",
]
x = "run --package aptos-cargo-cli --bin aptos-cargo-cli --"

[build]
rustflags = ["--cfg", "tokio_unstable", "-C", "force-frame-pointers=yes", "-C", "force-unwind-tables=yes"]

# TODO(grao): Figure out whether we should enable othaer cpu features, and whether we should use a different way to configure them rather than list every single one here.
[target.x86_64-unknown-linux-gnu]
rustflags = ["--cfg", "tokio_unstable", "-C", "link-arg=-fuse-ld=lld", "-C", "force-frame-pointers=yes", "-C", "force-unwind-tables=yes", "-C", "target-feature=+sse4.2"]
rustflags = [
"--cfg",
"tokio_unstable",
"-C",
"link-arg=-fuse-ld=lld",
"-C",
"force-frame-pointers=yes",
"-C",
"force-unwind-tables=yes",
"-C",
"target-cpu=x86-64-v3",
]

# Need this for RocksDB to build until its build script is fixed.
[env]
CXXFLAGS_x86_64_unknown_linux_gnu = "-mpclmul"

# 64 bit MSVC
[target.x86_64-pc-windows-msvc]
Expand Down
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
!**/*.mv
!**/*.rs
!**/*.mrb
!**/*.mpb
!**/*.errmap
!config/src/config/test_data
!aptos-move/aptos-gas-profiling/templates/
Expand Down
139 changes: 130 additions & 9 deletions .github/actions.bak/fullnode-sync/fullnode_sync.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,88 @@

# This script runs the fullnode-sync from the root of aptos-core.

# Useful file constants
# Network name constants
TESTNET_STRING = "testnet"
MAINNET_STRING = "mainnet"

# Config file constants
FAST_SYNC_BOOTSTRAPPING_MODE = "DownloadLatestStates" # The bootstrapping string for fast sync
FULLNODE_CONFIG_NAME = "public_full_node.yaml" # Relative to the aptos-core repo
FULLNODE_CONFIG_TEMPLATE_PATH = "config/src/config/test_data/public_full_node.yaml" # Relative to the aptos-core repo
GENESIS_BLOB_PATH = "https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/{network}/genesis.blob" # Location inside the aptos-networks repo
WAYPOINT_FILE_PATH = "https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/{network}/waypoint.txt" # Location inside the aptos-networks repo

# Service endpoint constants
LOCAL_METRICS_ENDPOINT = "http://127.0.0.1:9101/json_metrics" # The json metrics endpoint running on the local host
LOCAL_METRICS_ENDPOINT_TEXT = "http://127.0.0.1:9101/metrics" # The text metrics endpoint running on the local host
LOCAL_REST_ENDPOINT = "http://127.0.0.1:8080/v1" # The rest endpoint running on the local host
REMOTE_REST_ENDPOINTS = "https://api.{network}.aptoslabs.com/v1" # The remote rest endpoint

# API and metric constants
LEDGER_VERSION_API_STRING = "ledger_version" # The string to fetch the ledger version from the REST API
LEDGER_VERSION_METRICS_STRING = "aptos_state_sync_version.synced" # The string to fetch the ledger version from the metrics API
SYNCED_STATES_METRICS_STRING = "aptos_state_sync_version.synced_states" # The string to fetch the synced states from the metrics API

# Generic constants
MAX_TIME_BETWEEN_SYNC_INCREASES_SECS = 1800 # The number of seconds after which to fail if the node isn't syncing
REMOTE_REST_ENDPOINTS = "https://fullnode.{network}.aptoslabs.com/v1" # The remote rest endpoint
NUMBER_OF_HISTORICAL_TRANSACTIONS_TO_SYNC = 2000000 # The number of historical transactions to sync (when syncing from genesis)
SYNCING_DELTA_VERSIONS = 20000 # The number of versions to sync beyond the highest known at the job start
SYNCED_STATES_METRICS_STRING = "aptos_state_sync_version.synced_states" # The string to fetch the synced states from the metrics API
WAYPOINT_FILE_PATH = "https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/{network}/waypoint.txt" # Location inside the aptos-networks repo

# Testnet seed peer constants
TESTNET_SEED_PEERS = {
"2DA03E9D24E501741234047953A63ABC6D84193BE495C507C72F68269FB8B76A": {
"addresses": [
"/dns4/pfn1.usce1.fullnode.testnet.aptoslabs.com/tcp/6182/noise-ik/2DA03E9D24E501741234047953A63ABC6D84193BE495C507C72F68269FB8B76A/handshake/0"
],
"role": "Upstream",
},
"8B68819D267E19D44716B821CE499B79D258C86BB65E7A60884EC31FF987ED14": {
"addresses": [
"/dns4/pfn2.usce2.fullnode.testnet.aptoslabs.com/tcp/6182/noise-ik/8B68819D267E19D44716B821CE499B79D258C86BB65E7A60884EC31FF987ED14/handshake/0"
],
"role": "Upstream",
},
"76902CCCDBDC116894EBA1EDE36D1D2C3BE9155F21D731F6B4EBE17FC611DD00": {
"addresses": [
"/dns4/pfn1.euwe4.fullnode.testnet.aptoslabs.com/tcp/6182/noise-ik/76902CCCDBDC116894EBA1EDE36D1D2C3BE9155F21D731F6B4EBE17FC611DD00/handshake/0"
],
"role": "Upstream",
},
"2A8153A065E60FFE63E8B4285044972376FD06092FB8E877EBF72BE91198BB65": {
"addresses": [
"/dns4/pfn1.apne1.fullnode.testnet.aptoslabs.com/tcp/6182/noise-ik/2A8153A065E60FFE63E8B4285044972376FD06092FB8E877EBF72BE91198BB65/handshake/0"
],
"role": "Upstream",
},
}

# Mainnet seed peer constants
MAINNET_SEED_PEERS = {
"A118B9BBBB8670D026C59C494317F7B6AA449A8E1B6AE0F9A6D434478AD1CC35": {
"addresses": [
"/dns4/pfn1.usce1.fullnode.mainnet.aptoslabs.com/tcp/6182/noise-ik/A118B9BBBB8670D026C59C494317F7B6AA449A8E1B6AE0F9A6D434478AD1CC35/handshake/0"
],
"role": "Upstream",
},
"058D7AF7A9074D8E48255EC08EDD8AEE4D2120CA7FAC18E2A6DE9EC603FF7A66": {
"addresses": [
"/dns4/pfn2.usce1.fullnode.mainnet.aptoslabs.com/tcp/6182/noise-ik/058D7AF7A9074D8E48255EC08EDD8AEE4D2120CA7FAC18E2A6DE9EC603FF7A66/handshake/0"
],
"role": "Upstream",
},
"C0171305FEF577904C874D44C0A3821F830E9419D3AA3A40C29CA7DEA24F466F": {
"addresses": [
"/dns4/pfn3.usce1.fullnode.mainnet.aptoslabs.com/tcp/6182/noise-ik/C0171305FEF577904C874D44C0A3821F830E9419D3AA3A40C29CA7DEA24F466F/handshake/0"
],
"role": "Upstream",
},
"99A2C88D211A6FDF56B934BE039330B4E76EC5FEEE4989ACE4C7CD63B2F94C34": {
"addresses": [
"/dns4/pfn4.usce1.fullnode.mainnet.aptoslabs.com/tcp/6182/noise-ik/99A2C88D211A6FDF56B934BE039330B4E76EC5FEEE4989ACE4C7CD63B2F94C34/handshake/0"
],
"role": "Upstream",
},
}

def print_error_and_exit(error):
"""Prints the given error and exits the process"""
Expand Down Expand Up @@ -172,7 +239,7 @@ def monitor_fullnode_syncing(fullnode_process_handle, bootstrapping_mode, node_l
print(errors)

# Sleep for a few seconds while the fullnode synchronizes
time.sleep(10)
time.sleep(5)


def wait_for_fullnode_to_start(fullnode_process_handle):
Expand All @@ -191,8 +258,15 @@ def wait_for_fullnode_to_start(fullnode_process_handle):
api_index_response = ping_rest_api_index_page(LOCAL_REST_ENDPOINT, False)


def get_public_and_target_version(network):
def get_public_and_target_version(network, syncing_historical_data):
"""Calculates the syncing target version of the fullnode"""
# If we're syncing historical data, it will take too long to catch up
# to the head of the chain, so we only sync to a fixed target version.
if syncing_historical_data:
target_version = NUMBER_OF_HISTORICAL_TRANSACTIONS_TO_SYNC
print("Syncing historical data. Setting public and target version to: {target_version}".format(target_version=target_version))
return (target_version, target_version)

# Fetch the latest version from the public fullnode endpoint
public_fullnode_endpoint = REMOTE_REST_ENDPOINTS.format(network=network)
api_index_response = ping_rest_api_index_page(public_fullnode_endpoint, True)
Expand Down Expand Up @@ -231,7 +305,24 @@ def spawn_fullnode(git_ref, network, bootstrapping_mode, continuous_syncing_mode
return process_handle


def setup_fullnode_config(bootstrapping_mode, continuous_syncing_mode, data_dir_file_path):
def add_seed_peers(fullnode_config: dict, seed_peers: dict) -> None:
"""Adds the given seed peers to the public fullnode network of the given config"""
# Get the public fullnode network
public_network = None
for network in fullnode_config["full_node_networks"]:
if network.get("network_id") == "public": # The "public" fullnode network is the only network for PFNs
public_network = network
break

# Ensure we have the public fullnode network
if public_network is None:
print_error_and_exit("Exiting! Unable to find the public fullnode network in the config!")

# Add the seed peers to the public fullnode network
public_network["seeds"] = seed_peers


def setup_fullnode_config(network, bootstrapping_mode, continuous_syncing_mode, syncing_historical_data, data_dir_file_path):
"""Initializes and configures the fullnode config file"""
# Copy the node config template to the working directory
if not os.path.exists(FULLNODE_CONFIG_TEMPLATE_PATH):
Expand All @@ -253,6 +344,16 @@ def setup_fullnode_config(bootstrapping_mode, continuous_syncing_mode, data_dir_
# Avoid having to set ulimit configurations
fullnode_config['storage'] = {"ensure_rlimit_nofile": 0}

# Enable storage sharding (AIP-97)
fullnode_config['storage']['rocksdb_configs'] = {"enable_storage_sharding": True}

# If we're syncing historical data, we need to add seed peers
if syncing_historical_data:
if network == MAINNET_STRING:
add_seed_peers(fullnode_config, MAINNET_SEED_PEERS)
elif network == TESTNET_STRING:
add_seed_peers(fullnode_config, TESTNET_SEED_PEERS)

# Write the config file back to disk
with open(FULLNODE_CONFIG_NAME, "w") as file:
yaml.dump(fullnode_config, file)
Expand All @@ -266,6 +367,23 @@ def get_genesis_and_waypoint(network):
subprocess.run(["curl", "-s", "-O", waypoint_file_path])


def check_if_syncing_historical_data(network, bootstrapping_mode):
"""Determines if we're syncing historical data based on the network and bootstrapping mode"""
# If we're fast syncing, we're not syncing historical data
if bootstrapping_mode == FAST_SYNC_BOOTSTRAPPING_MODE:
print("The bootstrapping mode is fast sync! We're not syncing historical data.")
return False

# If we're on mainnet or testnet, we're syncing historical data
if network == TESTNET_STRING or network == MAINNET_STRING:
print("Syncing historical data on network: {network}. Bootstrapping mode: {bootstrapping_mode}".format(network=network, bootstrapping_mode=bootstrapping_mode))
return True

# Otherwise, default to not syncing historical data
print("Not syncing historical data by default. Network: {network}, Bootstrapping mode: {bootstrapping_mode}".format(network=network, bootstrapping_mode=bootstrapping_mode))
return False


def checkout_git_ref(git_ref):
"""Checkout the specified git ref. This assumes the working directory is aptos-core"""
subprocess.run(["git", "fetch"])
Expand Down Expand Up @@ -296,17 +414,20 @@ def main():
NODE_LOG_FILE_PATH = os.environ["NODE_LOG_FILE_PATH"]
METRICS_DUMP_FILE_PATH = os.environ["METRICS_DUMP_FILE_PATH"]

# Determine if we're syncing historical data
syncing_historical_data = check_if_syncing_historical_data(NETWORK, BOOTSTRAPPING_MODE)

# Check out the correct git ref (branch or commit hash)
checkout_git_ref(GIT_REF)

# Get the genesis blob and waypoint
get_genesis_and_waypoint(NETWORK)

# Setup the fullnode config
setup_fullnode_config(BOOTSTRAPPING_MODE, CONTINUOUS_SYNCING_MODE, DATA_DIR_FILE_PATH)
setup_fullnode_config(NETWORK, BOOTSTRAPPING_MODE, CONTINUOUS_SYNCING_MODE, syncing_historical_data, DATA_DIR_FILE_PATH)

# Get the public synced version and calculate the fullnode syncing target version
(public_version, target_version) = get_public_and_target_version(NETWORK)
(public_version, target_version) = get_public_and_target_version(NETWORK, syncing_historical_data)

# Spawn the fullnode
fullnode_process_handle = spawn_fullnode(GIT_REF, NETWORK, BOOTSTRAPPING_MODE, CONTINUOUS_SYNCING_MODE, NODE_LOG_FILE_PATH)
Expand Down
24 changes: 14 additions & 10 deletions .github/actions.bak/get-latest-docker-image-tag/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,18 +23,22 @@ runs:
ref: ${{ inputs.branch }}
path: checkout_branch
fetch-depth: 0

- uses: ./checkout_branch/.github/actions/python-setup # use python-setup from that branch
with:
pyproject_directory: checkout_branch/testsuite

- name: Determine image tag
id: determine-test-image-tag
# Forge relies on the default and failpoints variants
run: |
variants=(${{ inputs.variants }}) # split the variants string into an array
variants_args=()
for variant in "${variants[@]}"; do
variants_args+=("--variant" "$variant")
done
./testrun find_latest_image.py "${variants_args[@]}"
shell: bash
working-directory: checkout_branch/testsuite # the checkout_branch is a subdirectory
uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # pin@v3.0.2
with:
max_attempts: 5
timeout_minutes: 20
command: |
cd checkout_branch/testsuite
variants=(${{ inputs.variants }}) # split the variants string into an array
variants_args=()
for variant in "${variants[@]}"; do
variants_args+=("--variant" "$variant")
done
./testrun find_latest_image.py "${variants_args[@]}"
2 changes: 1 addition & 1 deletion .github/actions.bak/python-setup/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ inputs:
poetry_version:
description: "Poetry package manager version"
required: false
default: 1.2.2
default: 2.2.1

runs:
using: composite
Expand Down
16 changes: 14 additions & 2 deletions .github/actions.bak/wait-images-ci/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,29 @@ inputs:
description: "The number of seconds to wait for the images to be available"
required: false
default: "1800" # a sane default based on the longest observed build time on the main branch
PROFILE_RELEASE:
description: "If true, wait for the release default images to be available."
required: false
default: false
PROFILE_PERF:
description: "If true, wait for the performance images to be available."
required: false
default: false
FEATURE_FAILPOINTS:
description: "If true, wait for the failpoints images to be available."
required: false
default: false
runs:
using: composite
steps:
# Deps setup
- uses: actions/setup-node@v3
- uses: actions/setup-node@v4
with:
node-version-file: .node-version
- uses: pnpm/action-setup@v4

# The source code must be checkout out by the workflow that invokes this action.
- name: Run wait-images-ci
run: |
GCP_DOCKER_ARTIFACT_REPO=${{ inputs.GCP_DOCKER_ARTIFACT_REPO }} GIT_SHA=${{ inputs.GIT_SHA }} ./docker/wait-images-ci.mjs --wait-for-image-seconds=${{ inputs.WAIT_FOR_IMAGE_SECONDS }}
GCP_DOCKER_ARTIFACT_REPO=${{ inputs.GCP_DOCKER_ARTIFACT_REPO }} GIT_SHA=${{ inputs.GIT_SHA }} PROFILE_RELEASE=${{ inputs.PROFILE_RELEASE }} PROFILE_PERF=${{ inputs.PROFILE_PERF }} FEATURE_FAILPOINTS=${{ inputs.FEATURE_FAILPOINTS }} ./docker/wait-images-ci.mjs --wait-for-image-seconds=${{ inputs.WAIT_FOR_IMAGE_SECONDS }}
shell: bash
15 changes: 15 additions & 0 deletions .github/linters/semgrep/disallow-schedule-trigger.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
rules:
- id: disallow-schedule-in-github-workflow
languages:
- yaml
severity: ERROR
message: "schedule trigger is disallowed! Use `workflow_dispatch` instead. The workflow can instead be workflow_dispatched via PIES on a schedule"
patterns:
- pattern-inside: |
on:
...
- pattern: schedule
paths:
include:
- "/.github/workflows/*.yaml"
- "/.github/workflows/*.yml"
2 changes: 1 addition & 1 deletion .github/workflows.bak/backport-to-release-branches.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- name: Backport Action
uses: sorenlouv/backport-github-action@ad888e978060bc1b2798690dd9d03c4036560947
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
github_token: ${{ secrets.APTOS_BOT_PAT }}
add_original_reviewers: true

- name: Info log
Expand Down
Loading
Loading