Skip to content

Commit 8dd497a

Browse files
lithomas1mroeschke
andauthored
DOC: Update release instructions (#56232)
* DOC: Update release instructions * revert accidental changes * Update maintaining.rst * Update doc/source/development/maintaining.rst Co-authored-by: Matthew Roeschke <[email protected]> --------- Co-authored-by: Matthew Roeschke <[email protected]>
1 parent e8f0598 commit 8dd497a

File tree

2 files changed

+15
-14
lines changed

2 files changed

+15
-14
lines changed

doc/source/development/maintaining.rst

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -449,9 +449,13 @@ which will be triggered when the tag is pushed.
449449
git tag -a v1.5.0.dev0 -m "DEV: Start 1.5.0"
450450
git push upstream main --follow-tags
451451

452-
3. Build the source distribution (git must be in the tag commit)::
452+
3. Download the source distribution and wheels from the `wheel staging area <https://anaconda.org/scientific-python-nightly-wheels/pandas>`_.
453+
Be careful to make sure that no wheels are missing (e.g. due to failed builds).
453454

454-
./setup.py sdist --formats=gztar --quiet
455+
Running scripts/download_wheels.sh with the version that you want to download wheels/the sdist for should do the trick.
456+
This script will make a ``dist`` folder inside your clone of pandas and put the downloaded wheels and sdist there::
457+
458+
scripts/download_wheels.sh <VERSION>
455459

456460
4. Create a `new GitHub release <https://github.com/pandas-dev/pandas/releases/new>`_:
457461

@@ -463,23 +467,19 @@ which will be triggered when the tag is pushed.
463467
- Set as the latest release: Leave checked, unless releasing a patch release for an older version
464468
(e.g. releasing 1.4.5 after 1.5 has been released)
465469

466-
5. The GitHub release will after some hours trigger an
470+
5. Upload wheels to PyPI::
471+
472+
twine upload pandas/dist/pandas-<version>*.{whl,tar.gz} --skip-existing
473+
474+
6. The GitHub release will after some hours trigger an
467475
`automated conda-forge PR <https://github.com/conda-forge/pandas-feedstock/pulls>`_.
476+
(If you don't want to wait, you can open an issue titled ``@conda-forge-admin, please update version`` to trigger the bot.)
468477
Merge it once the CI is green, and it will generate the conda-forge packages.
478+
469479
In case a manual PR needs to be done, the version, sha256 and build fields are the
470480
ones that usually need to be changed. If anything else in the recipe has changed since
471481
the last release, those changes should be available in ``ci/meta.yaml``.
472482

473-
6. Packages for supported versions in PyPI are built automatically from our CI.
474-
Once all packages are build download all wheels from the
475-
`Anaconda repository <https://anaconda.org/multibuild-wheels-staging/pandas/files?version=\<version\>>`_
476-
where our CI published them to the ``dist/`` directory in your local pandas copy.
477-
You can use the script ``scripts/download_wheels.sh`` to download all wheels at once.
478-
479-
7. Upload wheels to PyPI::
480-
481-
twine upload pandas/dist/pandas-<version>*.{whl,tar.gz} --skip-existing
482-
483483
Post-Release
484484
````````````
485485

scripts/download_wheels.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
# one by one to the dist/ directory where they would be generated.
1212

1313
VERSION=$1
14+
mkdir -p $(dirname -- $0)/../dist
1415
DIST_DIR="$(realpath $(dirname -- $0)/../dist)"
1516

1617
if [ -z $VERSION ]; then
@@ -20,7 +21,7 @@ fi
2021

2122
curl "https://anaconda.org/multibuild-wheels-staging/pandas/files?version=${VERSION}" | \
2223
grep "href=\"/multibuild-wheels-staging/pandas/${VERSION}" | \
23-
sed -r 's/.*<a href="([^"]+\.whl)">.*/\1/g' | \
24+
sed -r 's/.*<a href="([^"]+\.(whl|tar.gz))">.*/\1/g' | \
2425
awk '{print "https://anaconda.org" $0 }' | \
2526
xargs wget -P $DIST_DIR
2627

0 commit comments

Comments
 (0)