Skip to content

Adding Someone to AUTHORS

Aaron Meurer edited this page Jul 8, 2013 · 1 revision

Adding Someone to AUTHORS/aboutus

Whenever a new contribute has code pushed in, they need to be added to the AUTHORS and doc/src/aboutus files. It doesn't matter how small the contribution is. We give attribution to everyone. This encourages people to contribute further, and it makes it easier to keep the AUTHORS file up to date if everyone is listed in it.

These are the steps to add someone to the AUTHORS file.

  1. First, make sure that this really is their first contribution. Many people go a long time without contributing, and may appear to be first-time contributors when they are really not. Check the git log for their name.

  2. If you're sure that they really are new, get their full name and email. These are found in the commit metadata. You can also often find them on the person's GitHub user page. If you are unsure what name or email to use, just ask them.

  3. Add that person's name and email (as formatted by git) to the bottom of the AUTHORS file, and add their name, along with a blurb about what they did to the doc/src/aboutus.rst file, also at the end. The aboutus file is supposed to list what each person has done, but it tends to get out of date, because people only update it for new contributors, so if you see someone in there whose entry is out of date, feel free to update it.

  4. It is customary to write a commit message like

    Added John Doe to the AUTHORS/aboutus. Welcome to SymPy!

  5. You do not need to make a pull request to push updates to AUTHORS, aboutus, or .mailmap. You can push it in directly. However, if you feel uncomfortable about pushing in directly, or if you do not have push access, feel free to make a pull request.

Adding people retroactively

If you find that someone is missing from the AUTHORS file, you should add them retroactively. Try to keep the list of people in AUTHORS and aboutus in the correct order, i.e., in the order of first contribution. The easiest way to do this is to use git log to find the merge commit of the person's first pull request (git log --graph is useful here). git checkout that pull request, and look at who was at the bottom of the AUTHORS file at that time. Then, back in master, add the missing person below that person's name in AUTHORS and aboutus.

.mailmap

The .mailmap file tells git which Name/Email combinations are the same person. Many people will end up committing changes with different email addresses, or different spellings of their name.

The .mailmap file is particularly useful for making sure that the AUTHORS file is up-to-date, because if there are no duplicate name entries in git, one can just compare the AUTHORS file with the people in the git log.

The script ./bin/mailmap_update.py assists in this. Run it, (note, it requires fabric). It will tell you what name/email combinations are in AUTHORS but not in git (i.e., need to be added to .mailmap, and what name/email combinations are in git but not AUTHORS (i.e., people who were never added to AUTHORS, or just more names that need to be added to .mailmap if it's someone who is already in AUTHORS). Note that for this script to work, the name/email combination in AUTHORS must match the one used by .mailmap exactly. One thing to note is that git does not use uppercase letters in email addresses, so any email in AUTHORS will need to be lowercase.

Read the top of .mailmap to see how it works. Basically, if you have John Doe <[email protected]> and John D. <[email protected]>, and you want to use the former, add

to .mailmap.

Clone this wiki locally