Release Guide#

This describes how to release the package. We basically follow the steps in Packaging Python Projects.

TestPyPI#

We may want to test the distribution before uploading the archives to the PyPI server. To this end, find the following lines in setup.py and change the project name to appfl-YOUR-NAME with a proper version.

setuptools.setup(
    name="appfl",
    version="0.0.1",
    ...
)

Note

Make sure to set a higher version if the same version exists in your TestPyPI server. You cannot upload the same version to the server.

Generating distribution archives#

Let’s make sure that dist directory is empty or does not exsit at the root of the repository, where pyproject.toml is located. Then, running the following command should generate a build distribution .whl and source archive .tar.gz files in the dist directory.

python -m build

Uploading the distribution archives#

We upload the distribution archives to the test server by the following command. This requires to have an account for TestPyPI.

twine upload --repository testpypi dist/*

Installing the new test package#

Once the distribution archives are uploaded, anyone can install the new test package by the following command:

pip install -i https://test.pypi.org/simple/ --extra-index-url=https://pypi.org/simple "appfl-YOUR-NAME[dev,examples,analytics]"

Release#

If the testing above is successfuly, we are ready to release the new package to the PyPI server. These are key steps to follow:

  • Let’s not forget to change the project name and set the version properly.

  • Generate the distribution archives as above.

  • Use twine upload dist/* to upload the distribution archives.