Files
@ 45a281a0f36f
Branch filter:
Location: kallithea/scripts/make-release - annotation
45a281a0f36f
2.4 KiB
text/plain
tests: Remove metaprogramming constructs for vcs test classes (issue #309):
- Removed use of the globals() and type() constructs to
programatically instantiate Git/Mercurial-specific test
classes. This should make it a bit clearer what tests are being run
at the expense of possible future VCS additions.
- Removed the SCM_TESTS VCS test configuration variable, since it got
removed. Previously it was used for instantiating test classes.
- Updated small snippet of inline documentation that described the use
of SCM_TESTS variable. New text points to inheriting from generic
test classes instead.
- base.py had a dead snippet - kill it.
- Removed use of the globals() and type() constructs to
programatically instantiate Git/Mercurial-specific test
classes. This should make it a bit clearer what tests are being run
at the expense of possible future VCS additions.
- Removed the SCM_TESTS VCS test configuration variable, since it got
removed. Previously it was used for instantiating test classes.
- Updated small snippet of inline documentation that described the use
of SCM_TESTS variable. New text points to inheriting from generic
test classes instead.
- base.py had a dead snippet - kill it.
d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 | #!/bin/bash
set -e
set -x
echo "Install/verify tools needed for building and uploading stuff"
pip install --upgrade -e .
pip install --upgrade -r dev_requirements.txt Sphinx Sphinx-PyPI-upload
echo "Cleanup and update copyrights ... and clean checkout"
scripts/run-all-cleanup
scripts/update-copyrights.py
hg up -cr .
echo "Make release build from clean checkout in build/"
rm -rf build dist
hg archive build
cd build
echo "Check MANIFEST.in"
sed -e 's/[^ ]*[ ]*\([^ ]*\).*/\1/g' MANIFEST.in | grep -v '^node_modules/bootstrap\|^kallithea/public/css/style.css' | xargs ls -lad
echo "Build dist"
python2 setup.py compile_catalog
python2 setup.py sdist
echo "Verify VERSION from kallithea/__init__.py"
namerel=$(cd dist && echo Kallithea-*.tar.gz)
namerel=${namerel%.tar.gz}
version=${namerel#Kallithea-}
ls -l $(pwd)/dist/$namerel.tar.gz
echo "Releasing Kallithea $version in directory $namerel"
echo "Verify dist file content"
diff -u <((hg mani | grep -v '^\.hg') | LANG=C sort) <(tar tf dist/Kallithea-$version.tar.gz | sed "s|^$namerel/||" | grep . | grep -v '^kallithea/i18n/.*/LC_MESSAGES/kallithea.mo$\|^Kallithea.egg-info/\|^PKG-INFO$\|/$' | LANG=C sort)
! tar tf dist/Kallithea-$version.tar.gz | grep "$namerel/node_modules/bootstrap/\$"
echo "Verify docs build"
python2 setup.py build_sphinx # not used yet ... but we want to make sure it builds
cat - << EOT
Now, make sure
* the copyright and contributor lists have been updated
* all tests are passing
* release note is ready
* announcement is ready
* source has been pushed to https://kallithea-scm.org/repos/kallithea
EOT
echo "Verify current revision is tagged for $version"
hg log -r "'$version'&." | grep .
echo -n "Enter \"pypi\" to upload Kallithea $version to pypi: "
read answer
[ "$answer" = "pypi" ]
echo "Upload docs to pypi"
# See https://wiki.python.org/moin/PyPiDocumentationHosting
python2 setup.py build_sphinx upload_sphinx
xdg-open https://pythonhosted.org/Kallithea/
xdg-open http://packages.python.org/Kallithea/installation.html
echo "Rebuild readthedocs for docs.kallithea-scm.org"
xdg-open https://readthedocs.org/projects/kallithea/
curl -X POST http://readthedocs.org/build/kallithea
xdg-open https://readthedocs.org/builds/kallithea/
xdg-open http://docs.kallithea-scm.org/en/latest/ # or whatever the branch is
extraargs=${EMAIL:+--identity=$EMAIL}
python2 setup.py sdist upload --sign $extraargs
xdg-open https://pypi.python.org/pypi/Kallithea
|