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
Change the internal representation of `EntryMode` to fix a round-trip
issue.
Prior to this change, both `b"040000"` and `b"40000"` mapped to
`0o40000u16`.
After this change,
* `b"040000"` is represented by `0o140000`
* `b"40000"` is represented by `0o40000`
*Tests*:
We can see in the `as_bytes` test that the behaviour is fixed now.
We also add a test to show we now can round-trip on the existing test
fixtures which contain examples of this situation.
*Performance*:
We pay a cost for this compared to the parent commit:
```
TreeRefIter() time: [50.403 ns 50.611 ns 50.830 ns]
change: [+8.6240% +9.0871% +9.5776%] (p = 0.00 < 0.05)
Performance has regressed.
```
but we already did enough optimizations to pay for this earlier in this
PR:
* `main`: `~55 ns`
* `parent`: `~46 ns`
* `this commit`: `~50 ns`
Fixes 1887
0 commit comments