Skip to content

Commit 2fe8159

Browse files
committed
Update for release.
1 parent c1f55c7 commit 2fe8159

File tree

1 file changed

+43
-31
lines changed

1 file changed

+43
-31
lines changed

RELEASE.txt

Lines changed: 43 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,10 @@ Roundup release checklist:
3333
CHANGES.txt (set date for version as well)
3434
roundup/__init__.py
3535
website/www/index.txt (current stable version, release highlights)
36-
website/www/conf.py (update copyright, version from __init__.py)
37-
scripts/Docker/Docker update value of org.opencontainers.image.version
36+
website/www/conf.py (update copyright, version auto-set from
37+
roundup/__init__.py)
38+
scripts/Docker/Dockerfile update value of
39+
org.opencontainers.image.version
3840
3a. Update license end date in COPYING.txt
3941
3b. Update doc/acknowledgements.txt (add section for
4042
release, churn contributers etc.). (Use hg churn -c -r ####..####)
@@ -128,6 +130,26 @@ Roundup release checklist:
128130
with all available Python versions.
129131
11a. (TBD how to test wheel binary distribution before uploading.)
130132

133+
11b. Generate GPG signature file
134+
135+
cd dist
136+
gpg --detach-sign --armor -u 1F2DD0CB756A76D8 <filename>.tar.gz
137+
138+
you should be prompted to use the roundup release key. If not you
139+
140+
This will create a file by the name <filename>.tar.gz.asc.
141+
142+
Move file to website/www/signature directory
143+
144+
mv <filename>.tar.gz.asc ../webite/www/signature/.
145+
hg add ../website/www/signature/<filename>.tar.gz.asc
146+
# commiting the file will be done in step 12
147+
cd ..
148+
149+
Add a link to the signature to doc/security.txt. Add a new link
150+
to the start of the signature list in doc/security.txt (look for
151+
the word multicol).
152+
131153
12. Assuming all is well commit and tag the release in the version-control
132154
system.
133155
a) hg commit ... # commit any edits from steps 1-5
@@ -137,32 +159,11 @@ Roundup release checklist:
137159

138160
13. Upload source distribution to PyPI - requires you sign up for a
139161
pypi account and be added as a maintainer to roundup. Ask existing
140-
maintainer for access. You can do this two ways:
141-
142-
python3 setup.py sdist upload --repository pypi
162+
maintainer for access. Do this using twine (pip install twine).
143163

144-
which rebuilds the source distribution tarball and uploads it.
145-
This means that you have uploaded something that is not tested,
146-
also it does not have a gpg signature. It should be the same as
147-
the tarball you tested but....
148-
149-
A better way to do this is to use twine (pip install twine).
150-
You need to sign the tarball. This can be done with:
151-
152-
cd dist
153-
gpg --detach-sign --armor -u 1F2DD0CB756A76D8 <filename>.tgz
154-
155-
you should be prompted to use the roundup release key. If not you
156-
157-
This will create a file by the name <filename>.tgz.asc.
158164
The original directions used twine to upload the tarball and the
159165
signature, but as of May 2023, PyPI no longer accepts signature
160-
files.
161-
162-
So we publish the signature as part of the website. Move the file
163-
to the website/www/signatures directory. Commit the .asc signature
164-
file to mercurial. Add a new list item at the start of the
165-
signature list in doc/security.txt (look for the word multicol).
166+
files. So we publish the signature as part of the website.
166167

167168
Use twine to upload the distribution tarball. E.G.
168169

@@ -178,6 +179,15 @@ Roundup release checklist:
178179
the gpg asc files and place the .whl.asc in the signature
179180
directory.
180181

182+
Another way to upload is to use:
183+
184+
python3 setup.py sdist upload --repository pypi
185+
186+
BUT this rebuilds the source distribution tarball and uploads it.
187+
This means that you have uploaded something that is not tested.
188+
Also the metadata in the file changes and will not match the GPG
189+
signature you commited in step 12. So use twine.
190+
181191
14. Refresh website.
182192
website/README.txt
183193
https://www.roundup-tracker.org/ should state that the stable
@@ -205,9 +215,10 @@ Roundup release checklist:
205215
17a. install docker
206216
17b. run: (issues, how to release a version e.g. to update alpine for
207217
security issues. Currently thinking that release tag is
208-
rounduptracker/roundup:2.2.0-1, -2 etc? Then add a tag
218+
rounduptracker/roundup:2.2.0-1, -2 etc. Then add a tag
209219
rounduptracker/roundup:2.2.0 that moves to always tag
210-
the latest -N release??)
220+
the latest -N release. Also roundup:latest points to the
221+
newest -N for the newest roundup version.)
211222

212223
docker build -t rounduptracker/roundup:2.2.0 \
213224
--build-arg="source=pypi" -f scripts/Docker/Dockerfile .
@@ -303,13 +314,14 @@ $ gpg --edit-key 411E354B5D1AF26125D621221F2DD0CB756A76D8
303314
> save
304315
[ saves both keys, will need the private key and passphrase ]
305316

306-
EXPORT NEW KEY
307-
==============
317+
EXPORT NEW PUBLIC KEY
318+
=====================
308319

309320
$ gpg --export -a [email protected] >> \
310321
tools/roundup.public.pgp.key
311322

312-
then edit roundup.public.pgp.key keeping only the last key stat starts
323+
then edit roundup.public.pgp.key keeping only the last key that starts
313324
with: -----BEGIN PGP PUBLIC KEY BLOCK-----
314325

315-
Commmit new key to mercurial.
326+
and add back the preamble that describes where to find doc for
327+
it. Commmit new key to mercurial.

0 commit comments

Comments
 (0)