This project is used to create binary packages of psycopg2. It creates:
- Source distribution package
- manylinux wheel packages
- OSX wheel packages
- Windows wheel and exe packages
When a new psycopg2 release is ready, just upload the submodule to the release tag and push:
cd psycopg2
git checkout 2_7_BETA_1
cd ..
git add psycopg2
git commit -m "Building packages for psycopg2 2.7 beta 1"
git push
The packages are built on Travis CI and AppVeyor CI, and uploaded on https://upload.psycopg.org/
Note
These are just minimal instruction to create test packages. To make a new public release please follow the instructions in psycopg2/doc/release.rst.
After the packages are uploaded they can be signed and uploaded on PyPI, e.g. using twine. Testing releases can be uploaded on Test PyPI.
You must have your ~/.pypirc
file configured__, e.g. :
[distutils]
index-servers =
pypi
testpypi
[pypi]
username: piro
password:<whatever>
[testpypi]
repository: https://test.pypi.org/legacy/
username: piro
password:<whatever>
Then you can download, sign, and release the packages:
rsync -arv psycopg-upload:psycopg2-2.7b1 .
# For a test release
twine upload -s -r testpypi psycopg2-2.7b1/*
You can test what just uploaded with:
# Make sure you have a version that understand wheels
pip install -U pip
# Install from testpypi
pip install -i https://testpypi.python.org/pypi --no-cache-dir psycopg2==2.7b1
# Check the version installed is the correct one and test if it works ok.
python -c "import psycopg2; print(psycopg2.__version__)"
# 2.7b1 (dt dec pq3 ext lo64)
python -c "import tests; tests.unittest.main(defaultTest='tests.test_suite')"