Commit 1f35e634 authored by Alexandre Iooss's avatar Alexandre Iooss Committed by chirac

Update gen_contrib.py to match current contributors.py

Now `manage.py gen_contrib` generates a contributors.py matching the
already existing format. It normalizes names to make the list more
enjoyable.

Before using this to seriously generate contributors.py we need to
figure out a way to add pseudo names, or tell everyone to change their
name on GitLab.
parent a584c37b
......@@ -32,16 +32,38 @@ class Command(BaseCommand):
""" The command object for `gen_contrib` """
help = 'Update contributors list'
@staticmethod
def _contrib_file_generator(contributors):
"""
Generate the content of contributors.py
"""
buffer = "# -*- mode: python; coding: utf-8 -*-\n"
buffer += "\"\"\"re2o.contributors\n"
buffer += "A list of the proud contributors to Re2o\n"
buffer += "\"\"\"\n"
buffer += "\n"
buffer += "CONTRIBUTORS = [\n"
for name in contributors:
# Split name into parts
names = name.split()
# Normalize it
names = list(map(str.capitalize, names))
# Put it back together
name_text = " ".join(names)
buffer += " '{}',\n".format(name_text)
buffer += "]"
return buffer
def handle(self, *args, **options):
contributeurs = [
contributors = [
item.split('\t')[1]
for item in os.popen("git shortlog -s -n").read().split("\n")
if '\t' in item
]
self.stdout.write(self.style.SUCCESS("Exportation Sucessfull"))
self.stdout.write(self.style.SUCCESS("Exportation Successful"))
with open("re2o/contributors.py", "w") as contrib_file:
contrib_file.write("\"\"\"re2o.contributors\n")
contrib_file.write("A list of the contributors to Re2o\n")
contrib_file.write("\"\"\"\n")
contrib_file.write("\n")
contrib_file.write("CONTRIBUTORS = " + str(contributeurs))
content = self._contrib_file_generator(contributors)
contrib_file.write(content)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment