* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. @ 2022-11-23 10:49 Christopher Baines 2022-11-23 20:27 ` zimoun ` (2 more replies) 0 siblings, 3 replies; 21+ messages in thread From: Christopher Baines @ 2022-11-23 10:49 UTC (permalink / raw) To: 59513 Add more examples of when it can be appropriate to push changes without review, as I think this can be appropriate in the case of trivial changes (as mentioned before), but also non-trivial fixes. No longer suggest pushing simple new packages or package upgrades (that don't cause lots of rebuilds) without sending to guix-patches. Now there's some automation for testing changes sent to guix-patches, sending changes there before pushing can mean that more rigerious testing takes place and help speed up substitutes becoming available. This is true, even if no human review takes place. Only suggest waiting one week for review for simpler changes, wait two weeks for more significant changes. Also, reorder some of the information in this section so it's grouped together better. * doc/contributing.texi (Commit Policy): Tweak. --- doc/contributing.texi | 38 ++++++++++++++++---------------------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 40ae33ecac..6f772961ea 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -1819,23 +1819,25 @@ It additionally calls @code{make check-channel-news} to be sure @subsection Commit Policy -If you get commit access, please make sure to follow -the policy below (discussions of the policy can take place on +If you get commit access, please make sure to follow the policy below +(discussions of the policy can take place on @email{guix-devel@@gnu.org}). -Non-trivial patches should always be posted to -@email{guix-patches@@gnu.org} (trivial patches include fixing typos, -etc.). This mailing list fills the patch-tracking database -(@pxref{Tracking Bugs and Patches}). +For a minority of changes, it can be appropriate to push them directly +without sending them for review. This includes both trivial changes +(e.g. fixing typos) but also reverting problomatic changes and +addressing regressions. -For patches that just add a new package, and a simple one, it's OK to -commit, if you're confident (which means you successfully built it in a -chroot setup, and have done a reasonable copyright and license -auditing). Likewise for package upgrades, except upgrades that trigger -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have a -mailing list for commit notifications (@email{guix-commits@@gnu.org}), -so people can notice. Before pushing your changes, make sure to run -@code{git pull --rebase}. +In general though, all changes should be posted to +@email{guix-patches@@gnu.org}. This mailing list fills the +patch-tracking database (@pxref{Tracking Bugs and Patches}). Leave time +for a review, without committing anything (@pxref{Submitting Patches}). +If you didn’t receive any reply after one week (two weeks for more +significant changes), and if you're confident, it's OK to commit. + +That last part is subject to being adjusted, allowing individuals to +commit directly on non-controversial changes on parts they’re familiar +with. When pushing a commit on behalf of somebody else, please add a @code{Signed-off-by} line at the end of the commit log message---e.g., @@ -1850,14 +1852,6 @@ right before pushing: make check-channel-news @end example -For anything else, please post to @email{guix-patches@@gnu.org} and -leave time for a review, without committing anything (@pxref{Submitting -Patches}). If you didn’t receive any reply after two weeks, and if -you're confident, it's OK to commit. - -That last part is subject to being adjusted, allowing individuals to commit -directly on non-controversial changes on parts they’re familiar with. - @subsection Addressing Issues Peer review (@pxref{Submitting Patches}) and tools such as -- 2.38.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-11-23 10:49 [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy Christopher Baines @ 2022-11-23 20:27 ` zimoun 2022-11-24 8:40 ` Christopher Baines 2022-12-01 21:44 ` Ludovic Courtès 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines 2 siblings, 1 reply; 21+ messages in thread From: zimoun @ 2022-11-23 20:27 UTC (permalink / raw) To: Christopher Baines, 59513 Hi Chris, On Wed, 23 Nov 2022 at 10:49, Christopher Baines <mail@cbaines.net> wrote: > +For a minority of changes, it can be appropriate to push them directly > +without sending them for review. This includes both trivial changes > +(e.g. fixing typos) but also reverting problomatic changes and -^ > +addressing regressions. > -For patches that just add a new package, and a simple one, it's OK to > -commit, if you're confident (which means you successfully built it in a > -chroot setup, and have done a reasonable copyright and license > -auditing). Likewise for package upgrades, except upgrades that trigger > -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have a > -mailing list for commit notifications (@email{guix-commits@@gnu.org}), > -so people can notice. Before pushing your changes, make sure to run > -@code{git pull --rebase}. > +In general though, all changes should be posted to > +@email{guix-patches@@gnu.org}. This mailing list fills the > +patch-tracking database (@pxref{Tracking Bugs and Patches}). Leave time > +for a review, without committing anything (@pxref{Submitting Patches}). > +If you didn’t receive any reply after one week (two weeks for more > +significant changes), and if you're confident, it's OK to commit. I would write: … changes), and if you're confident (which means you successfully built it in a chroot setup, and have done a reasonable copyright and license auditing), it’s OK to commit. and I would keep the «two weeks» instead of the «one week except». I think it is also useful to provide the information about commit notifications (guix-commits mailing list). For what it is worth, I find clearer the structure, For patches that … For anything else, … or For a minority of changes, … For anything else, … than «In general though, all changes …». Cheers, simon ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-11-23 20:27 ` zimoun @ 2022-11-24 8:40 ` Christopher Baines 2022-11-24 11:59 ` zimoun 2022-12-02 9:45 ` Ludovic Courtès 0 siblings, 2 replies; 21+ messages in thread From: Christopher Baines @ 2022-11-24 8:40 UTC (permalink / raw) To: zimoun; +Cc: 59513 [-- Attachment #1: Type: text/plain, Size: 3087 bytes --] zimoun <zimon.toutoune@gmail.com> writes: > Hi Chris, Hey! Thanks for taking a look. > On Wed, 23 Nov 2022 at 10:49, Christopher Baines <mail@cbaines.net> wrote: > >> +For a minority of changes, it can be appropriate to push them directly >> +without sending them for review. This includes both trivial changes >> +(e.g. fixing typos) but also reverting problomatic changes and > -^ >> +addressing regressions. > > >> -For patches that just add a new package, and a simple one, it's OK to >> -commit, if you're confident (which means you successfully built it in a >> -chroot setup, and have done a reasonable copyright and license >> -auditing). Likewise for package upgrades, except upgrades that trigger >> -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have a >> -mailing list for commit notifications (@email{guix-commits@@gnu.org}), >> -so people can notice. Before pushing your changes, make sure to run >> -@code{git pull --rebase}. >> +In general though, all changes should be posted to >> +@email{guix-patches@@gnu.org}. This mailing list fills the >> +patch-tracking database (@pxref{Tracking Bugs and Patches}). Leave time >> +for a review, without committing anything (@pxref{Submitting Patches}). >> +If you didn’t receive any reply after one week (two weeks for more >> +significant changes), and if you're confident, it's OK to commit. > > I would write: > > … changes), and if you're confident (which means you > successfully built it in a chroot setup, and have done a > reasonable copyright and license auditing), it’s OK to commit. chroot setup doesn't really make sense to me, I'm not sure why that needs specifying (like do we not want things for the Hurd pushing, since the guix-daemon doesn't support build isolation there yet)? Also, this guidance is very general, and I think it should be applicable to all changes. We already trust people with commit access to know what needs doing, I see this documentation as more about how, so I'd prefer not to try and put a list here. > and I would keep the «two weeks» instead of the «one week except». My reason for changing this is that I think waiting two weeks after sending a simple patch is unreasonable. The value from the automated testing will come after one to two days, I just put a week to avoid changing it too much, but maybe the lower bound should be two days. > I think it is also useful to provide the information about commit > notifications (guix-commits mailing list). Why though? What do we expect people with commit access to do when they read about that here? > For what it is worth, I find clearer the structure, > > For patches that … > For anything else, … > > or > > For a minority of changes, … > For anything else, … > > than «In general though, all changes …». That seems fine to me, I think "everything" maybe carries more weight than "anything" though. Thanks, Chris [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-11-24 8:40 ` Christopher Baines @ 2022-11-24 11:59 ` zimoun 2022-11-28 11:46 ` Christopher Baines 2022-12-02 9:45 ` Ludovic Courtès 1 sibling, 1 reply; 21+ messages in thread From: zimoun @ 2022-11-24 11:59 UTC (permalink / raw) To: Christopher Baines; +Cc: 59513 Hi, On Thu, 24 Nov 2022 at 08:40, Christopher Baines <mail@cbaines.net> wrote: >> On Wed, 23 Nov 2022 at 10:49, Christopher Baines <mail@cbaines.net> wrote: >> >>> +For a minority of changes, it can be appropriate to push them directly >>> +without sending them for review. This includes both trivial changes >>> +(e.g. fixing typos) but also reverting problomatic changes and >> -^ >>> +addressing regressions. To be sure you have not missed the typo here. :-) s/problomatic/problematic >> … changes), and if you're confident (which means you >> successfully built it in a chroot setup, and have done a >> reasonable copyright and license auditing), it’s OK to commit. > > chroot setup doesn't really make sense to me, I'm not sure why that > needs specifying (like do we not want things for the Hurd pushing, since > the guix-daemon doesn't support build isolation there yet)? Good point about chroot. :-) > Also, this guidance is very general, and I think it should be applicable > to all changes. We already trust people with commit access to know what > needs doing, I see this documentation as more about how, so I'd prefer > not to try and put a list here. Yes, we trust people. But a public and explicit policy reinforces the trust, IMHO. It also documents what commit access means. It is not because people with commit access already know what they need doing that all people know, I guess. >> and I would keep the «two weeks» instead of the «one week except». > > My reason for changing this is that I think waiting two weeks after > sending a simple patch is unreasonable. The value from the automated > testing will come after one to two days, I just put a week to avoid > changing it too much, but maybe the lower bound should be two days. Who is verifying the impact of a change? :-) Just a recent example to fix the ideas. The same situation is happening more than often but not that often neither. :-) (It is an example and no blame here. Or blame on me only, for not taking enough care of Julia packages.) Patch#58644 [1] submitted on 19 Oct and pushed on 8 Nov; which is 22 days. Unfortunately, this patch breaks julia-documenter [2], so it means many Julia packages are currently broken; since 17 days. Commit 83ede5a02e1fc531d912eb92eb0a22a4b897997c, gnu: git: Update to 2.38.1. Fixes CVE-2022-39253 and CVE-2022-39260. * gnu/packages/version-control.scm (git): Update to 2.38.1. Co-authored-by: Ludovic Courtès <ludo@gnu.org> 1 file changed, 3 insertions(+), 3 deletions(-) gnu/packages/version-control.scm | 6 +++--- from v2.38.0 to v2.38.1 seems inoffensive. :-) But, --8<---------------cut here---------------start------------->8--- $ ag 'inherit git' gnu/packages/version-control.scm 613: (inherit git) 676: (package/inherit git-minimal $ guix refresh -l git git-minimal | cut -f1 -d':' Building the following 292 packages would ensure 658 dependent packages are rebuilt --8<---------------cut here---------------end--------------->8--- (The one at line 676 is not impacted by the change, IIRC.) Who does check these 292 packages? For instance, this patch has an impact on Julia packages, --8<---------------cut here---------------start------------->8--- $ guix refresh -l git git-minimal | cut -f2 -d':' | sed 's/ /\n/g' | grep julia julia-geometrybasics@0.4.1 julia-configurations@0.16.4 julia-pyplot@2.10.0 julia-recipespipeline@0.3.4 julia-quadmath@0.5.5 julia-plotthemes@2.0.1 julia-infinity@0.2.4 julia-testimages@1.5.0 julia-optim@1.6.0 julia-referencetests@0.9.7 julia-imagemagick@1.2.1 --8<---------------cut here---------------end--------------->8--- As part of the Julia team, maybe I could have a look. Well, I had not had the time in these 2 weeks to fix it yet. For two reasons: 1. Because I noticed the failure just a couple of days ago. 2. Because I was busy elsewhere. About #1, I can follow a RSS feed by Cuirass. But somehow, it is too late then either I am working in a rush to minimize the breakage or either the package is broken… as today. I have not yet carefully looked at the new QA (neat!). Is it possible to follow some notifications? About #2, two weeks let the time to check the impact of a change. And even, depending on my schedule, sometime it is short. :-) But hey, I agree that the things need to move forward. :-) My point is: Considering leaf packages, yeah once submitted, the review can be fast (couple of days) especially with the new QA. Considering all the other packages, who is checking the impact of a change? Otherwise, we have again and again some broken packages. For sure, the QA is helping *a lot* for improving! Well, on one hand, I understand the willing to merge faster and, even I am not convinced that from two weeks to one week would be detrimental. On the other hand, using Guix, I replaced the pressure when running “apt-get upgrade” by an eternal annoyance of broken packages popping here or there. Somehow, <https://ci.guix.gnu.org/eval/4095/dashboard> should be always all green and faster the Git tree moves, harder it is to achieve, IMHO. 1: https://issues.guix.gnu.org/58644 2: <https://data.guix.gnu.org/repository/1/branch/master/package/julia-documenter/output-history> >> I think it is also useful to provide the information about commit >> notifications (guix-commits mailing list). > > Why though? What do we expect people with commit access to do when they > read about that here? Maybe it is a niche, I used it a couple of time. For instance, to comment a change already merged, see [3] I guess. 3: <https://lists.gnu.org/archive/html/guix-devel/2022-10/msg00099.html> Cheers, simon ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-11-24 11:59 ` zimoun @ 2022-11-28 11:46 ` Christopher Baines 0 siblings, 0 replies; 21+ messages in thread From: Christopher Baines @ 2022-11-28 11:46 UTC (permalink / raw) To: zimoun; +Cc: 59513 [-- Attachment #1: Type: text/plain, Size: 3003 bytes --] zimoun <zimon.toutoune@gmail.com> writes: > On Thu, 24 Nov 2022 at 08:40, Christopher Baines <mail@cbaines.net> wrote: > >>> On Wed, 23 Nov 2022 at 10:49, Christopher Baines <mail@cbaines.net> wrote: >>> >>>> +For a minority of changes, it can be appropriate to push them directly >>>> +without sending them for review. This includes both trivial changes >>>> +(e.g. fixing typos) but also reverting problomatic changes and >>> -^ >>>> +addressing regressions. > > To be sure you have not missed the typo here. :-) > > s/problomatic/problematic Thanks, I've fixed that locally now. >> Also, this guidance is very general, and I think it should be applicable >> to all changes. We already trust people with commit access to know what >> needs doing, I see this documentation as more about how, so I'd prefer >> not to try and put a list here. > > Yes, we trust people. But a public and explicit policy reinforces the > trust, IMHO. It also documents what commit access means. It is not > because people with commit access already know what they need doing that > all people know, I guess. I don't disagree that we should make the expectations about functionality and testing explicit, but I want to see that separate from the commit policy. >>> and I would keep the «two weeks» instead of the «one week except». >> >> My reason for changing this is that I think waiting two weeks after >> sending a simple patch is unreasonable. The value from the automated >> testing will come after one to two days, I just put a week to avoid >> changing it too much, but maybe the lower bound should be two days. > > Who is verifying the impact of a change? :-) Just a recent example to > fix the ideas. The same situation is happening more than often but not > that often neither. :-) ... > My point is: Considering leaf packages, yeah once submitted, the review > can be fast (couple of days) especially with the new QA. Considering > all the other packages, who is checking the impact of a change? > > Otherwise, we have again and again some broken packages. For sure, the > QA is helping *a lot* for improving! Well, on one hand, I understand > the willing to merge faster and, even I am not convinced that from two > weeks to one week would be detrimental. On the other hand, using Guix, > I replaced the pressure when running “apt-get upgrade” by an eternal > annoyance of broken packages popping here or there. This is going a bit off topic I think. In general, the direction I'm trying to move the policy in here is one where more changes get sent to guix-patches rather than getting pushed straight to the repository. Checking the impact of changes is important, but you can't do that with a policy on committing. If however people send changes to guix-patches prior to pushing, then there's at least a chance that some automatic "verifying/checking" can take place. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-11-24 8:40 ` Christopher Baines 2022-11-24 11:59 ` zimoun @ 2022-12-02 9:45 ` Ludovic Courtès 1 sibling, 0 replies; 21+ messages in thread From: Ludovic Courtès @ 2022-12-02 9:45 UTC (permalink / raw) To: Christopher Baines; +Cc: 59513, zimoun Hi, Christopher Baines <mail@cbaines.net> skribis: >> I would write: >> >> … changes), and if you're confident (which means you >> successfully built it in a chroot setup, and have done a >> reasonable copyright and license auditing), it’s OK to commit. > > chroot setup doesn't really make sense to me, I'm not sure why that > needs specifying The chroot requirement is specified because a non-isolated build is worth nothing: it might work on some machine and fail on another one for hard-to-find reasons. We could stop mentioning it if we think everyone keeps chroot enabled (that’s probably the case), but it doesn’t hurt to keep it. > (like do we not want things for the Hurd pushing, since the > guix-daemon doesn't support build isolation there yet)? Well yes, that’s the thing. For i586-gnu we’re currently stuck because we haven’t yet defined how to normalize the build environment: https://guix.gnu.org/en/blog/2020/childhurds-and-substitutes/ https://issues.guix.gnu.org/43857 And it’s not theoretical: some util-linux tests may or may not work depending on whether the Hurd box has /proc set up, the Texinfo test suite would pass if there happens to be a usable ‘pt_chown’ program around (see <https://issues.guix.gnu.org/59616>), etc. So I think the current situation is that we can build base packages for i586-gnu, that’s fine, but don’t have a solid foundation like we do on GNU/Linux, so there’s no point in going too far. Now, I don’t think the i586-gnu situation is an important consideration for the commit policy. Ludo’. ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-11-23 10:49 [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy Christopher Baines 2022-11-23 20:27 ` zimoun @ 2022-12-01 21:44 ` Ludovic Courtès 2022-12-12 10:33 ` Christopher Baines 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines 2 siblings, 1 reply; 21+ messages in thread From: Ludovic Courtès @ 2022-12-01 21:44 UTC (permalink / raw) To: Christopher Baines; +Cc: 59513 Hi! Christopher Baines <mail@cbaines.net> skribis: > Add more examples of when it can be appropriate to push changes without > review, as I think this can be appropriate in the case of trivial changes (as > mentioned before), but also non-trivial fixes. > > No longer suggest pushing simple new packages or package upgrades (that don't > cause lots of rebuilds) without sending to guix-patches. Now there's some > automation for testing changes sent to guix-patches, sending changes there > before pushing can mean that more rigerious testing takes place and help speed > up substitutes becoming available. This is true, even if no human review takes > place. > > Only suggest waiting one week for review for simpler changes, wait two weeks > for more significant changes. > > Also, reorder some of the information in this section so it's grouped together > better. > > * doc/contributing.texi (Commit Policy): Tweak. FWIW I like the spirit of these changes. Now to the letter… :-) > @subsection Commit Policy > > -If you get commit access, please make sure to follow > -the policy below (discussions of the policy can take place on > +If you get commit access, please make sure to follow the policy below > +(discussions of the policy can take place on > @email{guix-devel@@gnu.org}). > > -Non-trivial patches should always be posted to > -@email{guix-patches@@gnu.org} (trivial patches include fixing typos, > -etc.). This mailing list fills the patch-tracking database > -(@pxref{Tracking Bugs and Patches}). > +For a minority of changes, it can be appropriate to push them directly > +without sending them for review. This includes both trivial changes > +(e.g. fixing typos) but also reverting problomatic changes and > +addressing regressions. > > -For patches that just add a new package, and a simple one, it's OK to Similar to zimoun’s first comment I think, I would like the beginning of the sentence to clearly tell you whether it’s the situation you’re interested in. “For a minority of changes” doesn’t fit the bill in my view. So I would suggest something along the lines of: Changes should be posted to @email{guix-patches@@gnu.org}. This mailing list […]. It also allows patches to be picked up and tested by the quality assurance robot; the result of that testing eventually shows up on the dashboard at @indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where @var{number} is the number assigned by the issue tracker. Leave time […] it’s OK to commit. As an exception, some changes considered consensual and ``trivial'' or ``obvious'' may instead be pushed directly. These include: fixing typos, and reverting commits that caused immediate problems. That way we state the general rule first, and the exception next. That also explicitly mentions how that relates to qa.guix. Regarding the list of exceptions, I feel that these two exceptions listed here may be less than what we may except on a day-to-day basis; perhaps there are other things to add there, but I’m not sure what. Would be nice to get feedback from a maintainer too. Thanks for working on this! Ludo’. ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-12-01 21:44 ` Ludovic Courtès @ 2022-12-12 10:33 ` Christopher Baines 2022-12-12 11:47 ` Ludovic Courtès 0 siblings, 1 reply; 21+ messages in thread From: Christopher Baines @ 2022-12-12 10:33 UTC (permalink / raw) To: Ludovic Courtès; +Cc: 59513 [-- Attachment #1: Type: text/plain, Size: 2561 bytes --] Ludovic Courtès <ludo@gnu.org> writes: >> @subsection Commit Policy >> >> -If you get commit access, please make sure to follow >> -the policy below (discussions of the policy can take place on >> +If you get commit access, please make sure to follow the policy below >> +(discussions of the policy can take place on >> @email{guix-devel@@gnu.org}). >> >> -Non-trivial patches should always be posted to >> -@email{guix-patches@@gnu.org} (trivial patches include fixing typos, >> -etc.). This mailing list fills the patch-tracking database >> -(@pxref{Tracking Bugs and Patches}). >> +For a minority of changes, it can be appropriate to push them directly >> +without sending them for review. This includes both trivial changes >> +(e.g. fixing typos) but also reverting problomatic changes and >> +addressing regressions. >> >> -For patches that just add a new package, and a simple one, it's OK to > > Similar to zimoun’s first comment I think, I would like the beginning of > the sentence to clearly tell you whether it’s the situation you’re > interested in. “For a minority of changes” doesn’t fit the bill in my > view. > > So I would suggest something along the lines of: > > Changes should be posted to @email{guix-patches@@gnu.org}. This > mailing list […]. It also allows patches to be picked up and tested > by the quality assurance robot; the result of that testing eventually I've gone for "tooling" rather than "robot" as I'm not sure we want to go the way of personifying it. I'm not against that, but the place to start is probably not here. > shows up on the dashboard at > @indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where > @var{number} is the number assigned by the issue tracker. Leave time > […] it’s OK to commit. > > As an exception, some changes considered consensual and ``trivial'' or I removed "consensual" here as I wasn't sure what was meant by that, or at least I'm not sure the phrasing fits the context here. Are you trying to say something about a belief that no one will object to the change being made? > ``obvious'' may instead be pushed directly. These include: fixing > typos, and reverting commits that caused immediate problems. > > That way we state the general rule first, and the exception next. That > also explicitly mentions how that relates to qa.guix. Yeah, I think that's better. I've sent a v2 patch now (for some reason I forgot to send this email until now). Thanks, Chris [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-12-12 10:33 ` Christopher Baines @ 2022-12-12 11:47 ` Ludovic Courtès 0 siblings, 0 replies; 21+ messages in thread From: Ludovic Courtès @ 2022-12-12 11:47 UTC (permalink / raw) To: Christopher Baines; +Cc: 59513 Hi Chris, Christopher Baines <mail@cbaines.net> skribis: > Ludovic Courtès <ludo@gnu.org> writes: > >>> @subsection Commit Policy >>> >>> -If you get commit access, please make sure to follow >>> -the policy below (discussions of the policy can take place on >>> +If you get commit access, please make sure to follow the policy below >>> +(discussions of the policy can take place on >>> @email{guix-devel@@gnu.org}). BTW, we should follow that policy :-) and send a heads-up on guix-devel. > I've gone for "tooling" rather than "robot" as I'm not sure we want to > go the way of personifying it. I'm not against that, but the place to > start is probably not here. Fine with me! >> shows up on the dashboard at >> @indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where >> @var{number} is the number assigned by the issue tracker. Leave time >> […] it’s OK to commit. >> >> As an exception, some changes considered consensual and ``trivial'' or > > I removed "consensual" here as I wasn't sure what was meant by that, or > at least I'm not sure the phrasing fits the context here. > > Are you trying to say something about a belief that no one will object > to the change being made? Yes, exactly. With experience in the project (like committers usually have), you can often tell whether a given change might raise objections or not. Thanks for following up! Ludo’. ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-11-23 10:49 [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy Christopher Baines 2022-11-23 20:27 ` zimoun 2022-12-01 21:44 ` Ludovic Courtès @ 2022-12-08 11:20 ` Christopher Baines 2022-12-08 13:53 ` Liliana Marie Prikler ` (4 more replies) 2 siblings, 5 replies; 21+ messages in thread From: Christopher Baines @ 2022-12-08 11:20 UTC (permalink / raw) To: 59513 Add more examples of when it can be appropriate to push changes without review, as I think this can be appropriate in the case of trivial changes (as mentioned before), but also non-trivial fixes. No longer suggest pushing simple new packages or package upgrades (that don't cause lots of rebuilds) without sending to guix-patches. Now there's some automation for testing changes sent to guix-patches, sending changes there before pushing can mean that more rigerious testing takes place and help speed up substitutes becoming available. This is true, even if no human review takes place. Only suggest waiting one week for review for simpler changes, wait two weeks for more significant changes. Also, reorder some of the information in this section so it's grouped together better. * doc/contributing.texi (Commit Policy): Tweak. --- doc/contributing.texi | 41 ++++++++++++++++++----------------------- 1 file changed, 18 insertions(+), 23 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 6a8ffd6524..d2e7abba98 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -1824,23 +1824,26 @@ It additionally calls @code{make check-channel-news} to be sure @subsection Commit Policy -If you get commit access, please make sure to follow -the policy below (discussions of the policy can take place on +If you get commit access, please make sure to follow the policy below +(discussions of the policy can take place on @email{guix-devel@@gnu.org}). -Non-trivial patches should always be posted to -@email{guix-patches@@gnu.org} (trivial patches include fixing typos, -etc.). This mailing list fills the patch-tracking database -(@pxref{Tracking Bugs and Patches}). - -For patches that just add a new package, and a simple one, it's OK to -commit, if you're confident (which means you successfully built it in a -chroot setup, and have done a reasonable copyright and license -auditing). Likewise for package upgrades, except upgrades that trigger -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have a -mailing list for commit notifications (@email{guix-commits@@gnu.org}), -so people can notice. Before pushing your changes, make sure to run -@code{git pull --rebase}. +Changes should be posted to @email{guix-patches@@gnu.org}. This mailing +list fills the patch-tracking database (@pxref{Tracking Bugs and +Patches}). It also allows patches to be picked up and tested by the +quality assurance tooling; the result of that testing eventually shows +up on the dashboard at +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where +@var{number} is the number assigned by the issue tracker. Leave time +for a review, without committing anything (@pxref{Submitting Patches}). +If you didn’t receive any reply after one week (two weeks for more +significant changes), and if you're confident, it's OK to commit. + +As an exception, some changes considered ``trivial'' or ``obvious'' may +be pushed directly. This includes changes to fix typos and reverting +commits that caused immediate problems. This is subject to being +adjusted, allowing individuals to commit directly on non-controversial +changes on parts they’re familiar with. When pushing a commit on behalf of somebody else, please add a @code{Signed-off-by} line at the end of the commit log message---e.g., @@ -1855,14 +1858,6 @@ right before pushing: make check-channel-news @end example -For anything else, please post to @email{guix-patches@@gnu.org} and -leave time for a review, without committing anything (@pxref{Submitting -Patches}). If you didn’t receive any reply after two weeks, and if -you're confident, it's OK to commit. - -That last part is subject to being adjusted, allowing individuals to commit -directly on non-controversial changes on parts they’re familiar with. - @subsection Addressing Issues Peer review (@pxref{Submitting Patches}) and tools such as -- 2.38.1 ^ permalink raw reply related [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines @ 2022-12-08 13:53 ` Liliana Marie Prikler 2022-12-12 10:49 ` Christopher Baines 2022-12-14 0:54 ` Vagrant Cascadian ` (3 subsequent siblings) 4 siblings, 1 reply; 21+ messages in thread From: Liliana Marie Prikler @ 2022-12-08 13:53 UTC (permalink / raw) To: Christopher Baines, 59513 Am Donnerstag, dem 08.12.2022 um 11:20 +0000 schrieb Christopher Baines: > Add more examples of when it can be appropriate to push changes > without > review, as I think this can be appropriate in the case of trivial > changes (as > mentioned before), but also non-trivial fixes. > > No longer suggest pushing simple new packages or package upgrades > (that don't cause lots of rebuilds) without sending to guix-patches. > Now there's some automation for testing changes sent to guix-patches, > sending changes there before pushing can mean that more rigerious rigorous > testing takes place and help speed up substitutes becoming available. > This is true, even if no human review takes place. > > Only suggest waiting one week for review for simpler changes, wait > two weeks > for more significant changes. > > Also, reorder some of the information in this section so it's grouped > together > better. > > * doc/contributing.texi (Commit Policy): Tweak. > --- > doc/contributing.texi | 41 ++++++++++++++++++----------------------- > 1 file changed, 18 insertions(+), 23 deletions(-) > > diff --git a/doc/contributing.texi b/doc/contributing.texi > index 6a8ffd6524..d2e7abba98 100644 > --- a/doc/contributing.texi > +++ b/doc/contributing.texi > @@ -1824,23 +1824,26 @@ It additionally calls @code{make check- > channel-news} to be sure > > @subsection Commit Policy > > -If you get commit access, please make sure to follow > -the policy below (discussions of the policy can take place on > +If you get commit access, please make sure to follow the policy > below > +(discussions of the policy can take place on > @email{guix-devel@@gnu.org}). > > -Non-trivial patches should always be posted to > -@email{guix-patches@@gnu.org} (trivial patches include fixing typos, > -etc.). This mailing list fills the patch-tracking database > -(@pxref{Tracking Bugs and Patches}). > - > -For patches that just add a new package, and a simple one, it's OK > to > -commit, if you're confident (which means you successfully built it > in a > -chroot setup, and have done a reasonable copyright and license > -auditing). Likewise for package upgrades, except upgrades that > trigger > -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have > a > -mailing list for commit notifications (@email{guix- > commits@@gnu.org}), > -so people can notice. Before pushing your changes, make sure to run > -@code{git pull --rebase}. > +Changes should be posted to @email{guix-patches@@gnu.org}. This > mailing > +list fills the patch-tracking database (@pxref{Tracking Bugs and > +Patches}). It also allows patches to be picked up and tested by the > +quality assurance tooling; the result of that testing eventually > shows > +up on the dashboard at > +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where > +@var{number} is the number assigned by the issue tracker. Leave > time > +for a review, without committing anything (@pxref{Submitting > Patches}). > +If you didn’t receive any reply after one week (two weeks for more > +significant changes), and if you're confident, it's OK to commit. I would reword that so (not significant ∧ confident ∧ qa_green) → good after 1 week whereas (not significant ∧ confident ∧ qa_unknown) → good after 2 weeks and significant changes should anyway take 2 weeks. Cheers ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-08 13:53 ` Liliana Marie Prikler @ 2022-12-12 10:49 ` Christopher Baines 2022-12-12 20:27 ` Liliana Marie Prikler 0 siblings, 1 reply; 21+ messages in thread From: Christopher Baines @ 2022-12-12 10:49 UTC (permalink / raw) To: Liliana Marie Prikler; +Cc: 59513 [-- Attachment #1: Type: text/plain, Size: 3811 bytes --] Liliana Marie Prikler <liliana.prikler@gmail.com> writes: > Am Donnerstag, dem 08.12.2022 um 11:20 +0000 schrieb Christopher > Baines: >> Add more examples of when it can be appropriate to push changes >> without >> review, as I think this can be appropriate in the case of trivial >> changes (as >> mentioned before), but also non-trivial fixes. >> >> No longer suggest pushing simple new packages or package upgrades >> (that don't cause lots of rebuilds) without sending to guix-patches. >> Now there's some automation for testing changes sent to guix-patches, >> sending changes there before pushing can mean that more rigerious > > rigorous Thanks, I've fixed that locally now. >> testing takes place and help speed up substitutes becoming available. >> This is true, even if no human review takes place. >> >> Only suggest waiting one week for review for simpler changes, wait >> two weeks >> for more significant changes. >> >> Also, reorder some of the information in this section so it's grouped >> together >> better. >> >> * doc/contributing.texi (Commit Policy): Tweak. >> --- >> doc/contributing.texi | 41 ++++++++++++++++++----------------------- >> 1 file changed, 18 insertions(+), 23 deletions(-) >> >> diff --git a/doc/contributing.texi b/doc/contributing.texi >> index 6a8ffd6524..d2e7abba98 100644 >> --- a/doc/contributing.texi >> +++ b/doc/contributing.texi >> @@ -1824,23 +1824,26 @@ It additionally calls @code{make check- >> channel-news} to be sure >> >> @subsection Commit Policy >> >> -If you get commit access, please make sure to follow >> -the policy below (discussions of the policy can take place on >> +If you get commit access, please make sure to follow the policy >> below >> +(discussions of the policy can take place on >> @email{guix-devel@@gnu.org}). >> >> -Non-trivial patches should always be posted to >> -@email{guix-patches@@gnu.org} (trivial patches include fixing typos, >> -etc.). This mailing list fills the patch-tracking database >> -(@pxref{Tracking Bugs and Patches}). >> - >> -For patches that just add a new package, and a simple one, it's OK >> to >> -commit, if you're confident (which means you successfully built it >> in a >> -chroot setup, and have done a reasonable copyright and license >> -auditing). Likewise for package upgrades, except upgrades that >> trigger >> -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have >> a >> -mailing list for commit notifications (@email{guix- >> commits@@gnu.org}), >> -so people can notice. Before pushing your changes, make sure to run >> -@code{git pull --rebase}. >> +Changes should be posted to @email{guix-patches@@gnu.org}. This >> mailing >> +list fills the patch-tracking database (@pxref{Tracking Bugs and >> +Patches}). It also allows patches to be picked up and tested by the >> +quality assurance tooling; the result of that testing eventually >> shows >> +up on the dashboard at >> +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where >> +@var{number} is the number assigned by the issue tracker. Leave >> time >> +for a review, without committing anything (@pxref{Submitting >> Patches}). >> +If you didn’t receive any reply after one week (two weeks for more >> +significant changes), and if you're confident, it's OK to commit. > > I would reword that so > (not significant ∧ confident ∧ qa_green) → good after 1 week > whereas > (not significant ∧ confident ∧ qa_unknown) → good after 2 weeks > and significant changes should anyway take 2 weeks. While I like the intent here, for the moment I prefer a simpler policy. Maybe we can move in this direction when the QA tooling is more usable and reliable. Thanks, Chris [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-12 10:49 ` Christopher Baines @ 2022-12-12 20:27 ` Liliana Marie Prikler 2022-12-13 14:06 ` Christopher Baines 0 siblings, 1 reply; 21+ messages in thread From: Liliana Marie Prikler @ 2022-12-12 20:27 UTC (permalink / raw) To: Christopher Baines; +Cc: 59513 Am Montag, dem 12.12.2022 um 10:49 +0000 schrieb Christopher Baines: > > Liliana Marie Prikler <liliana.prikler@gmail.com> writes: > > > Am Donnerstag, dem 08.12.2022 um 11:20 +0000 schrieb Christopher > > Baines: > > > Add more examples of when it can be appropriate to push changes > > > without > > > review, as I think this can be appropriate in the case of trivial > > > changes (as > > > mentioned before), but also non-trivial fixes. > > > > > > No longer suggest pushing simple new packages or package upgrades > > > (that don't cause lots of rebuilds) without sending to guix- > > > patches. > > > Now there's some automation for testing changes sent to guix- > > > patches, > > > sending changes there before pushing can mean that more rigerious > > > > rigorous > > Thanks, I've fixed that locally now. > > > > testing takes place and help speed up substitutes becoming > > > available. > > > This is true, even if no human review takes place. > > > > > > Only suggest waiting one week for review for simpler changes, > > > wait > > > two weeks > > > for more significant changes. > > > > > > Also, reorder some of the information in this section so it's > > > grouped > > > together > > > better. > > > > > > * doc/contributing.texi (Commit Policy): Tweak. > > > --- > > > doc/contributing.texi | 41 ++++++++++++++++++------------------- > > > ---- > > > 1 file changed, 18 insertions(+), 23 deletions(-) > > > > > > diff --git a/doc/contributing.texi b/doc/contributing.texi > > > index 6a8ffd6524..d2e7abba98 100644 > > > --- a/doc/contributing.texi > > > +++ b/doc/contributing.texi > > > @@ -1824,23 +1824,26 @@ It additionally calls @code{make check- > > > channel-news} to be sure > > > > > > @subsection Commit Policy > > > > > > -If you get commit access, please make sure to follow > > > -the policy below (discussions of the policy can take place on > > > +If you get commit access, please make sure to follow the policy > > > below > > > +(discussions of the policy can take place on > > > @email{guix-devel@@gnu.org}). > > > > > > -Non-trivial patches should always be posted to > > > -@email{guix-patches@@gnu.org} (trivial patches include fixing > > > typos, > > > -etc.). This mailing list fills the patch-tracking database > > > -(@pxref{Tracking Bugs and Patches}). > > > - > > > -For patches that just add a new package, and a simple one, it's > > > OK > > > to > > > -commit, if you're confident (which means you successfully built > > > it > > > in a > > > -chroot setup, and have done a reasonable copyright and license > > > -auditing). Likewise for package upgrades, except upgrades that > > > trigger > > > -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We > > > have > > > a > > > -mailing list for commit notifications (@email{guix- > > > commits@@gnu.org}), > > > -so people can notice. Before pushing your changes, make sure to > > > run > > > -@code{git pull --rebase}. > > > +Changes should be posted to @email{guix-patches@@gnu.org}. This > > > mailing > > > +list fills the patch-tracking database (@pxref{Tracking Bugs and > > > +Patches}). It also allows patches to be picked up and tested by > > > the > > > +quality assurance tooling; the result of that testing eventually > > > shows > > > +up on the dashboard at > > > +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where > > > +@var{number} is the number assigned by the issue tracker. Leave > > > time > > > +for a review, without committing anything (@pxref{Submitting > > > Patches}). > > > +If you didn’t receive any reply after one week (two weeks for > > > more > > > +significant changes), and if you're confident, it's OK to > > > commit. > > > > I would reword that so > > (not significant ∧ confident ∧ qa_green) → good after 1 week > > whereas > > (not significant ∧ confident ∧ qa_unknown) → good after 2 weeks > > and significant changes should anyway take 2 weeks. > > While I like the intent here, for the moment I prefer a simpler > policy. Maybe we can move in this direction when the QA tooling is > more usable and reliable. I wrote this partly with the intent of resolving an ambiguity, but I agree on the principle of having a simple policy. I take it that QA status is not that important at the moment – more that QA knows about the patch and has already started building packages? Cheers ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-12 20:27 ` Liliana Marie Prikler @ 2022-12-13 14:06 ` Christopher Baines 0 siblings, 0 replies; 21+ messages in thread From: Christopher Baines @ 2022-12-13 14:06 UTC (permalink / raw) To: Liliana Marie Prikler; +Cc: 59513 [-- Attachment #1: Type: text/plain, Size: 1809 bytes --] Liliana Marie Prikler <liliana.prikler@gmail.com> writes: >> > > +Changes should be posted to @email{guix-patches@@gnu.org}. This >> > > mailing >> > > +list fills the patch-tracking database (@pxref{Tracking Bugs and >> > > +Patches}). It also allows patches to be picked up and tested by >> > > the >> > > +quality assurance tooling; the result of that testing eventually >> > > shows >> > > +up on the dashboard at >> > > +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where >> > > +@var{number} is the number assigned by the issue tracker. Leave >> > > time >> > > +for a review, without committing anything (@pxref{Submitting >> > > Patches}). >> > > +If you didn’t receive any reply after one week (two weeks for >> > > more >> > > +significant changes), and if you're confident, it's OK to >> > > commit. >> > >> > I would reword that so >> > (not significant ∧ confident ∧ qa_green) → good after 1 week >> > whereas >> > (not significant ∧ confident ∧ qa_unknown) → good after 2 weeks >> > and significant changes should anyway take 2 weeks. >> >> While I like the intent here, for the moment I prefer a simpler >> policy. Maybe we can move in this direction when the QA tooling is >> more usable and reliable. > > I wrote this partly with the intent of resolving an ambiguity, but I > agree on the principle of having a simple policy. I take it that QA > status is not that important at the moment – more that QA knows about > the patch and has already started building packages? I don't think the QA stuff happening is important enough make some requirements of it in the policy (yet), but, as you say, there are still benefits right now with submitting patches to guix-patches, and that's what I'm going for here. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines 2022-12-08 13:53 ` Liliana Marie Prikler @ 2022-12-14 0:54 ` Vagrant Cascadian 2022-12-14 10:21 ` Christopher Baines 2022-12-20 10:55 ` Ludovic Courtès 2022-12-17 5:01 ` [bug#59513] [PATCH] " Maxim Cournoyer ` (2 subsequent siblings) 4 siblings, 2 replies; 21+ messages in thread From: Vagrant Cascadian @ 2022-12-14 0:54 UTC (permalink / raw) To: Christopher Baines, 59513 Cc: Ludovic Courtès, Liliana Marie Prikler, zimoun [-- Attachment #1: Type: text/plain, Size: 1545 bytes --] On 2022-12-08, Christopher Baines wrote: > Only suggest waiting one week for review for simpler changes, wait two weeks > for more significant changes. ... > +Changes should be posted to @email{guix-patches@@gnu.org}. This mailing > +list fills the patch-tracking database (@pxref{Tracking Bugs and > +Patches}). It also allows patches to be picked up and tested by the > +quality assurance tooling; the result of that testing eventually shows > +up on the dashboard at > +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where > +@var{number} is the number assigned by the issue tracker. Leave time > +for a review, without committing anything (@pxref{Submitting Patches}). > +If you didn’t receive any reply after one week (two weeks for more > +significant changes), and if you're confident, it's OK to commit. My one concern here for things that I tend to work on is diffoscope... it has such a large dependency graph(?) because it supports so many file formats, it pulls in quite a lot for the test suites... In a week or two of changes between submission and being able to push to master, I'd worry that you could end up with a diffoscope that wouldn't build because of changes to one of it's (native-)inputs or whatnot because of changes to master in the previous week... That said, overall, I think sending everything through guix-patches is a good change, even if my lazier self pouts a little at having to deal with more process for seemingly simple things. :) live well, vagrant [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 227 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-14 0:54 ` Vagrant Cascadian @ 2022-12-14 10:21 ` Christopher Baines 2022-12-20 10:55 ` Ludovic Courtès 1 sibling, 0 replies; 21+ messages in thread From: Christopher Baines @ 2022-12-14 10:21 UTC (permalink / raw) To: Vagrant Cascadian; +Cc: 59513 [-- Attachment #1: Type: text/plain, Size: 2120 bytes --] Vagrant Cascadian <vagrant@debian.org> writes: > [[PGP Signed Part:Undecided]] > On 2022-12-08, Christopher Baines wrote: >> Only suggest waiting one week for review for simpler changes, wait two weeks >> for more significant changes. > ... >> +Changes should be posted to @email{guix-patches@@gnu.org}. This mailing >> +list fills the patch-tracking database (@pxref{Tracking Bugs and >> +Patches}). It also allows patches to be picked up and tested by the >> +quality assurance tooling; the result of that testing eventually shows >> +up on the dashboard at >> +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where >> +@var{number} is the number assigned by the issue tracker. Leave time >> +for a review, without committing anything (@pxref{Submitting Patches}). >> +If you didn’t receive any reply after one week (two weeks for more >> +significant changes), and if you're confident, it's OK to commit. > > My one concern here for things that I tend to work on is > diffoscope... it has such a large dependency graph(?) because it > supports so many file formats, it pulls in quite a lot for the test > suites... > > In a week or two of changes between submission and being able to push to > master, I'd worry that you could end up with a diffoscope that wouldn't > build because of changes to one of it's (native-)inputs or whatnot > because of changes to master in the previous week... > > > That said, overall, I think sending everything through guix-patches is a > good change, even if my lazier self pouts a little at having to deal > with more process for seemingly simple things. :) I think that's a valid concern. The QA tooling is affected similarly, in that it tests against the latest processed revision when the patch is picked up, but things could change in between the testing happening and it being merged. Remember that these time periods are only when no review takes place. My hope is that manual review can happen sooner than one or two weeks after patch submission, therefore enabling making changes more quickly. Thanks, Chris [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-14 0:54 ` Vagrant Cascadian 2022-12-14 10:21 ` Christopher Baines @ 2022-12-20 10:55 ` Ludovic Courtès 1 sibling, 0 replies; 21+ messages in thread From: Ludovic Courtès @ 2022-12-20 10:55 UTC (permalink / raw) To: Vagrant Cascadian Cc: 59513, Christopher Baines, Liliana Marie Prikler, zimoun Howdy, Vagrant Cascadian <vagrant@debian.org> skribis: > On 2022-12-08, Christopher Baines wrote: >> Only suggest waiting one week for review for simpler changes, wait two weeks >> for more significant changes. > ... >> +Changes should be posted to @email{guix-patches@@gnu.org}. This mailing >> +list fills the patch-tracking database (@pxref{Tracking Bugs and >> +Patches}). It also allows patches to be picked up and tested by the >> +quality assurance tooling; the result of that testing eventually shows >> +up on the dashboard at >> +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where >> +@var{number} is the number assigned by the issue tracker. Leave time >> +for a review, without committing anything (@pxref{Submitting Patches}). >> +If you didn’t receive any reply after one week (two weeks for more >> +significant changes), and if you're confident, it's OK to commit. > > My one concern here for things that I tend to work on is > diffoscope... it has such a large dependency graph(?) because it > supports so many file formats, it pulls in quite a lot for the test > suites... > > In a week or two of changes between submission and being able to push to > master, I'd worry that you could end up with a diffoscope that wouldn't > build because of changes to one of it's (native-)inputs or whatnot > because of changes to master in the previous week... I suppose there’s always this risk. Ideally, qa.guix would either rebuild things periodically (rebasing them) or could be told to. > That said, overall, I think sending everything through guix-patches is a > good change, even if my lazier self pouts a little at having to deal > with more process for seemingly simple things. :) Right, I can sympathize. :-) I’ve done my share of direct pushes for “simple thing”, but I think there’s now evidence that sometimes simple things aren’t that simple. Waiting for a green flag from qa.guix and/or from fellow hackers might seem annoying at first, but the gains in terms of peace of mind, smooth collaboration, and overall stability are worth it. Ludo’. ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy. 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines 2022-12-08 13:53 ` Liliana Marie Prikler 2022-12-14 0:54 ` Vagrant Cascadian @ 2022-12-17 5:01 ` Maxim Cournoyer 2023-01-05 9:12 ` [bug#59513] [PATCH v2] " zimoun 2023-01-11 10:50 ` bug#59513: " Christopher Baines 4 siblings, 0 replies; 21+ messages in thread From: Maxim Cournoyer @ 2022-12-17 5:01 UTC (permalink / raw) To: Christopher Baines; +Cc: 59513 Hi Christopher, Christopher Baines <mail@cbaines.net> writes: [...] > * doc/contributing.texi (Commit Policy): Tweak. > --- > doc/contributing.texi | 41 ++++++++++++++++++----------------------- > 1 file changed, 18 insertions(+), 23 deletions(-) > > diff --git a/doc/contributing.texi b/doc/contributing.texi > index 6a8ffd6524..d2e7abba98 100644 > --- a/doc/contributing.texi > +++ b/doc/contributing.texi > @@ -1824,23 +1824,26 @@ It additionally calls @code{make check-channel-news} to be sure > > @subsection Commit Policy > > -If you get commit access, please make sure to follow > -the policy below (discussions of the policy can take place on > +If you get commit access, please make sure to follow the policy below > +(discussions of the policy can take place on > @email{guix-devel@@gnu.org}). > > -Non-trivial patches should always be posted to > -@email{guix-patches@@gnu.org} (trivial patches include fixing typos, > -etc.). This mailing list fills the patch-tracking database > -(@pxref{Tracking Bugs and Patches}). > - > -For patches that just add a new package, and a simple one, it's OK to > -commit, if you're confident (which means you successfully built it in a > -chroot setup, and have done a reasonable copyright and license > -auditing). Likewise for package upgrades, except upgrades that trigger > -a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have a > -mailing list for commit notifications (@email{guix-commits@@gnu.org}), > -so people can notice. Before pushing your changes, make sure to run > -@code{git pull --rebase}. > +Changes should be posted to @email{guix-patches@@gnu.org}. This mailing > +list fills the patch-tracking database (@pxref{Tracking Bugs and > +Patches}). It also allows patches to be picked up and tested by the > +quality assurance tooling; the result of that testing eventually shows > +up on the dashboard at > +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where > +@var{number} is the number assigned by the issue tracker. Leave time > +for a review, without committing anything (@pxref{Submitting Patches}). > +If you didn’t receive any reply after one week (two weeks for more > +significant changes), and if you're confident, it's OK to commit. > + > +As an exception, some changes considered ``trivial'' or ``obvious'' may > +be pushed directly. This includes changes to fix typos and reverting > +commits that caused immediate problems. This is subject to being > +adjusted, allowing individuals to commit directly on non-controversial > +changes on parts they’re familiar with. Like others, I like the direction of the change; the focus is changed from "trivial patches are OK to push else wait 2 weeks" to "most changes must go through the QA tooling", which should improve quality. Like Vagrant, I think it adds some friction, especially if the QA is still sometimes still unreliable and doesn't provide clear results (false positives for example), but I'm not against trying it. I guess we can try this new process, and adjust as we go (or revert to the current policy) in case something doesn't work well enough. -- Thanks, Maxim ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines ` (2 preceding siblings ...) 2022-12-17 5:01 ` [bug#59513] [PATCH] " Maxim Cournoyer @ 2023-01-05 9:12 ` zimoun 2023-01-11 10:48 ` Christopher Baines 2023-01-11 10:50 ` bug#59513: " Christopher Baines 4 siblings, 1 reply; 21+ messages in thread From: zimoun @ 2023-01-05 9:12 UTC (permalink / raw) To: Christopher Baines, 59513 Hi, On Thu, 08 Dec 2022 at 11:20, Christopher Baines <mail@cbaines.net> wrote: > Add more examples of when it can be appropriate to push changes without > review, as I think this can be appropriate in the case of trivial changes (as > mentioned before), but also non-trivial fixes. This would be part of the commit message, right? I would avoid the personal “I think” since it is a collective thought with some consensus (I guess). For instance, --8<---------------cut here---------------start------------->8--- Add more examples of when it can be appropriate to push changes without review, as in the case of trivial changes (as mentioned before), but also non-trivial fixes. --8<---------------cut here---------------end--------------->8--- > No longer suggest pushing simple new packages or package upgrades (that don't > cause lots of rebuilds) without sending to guix-patches. Now there's some > automation for testing changes sent to guix-patches, sending changes there > before pushing can mean that more rigerious testing takes place and help speed --^ typo s/rigerious/rigorous > +Changes should be posted to @email{guix-patches@@gnu.org}. This mailing > +list fills the patch-tracking database (@pxref{Tracking Bugs and > +Patches}). It also allows patches to be picked up and tested by the > +quality assurance tooling; the result of that testing eventually shows > +up on the dashboard at > +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where > +@var{number} is the number assigned by the issue tracker. Leave time To be consistent with (guix) Sending a Patch Series [1], I suggest to use @var{ISSUE_NUMBER} instead of simply @var{number}. 1: <https://guix.gnu.org/manual/devel/en/guix.html#Sending-a-Patch-Series> Aside the minor comments, all LGTM! This change appears to me a great improvement, hoping it will reduce the number of red bullets in dashboard [2]. 2: <https://ci.guix.gnu.org/eval/91795/dashboard> Cheers, simon ^ permalink raw reply [flat|nested] 21+ messages in thread
* [bug#59513] [PATCH v2] doc: contributing: Tweak the Commit Policy. 2023-01-05 9:12 ` [bug#59513] [PATCH v2] " zimoun @ 2023-01-11 10:48 ` Christopher Baines 0 siblings, 0 replies; 21+ messages in thread From: Christopher Baines @ 2023-01-11 10:48 UTC (permalink / raw) To: zimoun; +Cc: 59513 [-- Attachment #1: Type: text/plain, Size: 2022 bytes --] zimoun <zimon.toutoune@gmail.com> writes: > Hi, > > On Thu, 08 Dec 2022 at 11:20, Christopher Baines <mail@cbaines.net> wrote: > >> Add more examples of when it can be appropriate to push changes without >> review, as I think this can be appropriate in the case of trivial changes (as >> mentioned before), but also non-trivial fixes. > > This would be part of the commit message, right? Yeah, this is the commit message. > I would avoid the personal “I think” since it is a collective thought > with some consensus (I guess). For instance, > > Add more examples of when it can be appropriate to push changes without > review, as in the case of trivial changes (as mentioned before), but > also non-trivial fixes. It reads better to me with the "I think", and since it's my name on the commit, I've left it as is. >> No longer suggest pushing simple new packages or package upgrades (that don't >> cause lots of rebuilds) without sending to guix-patches. Now there's some >> automation for testing changes sent to guix-patches, sending changes there >> before pushing can mean that more rigerious testing takes place and help speed > --^ > typo > s/rigerious/rigorous Thanks, I've fixed this. >> +Changes should be posted to @email{guix-patches@@gnu.org}. This mailing >> +list fills the patch-tracking database (@pxref{Tracking Bugs and >> +Patches}). It also allows patches to be picked up and tested by the >> +quality assurance tooling; the result of that testing eventually shows >> +up on the dashboard at >> +@indicateurl{https://qa.guix.gnu.org/issue/@var{number}}, where >> +@var{number} is the number assigned by the issue tracker. Leave time > > To be consistent with (guix) Sending a Patch Series [1], I suggest to > use @var{ISSUE_NUMBER} instead of simply @var{number}. > > 1: <https://guix.gnu.org/manual/devel/en/guix.html#Sending-a-Patch-Series> Sure, I've made this change. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
* bug#59513: [PATCH v2] doc: contributing: Tweak the Commit Policy. 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines ` (3 preceding siblings ...) 2023-01-05 9:12 ` [bug#59513] [PATCH v2] " zimoun @ 2023-01-11 10:50 ` Christopher Baines 4 siblings, 0 replies; 21+ messages in thread From: Christopher Baines @ 2023-01-11 10:50 UTC (permalink / raw) To: 59513-done [-- Attachment #1: Type: text/plain, Size: 1190 bytes --] Christopher Baines <mail@cbaines.net> writes: > Add more examples of when it can be appropriate to push changes without > review, as I think this can be appropriate in the case of trivial changes (as > mentioned before), but also non-trivial fixes. > > No longer suggest pushing simple new packages or package upgrades (that don't > cause lots of rebuilds) without sending to guix-patches. Now there's some > automation for testing changes sent to guix-patches, sending changes there > before pushing can mean that more rigerious testing takes place and help speed > up substitutes becoming available. This is true, even if no human review takes > place. > > Only suggest waiting one week for review for simpler changes, wait two weeks > for more significant changes. > > Also, reorder some of the information in this section so it's grouped together > better. > > * doc/contributing.texi (Commit Policy): Tweak. > --- > doc/contributing.texi | 41 ++++++++++++++++++----------------------- > 1 file changed, 18 insertions(+), 23 deletions(-) I've now pushed this to master as 9aa2b7419854306b7ae78d4c4f7684316b834b1d, with some final tweaks. Thanks everyone for taking a look. Chris [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2023-01-11 10:52 UTC | newest] Thread overview: 21+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-11-23 10:49 [bug#59513] [PATCH] doc: contributing: Tweak the Commit Policy Christopher Baines 2022-11-23 20:27 ` zimoun 2022-11-24 8:40 ` Christopher Baines 2022-11-24 11:59 ` zimoun 2022-11-28 11:46 ` Christopher Baines 2022-12-02 9:45 ` Ludovic Courtès 2022-12-01 21:44 ` Ludovic Courtès 2022-12-12 10:33 ` Christopher Baines 2022-12-12 11:47 ` Ludovic Courtès 2022-12-08 11:20 ` [bug#59513] [PATCH v2] " Christopher Baines 2022-12-08 13:53 ` Liliana Marie Prikler 2022-12-12 10:49 ` Christopher Baines 2022-12-12 20:27 ` Liliana Marie Prikler 2022-12-13 14:06 ` Christopher Baines 2022-12-14 0:54 ` Vagrant Cascadian 2022-12-14 10:21 ` Christopher Baines 2022-12-20 10:55 ` Ludovic Courtès 2022-12-17 5:01 ` [bug#59513] [PATCH] " Maxim Cournoyer 2023-01-05 9:12 ` [bug#59513] [PATCH v2] " zimoun 2023-01-11 10:48 ` Christopher Baines 2023-01-11 10:50 ` bug#59513: " Christopher Baines
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).