isidentical commented on code in PR #83:
URL: 
https://github.com/apache/arrow-datafusion-python/pull/83#discussion_r1032822354


##########
dev/release/README.md:
##########
@@ -19,18 +19,121 @@
 
 # DataFusion Python Release Process
 
-This is a work-in-progress that will be updated as we work through the next 
release.
-
 ## Preparing a Release Candidate
 
-- Update the version number in Cargo.toml
-- Generate changelog
-- Tag the repo with an rc tag e.g. `0.7.0-rc1`
-- Create tarball and upload to ASF
-- Start the vote
+### Tag the Repository
+
+```bash
+git tag 0.7.0-rc1
+git push apache 0.7.0-rc1
+```
+
+### Publish Python Wheels to testpypi
+
+Pushing an rc tag to master will cause a GitHub Workflow to run that will 
build the Python wheels.
+
+Go to https://github.com/apache/arrow-datafusion-python/actions and look for 
an action named "Python Release Build"
+that has run against the pushed tag.
+
+Click on the action and scroll down to the bottom of the page titled 
"Artifacts". Download `dist.zip`.
+
+Upload the wheels to testpypi.
+
+```bash
+unzip dist.zip
+python3 -m pip install --upgrade setuptools twine build
+python3 -m twine upload --repository testpypi datafusion-0.7.0-cp37-abi3-*.whl
+```
+
+### Create a source release
+
+```bash
+./dev/create_tarball 0.7.0 1
+```
+
+This will also create the email template to send to the mailing list. Here is 
an example:
+
+```
+To: d...@arrow.apache.org
+Subject: [VOTE][RUST][DataFusion] Release DataFusion Python Bindings 0.7.0 RC2
+Hi,
+
+I would like to propose a release of Apache Arrow DataFusion Python Bindings,
+version 0.7.0.
+
+This release candidate is based on commit: 
bd1b78b6d444b7ab172c6aec23fa58c842a592d7 [1]
+The proposed release tarball and signatures are hosted at [2].
+The changelog is located at [3].
+The Python wheels are located at [4].
+
+Please download, verify checksums and signatures, run the unit tests, and vote
+on the release. The vote will be open for at least 72 hours.
+
+Only votes from PMC members are binding, but all members of the community are
+encouraged to test the release and vote with "(non-binding)".
+
+The standard verification procedure is documented at 
https://github.com/apache/arrow-datafusion-python/blob/master/dev/release/README.md#verifying-release-candidates.
+
+[ ] +1 Release this as Apache Arrow DataFusion Python 0.7.0
+[ ] +0
+[ ] -1 Do not release this as Apache Arrow DataFusion Python 0.7.0 because...
+
+Here is my vote:
+
++1
+
+[1]: 
https://github.com/apache/arrow-datafusion-python/tree/bd1b78b6d444b7ab172c6aec23fa58c842a592d7
+[2]: 
https://dist.apache.org/repos/dist/dev/arrow/apache-arrow-datafusion-python-0.7.0-rc2
+[3]: 
https://github.com/apache/arrow-datafusion-python/blob/bd1b78b6d444b7ab172c6aec23fa58c842a592d7/CHANGELOG.md
+[4]: https://test.pypi.org/project/datafusion/0.7.0/
+```
+
+Create a draft email using this content, but do not send until after 
completing the next step.
+
+### Create Python Source Distribution
+
+Download the source tarball created in the previous step, untar it, and run:
+
+```bash
+python3 -m build
+```
+
+This will create a file named `dist/datafusion-0.7.0.tar.gz`. Upload this to 
testpypi:
+
+```bash
+python3 -m twine upload --repository testpypi dist/datafusion-0.7.0.tar.gz
+```
+
+### Send the Email
+
+Send the email to start the vote.
+
+## Verifying a Release
+
+```bash
+pip install --extra-index-url https://test.pypi.org/simple/ datafusion==0.7.0
+```
+
+## Publishing a Release
+
+### Publishing Apache Source Release
+
+Once the vote passes, we can publish the release.
+
+Create the source release tarball:
+
+```bash
+./dev/release-tarball.sh 0.7.0 1
+```
+
+### Publishing Python Artifacts
+
+Download the artifacts from testpypi and re-publish on PyPi using twine.

Review Comment:
   Should we also add the command for this?
   
   
   ````suggestion
   Go to the Test PyPI page of Datafusion, and download  [all published 
artifacts](https://test.pypi.org/project/datafusion/#files) under 
`dist-release/` directory. Then proceed uploading them using `twine`:
   
   ```py
   twine upload --repository pypi dist-release/*
   ```
   ````
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to