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
chore(docs): update migration notes relevant to v2.0.2
updates the migration notes in the docs. also fixes the background highlight color for dark mode search
Co-authored-by: Josh Crites <[email protected]>
Copy file name to clipboardExpand all lines: docs/docs/migration_notes.md
+46-43Lines changed: 46 additions & 43 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,44 +9,6 @@ Aztec is in full-speed development. Literally every version breaks compatibility
9
9
10
10
## TBD
11
11
12
-
## [Public functions]
13
-
14
-
The L2 gas cost of the different AVM opcodes have been updated to reflect more realistic proving costs. Developers should review the L2 gas costs of executing public functions and reevaluate any hardcoded L2 gas limits.
15
-
16
-
## [Aztec Tools]
17
-
18
-
### Contract compilation now requires two steps
19
-
20
-
The `aztec-nargo` command is now a direct pass-through to vanilla nargo, without any special compilation flags or postprocessing. Contract compilation for Aztec now requires two explicit steps:
21
-
22
-
1. Compile your contracts with `aztec-nargo compile`
23
-
2. Run postprocessing with the new `aztec-postprocess-contract` command
24
-
25
-
The postprocessing step includes:
26
-
27
-
- Transpiling functions for the Aztec VM
28
-
- Generating verification keys for private functions
29
-
- Caching verification keys for faster subsequent compilations
30
-
31
-
Update your build scripts accordingly:
32
-
33
-
```diff
34
-
- aztec-nargo compile
35
-
+ aztec-nargo compile
36
-
+ aztec-postprocess-contract
37
-
```
38
-
39
-
If you're using the `aztec-up` installer, the `aztec-postprocess-contract` command will be automatically installed alongside `aztec-nargo`.
40
-
41
-
## [Aztec.js] Mandatory `from`
42
-
43
-
As we prepare for a bigger `Wallet` interface refactor and the upcoming `WalletSDK`, a new parameter has been added to contract interactions, which now should indicate _explicitly_ the address of the entrypoint (usually the account contract) that will be used to authenticate the request. This will be checked in runtime against the current `this.wallet.getAddress()` value, to ensure consistent behavior while the rest of the API is reworked.
The L2 gas cost of the different AVM opcodes have been updated to reflect more realistic proving costs. Developers should review the L2 gas costs of executing public functions and reevaluate any hardcoded L2 gas limits.
131
+
132
+
## [Aztec Tools]
133
+
134
+
### Contract compilation now requires two steps
135
+
136
+
The `aztec-nargo` command is now a direct pass-through to vanilla nargo, without any special compilation flags or postprocessing. Contract compilation for Aztec now requires two explicit steps:
137
+
138
+
1. Compile your contracts with `aztec-nargo compile`
139
+
2. Run postprocessing with the new `aztec-postprocess-contract` command
140
+
141
+
The postprocessing step includes:
142
+
143
+
- Transpiling functions for the Aztec VM
144
+
- Generating verification keys for private functions
145
+
- Caching verification keys for faster subsequent compilations
146
+
147
+
Update your build scripts accordingly:
148
+
149
+
```diff
150
+
- aztec-nargo compile
151
+
+ aztec-nargo compile
152
+
+ aztec-postprocess-contract
153
+
```
154
+
155
+
If you're using the `aztec-up` installer, the `aztec-postprocess-contract` command will be automatically installed alongside `aztec-nargo`.
156
+
157
+
## [Aztec.js] Mandatory `from`
158
+
159
+
As we prepare for a bigger `Wallet` interface refactor and the upcoming `WalletSDK`, a new parameter has been added to contract interactions, which now should indicate _explicitly_ the address of the entrypoint (usually the account contract) that will be used to authenticate the request. This will be checked in runtime against the current `this.wallet.getAddress()` value, to ensure consistent behavior while the rest of the API is reworked.
Aztec is in full-speed development. Literally every version breaks compatibility with the previous ones. This page attempts to target errors and difficulties you might encounter when upgrading, and how to resolve them.
9
9
10
-
## TBD
10
+
## 2.0.2
11
11
12
12
## [Aztec Tools]
13
13
@@ -56,9 +56,9 @@ The private event emission API has been significantly reworked to provide cleare
56
56
1.`emit_event_in_private_log` has been renamed to `emit_event_in_private` and now takes a `delivery_mode` parameter instead of `constraints`
57
57
2.`emit_event_as_offchain_message` has been removed in favor of using `emit_event_in_private` with `MessageDelivery.UNCONSTRAINED_OFFCHAIN`
58
58
3.`PrivateLogContent` enum has been replaced with `MessageDelivery` enum with the following values:
59
-
-`CONSTRAINED_ONCHAIN`: For onchain delivery with cryptographic guarantees (replaces `CONSTRAINED_ENCRYPTION`)
60
-
-`UNCONSTRAINED_OFFCHAIN`: For offchain delivery without constraints
61
-
-`UNCONSTRAINED_ONCHAIN`: For onchain delivery without constraints (replaces `NO_CONSTRAINTS`)
59
+
-`CONSTRAINED_ONCHAIN`: For onchain delivery with cryptographic guarantees that recipients can discover and decrypt messages. Uses constrained encryption but is slower to prove. Best for critical messages that contracts need to verify.
60
+
-`UNCONSTRAINED_ONCHAIN`: For onchain delivery without encryption constraints. Faster proving but trusts the sender. Good when the sender is incentivized to perform encryption correctly (e.g. they are buying something and will only get it if the recipient sees the note). No guarantees that recipients will be able to find or decrypt messages.
61
+
-`UNCONSTRAINED_OFFCHAIN`: For offchain delivery (e.g. cloud storage) without constraints. Lowest cost since no onchain storage needed. Requires custom infrastructure for delivery. No guarantees that messages will be delivered or that recipients will ever find them.
62
62
63
63
### Contract functions can no longer be `pub` or `pub(crate)`
0 commit comments