##// END OF EJS Templates
make-release: cleanup and fix bitrot...
Mads Kiilerich -
r7116:dba4e770 default
parent child Browse files
Show More
@@ -1,24 +1,27 b''
1 List of contributors to Kallithea project:
1 List of contributors to Kallithea project:
2
2
3 Dominik Ruf <dominikruf@gmail.com> 2012 2014-2018
4 Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> 2014-2018
5 Branko Majic <branko@majic.rs> 2015 2018
6 Mads Kiilerich <mads@kiilerich.com> 2016-2018
3 Mads Kiilerich <madski@unity3d.com> 2012-2017
7 Mads Kiilerich <madski@unity3d.com> 2012-2017
4 Unity Technologies 2012-2017
8 Unity Technologies 2012-2017
5 Andrew Shadura <andrew@shadura.me> 2012 2014-2017
9 Andrew Shadura <andrew@shadura.me> 2012 2014-2017
6 Dominik Ruf <dominikruf@gmail.com> 2012 2014-2017
10 Γ‰tienne Gilli <etienne.gilli@gmail.com> 2015-2017
7 Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> 2014-2017
8 SΓΈren LΓΈvborg <sorenl@unity3d.com> 2015-2017
11 SΓΈren LΓΈvborg <sorenl@unity3d.com> 2015-2017
9 Sam Jaques <sam.jaques@me.com> 2015 2017
12 Sam Jaques <sam.jaques@me.com> 2015 2017
10 Asterios Dimitriou <steve@pci.gr> 2016-2017
13 Asterios Dimitriou <steve@pci.gr> 2016-2017
11 Mads Kiilerich <mads@kiilerich.com> 2016-2017
12 Alessandro Molina <alessandro.molina@axant.it> 2017
14 Alessandro Molina <alessandro.molina@axant.it> 2017
13 Anton Schur <tonich.sh@gmail.com> 2017
15 Anton Schur <tonich.sh@gmail.com> 2017
14 Ching-Chen Mao <mao@lins.fju.edu.tw> 2017
16 Ching-Chen Mao <mao@lins.fju.edu.tw> 2017
15 Eivind Tagseth <eivindt@gmail.com> 2017
17 Eivind Tagseth <eivindt@gmail.com> 2017
16 FUJIWARA Katsunori <foozy@lares.dti.ne.jp> 2017
18 FUJIWARA Katsunori <foozy@lares.dti.ne.jp> 2017
19 Holger Schramm <info@schramm.by> 2017
17 Karl Goetz <karl@kgoetz.id.au> 2017
20 Karl Goetz <karl@kgoetz.id.au> 2017
21 Lars Kruse <devel@sumpfralle.de> 2017
18 Marko Semet <markosemet@googlemail.com> 2017
22 Marko Semet <markosemet@googlemail.com> 2017
19 Viktar Vauchkevich <victorenator@gmail.com> 2017
23 Viktar Vauchkevich <victorenator@gmail.com> 2017
20 Takumi IINO <trot.thunder@gmail.com> 2012-2016
24 Takumi IINO <trot.thunder@gmail.com> 2012-2016
21 Γ‰tienne Gilli <etienne.gilli@gmail.com> 2015-2016
22 Jan Heylen <heyleke@gmail.com> 2015-2016
25 Jan Heylen <heyleke@gmail.com> 2015-2016
23 Robert Martinez <ntttq@inboxen.org> 2015-2016
26 Robert Martinez <ntttq@inboxen.org> 2015-2016
24 Robert Rauch <mail@robertrauch.de> 2015-2016
27 Robert Rauch <mail@robertrauch.de> 2015-2016
@@ -40,7 +43,6 b' List of contributors to Kallithea projec'
40 Andrew Bartlett <abartlet@catalyst.net.nz> 2015
43 Andrew Bartlett <abartlet@catalyst.net.nz> 2015
41 BalÑzs Úr <urbalazs@gmail.com> 2015
44 BalÑzs Úr <urbalazs@gmail.com> 2015
42 Ben Finney <ben@benfinney.id.au> 2015
45 Ben Finney <ben@benfinney.id.au> 2015
43 Branko Majic <branko@majic.rs> 2015
44 Daniel Hobley <danielh@unity3d.com> 2015
46 Daniel Hobley <danielh@unity3d.com> 2015
45 David Avigni <david.avigni@ankapi.com> 2015
47 David Avigni <david.avigni@ankapi.com> 2015
46 Denis Blanchette <dblanchette@coveo.com> 2015
48 Denis Blanchette <dblanchette@coveo.com> 2015
@@ -12,6 +12,7 b' include development.ini'
12 include pytest.ini
12 include pytest.ini
13 include requirements.txt
13 include requirements.txt
14 include tox.ini
14 include tox.ini
15 include package.json
15 recursive-include docs *
16 recursive-include docs *
16 recursive-include init.d *
17 recursive-include init.d *
17 recursive-include kallithea/alembic *
18 recursive-include kallithea/alembic *
@@ -24,11 +24,13 b''
24 necessarily limited to the following:</p>
24 necessarily limited to the following:</p>
25 <ul>
25 <ul>
26
26
27 <li>Copyright &copy; 2012&ndash;2017, Mads Kiilerich</li>
27 <li>Copyright &copy; 2012&ndash;2018, Mads Kiilerich</li>
28 <li>Copyright &copy; 2012, 2014&ndash;2018, Dominik Ruf</li>
29 <li>Copyright &copy; 2014&ndash;2018, Thomas De Schampheleire</li>
30 <li>Copyright &copy; 2015, 2018, Branko Majic</li>
28 <li>Copyright &copy; 2012&ndash;2017, Unity Technologies</li>
31 <li>Copyright &copy; 2012&ndash;2017, Unity Technologies</li>
29 <li>Copyright &copy; 2012, 2014&ndash;2017, Andrew Shadura</li>
32 <li>Copyright &copy; 2012, 2014&ndash;2017, Andrew Shadura</li>
30 <li>Copyright &copy; 2012, 2014&ndash;2017, Dominik Ruf</li>
33 <li>Copyright &copy; 2015&ndash;2017, Γ‰tienne Gilli</li>
31 <li>Copyright &copy; 2014&ndash;2017, Thomas De Schampheleire</li>
32 <li>Copyright &copy; 2015&ndash;2017, SΓΈren LΓΈvborg</li>
34 <li>Copyright &copy; 2015&ndash;2017, SΓΈren LΓΈvborg</li>
33 <li>Copyright &copy; 2015, 2017, Sam Jaques</li>
35 <li>Copyright &copy; 2015, 2017, Sam Jaques</li>
34 <li>Copyright &copy; 2016&ndash;2017, Asterios Dimitriou</li>
36 <li>Copyright &copy; 2016&ndash;2017, Asterios Dimitriou</li>
@@ -37,11 +39,12 b''
37 <li>Copyright &copy; 2017, Ching-Chen Mao</li>
39 <li>Copyright &copy; 2017, Ching-Chen Mao</li>
38 <li>Copyright &copy; 2017, Eivind Tagseth</li>
40 <li>Copyright &copy; 2017, Eivind Tagseth</li>
39 <li>Copyright &copy; 2017, FUJIWARA Katsunori</li>
41 <li>Copyright &copy; 2017, FUJIWARA Katsunori</li>
42 <li>Copyright &copy; 2017, Holger Schramm</li>
40 <li>Copyright &copy; 2017, Karl Goetz</li>
43 <li>Copyright &copy; 2017, Karl Goetz</li>
44 <li>Copyright &copy; 2017, Lars Kruse</li>
41 <li>Copyright &copy; 2017, Marko Semet</li>
45 <li>Copyright &copy; 2017, Marko Semet</li>
42 <li>Copyright &copy; 2017, Viktar Vauchkevich</li>
46 <li>Copyright &copy; 2017, Viktar Vauchkevich</li>
43 <li>Copyright &copy; 2012&ndash;2016, Takumi IINO</li>
47 <li>Copyright &copy; 2012&ndash;2016, Takumi IINO</li>
44 <li>Copyright &copy; 2015&ndash;2016, Γ‰tienne Gilli</li>
45 <li>Copyright &copy; 2015&ndash;2016, Jan Heylen</li>
48 <li>Copyright &copy; 2015&ndash;2016, Jan Heylen</li>
46 <li>Copyright &copy; 2015&ndash;2016, Robert Martinez</li>
49 <li>Copyright &copy; 2015&ndash;2016, Robert Martinez</li>
47 <li>Copyright &copy; 2015&ndash;2016, Robert Rauch</li>
50 <li>Copyright &copy; 2015&ndash;2016, Robert Rauch</li>
@@ -63,7 +66,6 b''
63 <li>Copyright &copy; 2015, Andrew Bartlett</li>
66 <li>Copyright &copy; 2015, Andrew Bartlett</li>
64 <li>Copyright &copy; 2015, BalÑzs Úr</li>
67 <li>Copyright &copy; 2015, BalÑzs Úr</li>
65 <li>Copyright &copy; 2015, Ben Finney</li>
68 <li>Copyright &copy; 2015, Ben Finney</li>
66 <li>Copyright &copy; 2015, Branko Majic</li>
67 <li>Copyright &copy; 2015, Daniel Hobley</li>
69 <li>Copyright &copy; 2015, Daniel Hobley</li>
68 <li>Copyright &copy; 2015, David Avigni</li>
70 <li>Copyright &copy; 2015, David Avigni</li>
69 <li>Copyright &copy; 2015, Denis Blanchette</li>
71 <li>Copyright &copy; 2015, Denis Blanchette</li>
@@ -23,7 +23,7 b''
23 <a class="navbar-link" href="${h.url('kallithea_project_url')}" target="_blank">Kallithea</a>,
23 <a class="navbar-link" href="${h.url('kallithea_project_url')}" target="_blank">Kallithea</a>,
24 %endif
24 %endif
25 which is
25 which is
26 <a class="navbar-link" href="${h.canonical_url('about')}#copyright">&copy; 2010&ndash;2017 by various authors &amp; licensed under GPLv3</a>.
26 <a class="navbar-link" href="${h.canonical_url('about')}#copyright">&copy; 2010&ndash;2018 by various authors &amp; licensed under GPLv3</a>.
27 %if c.issues_url:
27 %if c.issues_url:
28 &ndash; <a class="navbar-link" href="${c.issues_url}" target="_blank">${_('Support')}</a>
28 &ndash; <a class="navbar-link" href="${c.issues_url}" target="_blank">${_('Support')}</a>
29 %endif
29 %endif
@@ -609,7 +609,7 b' class TestVCSOperations(TestController):'
609 # clone repo
609 # clone repo
610 clone_url = webserver.repo_url(testfork[repo_type], username=TEST_USER_ADMIN_LOGIN, password=TEST_USER_ADMIN_PASS)
610 clone_url = webserver.repo_url(testfork[repo_type], username=TEST_USER_ADMIN_LOGIN, password=TEST_USER_ADMIN_PASS)
611 dest_dir = _get_tmp_dir()
611 dest_dir = _get_tmp_dir()
612 stdout, stderr = Command(TESTS_TMP_PATH)\
612 stdout, stderr = Command(TESTS_TMP_PATH) \
613 .execute('%s clone' % repo_type, clone_url, dest_dir, ignoreReturnCode=True)
613 .execute('%s clone' % repo_type, clone_url, dest_dir, ignoreReturnCode=True)
614 if repo_type == 'hg':
614 if repo_type == 'hg':
615 assert 'preoutgoing.testhook hook failed' in stdout
615 assert 'preoutgoing.testhook hook failed' in stdout
@@ -2,60 +2,71 b''
2 set -e
2 set -e
3 set -x
3 set -x
4
4
5 echo "Checking tools needed for uploading stuff"
5 echo "Install/verify tools needed for building and uploading stuff"
6 pip freeze | grep '^Sphinx==' || pip install Sphinx
6 pip install --upgrade -e .
7 pip freeze | grep '^Sphinx-PyPI-upload==' || pip install Sphinx-PyPI-upload
7 pip install --upgrade -r dev_requirements.txt Sphinx Sphinx-PyPI-upload
8
9 echo "Cleanup and update copyrights ... and clean checkout"
10 scripts/run-all-cleanup
11 scripts/update-copyrights.py
12 hg up -cr .
8
13
9 echo "Verifying everything can build"
14 echo "Make release build from clean checkout in build/"
10 hg purge --all dist
15 rm -rf build dist
11 python2 setup.py build_sphinx
16 hg archive build
12 python2 setup.py compile_catalog # TODO: check for errors
17 cd build
18
19 echo "Check MANIFEST.in"
20 sed -e 's/[^ ]*[ ]*\([^ ]*\).*/\1/g' MANIFEST.in | grep -v '^node_modules/bootstrap\|^kallithea/public/css/style.css' | xargs ls -lad
21
22 echo "Build dist"
23 python2 setup.py compile_catalog
13 python2 setup.py sdist
24 python2 setup.py sdist
14
25
15 echo "Verifying VERSION from kallithea/__init__.py"
26 echo "Verify VERSION from kallithea/__init__.py"
16 namerel=$(cd dist && echo Kallithea-*.tar.gz)
27 namerel=$(cd dist && echo Kallithea-*.tar.gz)
17 namerel=${namerel%.tar.gz}
28 namerel=${namerel%.tar.gz}
18 version=${namerel#Kallithea-}
29 version=${namerel#Kallithea-}
30 ls -l $(pwd)/dist/$namerel.tar.gz
19 echo "Releasing Kallithea $version in directory $namerel"
31 echo "Releasing Kallithea $version in directory $namerel"
20 echo "Verifying current revision is tagged for $version"
21 hg log -r "'$version'&." | grep .
22
32
23 echo "Cleaning before making release build"
33 echo "Verify dist file content"
24 hg up -c .
34 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)
25 hg revert -a -r null
35 ! tar tf dist/Kallithea-$version.tar.gz | grep "$namerel/node_modules/bootstrap/\$"
26 hg up -C "'$version'&."
36
27 hg purge --all
37 echo "Verify docs build"
38 python2 setup.py build_sphinx # not used yet ... but we want to make sure it builds
39
40 cat - << EOT
28
41
29 echo "Building dist file"
42 Now, make sure
30 python2 setup.py compile_catalog
43 * the copyright and contributor lists have been updated
31 python2 setup.py sdist
44 * all tests are passing
32
45 * release note is ready
33 echo "Verifying dist file content"
46 * announcement is ready
34 diff -u <(hg mani | grep -v '^\.hg' | LANG=C sort) <(tar tf dist/Kallithea-*.tar.gz | sed "s|^$namerel/||" | grep . | grep -v '^kallithea/i18n/.*/LC_MESSAGES/kallithea.mo$\|^Kallithea.egg-info/\|^PKG-INFO$\|/$' | LANG=C sort)
47 * source has been pushed to https://kallithea-scm.org/repos/kallithea
35
48
36 echo "Now, make sure"
49 EOT
37 echo "* the copyright and contributor lists have been updated"
50
38 echo "* all tests are passing"
51 echo "Verify current revision is tagged for $version"
39 echo "* release note is ready"
52 hg log -r "'$version'&." | grep .
40 echo "* announcement is ready"
41 echo "* source has been pushed to https://kallithea-scm.org/repos/kallithea"
42 echo
43
53
44 echo -n "Enter \"pypi\" to upload Kallithea $version to pypi: "
54 echo -n "Enter \"pypi\" to upload Kallithea $version to pypi: "
45 read answer
55 read answer
46 [ "$answer" = "pypi" ]
56 [ "$answer" = "pypi" ]
47 extraargs=${EMAIL:+--identity=$EMAIL}
48 python2 setup.py sdist upload --sign $extraargs
49 xdg-open https://pypi.python.org/pypi/Kallithea
50
57
51 echo "Uploading docs to pypi"
58 echo "Upload docs to pypi"
52 # See https://wiki.python.org/moin/PyPiDocumentationHosting
59 # See https://wiki.python.org/moin/PyPiDocumentationHosting
53 python2 setup.py build_sphinx upload_sphinx
60 python2 setup.py build_sphinx upload_sphinx
54 xdg-open https://pythonhosted.org/Kallithea/
61 xdg-open https://pythonhosted.org/Kallithea/
55 xdg-open http://packages.python.org/Kallithea/installation.html
62 xdg-open http://packages.python.org/Kallithea/installation.html
56
63
57 echo "Rebuilding readthedocs for docs.kallithea-scm.org"
64 echo "Rebuild readthedocs for docs.kallithea-scm.org"
58 xdg-open https://readthedocs.org/projects/kallithea/
65 xdg-open https://readthedocs.org/projects/kallithea/
59 curl -X POST http://readthedocs.org/build/kallithea
66 curl -X POST http://readthedocs.org/build/kallithea
60 xdg-open https://readthedocs.org/builds/kallithea/
67 xdg-open https://readthedocs.org/builds/kallithea/
61 xdg-open http://docs.kallithea-scm.org/en/latest/ # or whatever the branch is
68 xdg-open http://docs.kallithea-scm.org/en/latest/ # or whatever the branch is
69
70 extraargs=${EMAIL:+--identity=$EMAIL}
71 python2 setup.py sdist upload --sign $extraargs
72 xdg-open https://pypi.python.org/pypi/Kallithea
General Comments 0
You need to be logged in to leave comments. Login now