GeezerVison is showing github.com — Incorrect 3.15 what's new entry for `base64` module · Issue #155193 · python/cpython
Incorrect 3.15 what's new entry for base64 module #155193DescriptionDocumentation
As per https://docs.python.org/3.15/whatsnew/3.15.html#base64:
Added the canonical parameter in b32decode(), b32hexdecode(), b64decode(), urlsafe_b64decode(), a85decode(), b85decode(), and z85decode(), to reject encodings with non-zero padding bits or other non-canonical forms. (Contributed by Gregory P. Smith in gh-146311.)
(Introduced in #146312).
However, urlsafe_b64decode() is the only one without the parameter:
|
def urlsafe_b64decode(s, *, padded=False): |
Opening this issue as either:
- The what's new entry needs to be fixed.
urlsafe_b64decode() needs to get this new parameter too.
Can open a PR once decided.
Linked PRs
Activityadvitrocks9 commented on Aug 21, 2026 One half of this is already settled by the release schedule: 3.15 is at rc1, so canonical can't be added to urlsafe_b64decode() there whatever main decides. The What's New entry lists it anyway, and it never had the parameter, urlsafe_b64decode() calls binascii.a2b_base64() with a fixed argument list rather than going through b64decode(), so GH-146312 never reached it.
I can open the one-line docs fix for 3.15 plus the backport, and leave the question of adding the parameter in 3.16 to this issue. picnixz commented on Aug 22, 2026 @gpshead What's your take about that here? Do you want a canonical one for urlsafe (do you believe it's important for 3.15?)
One half of this is already settled by the release schedule: 3.15 is at rc1, so canonical can't be added to urlsafe_b64decode
Strictly speaking, it can. If this is considered a bug, it simply can be added. You don't need to rebuild Python for that so such changes can be accepted if the RM gives their approval (cc @hugovk). OTOH, we can just remove it from the What's New entry (less possibility of breakage) and add it in 3.16 only (I don't know how hard it's actually to add it). gpshead commented on Aug 22, 2026 it was an oversight, one function missed the addition of the parameter. removing it from the whats new entry is our process.
we'd have needed to catch this the final beta to do otherwise as it's an API addition. added a commit that references this issue on Aug 25, 2026gh-155193: Fix the *canonical* decoder lists in the 3.15 What's New a…
MetadataMetadataStatusShow more project fields
DevelopmentNo branches or pull requestsIssue actions
|