Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove urllib3 types (not before October 2023) #6898

Closed
Akuli opened this issue Jan 12, 2022 · 6 comments · Fixed by #10812
Closed

Remove urllib3 types (not before October 2023) #6898

Akuli opened this issue Jan 12, 2022 · 6 comments · Fixed by #10812
Labels
stubs: removal Pending removal of third-party distributions

Comments

@Akuli
Copy link
Collaborator

Akuli commented Jan 12, 2022

#6858 added stubs for urllib3. It might have been a mistake, because urllib3 seems to have its own type annotations and even a py.typed marker, making the stubs unnecessary.

@hauntsaninja
Copy link
Collaborator

They wrote up a nice article about the process too :-) https://sethmlarson.dev/blog/2021-10-18/tests-arent-enough-case-study-after-adding-types-to-urllib3

@srittau srittau added the stubs: removal Pending removal of third-party distributions label Jan 12, 2022
@srittau
Copy link
Collaborator

srittau commented Jan 12, 2022

The latest released version of urllib3 (1.26.8) doesn't include the marker yet. I assume that the next major version, which will drop Python 2 support, will include it. Six months after that version's release, we can drop our version of the types.

@srittau srittau changed the title urllib3 has inline type hints and a py.typed marker Remove urllib3 types (not before ?) Jan 12, 2022
@JelleZijlstra
Copy link
Member

Note that the master branch of urllib3 is not what it is currently releasing; the current release doesn't have the types yet. This confused us for a while in #6892.

@kkirsche
Copy link
Contributor

As a status update here, the migration plan is documented here:
https://urllib3.readthedocs.io/en/stable/v2-roadmap.html#release-and-migration-schedule

In this, it includes:

Release v1.26.0 with deprecation warnings for v2.0.0 breaking changes. This will be the last non-patch release within the v1.x stream.

The current release is 1.26.11 and includes the warnings:
https://github.com/urllib3/urllib3/releases/tag/1.26.11

At this time, the following item has not yet occurred:

Release v2.0.0-alpha1 once all breaking changes have been completed. We’ll wait for users to report issues, bugs, and unexpected breakages at this stage to ensure the release v2.0.0 goes smoothly.

Current 2.0 progress can be viewed here, and is currently at 86% complete, with at least one open pull request to address dropping older OpenSSL versions:
https://github.com/urllib3/urllib3/milestone/6

@kkirsche
Copy link
Contributor

2.0.0 was released on Wednesday, April 26, 2023, at 1:20 PM EDT

https://github.com/urllib3/urllib3/releases/tag/2.0.0

@AlexWaygood AlexWaygood changed the title Remove urllib3 types (not before ?) Remove urllib3 types (not before October 2023) Apr 26, 2023
@AlexWaygood
Copy link
Member

We should remember to do #10142 when we do this (it can't be done before, or pyright will start flagging discrepancies between the inline types in urllib3 and the stubs for urllib3 we have in typeshed)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stubs: removal Pending removal of third-party distributions
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants