typeshed icon indicating copy to clipboard operation
typeshed copied to clipboard

Remove urllib3 types (not before ?)

Open Akuli opened this issue 3 years ago • 4 comments

#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.

Akuli avatar Jan 12 '22 09:01 Akuli

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

hauntsaninja avatar Jan 12 '22 09:01 hauntsaninja

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 avatar Jan 12 '22 09:01 srittau

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.

JelleZijlstra avatar Jan 12 '22 11:01 JelleZijlstra

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 avatar Aug 18 '22 13:08 kkirsche

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

kkirsche avatar Apr 26 '23 21:04 kkirsche

We should remember to do https://github.com/python/typeshed/issues/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)

AlexWaygood avatar Jul 08 '23 10:07 AlexWaygood