summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2020-01-01 09:53:22 -0700
committerCharles Harris <charlesr.harris@gmail.com>2020-01-01 09:53:22 -0700
commit4cd613a7dc3030a315ff04fcf7a93dcc5d83451d (patch)
tree4ddb18a9fbf6f0668a12e8725a28f87a81a0f7e7
parent648fe68f79dfbad21947db4b55873703db0675c4 (diff)
downloadnumpy-maintenance/1.17.x.tar.gz
REL: Prepare 1.17.x for further developmentmaintenance/1.17.x
-rw-r--r--doc/release/1.17.6-notes.rst45
-rw-r--r--doc/source/release.rst1
-rw-r--r--pavement.py65
-rwxr-xr-xsetup.py2
4 files changed, 84 insertions, 29 deletions
diff --git a/doc/release/1.17.6-notes.rst b/doc/release/1.17.6-notes.rst
new file mode 100644
index 000000000..41bd49596
--- /dev/null
+++ b/doc/release/1.17.6-notes.rst
@@ -0,0 +1,45 @@
+.. currentmodule:: numpy
+
+==========================
+NumPy 1.17.6 Release Notes
+==========================
+
+
+Highlights
+==========
+
+
+New functions
+=============
+
+
+Deprecations
+============
+
+
+Future Changes
+==============
+
+
+Expired deprecations
+====================
+
+
+Compatibility notes
+===================
+
+
+C API changes
+=============
+
+
+New Features
+============
+
+
+Improvements
+============
+
+
+Changes
+=======
diff --git a/doc/source/release.rst b/doc/source/release.rst
index febc96dc5..a5e98d65c 100644
--- a/doc/source/release.rst
+++ b/doc/source/release.rst
@@ -2,6 +2,7 @@
Release Notes
*************
+.. include:: ../release/1.17.6-notes.rst
.. include:: ../release/1.17.5-notes.rst
.. include:: ../release/1.17.4-notes.rst
.. include:: ../release/1.17.3-notes.rst
diff --git a/pavement.py b/pavement.py
index 427fbc96d..d4d6892df 100644
--- a/pavement.py
+++ b/pavement.py
@@ -12,8 +12,7 @@ Assumes you have git and the binaries/tarballs in installers/::
paver write_release
paver write_note
-This automatically put the checksum into README.rst, and write the Changelog
-which can be uploaded to sourceforge.
+This automatically put the checksum into README.rst, and writes the Changelog.
TODO
====
@@ -42,7 +41,7 @@ from paver.easy import Bunch, options, task, sh
#-----------------------------------
# Path to the release notes
-RELEASE_NOTES = 'doc/release/1.17.5-notes.rst'
+RELEASE_NOTES = 'doc/release/1.17.6-notes.rst'
#-------------------------------------------------------
@@ -183,6 +182,18 @@ def compute_sha256(idirs):
def write_release_task(options, filename='README'):
"""Append hashes of release files to release notes.
+ This appends file hashes to the release notes ane creates
+ four README files of the result in various formats:
+
+ - README.rst
+ - README.rst.gpg
+ - README.md
+ - README.md.gpg
+
+ The md file are created using `pandoc` so that the links are
+ properly updated. The gpg files are kept separate, so that
+ the unsigned files may be edited before signing if needed.
+
Parameters
----------
options :
@@ -193,46 +204,44 @@ def write_release_task(options, filename='README'):
"""
idirs = options.installers.installersdir
- source = paver.path.path(RELEASE_NOTES)
- target = paver.path.path(filename + '.rst')
- if target.exists():
- target.remove()
+ notes = paver.path.path(RELEASE_NOTES)
+ rst_readme = paver.path.path(filename + '.rst')
+ md_readme = paver.path.path(filename + '.md')
- tmp_target = paver.path.path(filename + '.md')
- source.copy(tmp_target)
+ # append hashes
+ with open(rst_readme, 'w') as freadme:
+ with open(notes) as fnotes:
+ freadme.write(fnotes.read())
- with open(str(tmp_target), 'a') as ftarget:
- ftarget.writelines("""
+ freadme.writelines("""
Checksums
=========
MD5
---
+::
""")
- ftarget.writelines([' %s\n' % c for c in compute_md5(idirs)])
- ftarget.writelines("""
+ freadme.writelines([f' {c}\n' for c in compute_md5(idirs)])
+ freadme.writelines("""
SHA256
------
+::
""")
- ftarget.writelines([' %s\n' % c for c in compute_sha256(idirs)])
+ freadme.writelines([f' {c}\n' for c in compute_sha256(idirs)])
- # Sign release
- cmd = ['gpg', '--clearsign', '--armor']
+ # generate md file using pandoc before signing
+ sh(f"pandoc -s -o {md_readme} {rst_readme}")
+
+ # Sign files
if hasattr(options, 'gpg_key'):
- cmd += ['--default-key', options.gpg_key]
- cmd += ['--output', str(target), str(tmp_target)]
- subprocess.check_call(cmd)
- print("signed %s" % (target,))
-
- # Change PR links for github posting, don't sign this
- # as the signing isn't markdown compatible.
- with open(str(tmp_target), 'r') as ftarget:
- mdtext = ftarget.read()
- mdtext = re.sub(r'^\* `(\#[0-9]*).*?`__', r'* \1', mdtext, flags=re.M)
- with open(str(tmp_target), 'w') as ftarget:
- ftarget.write(mdtext)
+ cmd = f'gpg --clearsign --armor --default_key {options.gpg_key}'
+ else:
+ cmd = 'gpg --clearsign --armor'
+
+ sh(cmd + f' --output {rst_readme}.gpg {rst_readme}')
+ sh(cmd + f' --output {md_readme}.gpg {md_readme}')
@task
diff --git a/setup.py b/setup.py
index edcb5e318..31af10da9 100755
--- a/setup.py
+++ b/setup.py
@@ -56,7 +56,7 @@ Operating System :: MacOS
MAJOR = 1
MINOR = 17
-MICRO = 5
+MICRO = 6
ISRELEASED = True
VERSION = '%d.%d.%d' % (MAJOR, MINOR, MICRO)