Skip to content

Commit

Permalink
[no ci] migration notes
Browse files Browse the repository at this point in the history
  • Loading branch information
benesjan committed Jan 21, 2025
1 parent 7de1735 commit 7e548e7
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions docs/docs/migration_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,27 @@ This PR also renamed encrypted events to private events:
### [Aztec.nr] Removal of `getSiblingPath` oracle
Use `getMembershipWitness` oracle instead that returns both the sibling path and index.

### [Aztec.nr] Introduction of `Packable` trait
We have introduced a `Packable` trait that allows types to be serialized and deserialized with a focus on minimizing the size of the resulting Field array, even at the cost of additional constraints.
This is in contrast to the `Serialize` and `Deserialize` traits, which prioritize minimizing constraint costs but may result in larger arrays.
This is a breaking change because we now require `Packable` trait implementation for any type that is to be stored in contract storage.

Example implementation of Packable trait for `U128` type from `noir::std`:

```
use crate::traits::{Packable, ToField};
impl Packable<U128_PACKED_LEN> for U128 {
fn pack(self) -> [Field; U128_PACKED_LEN] {
[self.to_field()]
}
fn unpack(fields: [Field; U128_PACKED_LEN]) -> Self {
U128::from_integer(fields[0])
}
}
```

## 0.68.0
### [archiver, node, pxe] Remove contract artifacts in node and archiver and store function names instead
Contract artifacts were only in the archiver for debugging purposes. Instead function names are now (optionally) emitted
Expand Down

0 comments on commit 7e548e7

Please sign in to comment.