From 5ad48a9ef2f83d06e94e7ca0988c4b7218aae0fb Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Sun, 13 Jul 2014 09:58:53 +0200 Subject: [PATCH 1/7] Renamed "committers" to "team". --- docs/faq/general.txt | 5 ++--- docs/index.txt | 2 +- .../contributing/bugs-and-features.txt | 6 +++--- docs/internals/contributing/committing-code.txt | 2 +- .../internals/contributing/triaging-tickets.txt | 11 +++++------ .../writing-code/working-with-git.txt | 2 +- docs/internals/index.txt | 2 +- docs/internals/{committers.txt => team.txt} | 17 +++++++---------- 8 files changed, 21 insertions(+), 26 deletions(-) rename docs/internals/{committers.txt => team.txt} (99%) diff --git a/docs/faq/general.txt b/docs/faq/general.txt index 6bee5a1fdd..610236fde9 100644 --- a/docs/faq/general.txt +++ b/docs/faq/general.txt @@ -66,9 +66,8 @@ Who's behind this? ------------------ Django was originally developed at World Online, the Web department of a -newspaper in Lawrence, Kansas, USA. Django's now run by an international team of -volunteers; you can read all about them over at the :doc:`list of committers -`. +newspaper in Lawrence, Kansas, USA. Django's now run by an international +:doc:`team of volunteers `. Which sites use Django? ----------------------- diff --git a/docs/index.txt b/docs/index.txt index 78f07bd4df..c5addd5078 100644 --- a/docs/index.txt +++ b/docs/index.txt @@ -310,7 +310,7 @@ you can contribute: * **Community:** :doc:`How to get involved ` | :doc:`The release process ` | - :doc:`Team of committers ` | + :doc:`Meet the team ` | :doc:`The Django source code repository ` | :doc:`Security policies ` | :doc:`Mailing lists ` diff --git a/docs/internals/contributing/bugs-and-features.txt b/docs/internals/contributing/bugs-and-features.txt index 636bd27e57..842c4236b4 100644 --- a/docs/internals/contributing/bugs-and-features.txt +++ b/docs/internals/contributing/bugs-and-features.txt @@ -152,7 +152,7 @@ However, consensus is not always possible. If consensus cannot be reached, or if the discussion towards a consensus fizzles out without a concrete decision, we use a more formal process. -Any :doc:`core committer` may call for a formal vote +Any :doc:`core committer` may call for a formal vote using the same voting mechanism above. A proposition will be considered carried by the core team if: @@ -170,8 +170,8 @@ take to convert that "-1" into at least a "+0". Whenever possible, these formal votes should be announced and held in public on the |django-developers| mailing list. However, overly sensitive -or contentious issues -- including, most notably, votes on new core -committers -- may be held in private. +or contentious issues -- including, most notably, votes on new team +members -- may be held in private. .. _searching: https://code.djangoproject.com/search diff --git a/docs/internals/contributing/committing-code.txt b/docs/internals/contributing/committing-code.txt index 5de2ef0378..ff5cce00ea 100644 --- a/docs/internals/contributing/committing-code.txt +++ b/docs/internals/contributing/committing-code.txt @@ -2,7 +2,7 @@ Committing code =============== -This section is addressed to the :doc:`/internals/committers` and to anyone +This section is addressed to the :doc:`/internals/team` and to anyone interested in knowing how code gets committed into Django core. If you're a community member who wants to contribute code to Django, have a look at :doc:`writing-code/working-with-git` instead. diff --git a/docs/internals/contributing/triaging-tickets.txt b/docs/internals/contributing/triaging-tickets.txt index 76aee6646e..f274c2ab68 100644 --- a/docs/internals/contributing/triaging-tickets.txt +++ b/docs/internals/contributing/triaging-tickets.txt @@ -57,10 +57,9 @@ Since a picture is worth a thousand words, let's start there: We've got two roles in this diagram: -* :doc:`Committers` (also called core developers): - people with commit access who are responsible for making the big - decisions, writing large portions of the code and integrating the - contributions of the community. +* Committers (also called core developers): people with commit access who are + responsible for making decisions and integrating the contributions of the + community. * Ticket triagers: anyone in the Django community who chooses to become involved in Django's development process. Our Trac installation @@ -314,7 +313,7 @@ A ticket can be resolved in a number of ways: discussion in the |django-developers| mailing list. Feel free to start or join in discussions of "wontfix" tickets on the |django-developers| mailing list, but please do not reopen tickets - closed as "wontfix" by a :doc:`core developer`. + closed as "wontfix" by a :doc:`core developer`. * duplicate Used when another ticket covers the same issue. By closing duplicate @@ -407,7 +406,7 @@ the ticket database: review a patch that you submit. * Please **don't** reverse a decision that has been made by a :doc:`core - developer`. If you disagree with a decision that + developer`. If you disagree with a decision that has been made, please post a message to |django-developers|. * If you're unsure if you should be making a change, don't make the diff --git a/docs/internals/contributing/writing-code/working-with-git.txt b/docs/internals/contributing/writing-code/working-with-git.txt index 9d48835cf1..81c8b8a682 100644 --- a/docs/internals/contributing/writing-code/working-with-git.txt +++ b/docs/internals/contributing/writing-code/working-with-git.txt @@ -7,7 +7,7 @@ requests. If you're interested in how core developers handle them, see Below, we are going to show how to create a GitHub pull request containing the changes for Trac ticket #xxxxx. By creating a fully-ready pull request you -will make the committers' job easier, meaning that your work is more likely to +will make the reviewer's job easier, meaning that your work is more likely to be merged into Django. You could also upload a traditional patch to Trac, but it's less practical for diff --git a/docs/internals/index.txt b/docs/internals/index.txt index cd38c28723..02c1c5bb1b 100644 --- a/docs/internals/index.txt +++ b/docs/internals/index.txt @@ -18,7 +18,7 @@ the hood". contributing/index mailing-lists - committers + team security release-process deprecation diff --git a/docs/internals/committers.txt b/docs/internals/team.txt similarity index 99% rename from docs/internals/committers.txt rename to docs/internals/team.txt index aebc6a2fdf..cb20fa68a9 100644 --- a/docs/internals/committers.txt +++ b/docs/internals/team.txt @@ -1,6 +1,6 @@ -================= -Django committers -================= +=========== +Django team +=========== The original team ================= @@ -55,14 +55,11 @@ Journal-World`_ of Lawrence, Kansas, USA. .. _heroku: http://heroku.com/ .. _Rdio: http://rdio.com -Current developers -================== +The current team +================ Currently, Django is led by a team of volunteers from around the globe. -Core developers ---------------- - These are the folks who have a long history of contributions, a solid track record of being helpful on the mailing lists, and a proven desire to dedicate serious time to Django. In return, they've been granted the coveted commit bit, @@ -554,8 +551,8 @@ Baptiste Mispelon .. _Solid Links: http://solidlinks.nl/ .. _Erik's Pony Checkup: http://ponycheckup.com/ -Developers Emeritus -=================== +Retired team members +==================== Georg "Hugo" Bauer Georg created Django's internationalization system, managed i18n From e9fde1c7ecc9c46ad2ae608a8718a1527b42a1ec Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Sun, 13 Jul 2014 09:59:17 +0200 Subject: [PATCH 2/7] Removed references to partial commit acces. --- .../contributing/committing-code.txt | 22 ++++--------------- 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/docs/internals/contributing/committing-code.txt b/docs/internals/contributing/committing-code.txt index ff5cce00ea..2f8599de5b 100644 --- a/docs/internals/contributing/committing-code.txt +++ b/docs/internals/contributing/committing-code.txt @@ -10,24 +10,10 @@ community member who wants to contribute code to Django, have a look at Commit access ------------- -Django has two types of committers: - -Core committers - These are people who have a long history of contributions to Django's - codebase, a solid track record of being polite and helpful on the - mailing lists, and a proven desire to dedicate serious time to Django's - development. The bar is high for full commit access. - -Partial committers - These are people who are "domain experts." They have direct check-in - access to the subsystems that fall under their jurisdiction, and they're - given a formal vote in questions that involve their subsystems. This type - of access is likely to be given to someone who contributes a large - sub-framework to Django and wants to continue to maintain it. - - Partial commit access is granted by the same process as full - committers. However, the bar is set lower; proven expertise in the area - in question is likely to be sufficient. +Core developers are people who have a long history of contributions to +Django's codebase, a solid track record of being polite and helpful on the +mailing lists, and a proven desire to dedicate serious time to Django's +development. The bar is high for full commit access. Decisions on new committers will follow the process explained in :ref:`how-we-make-decisions`. To request commit access, please contact an From 4a475ce1c84cbec9417e3d0ded97dcff5f7a38a4 Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Sun, 13 Jul 2014 16:49:45 +0200 Subject: [PATCH 3/7] Introduced a technical board. Extended the scope of the core team a bit (depending on your current perspective on that scope). --- docs/index.txt | 2 + .../contributing/committing-code.txt | 13 -- docs/internals/index.txt | 2 + docs/internals/organization.txt | 193 ++++++++++++++++++ docs/internals/roles.txt | 10 + docs/internals/team.txt | 8 +- 6 files changed, 213 insertions(+), 15 deletions(-) create mode 100644 docs/internals/organization.txt create mode 100644 docs/internals/roles.txt diff --git a/docs/index.txt b/docs/index.txt index c5addd5078..fb20bdf3a1 100644 --- a/docs/index.txt +++ b/docs/index.txt @@ -310,7 +310,9 @@ you can contribute: * **Community:** :doc:`How to get involved ` | :doc:`The release process ` | + :doc:`Team organization ` | :doc:`Meet the team ` | + :doc:`Current roles ` | :doc:`The Django source code repository ` | :doc:`Security policies ` | :doc:`Mailing lists ` diff --git a/docs/internals/contributing/committing-code.txt b/docs/internals/contributing/committing-code.txt index 2f8599de5b..d853d643fa 100644 --- a/docs/internals/contributing/committing-code.txt +++ b/docs/internals/contributing/committing-code.txt @@ -7,19 +7,6 @@ interested in knowing how code gets committed into Django core. If you're a community member who wants to contribute code to Django, have a look at :doc:`writing-code/working-with-git` instead. -Commit access -------------- - -Core developers are people who have a long history of contributions to -Django's codebase, a solid track record of being polite and helpful on the -mailing lists, and a proven desire to dedicate serious time to Django's -development. The bar is high for full commit access. - -Decisions on new committers will follow the process explained in -:ref:`how-we-make-decisions`. To request commit access, please contact an -existing committer privately. Public requests for commit access are potential -flame-war starters, and will simply be ignored. - .. _handling-pull-requests: Handling pull requests diff --git a/docs/internals/index.txt b/docs/internals/index.txt index 02c1c5bb1b..807283f0d0 100644 --- a/docs/internals/index.txt +++ b/docs/internals/index.txt @@ -18,7 +18,9 @@ the hood". contributing/index mailing-lists + organization team + roles security release-process deprecation diff --git a/docs/internals/organization.txt b/docs/internals/organization.txt new file mode 100644 index 0000000000..3f2423114b --- /dev/null +++ b/docs/internals/organization.txt @@ -0,0 +1,193 @@ +================================== +Organization of the Django Project +================================== + +Principles +========== + +The Django Project is managed by a team of volunteers pursuing three goals: + +- Driving the development of the Django Web Framework, +- Fostering the ecosystem of Django-related software, +- Leading the Django community in accordance with the values described in the + `Django Code of Conduct`_. + +The Django Project isn't a legal entity. The `Django Software Foundation`_, a +non-profit organization, handles financial and legal matters related to the +Django Project. Other than that, the Django Software Foundation lets the +Django Project manage the development of the Django framework, its ecosystem +and its community. + +.. _Django Code of Conduct: https://www.djangoproject.com/conduct/ +.. _Django Software Foundation: https://www.djangoproject.com/foundation/ + +Since 2014, the Django Project is an aristocracy_. The Django core team makes +the decisions, elects its technical board, and nominates new team members. +While it holds decision power in theory, it aims at using it as rarely as +possible in practice. Rough consensus should be the norm and formal voting an +exception. + +Until 2014, the Django Project was a benevolent_ dictatorship_. + +.. _aristocracy: http://en.wikipedia.org/wiki/Aristocracy +.. _benevolent: http://www.holovaty.com/writing/bdfls-retiring/ +.. _dictatorship: http://jacobian.org/writing/retiring-as-bdfls/ + +Core team +========= + +Role +---- + +The core team is the group of trusted volunteers who manage the Django +Project. They assume many roles required to achieve the project's goals, +especially those that require a high level of trust. They make the decisions +that shape the future of the project. + +Core team members are expected to act as role models for the community and +custodians of the project, on behalf of the community and all those who rely +on Django. + +They will intervene, where necessary, in online discussions or at official +Django events on the rare occasions that a situation arises that requires +intervention. + +They have authority over the Django Project infrastructure, including the +Django Project website itself, the Django GitHub organization and +repositories, the Trac bug tracker, the mailing lists, IRC channels, etc. + +Prerogatives +------------ + +Core team members may participate in formal votes, typically to nominate new +team members and to elect the technical board. + +Some contributions don't require commit access. Depending on the reasons why a +contributor joins the team, they may or may not have commit permissions to the +Django code repository. + +However, should the need arise, any team member may ask for commit access by +writing to the core team's mailing list. Access will be granted unless the +person withdraws their request or the technical board vetoes the proposal. + +Core team members who have commit access are referred to as "committers" or +"core developers". + +Other permissions, such as access to the servers, are granted to those who +need them through the same process. + +Membership +---------- + +The core team finds its origins with the :ref:`four people +` who created Django. It has grown to :ref:`a few dozen +people ` by co-opting volunteers who demonstrate: + +- a good grasp of the philosophy of the Django Project +- a solid track record of being constructive and helpful +- significant contributions to the project's goals, in any form +- willingness to dedicate some time to improving Django + +As the project matures, contributions go way beyond code. Here's an incomplete +list of areas where contributions may be considered for joining the core team, +in no particular order: + +- Working on community management and outreach +- Providing support on the mailing-lists and on IRC +- Triaging tickets +- Writing patches (code, docs, or tests) +- Reviewing patches (code, docs, or tests) +- Participating in design decisions +- Providing expertise in a particular domain (security, i18n, etc.) +- Managing the continuous integration infrastructure +- Managing the servers (website, tracker, documentation, etc.) +- Maintaining related projects (djangoproject.com site, ex-contrib apps, etc.) +- Creating visual designs + +Very few areas are reserved to core team members: + +- Reviewing security reports +- Merging patches (code, docs, or tests) +- Packaging releases + +Core team membership acknowledges sustained and valuable efforts that align +well with the philosophy and the goals of the Django Project. + +It is granted by a four fifths majority of votes cast in a core team vote and +no veto by the technical board. + +Core team members are always looking for promising contributors, teaching them +how the project is managed, and submitting their names to the core team's vote +when they're ready. If you would like to join the core team, you can contact a +core team member privately or ask for guidance on the :ref:`Django Core +Mentorship mailing-list `. + +There's no time limit on core team membership. However, in order to provide +the general public with a reasonable idea of how many people maintain Django, +core team members who have stopped contributing are encouraged to declare +themselves as "past team members". Those who haven't made any non-trivial +contribution in two years may be asked to move themselves to this category, +and moved there if they don't respond. Past team members lose their privileges +such as voting rights and commit access. + +Technical board +=============== + +Role +---- + +The technical board is a group of experienced and active committers who steer +technical choices. Their main concern is to maintain the quality and stability +of the Django Web Framework. + +Prerogatives +------------ + +The technical board holds two prerogatives: + +- Making major technical decisions when no consensus is found otherwise. This + happens on the |django-developers| mailing-list. +- Veto a grant of commit access or remove commit access. This happens on the + django-core mailing-list. + +In both cases, the technical board is a last resort. In these matters, it +fulfills a similar function to the former Benevolent Dictators For Life. + +When the board wants to exercise one of these prerogatives, it must hold a +private, simple majority vote on the resolution. The quorum is the full +committee — each member must cast a vote or abstain explicitly. Then the board +communicates the result, and if possible the reasons, on the appropriate +mailing-list. There's no appeal for such decisions. + +In addition, at its discretion, the technical board may act in an advisory +capacity on non-technical decisions. + +Membership +---------- + +The technical board is an elected group of five committers. They're expected +to be experienced but there's no formal seniority requirement. Its current +composition is published :ref:`here `. + +A new board is elected after each major release of Django. The election +process is managed by the outgoing technical board. The first election is +bootstrapped by the retiring BDFLs. The election process works as follows: + +1. Candidates advertise their application for the technical board to the team. + + They must be committers already. There's no term limit for technical board + members. + +2. Each team member can vote for zero to five people among the candidates. + Candidates are ranked by the total number of votes they received. + + In case of a tie, the person who joined the core team earlier wins. + +Both the application and the voting period last between one and two weeks, at +the outgoing board's discretion. + +Changing the organization +========================= + +Changes to this document require a four fifths majority of votes cast in a +core team vote and no veto by the technical board. diff --git a/docs/internals/roles.txt b/docs/internals/roles.txt new file mode 100644 index 0000000000..80ba1e7c2d --- /dev/null +++ b/docs/internals/roles.txt @@ -0,0 +1,10 @@ +===== +Roles +===== + +.. _technical-board-list: + +Technical board +=============== + +The first technical board hasn't been elected yet. diff --git a/docs/internals/team.txt b/docs/internals/team.txt index cb20fa68a9..f3fdc5c88d 100644 --- a/docs/internals/team.txt +++ b/docs/internals/team.txt @@ -2,6 +2,8 @@ Django team =========== +.. _original-team-list: + The original team ================= @@ -55,6 +57,8 @@ Journal-World`_ of Lawrence, Kansas, USA. .. _heroku: http://heroku.com/ .. _Rdio: http://rdio.com +.. _core-team-list: + The current team ================ @@ -551,8 +555,8 @@ Baptiste Mispelon .. _Solid Links: http://solidlinks.nl/ .. _Erik's Pony Checkup: http://ponycheckup.com/ -Retired team members -==================== +Past team members +================= Georg "Hugo" Bauer Georg created Django's internationalization system, managed i18n From 73b3318b1da9a0fc852b884fac236ecb3a7f998d Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Sun, 13 Jul 2014 17:19:13 +0200 Subject: [PATCH 4/7] Documented current roles. --- docs/internals/roles.txt | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/docs/internals/roles.txt b/docs/internals/roles.txt index 80ba1e7c2d..9bfd5f4c00 100644 --- a/docs/internals/roles.txt +++ b/docs/internals/roles.txt @@ -8,3 +8,40 @@ Technical board =============== The first technical board hasn't been elected yet. + +Committers +========== + +Most :ref:`core team ` members have commit access. They're called +"committers" or "core developers". + +Being part of the core team is a pre-requisite for having commit access. + +Security team +============= + +The security team is responsible for :doc:`Django's security policies +`. It handles private reports of security issues. + +The current security team members are: + +- Florian Apolloner +- James Bennett +- Jeremy Dunck +- Adrian Holovaty +- Jacob Kaplan-Moss +- Russell Keith-Magee +- Paul McMillan +- Carl Meyer +- Donald Stufft + +Releasers +========= + +Releasers take care of :doc:`building Django releases +`. + +The current releasers are: + +- James Bennett +- Jacob Kaplan-Moss From dd9c8f9382d626b432902de6178fb70a7a04a8b0 Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Sun, 13 Jul 2014 19:38:28 +0200 Subject: [PATCH 5/7] Left formal decisions up to the technical board. As the core team grows towards 50 people, it isn't reasonable to give everyone veto rights anymore. --- .../contributing/bugs-and-features.txt | 29 ++++++++----------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/docs/internals/contributing/bugs-and-features.txt b/docs/internals/contributing/bugs-and-features.txt index 842c4236b4..c6b3d494ff 100644 --- a/docs/internals/contributing/bugs-and-features.txt +++ b/docs/internals/contributing/bugs-and-features.txt @@ -150,29 +150,24 @@ follow the votes. However, consensus is not always possible. If consensus cannot be reached, or if the discussion towards a consensus fizzles out without a concrete decision, -we use a more formal process. +any :ref:`core team member ` may defer the decision to the +:ref:`technical board `. -Any :doc:`core committer` may call for a formal vote -using the same voting mechanism above. A proposition will be considered carried -by the core team if: +Internally, the technical board will use the same voting mechanism. A +proposition will be considered carried if: -* There are three "+1" votes from members of the core team. +* There are at least three "+1" votes from members of the technical board. -* There is no "-1" vote from any member of the core team. +* There is no "-1" vote from any member of the technical board. -When calling for a vote, the caller should specify a deadline by which -votes must be received. One week is generally suggested as the minimum -amount of time. +Votes should be submitted within a week. -Since this process allows any core committer to veto a proposal, any "-1" -votes should be accompanied by an explanation that explains what it would -take to convert that "-1" into at least a "+0". - -Whenever possible, these formal votes should be announced and held in -public on the |django-developers| mailing list. However, overly sensitive -or contentious issues -- including, most notably, votes on new team -members -- may be held in private. +Since this process allows any technical board member to veto a proposal, a +"-1" vote should be accompanied by an explanation of what it would take to +convert that "-1" into at least a "+0". +Votes on technical matters should be announced and held in public on the +|django-developers| mailing list. .. _searching: https://code.djangoproject.com/search .. _custom queries: https://code.djangoproject.com/query From a4ead67ee9000a41f7bdca2978c5b2e309066220 Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Sun, 13 Jul 2014 19:42:06 +0200 Subject: [PATCH 6/7] Adjusted 'internals' docs to the new organization. Most of these changes are about using the correct vocabulary -- "core team member" vs "core developer/committer" and adding internal links. --- .../contributing/committing-code.txt | 11 ++++---- .../contributing/new-contributors.txt | 12 ++++----- .../contributing/triaging-tickets.txt | 4 +-- docs/internals/git.txt | 3 ++- docs/internals/index.txt | 11 +------- docs/internals/mailing-lists.txt | 6 ++--- docs/internals/organization.txt | 4 +++ docs/internals/release-process.txt | 10 ++++---- docs/internals/roles.txt | 6 +++++ docs/internals/security.txt | 25 +++++++++---------- docs/internals/team.txt | 6 ++--- 11 files changed, 48 insertions(+), 50 deletions(-) diff --git a/docs/internals/contributing/committing-code.txt b/docs/internals/contributing/committing-code.txt index d853d643fa..136ef25728 100644 --- a/docs/internals/contributing/committing-code.txt +++ b/docs/internals/contributing/committing-code.txt @@ -2,9 +2,9 @@ Committing code =============== -This section is addressed to the :doc:`/internals/team` and to anyone -interested in knowing how code gets committed into Django core. If you're a -community member who wants to contribute code to Django, have a look at +This section is addressed to the :ref:`committers` and to anyone interested in +knowing how code gets committed into Django core. If you're a community member +who wants to contribute code to Django, have a look at :doc:`writing-code/working-with-git` instead. .. _handling-pull-requests: @@ -109,7 +109,7 @@ Django's Git repository: If you bring something up on |django-developers| and nobody responds, please don't take that to mean your idea is great and should be - implemented immediately because nobody contested it. Django's lead + implemented immediately because nobody contested it. Django's core developers don't have a lot of time to read mailing-list discussions immediately, so you may have to wait a couple of days before getting a response. @@ -142,7 +142,7 @@ Django's Git repository: use frequent small commits rather than infrequent large commits. For example, if implementing feature X requires a small change to library Y, first commit the change to library Y, then commit feature X in a - separate commit. This goes a *long way* in helping all core Django + separate commit. This goes a *long way* in helping all Django core developers follow your changes. * Separate bug fixes from feature changes. Bugfixes may need to be backported @@ -169,7 +169,6 @@ Django's Git repository: commit message, GitHub will close the pull request, but the Trac plugin will also close the same numbered ticket in Trac. - .. _Trac plugin: https://github.com/aaugustin/trac-github * If your commit references a ticket in the Django `ticket tracker`_ but diff --git a/docs/internals/contributing/new-contributors.txt b/docs/internals/contributing/new-contributors.txt index 80a87f1e8f..2e55114a66 100644 --- a/docs/internals/contributing/new-contributors.txt +++ b/docs/internals/contributing/new-contributors.txt @@ -102,8 +102,8 @@ some advice to make your work on Django more useful and rewarding. Sometimes it can be scary to put your opinion out to the world and say "this ticket is correct" or "this patch needs work", but it's the only way the project moves forward. The contributions of the broad Django community - ultimately have a much greater impact than that of the core developers. We - can't do it without YOU! + ultimately have a much greater impact than that of the core team. We can't + do it without **you**! * **Err on the side of caution when marking things Ready For Check-in** @@ -138,10 +138,10 @@ FAQ I do to get it committed?** First off, it's not personal. Django is entirely developed by volunteers - (even the core developers), and sometimes folks just don't have time. The - best thing to do is to send a gentle reminder to the |django-developers| - mailing list asking for review on the ticket, or to bring it up in the - #django-dev IRC channel. + (even the core team), and sometimes folks just don't have time. The best + thing to do is to send a gentle reminder to the |django-developers| mailing + list asking for review on the ticket, or to bring it up in the #django-dev + IRC channel. 2. **I'm sure my ticket is absolutely 100% perfect, can I mark it as RFC myself?** diff --git a/docs/internals/contributing/triaging-tickets.txt b/docs/internals/contributing/triaging-tickets.txt index f274c2ab68..8c5aed5e3e 100644 --- a/docs/internals/contributing/triaging-tickets.txt +++ b/docs/internals/contributing/triaging-tickets.txt @@ -29,7 +29,7 @@ possible, and raise issues for discussion on our mailing lists when there is confusion or disagreement. Django is a community project, and every contribution helps. We can't do this -without YOU! +without **you**! Triage workflow --------------- @@ -146,7 +146,7 @@ Ready For Checkin The ticket was reviewed by any member of the community other than the person who supplied the patch and found to meet all the requirements for a -commit-ready patch. A core committer now needs to give the patch a final +commit-ready patch. A committer now needs to give the patch a final review prior to being committed. See the :ref:`New contributors' FAQ` for "My ticket has been in RFC forever! What should I do?" diff --git a/docs/internals/git.txt b/docs/internals/git.txt index 07837bac47..45d137b1ce 100644 --- a/docs/internals/git.txt +++ b/docs/internals/git.txt @@ -243,7 +243,8 @@ branches, used for Google Summer of Code projects. Tags ==== -Each Django release is tagged and signed by Django's release manager. +Each Django release is tagged and signed by a :ref:`releaser +`. The tags can be found on GitHub's `tags`_ page. diff --git a/docs/internals/index.txt b/docs/internals/index.txt index 807283f0d0..415e6bfeb5 100644 --- a/docs/internals/index.txt +++ b/docs/internals/index.txt @@ -2,16 +2,7 @@ Django internals ================ Documentation for people hacking on Django itself. This is the place to go if -you'd like to help improve Django, learn or learn about how Django works "under -the hood". - -.. warning:: - - Elsewhere in the Django documentation, coverage of a feature is a sort of a - contract: once an API is in the official documentation, we consider it - "stable" and don't change it without a good reason. APIs covered here, - however, are considered "internal-only": we reserve the right to change - these internals if we must. +you'd like to help improve Django or learn about how Django is managed. .. toctree:: :maxdepth: 2 diff --git a/docs/internals/mailing-lists.txt b/docs/internals/mailing-lists.txt index 4f31cb6466..fc2fa320f0 100644 --- a/docs/internals/mailing-lists.txt +++ b/docs/internals/mailing-lists.txt @@ -40,9 +40,9 @@ installation, usage, or debugging of Django. ``django-core-mentorship`` -------------------------- -The Django Core Development Mentorship list is intended to provide a welcoming -introductory environment for developers interested in contributing to core -Django development. +The Django Core Mentorship list is intended to provide a welcoming +introductory environment for community members interested in contributing to +the Django Project. * `django-core-mentorship mailing archive`_ * `django-core-mentorship subscription email address`_ diff --git a/docs/internals/organization.txt b/docs/internals/organization.txt index 3f2423114b..17caf54583 100644 --- a/docs/internals/organization.txt +++ b/docs/internals/organization.txt @@ -33,6 +33,8 @@ Until 2014, the Django Project was a benevolent_ dictatorship_. .. _benevolent: http://www.holovaty.com/writing/bdfls-retiring/ .. _dictatorship: http://jacobian.org/writing/retiring-as-bdfls/ +.. _core-team: + Core team ========= @@ -130,6 +132,8 @@ contribution in two years may be asked to move themselves to this category, and moved there if they don't respond. Past team members lose their privileges such as voting rights and commit access. +.. _technical-board: + Technical board =============== diff --git a/docs/internals/release-process.txt b/docs/internals/release-process.txt index 26343a1bbd..c470273391 100644 --- a/docs/internals/release-process.txt +++ b/docs/internals/release-process.txt @@ -144,11 +144,11 @@ Release process Django uses a time-based release schedule, with major (i.e. 1.6, 1.7, etc.) releases every nine months, or more, depending on features. -After each release, and after a suitable cooling-off period of a few weeks, the -core development team will examine the landscape and announce a timeline for the -next release. Most releases will be scheduled in the 6-9 month range, but if we -have bigger features to development we might schedule a longer period to allow -for more ambitious work. +After each release, and after a suitable cooling-off period of a few weeks, +core developers will examine the landscape and announce a timeline for the +next release. Most releases will be scheduled in the 6-9 month range, but if +we have bigger features to development we might schedule a longer period to +allow for more ambitious work. Release cycle ------------- diff --git a/docs/internals/roles.txt b/docs/internals/roles.txt index 9bfd5f4c00..46ffdbb2ec 100644 --- a/docs/internals/roles.txt +++ b/docs/internals/roles.txt @@ -9,6 +9,8 @@ Technical board The first technical board hasn't been elected yet. +.. _committers: + Committers ========== @@ -17,6 +19,8 @@ Most :ref:`core team ` members have commit access. They're called Being part of the core team is a pre-requisite for having commit access. +.. _security-team-list: + Security team ============= @@ -35,6 +39,8 @@ The current security team members are: - Carl Meyer - Donald Stufft +.. _releasers-list: + Releasers ========= diff --git a/docs/internals/security.txt b/docs/internals/security.txt index 20ab81a8ab..4dc6994f36 100644 --- a/docs/internals/security.txt +++ b/docs/internals/security.txt @@ -19,21 +19,20 @@ Reporting security issues **Short version: please report security issues by emailing security@djangoproject.com**. -Most normal bugs in Django are reported to `our public Trac -instance`_, but due to the sensitive nature of security issues, we ask -that they **not** be publicly reported in this fashion. +Most normal bugs in Django are reported to `our public Trac instance`_, but +due to the sensitive nature of security issues, we ask that they **not** be +publicly reported in this fashion. -Instead, if you believe you've found something in Django which has -security implications, please send a description of the issue via -email to ``security@djangoproject.com``. Mail sent to that address -reaches a subset of the core development team, who can forward -security issues into the private committers' mailing list for broader -discussion if needed. +Instead, if you believe you've found something in Django which has security +implications, please send a description of the issue via email to +``security@djangoproject.com``. Mail sent to that address reaches a +:ref:`subset of the core team `, who can forward security +issues into the private committers' mailing list for broader discussion if +needed. -Once you've submitted an issue via email, you should receive an -acknowledgment from a member of the Django development team within 48 -hours, and depending on the action to be taken, you may receive -further followup emails. +Once you've submitted an issue via email, you should receive an acknowledgment +from a member of the security team within 48 hours, and depending on the +action to be taken, you may receive further followup emails. .. note:: diff --git a/docs/internals/team.txt b/docs/internals/team.txt index f3fdc5c88d..f18a4b8bcd 100644 --- a/docs/internals/team.txt +++ b/docs/internals/team.txt @@ -62,12 +62,10 @@ Journal-World`_ of Lawrence, Kansas, USA. The current team ================ -Currently, Django is led by a team of volunteers from around the globe. - These are the folks who have a long history of contributions, a solid track record of being helpful on the mailing lists, and a proven desire to dedicate -serious time to Django. In return, they've been granted the coveted commit bit, -and have free rein to hack on all parts of Django. +serious time to Django. In return, they've been invited to join the :ref:`core +team `. Malcolm Tredinnick Malcolm originally wanted to be a mathematician, somehow ended up a software From f8aeeff291f83b8b0cf767b41ca5bdc6192db296 Mon Sep 17 00:00:00 2001 From: Aymeric Augustin Date: Sun, 13 Jul 2014 22:24:21 +0200 Subject: [PATCH 7/7] Removed references to well-known political systems. Some cultures can't handle these words. --- docs/internals/organization.txt | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/docs/internals/organization.txt b/docs/internals/organization.txt index 17caf54583..ce40b67e89 100644 --- a/docs/internals/organization.txt +++ b/docs/internals/organization.txt @@ -21,17 +21,10 @@ and its community. .. _Django Code of Conduct: https://www.djangoproject.com/conduct/ .. _Django Software Foundation: https://www.djangoproject.com/foundation/ -Since 2014, the Django Project is an aristocracy_. The Django core team makes -the decisions, elects its technical board, and nominates new team members. -While it holds decision power in theory, it aims at using it as rarely as -possible in practice. Rough consensus should be the norm and formal voting an -exception. - -Until 2014, the Django Project was a benevolent_ dictatorship_. - -.. _aristocracy: http://en.wikipedia.org/wiki/Aristocracy -.. _benevolent: http://www.holovaty.com/writing/bdfls-retiring/ -.. _dictatorship: http://jacobian.org/writing/retiring-as-bdfls/ +The Django core team makes the decisions, nominates its new members, and +elects its technical board. While it holds decision power in theory, it aims +at using it as rarely as possible in practice. Rough consensus should be the +norm and formal voting an exception. .. _core-team: