]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/contributor/issues.itexi
Doc: CG updated Bug Squad List
[lilypond.git] / Documentation / contributor / issues.itexi
index 09c62552b77d392214cc2ed19fd3882c4ac3c4a9..a915a60422d963f9ab6dc02b79e1384684df2bbe 100644 (file)
@@ -11,6 +11,7 @@ miscellaneous development tasks.
 * Bug Squad checklists::
 * Issue classification::
 * Adding issues to the tracker::
 * Bug Squad checklists::
 * Issue classification::
 * Adding issues to the tracker::
+* Patch handling::
 * Summary of project status::
 @end menu
 
 * Summary of project status::
 @end menu
 
@@ -77,8 +78,8 @@ Sign in to google code by clicking in the top-right corner of:
 @uref{http://code.google.com/p/lilypond/issues/list}
 @end example
 
 @uref{http://code.google.com/p/lilypond/issues/list}
 @end example
 
-You cannot log if you have Google Sharing
-@uref{http://www.googlesharing.net/} enabled.
+You cannot log on if you have Google Sharing enabled
+@uref{http://www.googlesharing.net/}.
 
 @item
 Go to your @qq{Profile}, and select @qq{Settings}.
 
 @item
 Go to your @qq{Profile}, and select @qq{Settings}.
@@ -136,7 +137,7 @@ should go into a separate @code{bug-current} folder.
 @section Bug Squad checklists
 
 When you do Bug Squad work, start at the top of this page and work
 @section Bug Squad checklists
 
 When you do Bug Squad work, start at the top of this page and work
-your way down.  Stop when you've done 15 minutes.
+your way down.  Stop when you've done 20 minutes.
 
 Please use the email sorting described in @ref{Bug Squad setup}.
 This means that (as Bug Squad members) you will only ever respond
 
 Please use the email sorting described in @ref{Bug Squad setup}.
 This means that (as Bug Squad members) you will only ever respond
@@ -146,7 +147,7 @@ to emails sent or CC'd to the @code{bug-lilypond} mailing list.
 @subsubheading Emails to you personally
 
 You are not expected to work on Bug Squad matters outside of your
 @subsubheading Emails to you personally
 
 You are not expected to work on Bug Squad matters outside of your
-15 minutes, but sometimes a confused user will send a bug report
+20 minutes, but sometimes a confused user will send a bug report
 (or an update to a report) to you personally.  If that happens,
 please forward such emails to the @code{bug-lilypond} list so that
 the currently-active Bug Squad member(s) can handle the message.
 (or an update to a report) to you personally.  If that happens,
 please forward such emails to the @code{bug-lilypond} list so that
 the currently-active Bug Squad member(s) can handle the message.
@@ -154,16 +155,16 @@ the currently-active Bug Squad member(s) can handle the message.
 
 @subsubheading Daily schedule
 
 
 @subsubheading Daily schedule
 
-The Bug Meister is omitted from the daily schedule.
+@c spacing is deliberate to help reinforce the "cyclic" nature
 
 @example
 
 @example
-Sunday: Colin
-Monday: Dmytro
-Tuesday: James Bailey
-Wednesday: Ralph
-Thursday: Patrick
-Friday: Urs
-Saturday: Kieren
+Monday:    James
+Tuesday:    Colin
+Wednesday:   Brett
+Thursday:  James
+Friday:     Colin
+Saturday:    Brett
+Sunday:       Phil
 @end example
 
 
 @end example
 
 
@@ -314,7 +315,17 @@ After @strong{every release} (both stable and unstable):
 
 @item
 Regression test comparison: if anything has changed suspiciously,
 
 @item
 Regression test comparison: if anything has changed suspiciously,
-ask if it was deliberate.  The official comparison is online, at:
+ask if it was deliberate.  If the text output from LilyPond (the
+logfile) changes, the differences will be displayed with a +
+before text added to the logfile and - before any text removed
+from the logfile.  This may or may not be suspicious.
+
+There is one test designed to produce output every time the
+regtests are created. @code{test-output-distance.ly} creates
+randomly spaced notes and will always have different output if the
+regtest checker is working.
+
+The official comparison is online, at:
 
 @c NOTE: leave this here.  In this case, it's worth duplicating
 @c       the link.  -gp
 
 @c NOTE: leave this here.  In this case, it's worth duplicating
 @c       the link.  -gp
@@ -328,8 +339,8 @@ More information is available from in
 
 @item
 Issues to verify: try to reproduce the bug with the latest
 
 @item
 Issues to verify: try to reproduce the bug with the latest
-version; if you cannot reproduce the bug, mark the item
-@qq{Verified} (i.e. @qq{the fix has been verified to work}).
+official GUB version; if you cannot reproduce the bug, mark the
+item @qq{Verified} (i.e. @qq{the fix has been verified to work}).
 
 @example
 @uref{http://code.google.com/p/lilypond/issues/list?can=7}
 
 @example
 @uref{http://code.google.com/p/lilypond/issues/list?can=7}
@@ -340,34 +351,17 @@ build system or fundamental architecture changes; there is no way
 for you to verify these.  Leave those issues alone; somebody else
 will handle them.
 
 for you to verify these.  Leave those issues alone; somebody else
 will handle them.
 
-@end itemize
-
-
-@ignore
-@c try omitting from daily tasks for now. -gp
-
-Once every @strong{two weeks} or so:
-
-@itemize
-
 @item
 Check for any incorrectly-classified items in the tracker.  This
 generally just means looking at the grid to see any items without
 @item
 Check for any incorrectly-classified items in the tracker.  This
 generally just means looking at the grid to see any items without
-a Type or Priority.
-
-@item
-Check for any items with @code{label:patch}.  If it's been more
-than a week since the last action on the issue, send an email to
--devel to remind them about it.  If the patch was withdrawn for
-more work, then remove the @code{patch} label.
-
-@example
-@uref{http://code.google.com/p/lilypond/issues/list?can=2&q=label:patch}
-@end example
+a Type.
 
 @end itemize
 
 
 
 @end itemize
 
 
+@ignore
+@c try omitting from daily tasks for now. -gp
+
 @subheading Irregular maintenance
 
 @warning{These tasks are a lot of work; gathering more volunteers
 @subheading Irregular maintenance
 
 @warning{These tasks are a lot of work; gathering more volunteers
@@ -545,6 +539,9 @@ Issues that only affect specific operating systems.
 
 @subheading Patch (optional)
 
 
 @subheading Patch (optional)
 
+Normal Bug Squad members should not add or modify Patch issues;
+leave them to the Patch Meister.
+
 @itemize
 
 @item
 @itemize
 
 @item
@@ -566,7 +563,7 @@ some cases, the developer's concerns can be resolved simply by
 discussion the situation or providing notation examples.
 
 If the patch is updated, the category should be changed to
 discussion the situation or providing notation examples.
 
 If the patch is updated, the category should be changed to
-@code{patch-new} (for normal contributors) or @code{patch-new}
+@code{patch-new} (for normal contributors) or @code{patch-review}
 (for developers who are very confident about their patch).
 
 @item
 (for developers who are very confident about their patch).
 
 @item
@@ -652,8 +649,6 @@ follow the guidelines for @rweb{Bug reports}.}
 In order to assign labels to issues, Bug Squad members should log
 in to their google account before adding an item.
 
 In order to assign labels to issues, Bug Squad members should log
 in to their google account before adding an item.
 
-@subsubheading Normal issues
-
 @enumerate
 
 @item
 @enumerate
 
 @item
@@ -696,6 +691,15 @@ If the issue requires one or two pages of output, then generate a
 lilypond --png bug.ly
 @end example
 
 lilypond --png bug.ly
 @end example
 
+@item
+Images created as @file{bug.png} may be trimmed to a minimum size
+by using the @code{trimtagline.sh} script, which can be found at
+@uref{https://raw.github.com/gperciva/lilypond-extra/master/bug-squad/trimtagline.sh}
+
+@example
+trimtagline.sh bug.ly
+@end example
+
 @item
 If the issue cannot be shown with less than three pages, then
 generate a @file{bug.pdf} file with:
 @item
 If the issue cannot be shown with less than three pages, then
 generate a @file{bug.pdf} file with:
@@ -720,18 +724,41 @@ email should contain a link to the issue you just added.
 @end enumerate
 
 
 @end enumerate
 
 
-@subsubheading Patch reminders
+
+@node Patch handling
+@section Patch handling
 
 @warning{This is not a Bug Squad responsibility; we have a
 separate person handling this task.}
 
 
 @warning{This is not a Bug Squad responsibility; we have a
 separate person handling this task.}
 
-There is a special category of issues: reminders of an existing
-patch.  These should be added if a patch has been sent to a
-lilypond mailing list (generally @code{lilypond-devel}, but they
-sometimes appear on @code{bug-lilypond} as well) and has had no
-discussion for at least @strong{3 days}.  Do not add issues for
-patches under active discussion.
+There is a single Patch Meister, and a number of Patch Helpers
+(rename this?).  The list of known patches awaiting review is:
+
+@example
+@uref{http://code.google.com/p/lilypond/issues/list?can=2&q=label:patch&sort=patch}
+@end example
+
+
+@subheading Helpers: adding patches
+
+The primary duty is to add patches to the google tracker; we have
+a bad track record of losing patches in email.  Patches generally
+come to the @code{lilypond-devel} mailing list, but are sometimes
+sent to @code{bug-lilypond}, @code{lilypond-users}, or
+@code{frogs} mailing list instead.
+
+@itemize
+@item
+Unless a patch is clearly in response to an existing issue, add a
+new issue with the @code{Patch-new} label and a link to the patch
+(either on the mailing list archives or the codereview url).
+
+Issue numbers are cheap; losing developers because they got fed up
+with us losing their hard work is expensive.
 
 
+@c if we enter patches immediately, I don't think this is relevant.
+@ignore
+@item
 Before adding a patch-reminder issue, do a quick check to see if
 it was pushed without sending any email.  This can be checked for
 searching for relevant terms (from the patch subject or commit
 Before adding a patch-reminder issue, do a quick check to see if
 it was pushed without sending any email.  This can be checked for
 searching for relevant terms (from the patch subject or commit
@@ -740,12 +767,85 @@ message) on the webgit page:
 @example
 @uref{http://git.savannah.gnu.org/gitweb/?p=lilypond.git}
 @end example
 @example
 @uref{http://git.savannah.gnu.org/gitweb/?p=lilypond.git}
 @end example
+@end ignore
 
 
+@item
+If the patch is clearly in response to an existing issue, then
+update that issue with the @code{Patch-new} label and a link to
+the patch (either on the mailing list archives or the codereview
+url).
+
+@item
 After adding the issue, please send a response email to the same
 After adding the issue, please send a response email to the same
-group(s) that the initial patch was sent to.  If the initial email
-was sent to multiple mailing lists (such as both @code{bugs} and
-@code{devel}), then reply to all those mailing lists as well.  The
-email should contain a link to the issue you just added.
+group(s) that the initial patch was sent to.
+
+If the initial email was sent to multiple mailing lists (such as
+both @code{bugs} and @code{devel}), then reply to all those
+mailing lists as well.  The email should contain a link to the
+issue you just added.
+
+@end itemize
+
+@subheading Helpers: @code{Patch-review} label
+
+The secondary duty is to do make sure that every issue in the
+tracker with a @code{Patch-review} label has passed these
+@qq{obvious} tests:
+
+@itemize
+@item
+Applies automatically to git master.
+
+It's ok to have offsets, but not conflicts.
+
+@item
+Regtest comparison looks ok; no unexpected changes.
+
+@item
+Descriptive subject line.
+
+Avoid subjects like @qq{fixes 123}; instead write @qq{Doc: discuss
+stacking-dir for BassFigureAlignment (fix 123)}.
+
+@item
+Compiles docs from scratch.  Only check this if you have reason to
+suspect it might not work.
+
+@item
+(maybe)
+
+Check code indentation and style.  This should be easier post-GOP
+when we have a better-defined code style.
+
+@end itemize
+
+
+@subheading Patch Meister
+
+The Patch Meister will:
+
+@itemize
+
+@item
+send @qq{countdown} emails to
+@code{lilypond-devel} when patches appear to be ready.
+
+@item
+send general requests to review patches, or even nasty requests to
+review patches.
+
+@item
+downgrade patches from @code{Patch-review} to
+@code{Patch-needs_work} as appropriate.
+
+@item
+downgrade patches from @code{Patch-needs_work} to
+@code{Patch-abandoned} if no actions have been taken in four
+weeks.
+
+@end itemize
+
+
 
 
 @node Summary of project status
 
 
 @node Summary of project status
@@ -755,17 +855,17 @@ email should contain a link to the issue you just added.
 
 Grid view provides the best overview:
 
 
 Grid view provides the best overview:
 
-@example
+@smallexample
 @uref{http://code.google.com/p/lilypond/issues/list?mode=grid&y=Priority&x=Type&cells=ids}
 @uref{http://code.google.com/p/lilypond/issues/list?mode=grid&y=Priority&x=Type&cells=ids}
-@end example
+@end smallexample
 
 @subsubheading Hindering development
 
 These issues stop or slow development work:
 
 
 @subsubheading Hindering development
 
 These issues stop or slow development work:
 
-@example
-@uref{http://code.google.com/p/lilypond/issues/list?can=2&q=label:Maintainability&mode=grid&y=Priority&x=Type&cells=ids}
-@end example
+@smallexample
+@uref{http://code.google.com/p/lilypond/issues/list?can=2&q=label:Maintainability}
+@end smallexample
 
 @subsubheading Easy tasks
 
 
 @subsubheading Easy tasks
 
@@ -775,9 +875,9 @@ relatively new contributor.  The time given is a quick
 familiar with material in this manual, but does not know anything
 else about LilyPond development.
 
 familiar with material in this manual, but does not know anything
 else about LilyPond development.
 
-@example
-@uref{http://code.google.com/p/lilypond/issues/list?can=2&q=label:Frog&mode=grid&y=Priority&x=Type&cells=ids}
-@end example
+@smallexample
+@uref{http://code.google.com/p/lilypond/issues/list?can=2&q=label:Frog}
+@end smallexample
 
 @subsubheading Patches to review
 
 
 @subsubheading Patches to review