diff --git a/.mailmap b/.mailmap new file mode 100644 index 000000000..aab17a9ba --- /dev/null +++ b/.mailmap @@ -0,0 +1,25 @@ +Adam Wentz +Alex Grönholm +Anatoly Techtonik +Andrey Bulgakov +Andrei Geacar unknown +Ben Rosser + +Daniel Holth + +Endoh Takanao +Erik M. Bray +Gabriel de Perthuis +Geoffrey Lehée +Hsiaoming Yang +Ilya Baryshev +Jakub Stasiak +John-Scott Atlakson +Jorge Niedbalski +Markus Hametner +Masklinn +Preston Holmes +Przemek Wrzos +Thomas Johansson prencher +Yoval P +Zhiping Deng diff --git a/AUTHORS.txt b/AUTHORS.txt index 3d62f0190..f969f24d1 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -1,13 +1,18 @@ +Adam Wentz Alex Gaynor Alex Grönholm Alex Morega Alexandre Conrad +Anatoly Techtonik +Andrei Geacar Andrey Bulgakov Anrs Hu Anton Patrushev Antti Kaihola Armin Ronacher -Aziz Köksal +Ashley Manton +Baptiste Mispelon +Ben Darnell Ben Rosser Bernardo B. Marques Bradley Ayers @@ -21,14 +26,15 @@ Craig Kerstiens Cristian Sorinel Dan Sully Daniel Holth +Daniel Jost Dave Abrahams -David (d1b) +david David Aguilar David Evans David Pursehouse -dengzhp Dmitry Gladkov Donald Stufft +Dongweiming Endoh Takanao enoch Erik M. Bray @@ -39,22 +45,23 @@ Geoffrey Lehée George Song Georgi Valkov Herbert Pfennig -hetmankp +Hsiaoming Yang Hugo Lopes Tavares Hynek Schlawack Ian Bicking Igor Sobreira +Ilya Baryshev Ionel Maries Cristian +Jakub Stasiak Jakub Vysoky James Cleveland Jannis Leidel -Jakub Stasiak Jay Graves Jeff Dairiki +Jim Garrison John-Scott Atlakson Jon Parise Jonas Nockert -Jon Parise Jorge Niedbalski Josh Bronson Josh Hansen @@ -67,12 +74,13 @@ Kumar McMillan Lev Givon Lincoln de Sousa Luke Macken -Masklinn Marc Abramowitz Marc Tamlyn Marcus Smith Markus Hametner +Masklinn Matt Maker +Matthew Iversen Maxime Rouyrre Michael Williamson Miguel Araujo Perez @@ -83,8 +91,9 @@ Oliver Tonnhofer Olivier Girardot Ollie Rutherfurd Oren Held -Patrick Jenkins +Oscar Benjamin Patrick Dubroy +Patrick Jenkins Paul Moore Paul Nasrat Paul Oswald @@ -97,6 +106,7 @@ Preston Holmes Przemek Wrzos Qiangning Hong Rafael Caricio +Ralf Schmitt Rene Dudfield Roey Berman Ronny Pfannschmidt @@ -106,8 +116,9 @@ Sergey Vasilyev Seth Woodworth Simon Cross Stavros Korokithakis -Stéphane Klein +Stefan Scherfke Steven Myint +Stéphane Klein Takayuki SHIMIZUKAWA Thomas Fenzl Thomas Johansson @@ -117,4 +128,7 @@ Vinay Sajip Vitaly Babiy W. Trevor King Wil Tan -Hsiaoming Yang +Yoval P +Yu Jian +Zearin +Zhiping Deng diff --git a/MANIFEST.in b/MANIFEST.in index 7f84811a9..64fc1169f 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -7,3 +7,4 @@ recursive-include docs *.rst recursive-include docs *.html recursive-exclude docs/_build *.rst prune docs/_build/_sources +prune tasks diff --git a/setup.py b/setup.py index e73a9d4c0..b4d443f2f 100644 --- a/setup.py +++ b/setup.py @@ -66,7 +66,7 @@ setup( author_email='python-virtualenv@groups.google.com', url='http://www.pip-installer.org', license='MIT', - packages=find_packages(exclude=["contrib", "docs", "tests*"]), + packages=find_packages(exclude=["contrib", "docs", "tests*", "tasks"]), package_data={ 'pip._vendor.requests': ['*.pem'], 'pip._vendor.distlib._backport': ['sysconfig.cfg'], diff --git a/tasks/__init__.py b/tasks/__init__.py new file mode 100644 index 000000000..250fe9c4b --- /dev/null +++ b/tasks/__init__.py @@ -0,0 +1,5 @@ +import invoke + +from . import generate + +ns = invoke.Collection(generate) diff --git a/tasks/generate.py b/tasks/generate.py new file mode 100644 index 000000000..4f14172e4 --- /dev/null +++ b/tasks/generate.py @@ -0,0 +1,29 @@ +import io + +import invoke + + +@invoke.task +def authors(): + print("[generate.authors] Generating AUTHORS") + + # Get our list of authors + print("[generate.authors] Collecting author names") + # <%aE> + r = invoke.run("git log --use-mailmap --format'=%aN'", hide=True) + authors = [] + seen_authors = set() + for author in r.stdout.splitlines(): + author = author.strip() + if author.lower() not in seen_authors: + seen_authors.add(author.lower()) + authors.append(author) + + # Sort our list of Authors by their case insensitive name + authors = sorted(authors, key=lambda x: x.lower()) + + # Write our authors to the AUTHORS file + print("[generate.authors] Writing AUTHORS") + with io.open("AUTHORS.txt", "w", encoding="utf8") as fp: + fp.write(u"\n".join(authors)) + fp.write(u"\n")