Add Christopher Schmidt to the list of FSF-signed contributors
[worg.git] / org-contribute.org
index 8a843d0..cf1ebb2 100644 (file)
@@ -1,10 +1,10 @@
+#+TITLE:      How to contribute to Org?
+#+AUTHOR:     Worg people
+#+EMAIL:      mdl AT imapmail DOT org
 #+OPTIONS:    H:3 num:nil toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t TeX:t LaTeX:t skip:nil d:(HIDE) tags:not-in-toc
 #+STARTUP:    align fold nodlcheck hidestars oddeven lognotestate
 #+SEQ_TODO:   TODO(t) INPROGRESS(i) WAITING(w@) | DONE(d) CANCELED(c@)
 #+TAGS:       Write(w) Update(u) Fix(f) Check(c) 
-#+TITLE:      How to contribute to Org?
-#+AUTHOR:     Worg people
-#+EMAIL:      mdl AT imapmail DOT org
 #+LANGUAGE:   en
 #+PRIORITIES: A C B
 #+CATEGORY:   worg
@@ -20,7 +20,7 @@ Every contribution to Org is very welcome.  Here is a list of areas where
 your contribution will be useful:
 
 - you can submit *bug reports* -- Before sending a bug report, make sure
-  you have read this section of Org's manual: [[http://orgmode.org/org.html#Feedback][Feedback]]  You can also read
+  you have read this section of Org's manual: [[http://orgmode.org/org.html#Feedback][Feedback]] You can also read
   this great text: "[[http://www.chiark.greenend.org.uk/~sgtatham/bugs.html][How to Send Bug Reports Effectively]]"
 
 - you can submit *feature requests* -- Org is already mature, but new ideas
@@ -34,10 +34,11 @@ your contribution will be useful:
 - you can submit *patches* -- You can submit patches to the mailing list.
   See the [[For Org contributors: preferred way of submitting patches][Preferred way of submitting patches]] section for details.
 
-  If your patch is against a file that is part of Emacs, then your
-  total contribution (all patches you submit) should change /less than
-  20 lines/.  If you contribute more, you have to assign the copyright
-  of your contribution to the Free Software Foundation (see below).
+  If your patch is against a file that is part of Emacs, then your total
+  contribution (all patches you submit) should change /less than 15 lines/
+  (See the [[http://bzr.savannah.gnu.org/lh/emacs/trunk/annotate/head:/etc/CONTRIBUTE][etc/CONTRIBUTE file in GNU Emacs]].)  If you contribute more, you
+  have to assign the copyright of your contribution to the Free Software
+  Foundation (see below).
   
 - you can submit Org *add-ons* -- there are many Org add-ons.  The best way
   is to submit your code to the mailing list to discuss it with people.  If
@@ -74,7 +75,7 @@ contributors?]]
 :CUSTOM_ID: devs
 :END:
 
-1. Send your public key to [[mailto:emacs-orgmode%20AT%20dunsmor%20DOT%20com][Jason Dunsmore]].
+1. Send your public key to [[mailto:jasondunsmore%20AT%20gmail%20DOT%20com][Jason Dunsmore]].
 2. Wait for confirmation that your public key has been added to the server.
 3. Clone =org-mode.git= repository like this:
    : ~$ git clone orgmode@orgmode.org:org-mode.git
@@ -85,52 +86,53 @@ them.
 
 * For Org contributors: preferred way of submitting patches
 
+** Coding conventions
+
+Org is part of Emacs, so any contribution should follow the [[http://www.gnu.org/software/emacs/elisp/html_node/Coding-Conventions.html][GNU Emacs Lisp
+coding conventions]] described in Emacs manual.
+
+** Sending patch with git
+
 Org-mode is developed using /git/ as the version control system.  Git
 provides an amazing framework to collaborate on a project.  Git can be used
-to make patches and send them via email -- this is perfectly fine for minor
-changes.
-
-As long as these patches are formatted properly, they will be
-automatically registered at [[http://patchwork.newartisans.com/project/org-mode][John Wiegley's patchwork server]] and will
-then be accepted, rejected, or sent back to the author with a request
-for modification. In this context, "formatted properly" means that the
-patches are included either plainly in the mail text, or as text
-attachments (mime-type text, subtypes "x-patch", "x-diff", or
-"plain"). In particular, binary types or, even worse,
-"application/octet-stream" (the asinine default of some mail programs)
-are *not* going to be recognized. Please find out how to convince your
-mail program to send proper attachments. Also, if you include the
-patch inline, please make sure that your mail program does not
-reformat it (although there are plenty of places further down the line
-where that can happen, unfortunately). If you attach the patch, then
-reformatting is not a problem.
-
-** Sending quick fixes
+to make patches and send them via email -- this is perfectly fine for major
+and minor changes.
 
-#+begin_quote
-  This command will make a patch between the staging area (in your
-  computer), and the file you modified:
+When sending a patch (either using =git diff= or =git format-patch=) please
+*always add a properly formatted Emacs ChangeLog entry*.  See [[id:c526dfd7-2b0c-4b66-9deb-6e442e48708c][this section]]
+for details on how to create such a ChangeLog.
 
-  : git diff -p org-whatever.el > org-whatever.el.diff
+** Patches get caught on patchwork
 
-  If you already committed your changes to your index (staging area), then
-  you should compare against a particular branch (in this example,
-  origin/master):
+As long as these patches are formatted properly, they will be automatically
+registered at [[http://patchwork.newartisans.com/project/org-mode][John Wiegley's patchwork server]] and will then be accepted,
+rejected, or sent back to the author with a request for modification.
 
-  : git diff -p origin/master org-whatever.el > org-whatever.el.diff
+Patchwork assumes there is *only one patch per email* and will not catch
+more than one patch -- so please send multiple patches in separate emails.
 
-  You email the output to the mailing list, adding =[PATCH]= to the
-  subject, and description of what you fixed or changed.
-#+end_quote
+In this context, "formatted properly" means that the patches are included
+either plainly in the mail text, or as text attachments (mime-type text,
+subtypes "x-patch", "x-diff", or "plain").  In particular, binary types or,
+even worse, "application/octet-stream" (the asinine default of some mail
+programs) are *not* going to be recognized.  Please find out how to
+convince your mail program to send proper attachments.  Also, if you
+include the patch inline, please make sure that your mail program does not
+reformat it (although there are plenty of places further down the line
+where that can happen, unfortunately). If you attach the patch, then
+reformatting is not a problem.
 
 ** Sending commits
 
-For more significant changes, you might want to work in several steps and
-send each commit separately.  Here is the suggested workflow
+For every patch you send, we suggest to use =git format-patch=.
+
+This is easy for small patches and more consequent ones.  Sometimes, you
+might even want to work in several steps and send each commit separately.
+Here is the suggested workflow:
 
 #+begin_quote
 :   ~$ git pull                 # make sure your repo is up to date
-:   ~$ git branch my-changes    # create a new branch
+:   ~$ git branch my-changes    # create a new branch from master
 :   ~$ git checkout my-changes  # switch to this new branch
 
   ... make some changes (1) ...
@@ -146,16 +148,48 @@ send each commit separately.  Here is the suggested workflow
   list and detected by the patchwork server.
 #+end_quote
 
-Write useful commit messages: unless your change is very small, please
-provide 1) a reason for it in your email and 2) a ChangeLog entry in the
-commit message.
+Write useful commit messages: please provide 1) a reason for it in your
+email and 2) a ChangeLog entry in the commit message (see [[id:c526dfd7-2b0c-4b66-9deb-6e442e48708c][this section]] on
+how to format a ChangeLog entry.)
+
+** Sending quick fixes for testing purpose
+
+If you want to send a quick fix that needs to be further tested by other
+people (before you submit a real patch), here is how you can do:
+
+#+begin_quote
+  This command will make a patch between the staging area (in your
+  computer), and the file you modified:
+
+  : git diff -p org-whatever.el > org-whatever.el.diff
+
+  If you already committed your changes to your index (staging area), then
+  you should compare against a particular branch (in this example,
+  origin/master):
+
+  : git diff -p origin/master org-whatever.el > org-whatever.el.diff
+
+  You email the output to the mailing list, adding =[PATCH]= to the
+  subject, and description of what you fixed or changed.
+#+end_quote
+
+Note that small patches sent like this still need to have a ChangeLog entry
+to be applied.  If your patch looks good to you, it's always better to send
+a patch through =git format-patch=.
 
 ** Sharing changes from a public branch
 
 For more significant contributions, the best way to submit patches is
 through public branches of your repository clone.
 
-1. Clone our git repository at =http://orgmode.org/w/org-mode.git=
+1. Clone our git repository at =http://orgmode.org/w/org-mode.git=.
+   You can clone using any of the commands below.
+
+   : git clone git://orgmode.org/org-mode.git
+   : git clone http://orgmode.org/org-mode.git
+
+   The url using the git protocol is preferred. If you are behind a
+   firewall that blocks ~git://~, you can use the http url.
 
 2. Create a repository that can be publicly accessed, for example on
    /GitHub/, /repo.or.cz/, or on your own server.
@@ -197,6 +231,9 @@ through public branches of your repository clone.
    : git push REMOTE :NEWTOPIC
 
 * Commit messages and ChangeLog entries
+  :PROPERTIES:
+  :ID:       c526dfd7-2b0c-4b66-9deb-6e442e48708c
+  :END:
 
 We have decided to no longer keep a ChangeLog file to record changes to
 individual functions.  In a modern version control system like git,
@@ -262,86 +299,129 @@ Here is the list of people who signed the papers with the Free Software
 Foundation and can now freely submit code to Org files that are included
 within GNU Emacs:
 
-1. Adam Elliott
-2. Andreas Burtzlaff
-3. Andy Steward
-4. Anthony Lander
-5. Baoqiu Cui
-6. Barry Leonard Gidden
-7. Bastien Guerry
-8. Benjamin Andresen
-9. Bernd Grobauer
-10. Bernt Hansen
-11. Brian James Gough
-12. Carsten Dominik
-13. Charles Sebold
-14. Christian Egli
-15. Christopher League
-16. Christopher Miles Gray
-17. Christopher Suckling
-18. Dan Davison
-19. Daniel M German
-20. Daniel M. Hackney
-21. David Maus
-22. David O'Toole
-23. Eric S. Fraga
-24. Eric Schulte
-25. Erik Iverson
-26. Ian Barton
-27. James TD Smith
-28. Jan Böker
-29. Jason Riedy
-30. Jeffrey Ryan Horn
-31. Joel Boehland
-32. John Wiegley
-33. Juan Pechiar
-34. Julien Barnier
-35. Julien Danjou
-36. Konstantin Antipin
-37. Lawrence Mitchell
-38. Lennart Borgman
-39. Lukasz Stelmach
-40. Magnus Henoch
-41. Manuel Giraud
-42. Martin Pohlack
-43. Martyn Jago
-44. Matt Lundin
-45. Michael Gauland
-46. Michael Sperber
-47. Miguel A. Figueroa-Villanueva
-48. Mikael Fornius
-49. Nathan Neff
-50. Nicolas Goaziou
-51. Noorul Islam K M
-52. Paul Sexton
-53. Peter Jones
-54. Phil Jackson
-55. Philip Rooke
-56. Piotr Zielinski
-57. Puneeth Chaganti
-58. Richard Klinda
-59. Richard Riley
-60. Ross Patterson
-61. Russel Adams
-62. Sacha Chua
-63. Sebastian Rose
-64. Sebastien Vauban
-65. Seweryn Kokot
-66. Stephen Eglen
-67. Tassilo Horn
-68. Thomas Baumann
-69. Tokuya Kameshima
-70. Tom Breton
-71. Tomas Hlavaty
-72. Ulf Stegemann
-73. Zhang Weize
+1. Abdó Roig-Maranges
+2. Achim Gratz
+3. Adam Elliott
+4. Adam Spiers
+5. Alan Schmitt
+6. Andreas Burtzlaff
+7. Andreas Leha
+8. Andrew Hyatt
+9. Andrzej Lichnerowicz
+10. Andy Steward
+11. Anthony John Day
+12. Anthony Lander
+13. Baoqiu Cui
+14. Barry Leonard Gidden
+15. Bastien Guerry
+16. Benjamin Andresen
+17. Bernd Grobauer
+18. Bernt Hansen
+19. Brian James Gough
+20. Carsten Dominik
+21. Charles Sebold
+22. Christian Egli
+23. Christian Moe
+24. Christopher League
+25. Christopher Miles Gray
+26. Christopher Schmidt
+27. Christopher Suckling
+28. Dan Davison
+29. Daniel M German
+30. Daniel M. Hackney
+31. David Maus
+32. David O'Toole
+33. Dmitry Antipov
+34. Eric S. Fraga
+35. Eric Schulte
+36. Erik Iverson
+37. Ethan Ligon
+38. Feng Shu
+39. George Kettleborough
+40. Giovanni Ridolfi
+41. Henning Dietmar Weiss
+42. Ian Barton
+43. Ilya Shlyakhter
+44. Ippei Furuhashi
+45. James TD Smith
+46. Jan Böcker
+47. Jarmo Hurri
+48. Jason Riedy
+49. Jeffrey Ryan Horn
+50. Joel Boehland
+51. John Wiegley
+52. Jonas Bernoulli
+53. Jonathan Leech-Pepin
+54. Juan Pechiar
+55. Julian Gehring
+56. Julien Barnier
+57. Julien Danjou
+58. Justus Piater
+59. Konstantin Antipin
+60. Lawrence Mitchell
+61. Le Wang
+62. Lennart Borgman
+63. Luis Anaya
+64. Lukasz Stelmach
+65. Madan Ramakrishnan
+66. Magnus Henoch
+67. Manuel Giraud
+68. Martin Pohlack
+69. Martyn Jago
+70. Matt Lundin
+71. Max Mikhanosha
+72. Michael Brand
+73. Michael Gauland
+74. Michael Sperber
+75. Miguel A. Figueroa-Villanueva
+76. Mikael Fornius
+77. Moritz Ulrich
+78. Nathan Neff
+79. Nicolas Goaziou
+80. Nicolas Richard
+81. Niels Giessen
+82. Noorul Islam K M
+83. Paul Sexton
+84. Peter Jones
+85. Phil Jackson
+86. Philip Rooke
+87. Pieter Praet
+88. Piotr Zielinski
+89. Puneeth Chaganti
+90. Richard Klinda
+91. Richard Riley
+92. Rick Frankel
+93. Ross Patterson
+94. Russel Adams
+95. Sacha Chua
+96. Sebastian Rose
+97. Sebastien Vauban
+98. Sergey Litvinov
+99. Seweryn Kokot
+100. Stephen Eglen
+101. Tassilo Horn
+102. Thomas Baumann
+103. Thomas Holst
+104. Thomas S. Dye
+105. Thorsten Jolitz
+106. Toby Cubitt
+107. Tokuya Kameshima
+108. Tom Breton
+109. Tomas Hlavaty
+110. Tony Day
+111. Ulf Stegemann
+112. Yann Hodique
+113. Zhang Weize
 
 ** Processing
 
 These people have been asked to sign the papers, and they are
 currently considering it or a request is being processed by the FSF.
 
-1. Chris Gray
+- Bill Wishon
+- Samuel Loury (as of 2013-01-14)
+- Ryo TAKAISHI (as of 2013-01-01)
+- Daimrod (Greg) (as of 2013-01-11)
 
 ** Tiny Changes
 
@@ -350,8 +430,15 @@ without FSF papers.  When they submit more, we need to get papers
 eventually.  The limit is a cumulative change of 20 non-repetitive
 change lines.  Details are given in [[http://www.gnu.org/prep/maintain/maintain.html#Legally-Significant ][this document]].
 
-1. Robert P. Goldman
+1. Alan Schmitt
 2. Andy Lutomirski
+3. Ivan Vilata i Balaguer
+4. John Foerch
+5. Myles English
+6. Rafael Laboissiere
+7. Robert P. Goldman
+8. Ryo Takaishi
+9. Muchenxuan Tong
 
 (this list may be incomplete - please help to complete it)