You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implements V15 `view fn` block: a top-level program component that reads
finalize-store state off-consensus and returns plaintext to external callers.
Allowed reads cover mappings, vectors, storage, `block.height`, and
`network.id`; writes, `async`, `call`, and `block.timestamp` are rejected.
View fns are leaves (snarkVM rejects `call` inside a view body) but can be
called from `final {}` blocks, `final fn` helpers, and hoisted `Finalize`
bodies. Cross-program views go through `is_cross_program_call_target` to
survive the inliner and monomorphizer. Interface conformance enforces
View↔View and Fn↔(Fn|EntryPoint).
Bumps snarkVM to 088684ed (PR #3253 head): finalize-calls-view plus
`many0` view bodies, so empty views compile to valid Aleo bytecode with
no dummy filler.
closes#29419
Copy file name to clipboardExpand all lines: Cargo.toml
+10-3Lines changed: 10 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -54,8 +54,8 @@ num-traits = "0.2"
54
54
once_cell = "1.21"
55
55
parking_lot = "0.12"
56
56
paste = "1.0"
57
-
rand = { version = "0.8", default-features = false }
58
-
rand_chacha = { version = "0.3", default-features = false }
57
+
rand = { version = "0.10", default-features = false }
58
+
rand_chacha = { version = "0.10", default-features = false }
59
59
rayon = "1.11"
60
60
regex = "1.11"
61
61
reqwest = { version = "0.13", features = ["blocking", "json"] }
@@ -69,7 +69,14 @@ serial_test = "3.1"
69
69
sha2 = "0.10"
70
70
similar = "2.6"
71
71
# We enable "test_consensus_heights" to give developers freedom to set custom consensus version upgrade heights and "test_targets" because the devnode's genesis block was created with the same feature flag.
72
-
snarkvm = { version = "4.6.0", features = [ "test_consensus_heights", "dev_skip_checks", "test_targets" ] }
72
+
# TODO: switch back to a published version once a release is cut after snarkVM PRs #3238 (read-only `view` functions, V15), #3257 (`query` → `view` rename), and #3253 (finalize-calls-view) merge into `staging`.
73
+
# `history` is required to compile `Process::evaluate_view_with_history`, the public-facing view entry point.
0 commit comments