Skip to content

Release 2.11.0 - #7

Merged
aeoess merged 1 commit into
mainfrom
release/2.11.0
Aug 20, 2026
Merged

Release 2.11.0#7
aeoess merged 1 commit into
mainfrom
release/2.11.0

Conversation

@aeoess

@aeoess aeoess commented Aug 20, 2026

Copy link
Copy Markdown
Owner

Release 2.11.0.

What ships

Compatibility, read this before upgrading

Canonical JCS bytes move for integers whose decimal spelling differs from the binary64 serialization of the same value. 9007199254740992 and 9007199254740994 are unchanged. 9007199254740993 now emits 9007199254740992, 2^60 emits 1152921504606847000, and 2^68 emits 295147905179352830000.

A signature made by 2.10.0 or earlier over an affected value does not verify against bytes recomputed by 2.11.0. Such an artifact already failed for any peer recomputing through the RFC 8785 number domain, including the TypeScript and Go SDKs, so this release moves the failure to one place instead of leaving it to the peer.

Not code

Only CHANGELOG.md, README.md and pyproject.toml move in this PR. The code landed in #6.

Gate on this branch

845 tests pass. python -m build produces the 2.11.0 wheel and sdist.

After merge

Tag v2.11.0 on the merge commit. publish.yml publishes to PyPI over Trusted Publishing with PEP 740 attestations.

RFC 8785 integer domain alignment in canonicalize_jcs and the unsafe-integer
write policy at signing and new-write boundaries (#6).

Canonical JCS bytes move for integers whose decimal spelling differs from the
binary64 serialization of the same value, which is why the minor version moves.

Signed-off-by: Tymofii Pidlisnyi <tima@aeoess.com>
@aeoess
aeoess merged commit 2f10d50 into main Aug 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant