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
- A number of fixes related to checkpoints and persisting old headers, especially
27
+
when we try to persist headers that don't match the checkpoints.
28
+
29
+
- A new exception :class:`~eth.exceptions.CheckpointsMustBeCanonical` raised when persisting a
30
+
header that is not linked to a previously-saved checkpoint.
31
+
(note: we now explicitly save checkpoints)
32
+
- More broadly, any block persist that would cause the checkpoint to be decanonicalized will
33
+
raise the :class:`~eth.exceptions.CheckpointsMustBeCanonical`.
34
+
- Re-insert gaps in the chain when a checkpoint and (parent or child) header do not link
35
+
- De-canonicalize all children of orphans. (Previously, only decanonicalized headers with block
36
+
numbers that matched the new canonical headers)
37
+
- Added some new hypothesis tests to get more confidence that we covered most cases
38
+
- When filling a gap, if there's an existing child that is not a checkpoint and doesn't link to
39
+
the parent, then the parent block wins, and the child block is de-canonicalized (and gap added). (`#1929 <https://github.com/ethereum/py-evm/issues/1929>`__)
40
+
41
+
42
+
Internal Changes - for Contributors
43
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44
+
45
+
- Upgrade py-trie to the new v2.0.0-alpha.1, and pin it for stability. (`#1935 <https://github.com/ethereum/py-evm/issues/1935>`__)
46
+
- Improve the error when transaction nonce is invalid: include expected and actual. (`#1936 <https://github.com/ethereum/py-evm/issues/1936>`__)
0 commit comments