From 01dde075d697584ad01f8d2b65477dbba17c8f43 Mon Sep 17 00:00:00 2001 From: Graham Percival Date: Sun, 13 Jun 2010 17:34:48 +0100 Subject: [PATCH] Doc: CG: add "administration" chapter. Also adds stuff about the Meisters. --- Documentation/contributor.texi | 2 + .../contributor/administration.itexi | 159 ++++++++++++++++++ Documentation/contributor/doc-work.itexi | 6 + Documentation/contributor/issues.itexi | 3 + Documentation/contributor/release-work.itexi | 29 ---- 5 files changed, 170 insertions(+), 29 deletions(-) create mode 100644 Documentation/contributor/administration.itexi diff --git a/Documentation/contributor.texi b/Documentation/contributor.texi index 45452faaa8..53f796a3e3 100644 --- a/Documentation/contributor.texi +++ b/Documentation/contributor.texi @@ -59,6 +59,7 @@ Copyright @copyright{} 2007--2010 by the authors. * Regression tests:: * Programming work:: * Release work:: +* Administrative policies:: Appendices @@ -82,6 +83,7 @@ Appendices @include contributor/regressions.itexi @include contributor/programming-work.itexi @include contributor/release-work.itexi +@include contributor/administration.itexi @include fdl.itexi diff --git a/Documentation/contributor/administration.itexi b/Documentation/contributor/administration.itexi new file mode 100644 index 0000000000..b12dd777e2 --- /dev/null +++ b/Documentation/contributor/administration.itexi @@ -0,0 +1,159 @@ +@c -*- coding: utf-8; mode: texinfo; -*- +@node Administrative policies +@chapter Administrative policies + +This chapter discusses miscellaneous administrative issues which +don't fit anywhere else. + +@menu +* Meta-policy for this document:: +* Meisters:: +* Unsorted policies:: +@end menu + +@node Meta-policy for this document +@section Meta-policy for this document + +The Contributor's Guide as a whole is still a work in progress, +but some chapters are much more complete than others. Chapters +which are @qq{almost finished} should not have major changes +without a discussion on @code{-devel}; in other chapters, a +disorganized @qq{wiki-style dump} of information is encouraged. + +Do not change (other than spelling mistakes) without discussion: + +@itemize + +@item +@ref{Introduction to contributing} + +@item +@ref{Working with source code} + +@item +@ref{Issues} + +@end itemize + +Please dump info in an appropriate @@section within these manuals, +but discuss any large-scale reorganization: + +@itemize + +@item +@ref{Compiling} + +@item +@ref{Documentation work} + +@item +@ref{Regression tests} + +@item +@ref{Programming work} + + +@end itemize + +Totally disorganized; do whatever the mao you want: + +@itemize + +@item +@ref{Website work} + +@item +@ref{LSR work} + +@item +@ref{Release work} + +@item +@ref{Administrative policies} + +@end itemize + + + +@node Meisters +@section Meisters + +We have four jobs for organizing a team of contributors: + +@itemize + +@item +Bug Meister: trains new Bug Squad volunteers, organizes who works +on which part of their job, checks to make sure that everything is +running smoothly, and has final say on our policy for Issues. + +Currently: Graham + +@item +Doc Meister: trains new doc editors/writers, organizes who works +on which part of the job, checks to make sure that everything is +running smoothly, and has final say on our policy for +Documentation. Also includes LSR work. + +Currently: Graham + +@item +Translation Meister: trains new translators, updates the +translation priority list, and handles merging branches (in both +directions). + +Currently: Francisco + +@item +Frog Meister: is responsible for code patches from (relatively) +inexperienced contributors. Keeps track of patches, does initial +reviewing of those patches, sends them to @code{-devel} when +they've had some initial review on the Frog list, pesters the +@code{-devel} community into actually reviewing said patches, and +finally pushes the patches once they're accepted. This person is +@emph{not} responsible for training new programmers, because that +would be far too much work -- he job is @qq{only} to guide +completed patches through our process. + +Currently: Carl + +@end itemize + + + +@node Unsorted policies +@section Unsorted policies + +@subsubheading Language-specific mailing lists + +A translator can ask for an official lilypond-xy mailing list once +they've finished all @qq{priority 1} translation items. + +@subsubheading Performing yearly copyright update (@qq{grand-replace}) + +At the start of each year, copyright notices for all source files +should be refreshed by running the following command from the top of +the source tree: + +@example +make grand-replace +@end example + +Internally, this invokes the script @file{scripts/build/grand-replace.py}, +which performs a regular expression substitution for old-year -> new-year +wherever it finds a valid copyright notice. + +Note that snapshots of third party files such as @file{texinfo.tex} should +not be included in the automatic update; @file{grand-replace.py} ignores these +files if they are listed in the variable @code{copied_files}. + + +@subsubheading Push git access + +Git access is given out when a contributor has a significant +record of patches being accepted without problems. If existing +developers are tired of pushing patches for a contributor, we'll +discuss giving them push access. Unsolicited requests from +contributors for access will almost always be turned down. + + diff --git a/Documentation/contributor/doc-work.itexi b/Documentation/contributor/doc-work.itexi index 76fcf37f0f..16f9f0f7e6 100644 --- a/Documentation/contributor/doc-work.itexi +++ b/Documentation/contributor/doc-work.itexi @@ -62,6 +62,9 @@ the main portion of NR 1+2) may also seem counter-intuitive, but they also stem from attempting to find the most effective use of limited documentation help. +Before undertaking any large documentation work, contributors are +encouraged to contact the @ref{Meisters, Documentation Meister}. + @node Documentation suggestions @section Documentation suggestions @@ -1393,6 +1396,9 @@ motivation and a suitable system, it can be very useful to build at least the documentation so that you can check the output yourself and more quickly; if you are interested, see @ref{Compiling}. +Before undertaking any large translation work, contributors are +encouraged to contact the @ref{Meisters, Translation Meister}. + @node Which documentation can be translated @unnumberedsubsubsec Which documentation can be translated diff --git a/Documentation/contributor/issues.itexi b/Documentation/contributor/issues.itexi index fbf4d0d7f6..4be817384d 100644 --- a/Documentation/contributor/issues.itexi +++ b/Documentation/contributor/issues.itexi @@ -34,6 +34,9 @@ include removing false bug reports, ensuring that any real bug report contains enough information for developers, and checking that a developer's fix actually resolves the problem. +New volunteers for the Bug Squad should contact the +@ref{Meisters, Bug Meister}. + @node Bug Squad checklists @section Bug Squad checklists diff --git a/Documentation/contributor/release-work.itexi b/Documentation/contributor/release-work.itexi index 146fcc45b7..ad6a6f79e9 100644 --- a/Documentation/contributor/release-work.itexi +++ b/Documentation/contributor/release-work.itexi @@ -7,7 +7,6 @@ * Minor release checklist:: * Major release checklist:: * Release extra notes:: -* Administrative policies:: @end menu @@ -415,32 +414,4 @@ delete stuff you didn't want to upload from the server. @end enumerate -@node Administrative policies -@section Administrative policies -Not really release-specific notes, but I don't see enough material -here to make it a separate chapter, and the release person will -probably be the one taking care of this anyway. - -@subsubheading Language-specific mailing lists - -A translator can ask for an official lilypond-xy mailing list once -they've finished all @qq{priority 1} translation items. - -@subsubheading Performing yearly copyright update (@qq{grand-replace}) - -At the start of each year, copyright notices for all source files -should be refreshed by running the following command from the top of -the source tree: - -@example -make grand-replace -@end example - -Internally, this invokes the script @file{scripts/build/grand-replace.py}, -which performs a regular expression substitution for old-year -> new-year -wherever it finds a valid copyright notice. - -Note that snapshots of third party files such as @file{texinfo.tex} should -not be included in the automatic update; @file{grand-replace.py} ignores these -files if they are listed in the variable @code{copied_files}. -- 2.39.2