Fixed proxy headers being used in the ConnectionKey hash when a proxy was not being used -- by :user:bdraco.
If default headers are used, they are also used for proxy headers. This could have led to creating connections that were not needed when one was already available.
This is a walkthrough of the NumPy 2.1.0 release on Linux, modified for
building with GitHub Actions and cibuildwheels and uploading to the
anaconda.org staging repository for NumPy <https://anaconda.org/multibuild-wheels-staging/numpy>_.
The commands can be copied into the command line, but be sure to replace 2.1.0
by the correct version. This should be read together with the
:ref:general release guide <prepare_release>.
Facility preparation
Before beginning to make a release, use the requirements/*_requirements.txt files to
ensure that you have the needed software. Most software can be installed with
pip, but some will require apt-get, dnf, or whatever your system uses for
software. You will also need a GitHub personal access token (PAT) to push the
documentation. There are a few ways to streamline things:
Git can be set up to use a keyring to store your GitHub personal access token.
Search online for the details.
You can use the keyring app to store the PyPI password for twine. See the
online twine documentation for details.
Prior to release
Add/drop Python versions
When adding or dropping Python versions, three files need to be edited:
.github/workflows/wheels.yml # for github cibuildwheel
.travis.yml # for cibuildwheel aarch64 builds
setup.py # for classifier and minimum version check.
Make these changes in an ordinary PR against main and backport if necessary.
Using the BLD: prefix (build label) for the commit summary will cause the
wheel builds to be run so that the changes will be tested, We currently release
wheels for new Python versions after the first Python rc once manylinux and
cibuildwheel support it. For Python 3.11 we were able to release within a week
of the rc1 announcement.
Backport pull requests
Changes that have been marked for this release must be backported to the
maintenance/2.1.x branch.
Update 2.1.0 milestones
... (truncated)
Commits
f5afe3d Merge pull request #27507 from charris/prepare-2.1.2
6b9ef48 REL: Prepare for the NumPy 2.1.2 release [wheel build]
6d85a24 MAINT: Pin setuptools for Python < 3.12 [wheel build]
7f327d8 Merge pull request #27506 from charris/backport-27503
09e9cd9 BUG: avoid segfault on bad arguments in ndarray.array_function
06b4793 Merge pull request #27501 from charris/backport-27495
364efb5 MAINT: Bump pypa/cibuildwheel from 2.21.1 to 2.21.2
df0e261 Merge pull request #27484 from ngoldbaum/use-weak-default
fa61bc6 Merge pull request #27481 from charris/backport-27472
d6d06ae Merge pull request #27480 from charris/backport-27475
urllib3 is raising ~$40,000 USD to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support for 2023. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects please consider contributing financially to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.
Fixed the default encoding of chunked request bodies to be UTF-8 instead of ISO-8859-1. All other methods of supplying a request body already use UTF-8 starting in urllib3 v2.0. (#3053)
Added support for Python 3.13. ([#3473](https://github.com/urllib3/urllib3/issues/3473) <https://github.com/urllib3/urllib3/issues/3473>__)
Bugfixes
Fixed the default encoding of chunked request bodies to be UTF-8 instead of ISO-8859-1.
All other methods of supplying a request body already use UTF-8 starting in urllib3 v2.0. ([#3053](https://github.com/urllib3/urllib3/issues/3053) <https://github.com/urllib3/urllib3/issues/3053>__)
Fixed ResourceWarning on CONNECT with Python `__)
Adjust tolerance for floating-point comparison on Windows to avoid flakiness in CI ([#3413](https://github.com/urllib3/urllib3/issues/3413) <https://github.com/urllib3/urllib3/issues/3413>__)
Fixed a crash where certain standard library hash functions were absent in restricted environments. ([#3432](https://github.com/urllib3/urllib3/issues/3432) <https://github.com/urllib3/urllib3/issues/3432>__)
Fixed mypy error when adding to HTTPConnection.default_socket_options. ([#3448](https://github.com/urllib3/urllib3/issues/3448) <https://github.com/urllib3/urllib3/issues/3448>__)
HTTP/2 (experimental)
HTTP/2 support is still in early development.
Excluded Transfer-Encoding: chunked from HTTP/2 request body ([#3425](https://github.com/urllib3/urllib3/issues/3425) <https://github.com/urllib3/urllib3/issues/3425>__)
Now only accepting supported h2 major version 4.x.x. ([#3290](https://github.com/urllib3/urllib3/issues/3290) <https://github.com/urllib3/urllib3/issues/3290>__)
Added a probing mechanism for determining whether a given target origin
supports HTTP/2 via ALPN. ([#3301](https://github.com/urllib3/urllib3/issues/3301) <https://github.com/urllib3/urllib3/issues/3301>__)
Add support for sending a request body with HTTP/2 ([#3302](https://github.com/urllib3/urllib3/issues/3302) <https://github.com/urllib3/urllib3/issues/3302>__)
Deprecations and Removals
Note for downstream distributors: the _version.py file has been removed and is now created at build time by hatch-vcs. ([#3412](https://github.com/urllib3/urllib3/issues/3412) <https://github.com/urllib3/urllib3/issues/3412>__)
Drop support for end-of-life PyPy3.8 and PyPy3.9. ([#3475](https://github.com/urllib3/urllib3/issues/3475) <https://github.com/urllib3/urllib3/issues/3475>__)
Updates the requirements on pulsefire, pygit2, gtts, asyncpg, aiohttp, uvloop, pillow, emoji, numpy, urllib3, matplotlib and psutil to permit the latest version. Updates
pulsefire
to 2.0.20Release notes
Sourced from pulsefire's releases.
Commits
9b8b921
fix: resync schemas typese6ac103
fix: resync schemas types6574e29
ci: fix subprocess port issues56011ec
ci: fix subprocess port issues7dff31e
ci: adapt new tests ci slow cpuc3e0caf
ci: fix new tests cia80d21d
ci: new tests cia4f1477
ci: new tests cieba01f1
build: v2.0.13 me1 region typedc22444
Merge pull request #10 from renja-g/add-me1-regionUpdates
pygit2
from 1.15.1 to 1.16.0Changelog
Sourced from pygit2's changelog.
Commits
0c2af70
Release 1.16.0bedf899
Update changelog30d49bf
Fix certificate check callback923cfaa
Update for Python 3.136f06cba
CI: update upload/download artifact9c79d3c
Add support for Python 3.13 and drop 3.9d8af938
Test Python 3.1312f6c35
* fixed discover_repository type annotation it return None incase no reposito...949b1c6
Review optionse19ea4d
Expose MWINDOW_FILE_LIMIT options from libgit2Updates
gtts
to 2.5.3Release notes
Sourced from gtts's releases.
Changelog
Sourced from gtts's changelog.
... (truncated)
Commits
dd4d138
chore(main): release 2.5.3 (#481)72a7e57
fix(langs): languages added:pt-PT
(Portuguese (Portugal)),yue
(Cantones...ee76a7d
build(deps): update pytest requirement from <8.3.0,>=7.1.3 to >=7.1.3,<8.4.0 ...1ef9dc3
build(deps): bump codecov/codecov-action from 4.4.1 to 4.5.0 (#472)e4846fe
build(deps): bump pypa/gh-action-pypi-publish from 1.8.14 to 1.9.0 (#473)Updates
asyncpg
from 0.29.0 to 0.30.0Release notes
Sourced from asyncpg's releases.
... (truncated)
Commits
bae282e
asyncpg v0.30.0965fb08
Fix release workflowf6ec755
Allow customizing connection state reset (#1191)3ef884e
Upgrade Sphinx3ee19ba
Add connect_fn kwarg to Pool to better support GCP's CloudSQL (#1170)73f2209
Addfetchmany
to execute many and return rows (#1175)b732b4f
tests: Attempt to inhibit spurious ConnectionResetError on Windows (#1190)cee97e1
Test on PostgreSQL 17 (#1189)3aa9894
Test and build on Python 3.13 (#1188)afdb05c
Add support for thesslnegotiation
parameter (#1187)Updates
aiohttp
from 3.9.5 to 3.10.10Release notes
Sourced from aiohttp's releases.
... (truncated)
Changelog
Sourced from aiohttp's changelog.
... (truncated)
Commits
47475c5
Release 3.10.10 (#9462)8b424c8
[PR #8456/b09d7cc backport][3.10] Add ClientConnectorDNSError for differentia...cdf3dca
[PR #9454/b20908e backport][3.10] Simplify DNS throttle implementation (#9457)ee87a04
[PR #9455/dfaafac0 backport][3.10] Fix AsyncResolver query fallback swallowin...ba9b33e
[PR #9451/216e082 backport][3.10] Fix AsyncResolver swallowing the error mess...bc9e5d6
[PR #9448/93e87c2e backport][3.10] Improve performance of fetching the conten...3ea557a
Increment version to 3.10.10.dev0b779432
Release 3.10.9 (#9415)08ada3e
[PR #9405/b96b01b backport][3.10] Only create the connection closed exception...978ed74
[PR #9406/24b0e6f backport][3.10] Add slots to timer helpers (#9411)Updates
uvloop
from 0.19.0 to 0.21.0Release notes
Sourced from uvloop's releases.
Commits
2e8feae
bump cibuildwheel version40e8a34
uvloop 0.21.079d5dcd
uvloop 0.21.0beta1fb5a139
Add cleanup_socket param on create_unix_server() (#623)3fba9fa
Updates for Cython3 (#587)3c3bbef
udp errors should result in protocol.error_received (#601)4083a94
Use cythonized SO_REUSEPORT rather than the unwrapped native one. (#609)2d35f10
uvloop 0.20.08511ba1
Inline _Py_RestoreSignals() from CPython (#604)deb2cf9
Fix Python version in README.rst (#599)Updates
pillow
from 10.4.0 to 11.0.0Release notes
Sourced from pillow's releases.
... (truncated)
Changelog
Sourced from pillow's changelog.
... (truncated)
Commits
204aae6
11.0.0 version bumpf2cc87b
Update CHANGES.rst [ci skip]c855e8e
Merge pull request #8464 from radarhere/imagemath_type_hintdc37515
Merge pull request #8463 from hugovk/update-3.13-datec3d81d6
Update Python 3.13 release datea60610c
Added type hintsa5c58f2
Merge pull request #8460 from hugovk/mit-cmue74994e
Update licence to MIT-CMUb5e1115
Update CHANGES.rst [ci skip]686b5e2
Merge pull request #8392 from radarhere/tiff_seekUpdates
emoji
from 2.12.1 to 2.14.0Release notes
Sourced from emoji's releases.
Changelog
Sourced from emoji's changelog.
Commits
3209717
Merge pull request #309 from cvzi/unicode-16-0ed7facc
Fix test960ebe7
Version bump 2.14.048baa01
Update JSON files to Unicode 16.0ad49ee6
Adapt documentation to the new utility scripts8f3005a
Utility scripts to create JSON files from Unicode.org datafb04264
Update init.pyc8e2749
Update CHANGES.md824fed5
Merge pull request #307 from cvzi/typing_extensions92e0d8c
Update changelog v2.13.1Updates
numpy
from 2.0.1 to 2.1.2Release notes
Sourced from numpy's releases.
... (truncated)
Changelog
Sourced from numpy's changelog.
... (truncated)
Commits
f5afe3d
Merge pull request #27507 from charris/prepare-2.1.26b9ef48
REL: Prepare for the NumPy 2.1.2 release [wheel build]6d85a24
MAINT: Pin setuptools for Python < 3.12 [wheel build]7f327d8
Merge pull request #27506 from charris/backport-2750309e9cd9
BUG: avoid segfault on bad arguments in ndarray.array_function06b4793
Merge pull request #27501 from charris/backport-27495364efb5
MAINT: Bump pypa/cibuildwheel from 2.21.1 to 2.21.2df0e261
Merge pull request #27484 from ngoldbaum/use-weak-defaultfa61bc6
Merge pull request #27481 from charris/backport-27472d6d06ae
Merge pull request #27480 from charris/backport-27475Updates
urllib3
from 2.2.2 to 2.2.3Release notes
Sourced from urllib3's releases.
Changelog
Sourced from urllib3's changelog.
Commits
2458bfc
Release 2.2.39b25db6
Only attempt to publish for upstreamb9adeef
Drop support for EOL PyPy3.8 and PyPy3.9b1d4649
Add explicit support for Python 3.13cc42860
Bump cryptography from 42.0.4 to 43.0.1 (#3470)3dae2e9
Bump pypa/gh-action-pypi-publish from 1.9.0 to 1.10.1 (#3469)1e94feb
Revert "Add TLS settings for HTTP/2 (#3456)" (#3466)aa73abc
Bump actions/setup-python from 5.1.0 to 5.2.0 (#3468)abbfbcb
Add 1.26.20 to changelog and make the publish workflow the same (#3464)d480615
Add TLS settings for HTTP/2 (#3456)Updates
matplotlib
from 3.9.1 to 3.9.2Release notes
Sourced from matplotlib's releases.
Commits
a254b68
REL: 3.9.2056f307
DOC: Create release notes for 3.9.28d867ce
Merge branch 'v3.9.1-doc' into v3.9.x7be8675
Merge pull request #28687 from QuLogic/static-msvc3ed3d7b
Merge pull request #28695 from meeseeksmachine/auto-backport-of-pr-27797-on-v...8a62afa
BLD: Include MSVCP140 runtime statically81be26f
Merge pull request