Merge pull request #1849 from emmanuelle/fix_contribs

contribs.py: fixed the case of empty string
This commit is contained in:
Steven Silvester
2015-12-27 10:14:48 -06:00
3 changed files with 37 additions and 28 deletions
+2 -1
View File
@@ -17,7 +17,8 @@ Version 0.14
Version 0.13
------------
* Require Python 2.7+, remove warning in `__init__.py`.
* Require Python 2.7+, remove warning in `__init__.py` and 2.6 hack in
`doc/release/contribs.py`.
* Remove deprecated `None` defaults for `skimage.exposure.rescale_intensity`
* Remove deprecated `skimage.filters.canny` import in `filters/__init__.py`
file (canny is now in `skimage.feature.canny`).
+31 -27
View File
@@ -10,41 +10,45 @@ if len(sys.argv) != 2:
tag = sys.argv[1]
def call(cmd):
return subprocess.check_output(shlex.split(cmd), universal_newlines=True).split('\n')
tag_date = call("git show --format='%%ci' %s" % tag)[0]
print("Release %s was on %s\n" % (tag, tag_date))
if not sys.version_info[:2] == (2, 6):
merges = call("git log --since='%s' --merges --format='>>>%%B' --reverse" % tag_date)
merges = [m for m in merges if m.strip()]
merges = '\n'.join(merges).split('>>>')
merges = [m.split('\n')[:2] for m in merges]
merges = [m for m in merges if len(m) == 2 and m[1].strip()]
def call(cmd):
return subprocess.check_output(shlex.split(cmd), universal_newlines=True).split('\n')
num_commits = call("git rev-list %s..HEAD --count" % tag)[0]
print("A total of %s changes have been committed.\n" % num_commits)
tag_date = call("git show --format='%%ci' %s" % tag)[0]
print("Release %s was on %s\n" % (tag, tag_date))
print("It contained the following %d merges:\n" % len(merges))
for (merge, message) in merges:
if merge.startswith('Merge pull request #'):
PR = ' (%s)' % merge.split()[3]
else:
PR = ''
merges = call("git log --since='%s' --merges --format='>>>%%B' --reverse" % tag_date)
merges = [m for m in merges if m.strip()]
merges = '\n'.join(merges).split('>>>')
merges = [m.split('\n')[:2] for m in merges]
merges = [m for m in merges if len(m) == 2 and m[1].strip()]
print('- ' + message + PR)
num_commits = call("git rev-list %s..HEAD --count" % tag)[0]
print("A total of %s changes have been committed.\n" % num_commits)
print("It contained the following %d merges:\n" % len(merges))
for (merge, message) in merges:
if merge.startswith('Merge pull request #'):
PR = ' (%s)' % merge.split()[3]
else:
PR = ''
print('- ' + message + PR)
print("\nMade by the following committers [alphabetical by last name]:\n")
print("\nMade by the following committers [alphabetical by last name]:\n")
authors = call("git log --since='%s' --format=%%aN" % tag_date)
authors = [a.strip() for a in authors if a.strip()]
authors = call("git log --since='%s' --format=%%aN" % tag_date)
authors = [a.strip() for a in authors if a.strip()]
def key(author):
author = [v for v in author.split() if v[0] in string.ascii_letters]
return author[-1]
def key(author):
author = [v for v in author.split() if v[0] in string.ascii_letters]
if len(author) > 0:
return author[-1]
authors = sorted(set(authors), key=key)
authors = sorted(set(authors), key=key)
for a in authors:
print('- ' + a)
for a in authors:
print('- ' + a)
+4
View File
@@ -111,3 +111,7 @@ fi
nosetests $TEST_ARGS
section_end "Test.with.optional.dependencies"
section "Prepare.release"
doc/release/contribs.py HEAD~10
section_end "Prepare.release"