Skip to content

[3.13] gh-63121: Refresh imaplib capabilities on state changes (GH-152752)#152865

Merged
serhiy-storchaka merged 2 commits into
python:3.13from
serhiy-storchaka:backport-c89b72a-3.13
Jul 5, 2026
Merged

[3.13] gh-63121: Refresh imaplib capabilities on state changes (GH-152752)#152865
serhiy-storchaka merged 2 commits into
python:3.13from
serhiy-storchaka:backport-c89b72a-3.13

Conversation

@serhiy-storchaka

@serhiy-storchaka serhiy-storchaka commented Jul 2, 2026

Copy link
Copy Markdown
Member

Manual backport of #152752; the bot could not cherry-pick cleanly because
3.13's _get_response has a different signature (an unrelated main-only
change), which was the only conflict. The ported change is otherwise
identical.

imaplib fetched the server capabilities only once, at connection time.
They are now also refreshed after a successful LOGIN or AUTHENTICATE, and
capabilities advertised in the server greeting are used, so methods such
as enable() see capabilities added after login (gh-103451).

(cherry picked from commit c89b72a)

Co-authored-by: Serhiy Storchaka storchaka@gmail.com

…GH-152752)

imaplib fetched the server capabilities only once, at connection time.
They are now also refreshed after a successful LOGIN or AUTHENTICATE,
from the CAPABILITY response the server sent or, if it sent none, by
querying it.  This lets methods such as enable() see capabilities added
after login, for example ENABLE on Gmail (pythongh-103451).

Capabilities advertised in the server greeting are now used too, saving
a redundant CAPABILITY command.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
(cherry picked from commit c89b72a)
@read-the-docs-community

read-the-docs-community Bot commented Jul 2, 2026

Copy link
Copy Markdown

@serhiy-storchaka serhiy-storchaka enabled auto-merge (squash) July 3, 2026 12:39
@serhiy-storchaka serhiy-storchaka merged commit c099aa1 into python:3.13 Jul 5, 2026
41 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