* Patch queue management systems [not found] ` <86mw71pl6d.fsf@yandex.ru> @ 2014-12-06 10:08 ` Eli Zaretskii 2014-12-06 13:12 ` Ted Zlatanov ` (2 more replies) 0 siblings, 3 replies; 42+ messages in thread From: Eli Zaretskii @ 2014-12-06 10:08 UTC (permalink / raw) To: Dmitry Gutov; +Cc: eggert, monnier, emacs-devel [Moved the discussion to emacs-devel.] > From: Dmitry Gutov <dgutov@yandex.ru> > Date: Sat, 06 Dec 2014 04:27:22 +0200 > > Stefan Monnier <monnier@iro.umontreal.ca> writes: > > > Because nobody has set such a thing up (and AFAICT Savannah doesn't > > have such a thing built-in, oddly enough). > > It shouldn't be too hard, actually, to set up some code review tool, > such as Gerrit [0], Review Board [1] or Differential [2]. I took a quick look at these. I think by far the 2 main issues we will have with these tools are: . The tools don't have Emacs integration built into them, nor offer Emacs VC sub-modes. (Gerrit has a magit plugin.) I'm guessing we would like to arrange for such an integration in VC, because people who review patches are accustomed to using Emacs and have elaborate customizations for this that they would lose if the review is only done via a Web browser (even if that browser is eww). . The tools require non-trivial changes in the workflow advertised on the Wiki. E.g., Gerrit requires to work with magic local branches and detached heads. We should carefully evaluate this and decide how to make sure this won't trip those of us who are less proficient in Git (which, judging by the current traffic on emacs-devel, seems like a rule rather than exception) and cause corruption of the upstream repository. There are also other minor issues we need to figure out: licenses, the underlying infrastructure (e.g., AFIU, Phabricator requires PHP), etc. Personally, I think arranging the development around this kind of process will not work without some critical mass of patch reviewers who are able to endure the current constant high volume of changes, let alone if we want to increase that volume. Being an efficient patch reviewer requires good knowledge of at least a few areas of the Emacs core, and we currently have only a handful of people who can qualify. (The obvious exception from this rule is a maintainer of a single package who can review patches for his/her package.) From experience of other projects, 5 reviewers is not enough for this task. So we are again back to the hardest problem in Emacs development: the extremely small number of core maintainers. > I'd also welcome opinions from people who have experience working with > them Seconded. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-06 10:08 ` Patch queue management systems Eli Zaretskii @ 2014-12-06 13:12 ` Ted Zlatanov 2014-12-08 21:49 ` Thomas Koch 2014-12-08 23:10 ` Lars Magne Ingebrigtsen 2014-12-08 22:24 ` Lars Magne Ingebrigtsen 2014-12-09 13:03 ` Dmitry Gutov 2 siblings, 2 replies; 42+ messages in thread From: Ted Zlatanov @ 2014-12-06 13:12 UTC (permalink / raw) To: emacs-devel EZ> Personally, I think arranging the development around this kind of EZ> process will not work without some critical mass of patch reviewers EZ> who are able to endure the current constant high volume of changes, EZ> let alone if we want to increase that volume. Being an efficient EZ> patch reviewer requires good knowledge of at least a few areas of the EZ> Emacs core, and we currently have only a handful of people who can EZ> qualify. (The obvious exception from this rule is a maintainer of a EZ> single package who can review patches for his/her package.) From EZ> experience of other projects, 5 reviewers is not enough for this task. I wouldn't mind reviewing things in the queue when I'm able. My wishlist for a patch queue management system (PR/pull request system for those familiar with the Github model): * targeted hydra builds for a specific branch * a click-and-done way to merge a specific branch into master or emacs-24 * maybe a comment system * maybe debbugs integration (but I do hate debbugs... really hate it...) * ability to review the potential ChangeLog entries that will be generated from the commit All of these, put together, would make it a pleasure to use. As a significant side benefit, Emacs wouldn't be the only project to benefit from these improvements if they were made in Savannah. Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-06 13:12 ` Ted Zlatanov @ 2014-12-08 21:49 ` Thomas Koch 2014-12-08 23:10 ` Lars Magne Ingebrigtsen 1 sibling, 0 replies; 42+ messages in thread From: Thomas Koch @ 2014-12-08 21:49 UTC (permalink / raw) To: emacs-devel; +Cc: Ted Zlatanov We use gerrit at work so I can comment for it. On Saturday, December 06, 2014 08:12:31 AM Ted Zlatanov wrote: > My wishlist for a patch queue management system (PR/pull request system > for those familiar with the Github model): > > * targeted hydra builds for a specific branch I don't know hydra. We use jenkins which has a very good plugin to integrate with gerrit. Every commit that lands in gerrit triggers a jenkins build and jenkins leaves a vote afterwards in gerrit. Thus a human doesn't need to do a review as long as the jenkins build isn't good. > * a click-and-done way to merge a specific branch into master or emacs-24 This is called 'submit' in gerrit and it's click-and-done. > * maybe a comment system In gerrit you can comment and reply on every line of the commit, the commit message or comment on the whole change. > * maybe debbugs integration (but I do hate debbugs... really hate it...) - easy: link from gerrit changes to debbugs if a bug is referenced in the commit message - a bit more involved: trigger debbugs actions for actions in gerrit (new change, change merged...) > * ability to review the potential ChangeLog entries that will be > generated from the commit The commit message is part of the review. We generate changelogs from commit messages and add an 'ignore:' trailer if a commit should not be included in the changelog. A massive advantage of gerrit over reviewboard as used by the Apache Foundation is the frictionless integration with git. On the other hand gerrit is extremely powerful and customizable which might be a problem for somebody setting it up for the first time. Regards, Thomas Koch ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-06 13:12 ` Ted Zlatanov 2014-12-08 21:49 ` Thomas Koch @ 2014-12-08 23:10 ` Lars Magne Ingebrigtsen 2014-12-09 0:00 ` Lars Magne Ingebrigtsen ` (2 more replies) 1 sibling, 3 replies; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-08 23:10 UTC (permalink / raw) To: emacs-devel Ted Zlatanov <tzz@lifelogs.com> writes: > My wishlist for a patch queue management system (PR/pull request system > for those familiar with the Github model): > > * targeted hydra builds for a specific branch > > * a click-and-done way to merge a specific branch into master or emacs-24 > > * maybe a comment system > > * maybe debbugs integration (but I do hate debbugs... really hate it...) I like debbugs better than any other bug tracking system I've used. Because it's in Emacs. :-) `/ tls' and there all the TLS-related bugs are. But it does need more features to make it possible to type less when applying patches. A one-keystroke command to apply the patch, put the bug number into the ChangeLog, and do a "make" in a buffer to see whether any compilation warnings are generated, as well as a one-touch "make the commit message and check this stuff in" command. So, a one-key solution to apply and test a patch, and a one-key solution to checking it in. It's doable if somebody feels like doing it. As for tracking appliable patches, debbugs already offers that with the "patch" and "pending" tags. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 23:10 ` Lars Magne Ingebrigtsen @ 2014-12-09 0:00 ` Lars Magne Ingebrigtsen 2014-12-09 0:32 ` Lars Magne Ingebrigtsen 2014-12-09 2:57 ` Stefan Monnier 2014-12-09 12:37 ` Dmitry Gutov 2 siblings, 1 reply; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 0:00 UTC (permalink / raw) To: emacs-devel Lars Magne Ingebrigtsen <larsi@gnus.org> writes: > It's doable if somebody feels like doing it. Yeah, yeah. One of the most annoying things about applying patches is looking around for whether the person has assigned copyright to the FSF? Is there a reason why this list isn't available as a... web service? Or something? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 0:00 ` Lars Magne Ingebrigtsen @ 2014-12-09 0:32 ` Lars Magne Ingebrigtsen 0 siblings, 0 replies; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 0:32 UTC (permalink / raw) To: emacs-devel Lars Magne Ingebrigtsen <larsi@gnus.org> writes: > One of the most annoying things about applying patches is looking around > for whether the person has assigned copyright to the FSF? Is there a > reason why this list isn't available as a... web service? Or something? I just wrote a function to grep changelogs for names. Works almost as well. :-) Perhaps debbugs should have an automatic "nag the maintainer" functionality. I mean, at least once. There's a lot of bug reports in there that I think are very difficult for a third party to evaluate whether make sense or not. Of course, large swathes of Emacs are unmaintained... -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 23:10 ` Lars Magne Ingebrigtsen 2014-12-09 0:00 ` Lars Magne Ingebrigtsen @ 2014-12-09 2:57 ` Stefan Monnier 2014-12-09 3:16 ` Lars Magne Ingebrigtsen 2014-12-09 12:37 ` Dmitry Gutov 2 siblings, 1 reply; 42+ messages in thread From: Stefan Monnier @ 2014-12-09 2:57 UTC (permalink / raw) To: Lars Magne Ingebrigtsen; +Cc: emacs-devel > It's doable if somebody feels like doing it. I'd love it, Stefan ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 2:57 ` Stefan Monnier @ 2014-12-09 3:16 ` Lars Magne Ingebrigtsen 0 siblings, 0 replies; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 3:16 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: >> It's doable if somebody feels like doing it. > > I'd love it, Great, because I've started implementing it. :-) But I'm not promising this in a timely fashion... Lots of fiddly systems interacting with each other. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 23:10 ` Lars Magne Ingebrigtsen 2014-12-09 0:00 ` Lars Magne Ingebrigtsen 2014-12-09 2:57 ` Stefan Monnier @ 2014-12-09 12:37 ` Dmitry Gutov 2014-12-09 17:20 ` Lars Magne Ingebrigtsen 2 siblings, 1 reply; 42+ messages in thread From: Dmitry Gutov @ 2014-12-09 12:37 UTC (permalink / raw) To: Lars Magne Ingebrigtsen; +Cc: emacs-devel Lars Magne Ingebrigtsen <larsi@gnus.org> writes: > I like debbugs better than any other bug tracking system I've used. > Because it's in Emacs. :-) `/ tls' and there all the TLS-related bugs > are. A lot of people dislike it, myself included. There was a yet-another thread about a replacement recently, but apparently it fizzled out. Too bad. > But it does need more features to make it possible to type less when > applying patches. A one-keystroke command to apply the patch, put the > bug number into the ChangeLog, and do a "make" in a buffer to see > whether any compilation warnings are generated, as well as a one-touch > "make the commit message and check this stuff in" command. This still won't compare with a decent code review system: - Externally visible queue of contributions, so that people from outside can get a better look at Emacs development, and maybe learn something. And speaking of debbugs, I can even get a list of "all bugs with patches" from inside of Emacs. - A working integration server that gives an overview of whether each patch (or better: Git branch) compiles, passes tests, etc, which will be a good reminder for a contributor if they broke something, even before a reviewer is involved. - Inline comments: hide the old ones as the discussion progresses, only show the ones still pertinent to the current changeset (though this part may be hard to integrate into Emacs either way). I was kinda hoping it might would serve as an alternative for debbugs comments. - If Git branches are involved, and ChangeLogs are phased out, an automatic "merge this branch" action would be natural to use, instead of doing the things you've enumerated above. If course, that's two whole ifs. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 12:37 ` Dmitry Gutov @ 2014-12-09 17:20 ` Lars Magne Ingebrigtsen 2014-12-09 20:40 ` Dmitry Gutov 0 siblings, 1 reply; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 17:20 UTC (permalink / raw) To: Dmitry Gutov; +Cc: emacs-devel Dmitry Gutov <dgutov@yandex.ru> writes: > This still won't compare with a decent code review system: > > - Externally visible queue of contributions, so that people from outside > can get a better look at Emacs development, and maybe learn something. > And speaking of debbugs, I can even get a list of "all bugs with > patches" from inside of Emacs. Sure you can. `C-u / patch' in debbugs-gnu. > - A working integration server that gives an overview of whether each > patch (or better: Git branch) compiles, passes tests, etc, which will > be a good reminder for a contributor if they broke something, even > before a reviewer is involved. This can all be done by adding tags to bug reports in debbugs. > - Inline comments: hide the old ones as the discussion progresses, only > show the ones still pertinent to the current changeset (though this > part may be hard to integrate into Emacs either way). I was kinda > hoping it might would serve as an alternative for debbugs comments. That sounds nice, but 99% of patches in the bug tracker are small and need only a couple passes or less before they can be applied. So this would give us no extra patch handling power in reality. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 17:20 ` Lars Magne Ingebrigtsen @ 2014-12-09 20:40 ` Dmitry Gutov 2014-12-09 20:44 ` Lars Magne Ingebrigtsen 0 siblings, 1 reply; 42+ messages in thread From: Dmitry Gutov @ 2014-12-09 20:40 UTC (permalink / raw) To: Lars Magne Ingebrigtsen; +Cc: emacs-devel On 12/09/2014 07:20 PM, Lars Magne Ingebrigtsen wrote: >> I can['t] even get a list of "all bugs with patches" from inside of Emacs. > > Sure you can. `C-u / patch' in debbugs-gnu. Okay, thanks. Any reason why it includes closed bugs in the list? And could Debbugs be made to work snappier? 20000 is not much, on a database scale. >> - A working integration server that gives an overview of whether each >> patch (or better: Git branch) compiles, passes tests, etc, which will >> be a good reminder for a contributor if they broke something, even >> before a reviewer is involved. > > This can all be done by adding tags to bug reports in debbugs. ...I suppose. Note that integration server build status usually includes a status value (passed, failed, or errored before it had a chance to fail) and a url to the build info (where we can look at the log). Do you intend to keep the patch submission workflow the same? I.e. free-form (inline or in an attachment with arbitrary name), instead of a Git branch somewhere. How would integration server pick up and apply such patches? >> - Inline comments: hide the old ones as the discussion progresses, only >> show the ones still pertinent to the current changeset (though this >> part may be hard to integrate into Emacs either way). I was kinda >> hoping it might would serve as an alternative for debbugs comments. > > That sounds nice, but 99% of patches in the bug tracker are small and > need only a couple passes or less before they can be applied. So this > would give us no extra patch handling power in reality. It increases visibility into the discussion. Even if we're only talking two passes, being able to see just the comments that apply to the latest proposed version is pretty nice. Though of course, the smaller patches that don't need discussion would benefit more from being able to see that the build passes and instantly merge the contribution. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 20:40 ` Dmitry Gutov @ 2014-12-09 20:44 ` Lars Magne Ingebrigtsen 2014-12-09 21:32 ` Dmitry Gutov 2014-12-09 21:57 ` Lars Magne Ingebrigtsen 0 siblings, 2 replies; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 20:44 UTC (permalink / raw) To: Dmitry Gutov; +Cc: emacs-devel Dmitry Gutov <dgutov@yandex.ru> writes: > Okay, thanks. Any reason why it includes closed bugs in the list? They're included for a few weeks. `x' to make them go away. > And could Debbugs be made to work snappier? 20000 is not much, on a > database scale. Indeed. > ...I suppose. Note that integration server build status usually > includes a status value (passed, failed, or errored before it had a > chance to fail) and a url to the build info (where we can look at the > log). Well, that's also nice, but for virtually all patches we get (which are to the Lisp bits), running a "make" in the current tree is sufficient to see whether the patch is whack or not. No need to wait for a result from an integration server. ("make test" if you want to be all modern and hang with the cool kids.) > Do you intend to keep the patch submission workflow the same? > I.e. free-form (inline or in an attachment with arbitrary name), > instead of a Git branch somewhere. Sending patches is really easy, even for kids these days. > It increases visibility into the discussion. Even if we're only > talking two passes, being able to see just the comments that apply to > the latest proposed version is pretty nice. Yes, it would be, but we're displaying the discussion threaded, so that kinda happens naturally. It would be nice to have a way to mark exactly what message contains the most current version of the patch, though. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 20:44 ` Lars Magne Ingebrigtsen @ 2014-12-09 21:32 ` Dmitry Gutov 2014-12-09 21:58 ` Lars Magne Ingebrigtsen 2014-12-09 21:57 ` Lars Magne Ingebrigtsen 1 sibling, 1 reply; 42+ messages in thread From: Dmitry Gutov @ 2014-12-09 21:32 UTC (permalink / raw) To: Lars Magne Ingebrigtsen; +Cc: emacs-devel On 12/09/2014 10:44 PM, Lars Magne Ingebrigtsen wrote: > They're included for a few weeks. `x' to make them go away. Thanks. > Well, that's also nice, but for virtually all patches we get (which are > to the Lisp bits), running a "make" in the current tree is sufficient to > see whether the patch is whack or not. No need to wait for a result > from an integration server. Quite the opposite, many bugs with Lisp code can only be found at runtime. One has to try hard to break the compilation. Anyway, you previous message gave me an impression that you do want an integration server. You don't? Okay... > ("make test" if you want to be all modern and hang with the cool kids.) Right. >> Do you intend to keep the patch submission workflow the same? >> I.e. free-form (inline or in an attachment with arbitrary name), >> instead of a Git branch somewhere. > > Sending patches is really easy, even for kids these days. This ignores the point I was making. To make it easier for automated tools, you'd have to make sending patches *harder*, at least a bit, for the uninitiated. >> It increases visibility into the discussion. Even if we're only >> talking two passes, being able to see just the comments that apply to >> the latest proposed version is pretty nice. > > Yes, it would be, but we're displaying the discussion threaded, so that > kinda happens naturally. That's not ideal: only one message's contents is displayed at the time, and when reading, one has to go up and down the thread, until they find the message that submits the patch, and then switch between the messages in the subthread which appear to respond to it. There's no other way to follow the discussions on each specific part of the patch, except to look at the quotes in each message and try to keep it together in your head. With inline comments, you can have granular comment threads that only apply to specific part of the patch. > It would be nice to have a way to mark exactly > what message contains the most current version of the patch, though. Even that would be an improvement, yes. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 21:32 ` Dmitry Gutov @ 2014-12-09 21:58 ` Lars Magne Ingebrigtsen 0 siblings, 0 replies; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 21:58 UTC (permalink / raw) To: Dmitry Gutov; +Cc: emacs-devel Dmitry Gutov <dgutov@yandex.ru> writes: > Anyway, you previous message gave me an impression that you do want an > integration server. You don't? Okay... I do, but it doesn't have to be involved in the patch application process. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 20:44 ` Lars Magne Ingebrigtsen 2014-12-09 21:32 ` Dmitry Gutov @ 2014-12-09 21:57 ` Lars Magne Ingebrigtsen 2014-12-10 14:35 ` Ted Zlatanov 1 sibling, 1 reply; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 21:57 UTC (permalink / raw) To: emacs-devel I pushed a DWIM thing to debbugs-gnu that cuts down on patch handling a bit. It's easier to explain with pictures: http://lars.ingebrigtsen.no/2014/12/09/one-touch-maintainin/ It's not quite finished -- there are probably lots of cases where it doesn't work right. So fix anything you like. :-) -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 21:57 ` Lars Magne Ingebrigtsen @ 2014-12-10 14:35 ` Ted Zlatanov 0 siblings, 0 replies; 42+ messages in thread From: Ted Zlatanov @ 2014-12-10 14:35 UTC (permalink / raw) To: emacs-devel On Tue, 09 Dec 2014 22:57:23 +0100 Lars Magne Ingebrigtsen <larsi@gnus.org> wrote: LMI> I pushed a DWIM thing to debbugs-gnu that cuts down on patch handling a LMI> bit. It's easier to explain with pictures: LMI> http://lars.ingebrigtsen.no/2014/12/09/one-touch-maintainin/ LMI> It's not quite finished -- there are probably lots of cases where it LMI> doesn't work right. So fix anything you like. :-) I like the idea. Very similar to your gmane admin flow :) I'll try it out. Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-06 10:08 ` Patch queue management systems Eli Zaretskii 2014-12-06 13:12 ` Ted Zlatanov @ 2014-12-08 22:24 ` Lars Magne Ingebrigtsen 2014-12-08 22:54 ` joakim ` (3 more replies) 2014-12-09 13:03 ` Dmitry Gutov 2 siblings, 4 replies; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-08 22:24 UTC (permalink / raw) To: emacs-devel Eli Zaretskii <eliz@gnu.org> writes: > Personally, I think arranging the development around this kind of > process will not work without some critical mass of patch reviewers > who are able to endure the current constant high volume of changes, > let alone if we want to increase that volume. Perhaps we could attract more people by gamifying the Emacs development, a la Github. That is, score people on bug closures and stuff. The winner each month could get a free copy of the Emacs sources. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 22:24 ` Lars Magne Ingebrigtsen @ 2014-12-08 22:54 ` joakim 2014-12-09 5:31 ` Ivan Andrus 2014-12-09 0:06 ` Thien-Thi Nguyen ` (2 subsequent siblings) 3 siblings, 1 reply; 42+ messages in thread From: joakim @ 2014-12-08 22:54 UTC (permalink / raw) To: Lars Magne Ingebrigtsen; +Cc: emacs-devel Lars Magne Ingebrigtsen <larsi@gnus.org> writes: > Eli Zaretskii <eliz@gnu.org> writes: > >> Personally, I think arranging the development around this kind of >> process will not work without some critical mass of patch reviewers >> who are able to endure the current constant high volume of changes, >> let alone if we want to increase that volume. > > Perhaps we could attract more people by gamifying the Emacs development, > a la Github. That is, score people on bug closures and stuff. > > The winner each month could get a free copy of the Emacs sources. I actually have a emacs gamification mode ive been meaning to upload somewhere. It is very simple yet effective. (define-minor-mode zen-reward-mode "type a lot and get a reward!." :global t :init-value nil :lighter nil :keymap nil :group 'zen (if zen-reward-mode (progn (add-hook 'pre-command-hook 'zen-reward-pre-command-hook) (add-hook 'org-after-todo-state-change-hook 'zen-reward-todo-state-change-hook)) (progn (remove-hook 'pre-command-hook 'zen-reward-pre-command-hook) (remove-hook 'org-after-todo-state-change-hook 'zen-reward-todo-state-change-hook)))) (defvar zen-reward-accumulator 0) (defun zen-reward-todo-state-change-hook () (message "todo hook %s %s" org-state (org-show-priority)) ;;if you toggle a task back and forth you get super rich. ;;you get rewarded for CANCELLED also, but that is good! (if (equal org-state "DONE") (progn (let ((reward (string-to-number (substring (org-show-priority) (length "Priority is ") )))) ;;priority A is 4001, B 3001 and so on. probably can be negative as well. so reward needs to be modified a bit (message "todo reward %d!" reward) (setq zen-reward-accumulator (+ reward zen-reward-accumulator) )) )) ) ;testing. only get reward for typing, not for cursor movement and other things (defun zen-reward-pre-command-hook () "accumulate typing reward." (if (or (eq real-last-command 'self-insert-command) (eq real-last-command 'org-self-insert-command)) (setq zen-reward-accumulator (1+ zen-reward-accumulator) )) ;; (message "reward:%d %s %d" zen-reward-accumulator real-last-command (random)) ) (defun zen-claim-reward () "cash in your bountiful reward, spend it on fun and games!" (interactive ) (message "reward:%d" zen-reward-accumulator) (setq zen-reward-accumulator 0)) (defun zen-inspect-reward () "how soon can i afford fun and games?" (interactive ) (message "zen reward:%d" zen-reward-accumulator) ) ;; (zen-reward-mode) -- Joakim Verona ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 22:54 ` joakim @ 2014-12-09 5:31 ` Ivan Andrus 0 siblings, 0 replies; 42+ messages in thread From: Ivan Andrus @ 2014-12-09 5:31 UTC (permalink / raw) To: joakim; +Cc: Lars Magne Ingebrigtsen, emacs-devel On Dec 8, 2014, at 3:54 PM, joakim@verona.se wrote: > > Lars Magne Ingebrigtsen <larsi@gnus.org> writes: > >> Eli Zaretskii <eliz@gnu.org> writes: >> >>> Personally, I think arranging the development around this kind of >>> process will not work without some critical mass of patch reviewers >>> who are able to endure the current constant high volume of changes, >>> let alone if we want to increase that volume. >> >> Perhaps we could attract more people by gamifying the Emacs development, >> a la Github. That is, score people on bug closures and stuff. >> >> The winner each month could get a free copy of the Emacs sources. > > I actually have a emacs gamification mode ive been meaning to upload > somewhere. It is very simple yet effective. My gamification package (achievements) is available on MELPA, or at https://bitbucket.org/gvol/emacs-achievements Though I have to admit that I don’t have any achievements for reviewing patches. Patches welcome. :-) -Ivan ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 22:24 ` Lars Magne Ingebrigtsen 2014-12-08 22:54 ` joakim @ 2014-12-09 0:06 ` Thien-Thi Nguyen 2014-12-09 2:54 ` Stefan Monnier 2014-12-09 8:13 ` Stephen Leake 3 siblings, 0 replies; 42+ messages in thread From: Thien-Thi Nguyen @ 2014-12-09 0:06 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1048 bytes --] () Lars Magne Ingebrigtsen <larsi@gnus.org> () Mon, 08 Dec 2014 23:24:44 +0100 > Personally, I think arranging the development around this > kind of process will not work without some critical mass of > patch reviewers who are able to endure the current constant > high volume of changes, let alone if we want to increase that > volume. Perhaps we could attract more people by gamifying the Emacs development, a la Github. That is, score people on bug closures and stuff. A (psychologically) related maneuver is specialization (a la Brooks' MMM "team" concept). For example, for LibreDWG, i limit the damage i do by relegating myself to a fussy-bureaucrat role: http://lists.gnu.org/archive/html/libredwg/2014-12/msg00012.html Pignolo, io?! Ma va... è un dono! :-D -- Thien-Thi Nguyen GPG key: 4C807502 (if you're human and you know it) read my lisp: (responsep (questions 'technical) (not (via 'mailing-list))) => nil [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 22:24 ` Lars Magne Ingebrigtsen 2014-12-08 22:54 ` joakim 2014-12-09 0:06 ` Thien-Thi Nguyen @ 2014-12-09 2:54 ` Stefan Monnier 2014-12-09 3:15 ` Lars Magne Ingebrigtsen 2014-12-09 8:13 ` Stephen Leake 3 siblings, 1 reply; 42+ messages in thread From: Stefan Monnier @ 2014-12-09 2:54 UTC (permalink / raw) To: Lars Magne Ingebrigtsen; +Cc: emacs-devel > The winner each month could get a free copy of the Emacs sources. More seriously, I'd be happy to send the winner a quart of my home made ice-cream. Stefan ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 2:54 ` Stefan Monnier @ 2014-12-09 3:15 ` Lars Magne Ingebrigtsen 0 siblings, 0 replies; 42+ messages in thread From: Lars Magne Ingebrigtsen @ 2014-12-09 3:15 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: >> The winner each month could get a free copy of the Emacs sources. > > More seriously, I'd be happy to send the winner a quart of my home made > ice-cream. Even more seriously, I could design and make some t-shirts and mail them to the winners. :-) -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-08 22:24 ` Lars Magne Ingebrigtsen ` (2 preceding siblings ...) 2014-12-09 2:54 ` Stefan Monnier @ 2014-12-09 8:13 ` Stephen Leake 3 siblings, 0 replies; 42+ messages in thread From: Stephen Leake @ 2014-12-09 8:13 UTC (permalink / raw) To: emacs-devel Lars Magne Ingebrigtsen <larsi@gnus.org> writes: > Eli Zaretskii <eliz@gnu.org> writes: > >> Personally, I think arranging the development around this kind of >> process will not work without some critical mass of patch reviewers >> who are able to endure the current constant high volume of changes, >> let alone if we want to increase that volume. > > Perhaps we could attract more people by gamifying the Emacs development, > a la Github. That is, score people on bug closures and stuff. On monotone, we had occasional "bugathons". Somebody would put up $20 or so for the prize of monotone swag (hats, mugs etc with the monotone logo). It worked pretty well. -- -- Stephe ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-06 10:08 ` Patch queue management systems Eli Zaretskii 2014-12-06 13:12 ` Ted Zlatanov 2014-12-08 22:24 ` Lars Magne Ingebrigtsen @ 2014-12-09 13:03 ` Dmitry Gutov 2014-12-09 17:09 ` Eli Zaretskii 2 siblings, 1 reply; 42+ messages in thread From: Dmitry Gutov @ 2014-12-09 13:03 UTC (permalink / raw) To: Eli Zaretskii; +Cc: eggert, monnier, emacs-devel On 12/06/2014 12:08 PM, Eli Zaretskii wrote: > I think by far the 2 main issues we will have with these tools are: > > . The tools don't have Emacs integration built into them, nor offer > Emacs VC sub-modes. (Gerrit has a magit plugin.) I'm guessing we > would like to arrange for such an integration in VC, because people > who review patches are accustomed to using Emacs and have elaborate > customizations for this that they would lose if the review is only > done via a Web browser (even if that browser is eww). Looking at magit-gerrit, it's not that big. If you're okay with that level of integration, it shouldn't take too much work, as long as the review system comes with a command-line tool or an API (which, of course, will be a requirement). > . The tools require non-trivial changes in the workflow advertised on > the Wiki. E.g., Gerrit requires to work with magic local branches > and detached heads. We should carefully evaluate this and decide > how to make sure this won't trip those of us who are less > proficient in Git (which, judging by the current traffic on > emacs-devel, seems like a rule rather than exception) and cause > corruption of the upstream repository. > > There are also other minor issues we need to figure out: licenses, the > underlying infrastructure (e.g., AFIU, Phabricator requires PHP), etc. Right, I'll have to investigate that. Licenses shouldn't be a problem (I only looked for Free Software packages), and as for infrastructure, someone should point out any particular problems that can turn out to be insurmountable. I can't think of any. > Personally, I think arranging the development around this kind of > process will not work without some critical mass of patch reviewers > who are able to endure the current constant high volume of changes, > let alone if we want to increase that volume. Right, but that's only if/when we decide to push all contributions though this system. We could start light, and continue allowing committing directly to the repository, but move the patches-to-be-discussed (which will take up reviewers' time anyway) to the new system. On the other hand, if we want to use this to guarantee quality of commit messages, a review process in some form will be required anyway, but since a lot of focus would be on the form rather than substance, not every reviewer would have to be intimately familiar with the area of the code they're reviewing. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 13:03 ` Dmitry Gutov @ 2014-12-09 17:09 ` Eli Zaretskii 2014-12-09 17:17 ` Dmitry Gutov 0 siblings, 1 reply; 42+ messages in thread From: Eli Zaretskii @ 2014-12-09 17:09 UTC (permalink / raw) To: Dmitry Gutov; +Cc: eggert, monnier, emacs-devel > Date: Tue, 09 Dec 2014 15:03:00 +0200 > From: Dmitry Gutov <dgutov@yandex.ru> > CC: monnier@iro.umontreal.ca, emacs-devel@gnu.org, eggert@cs.ucla.edu > > On 12/06/2014 12:08 PM, Eli Zaretskii wrote: > > > I think by far the 2 main issues we will have with these tools are: > > > > . The tools don't have Emacs integration built into them, nor offer > > Emacs VC sub-modes. (Gerrit has a magit plugin.) I'm guessing we > > would like to arrange for such an integration in VC, because people > > who review patches are accustomed to using Emacs and have elaborate > > customizations for this that they would lose if the review is only > > done via a Web browser (even if that browser is eww). > > Looking at magit-gerrit, it's not that big. If you're okay with that > level of integration, it shouldn't take too much work, as long as the > review system comes with a command-line tool or an API (which, of > course, will be a requirement). Magit is not part of Emacs. I think we would like this to be integrated into VC. > > Personally, I think arranging the development around this kind of > > process will not work without some critical mass of patch reviewers > > who are able to endure the current constant high volume of changes, > > let alone if we want to increase that volume. > > Right, but that's only if/when we decide to push all contributions > though this system. We could start light, and continue allowing > committing directly to the repository, but move the > patches-to-be-discussed (which will take up reviewers' time anyway) to > the new system. I'm not sure such a split process makes sense. It will complicate procedures and most probably cause some patches fall through the cracks. > On the other hand, if we want to use this to guarantee quality of commit > messages, a review process in some form will be required anyway, but > since a lot of focus would be on the form rather than substance, not > every reviewer would have to be intimately familiar with the area of the > code they're reviewing. I think comments about the form are usually the easiest part of the review, and some of that can be automated. Also, some form-related issues are actually derived from familiarity with Emacs design and implementation. So yes, we could have "junior reviewers" who'd only deal with form issues, but that would off-load only a minor portion of the work required to do this. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 17:09 ` Eli Zaretskii @ 2014-12-09 17:17 ` Dmitry Gutov 2014-12-09 17:36 ` Eli Zaretskii 0 siblings, 1 reply; 42+ messages in thread From: Dmitry Gutov @ 2014-12-09 17:17 UTC (permalink / raw) To: Eli Zaretskii; +Cc: eggert, monnier, emacs-devel On 12/09/2014 07:09 PM, Eli Zaretskii wrote: > Magit is not part of Emacs. I think we would like this to be > integrated into VC. Right. I meant reimplementing magit-gerrit won't take too much work. >> Right, but that's only if/when we decide to push all contributions >> though this system. We could start light, and continue allowing >> committing directly to the repository, but move the >> patches-to-be-discussed (which will take up reviewers' time anyway) to >> the new system. > > I'm not sure such a split process makes sense. It will complicate > procedures and most probably cause some patches fall through the > cracks. Why? It's not much different from what happens now. Consider this: if a patch is posted to the bug tracker or emacs-devel now, it would go though the new system when it's set up. Patches that are written by users with commit access and installed directly will continue to proceed this way. > I think comments about the form are usually the easiest part of the > review, and some of that can be automated. Also, some form-related > issues are actually derived from familiarity with Emacs design and > implementation. So yes, we could have "junior reviewers" who'd only > deal with form issues, but that would off-load only a minor portion of > the work required to do this. I don't know about that. If the code is written by a senior developer in the area where they're competent, most of the time only superficial review is required (unless the author explicitly indicates otherwise). Then a junior could be enough, too. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 17:17 ` Dmitry Gutov @ 2014-12-09 17:36 ` Eli Zaretskii 2014-12-09 19:31 ` Dmitry Gutov 2014-12-10 14:39 ` Ted Zlatanov 0 siblings, 2 replies; 42+ messages in thread From: Eli Zaretskii @ 2014-12-09 17:36 UTC (permalink / raw) To: Dmitry Gutov; +Cc: eggert, monnier, emacs-devel > Date: Tue, 09 Dec 2014 19:17:26 +0200 > From: Dmitry Gutov <dgutov@yandex.ru> > CC: monnier@iro.umontreal.ca, emacs-devel@gnu.org, eggert@cs.ucla.edu > > Patches that are written by users with commit access and installed > directly will continue to proceed this way. I thought we wanted to make the review process mandatory for everybody. If we don't, we will have to come up with strict criteria for granting commit access, because commit access is global and nowadays given to people who only work on a small number of specific areas. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 17:36 ` Eli Zaretskii @ 2014-12-09 19:31 ` Dmitry Gutov 2014-12-10 14:39 ` Ted Zlatanov 1 sibling, 0 replies; 42+ messages in thread From: Dmitry Gutov @ 2014-12-09 19:31 UTC (permalink / raw) To: Eli Zaretskii; +Cc: eggert, monnier, emacs-devel On 12/09/2014 07:36 PM, Eli Zaretskii wrote: > I thought we wanted to make the review process mandatory for > everybody. A code review system can facilitate that workflow, but it doesn't require it. > If we don't, we will have to come up with strict criteria for granting > commit access, because commit access is global and nowadays given to > people who only work on a small number of specific areas. Yes, probably. Either way, I'm ambivalent on the question of removing ChangeLogs, but doing that would allow to simplify automatic merging of patches. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-09 17:36 ` Eli Zaretskii 2014-12-09 19:31 ` Dmitry Gutov @ 2014-12-10 14:39 ` Ted Zlatanov 2014-12-11 8:59 ` Steinar Bang 1 sibling, 1 reply; 42+ messages in thread From: Ted Zlatanov @ 2014-12-10 14:39 UTC (permalink / raw) To: emacs-devel On Tue, 09 Dec 2014 19:36:45 +0200 Eli Zaretskii <eliz@gnu.org> wrote: EZ> If we don't, we will have to come up with strict criteria for granting EZ> commit access, because commit access is global and nowadays given to EZ> people who only work on a small number of specific areas. It could be more fine-grained, only protecting certain branches (master, emacs-*, etc.). Then people can push to "username/feature" branches and maintainers can merge into a protected branch. Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-10 14:39 ` Ted Zlatanov @ 2014-12-11 8:59 ` Steinar Bang 2014-12-11 11:52 ` Ted Zlatanov 2014-12-11 18:43 ` Achim Gratz 0 siblings, 2 replies; 42+ messages in thread From: Steinar Bang @ 2014-12-11 8:59 UTC (permalink / raw) To: emacs-devel >>>>> Ted Zlatanov <tzz@lifelogs.com>: > It could be more fine-grained, only protecting certain branches > (master, emacs-*, etc.). Then people can push to "username/feature" > branches and maintainers can merge into a protected branch. "username/feature" sounds like a good naming scheme and one that could cut down on the inevitable clutter (implicit blame). (and I still think having a separate feature branch git repository is a good idea. If that repository resides on the same server and is created with hardlinks to the real repo, it should also be cheap disk-usage-wise, at least initially....) ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 8:59 ` Steinar Bang @ 2014-12-11 11:52 ` Ted Zlatanov 2014-12-11 12:38 ` Steinar Bang 2014-12-11 18:43 ` Achim Gratz 1 sibling, 1 reply; 42+ messages in thread From: Ted Zlatanov @ 2014-12-11 11:52 UTC (permalink / raw) To: emacs-devel On Thu, 11 Dec 2014 09:59:28 +0100 Steinar Bang <sb@dod.no> wrote: >>>>>> Ted Zlatanov <tzz@lifelogs.com>: >> It could be more fine-grained, only protecting certain branches >> (master, emacs-*, etc.). Then people can push to "username/feature" >> branches and maintainers can merge into a protected branch. SB> "username/feature" sounds like a good naming scheme and one that could SB> cut down on the inevitable clutter (implicit blame). SB> (and I still think having a separate feature branch git repository is a SB> good idea. Yeah, it would make allowing non-fast-forward pushes easier. SB> If that repository resides on the same server and is created with SB> hardlinks to the real repo, it should also be cheap disk-usage-wise, SB> at least initially....) Eh. Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 11:52 ` Ted Zlatanov @ 2014-12-11 12:38 ` Steinar Bang 2014-12-11 14:31 ` Ted Zlatanov 0 siblings, 1 reply; 42+ messages in thread From: Steinar Bang @ 2014-12-11 12:38 UTC (permalink / raw) To: emacs-devel >>>>> Ted Zlatanov <tzz@lifelogs.com>: SB> If that repository resides on the same server and is created with SB> hardlinks to the real repo, it should also be cheap disk-usage-wise, SB> at least initially....) > Eh. cd /wherever/the/emacs/repo/lives git clone --mirror ./emacs.git ./emacs-feature-branches.git If the git used is reasonably new, then all of the known-by-hash objects in the new repository will be hardlinks to the original repo (which is safe since these will never change). So the new repository will initially use very little space on disk (all history from the time of cloning will use the same inodes as the original repository). But as times goes and the emacs-feature-branches repo is filled by clutter, the space usage of the feature branches repository will increase. Of course an easy way of doing housecleaning here, would be: cd /wherever/the/emacs/repo/lives rm -rf emacs-feature-branches.git git clone --mirror ./emacs.git ./emacs-feature-branches.git and then let people repush their feature branches. ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 12:38 ` Steinar Bang @ 2014-12-11 14:31 ` Ted Zlatanov 2014-12-11 14:39 ` David Kastrup 0 siblings, 1 reply; 42+ messages in thread From: Ted Zlatanov @ 2014-12-11 14:31 UTC (permalink / raw) To: emacs-devel On Thu, 11 Dec 2014 13:38:15 +0100 Steinar Bang <sb@dod.no> wrote: >>>>>> Ted Zlatanov <tzz@lifelogs.com>: SB> If that repository resides on the same server and is created with SB> hardlinks to the real repo, it should also be cheap disk-usage-wise, SB> at least initially....) >> Eh. SB> cd /wherever/the/emacs/repo/lives SB> git clone --mirror ./emacs.git ./emacs-feature-branches.git SB> If the git used is reasonably new, then all of the known-by-hash objects SB> in the new repository will be hardlinks to the original repo (which is SB> safe since these will never change). I know all that (and the ways to override it) :) I was saying that saving disk space is really low on the list of benefits. Allowing non-fast-forward pushes for certain branches is much more valuable to the Emacs project. Stefan, Glenn: any chance we can get a contributor repo set up that's just like the Emacs repo but allows non-fast-forward pushes, and whose commits go to emacs-diffs? Even better would be if user X could only push to branches "X/.*" Thanks Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 14:31 ` Ted Zlatanov @ 2014-12-11 14:39 ` David Kastrup 2014-12-11 14:50 ` Ted Zlatanov 2014-12-11 14:55 ` Andreas Schwab 0 siblings, 2 replies; 42+ messages in thread From: David Kastrup @ 2014-12-11 14:39 UTC (permalink / raw) To: emacs-devel Ted Zlatanov <tzz@lifelogs.com> writes: > On Thu, 11 Dec 2014 13:38:15 +0100 Steinar Bang <sb@dod.no> wrote: > >>>>>>> Ted Zlatanov <tzz@lifelogs.com>: > SB> If that repository resides on the same server and is created with > SB> hardlinks to the real repo, it should also be cheap disk-usage-wise, > SB> at least initially....) > >>> Eh. > > SB> cd /wherever/the/emacs/repo/lives > SB> git clone --mirror ./emacs.git ./emacs-feature-branches.git > > SB> If the git used is reasonably new, then all of the known-by-hash objects > SB> in the new repository will be hardlinks to the original repo (which is > SB> safe since these will never change). > > I know all that (and the ways to override it) :) > > I was saying that saving disk space is really low on the list of > benefits. Allowing non-fast-forward pushes for certain branches is much > more valuable to the Emacs project. > > Stefan, Glenn: any chance we can get a contributor repo set up that's > just like the Emacs repo but allows non-fast-forward pushes, and whose > commits go to emacs-diffs? Even better would be if user X could only > push to branches "X/.*" Doesn't need a separate repo: a server side commit hook refusing non-fast-forward pushes (more exactly: updating the reference after the commit object is already there) on any path not starting, say, with dev/, should be easily possible. -- David Kastrup ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 14:39 ` David Kastrup @ 2014-12-11 14:50 ` Ted Zlatanov 2014-12-11 14:55 ` Andreas Schwab 1 sibling, 0 replies; 42+ messages in thread From: Ted Zlatanov @ 2014-12-11 14:50 UTC (permalink / raw) To: emacs-devel On Thu, 11 Dec 2014 15:39:51 +0100 David Kastrup <dak@gnu.org> wrote: DK> Ted Zlatanov <tzz@lifelogs.com> writes: >> Stefan, Glenn: any chance we can get a contributor repo set up that's >> just like the Emacs repo but allows non-fast-forward pushes, and whose >> commits go to emacs-diffs? Even better would be if user X could only >> push to branches "X/.*" DK> Doesn't need a separate repo: a server side commit hook refusing DK> non-fast-forward pushes (more exactly: updating the reference after the DK> commit object is already there) on any path not starting, say, with DK> dev/, should be easily possible. Works for me (I've only set it up globally, so I didn't know it was selectively possible). Can you or one of the other admins set it up? It would be very helpful. A "dev/" prefix is fine by me, and makes it easy to automatically fetch the relevant upstreams, something like: [remote "origin"] fetch = +refs/dev/*/head:refs/remotes/origin/dev/* Thanks Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 14:39 ` David Kastrup 2014-12-11 14:50 ` Ted Zlatanov @ 2014-12-11 14:55 ` Andreas Schwab 2014-12-11 15:00 ` Ted Zlatanov 2014-12-11 15:19 ` David Kastrup 1 sibling, 2 replies; 42+ messages in thread From: Andreas Schwab @ 2014-12-11 14:55 UTC (permalink / raw) To: David Kastrup; +Cc: emacs-devel David Kastrup <dak@gnu.org> writes: > Doesn't need a separate repo: a server side commit hook refusing > non-fast-forward pushes (more exactly: updating the reference after the > commit object is already there) on any path not starting, say, with > dev/, should be easily possible. Doesn't even need that as long as you can delete branches. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 14:55 ` Andreas Schwab @ 2014-12-11 15:00 ` Ted Zlatanov 2014-12-11 15:26 ` David Kastrup 2014-12-11 15:19 ` David Kastrup 1 sibling, 1 reply; 42+ messages in thread From: Ted Zlatanov @ 2014-12-11 15:00 UTC (permalink / raw) To: emacs-devel On Thu, 11 Dec 2014 15:55:35 +0100 Andreas Schwab <schwab@suse.de> wrote: AS> David Kastrup <dak@gnu.org> writes: >> Doesn't need a separate repo: a server side commit hook refusing >> non-fast-forward pushes (more exactly: updating the reference after the >> commit object is already there) on any path not starting, say, with >> dev/, should be easily possible. AS> Doesn't even need that as long as you can delete branches. Doesn't even need that as long as we have Github. Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 15:00 ` Ted Zlatanov @ 2014-12-11 15:26 ` David Kastrup 2014-12-11 15:33 ` Ted Zlatanov 0 siblings, 1 reply; 42+ messages in thread From: David Kastrup @ 2014-12-11 15:26 UTC (permalink / raw) To: emacs-devel Ted Zlatanov <tzz@lifelogs.com> writes: > On Thu, 11 Dec 2014 15:55:35 +0100 Andreas Schwab <schwab@suse.de> wrote: > > AS> David Kastrup <dak@gnu.org> writes: >>> Doesn't need a separate repo: a server side commit hook refusing >>> non-fast-forward pushes (more exactly: updating the reference after the >>> commit object is already there) on any path not starting, say, with >>> dev/, should be easily possible. > > AS> Doesn't even need that as long as you can delete branches. > > Doesn't even need that as long as we have Github. We don't "have" GitHub. It's owned by a company and is running proprietary software to which we don't have access. -- David Kastrup ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 15:26 ` David Kastrup @ 2014-12-11 15:33 ` Ted Zlatanov 2014-12-11 15:49 ` David Kastrup 0 siblings, 1 reply; 42+ messages in thread From: Ted Zlatanov @ 2014-12-11 15:33 UTC (permalink / raw) To: emacs-devel On Thu, 11 Dec 2014 16:26:21 +0100 David Kastrup <dak@gnu.org> wrote: DK> Ted Zlatanov <tzz@lifelogs.com> writes: >> On Thu, 11 Dec 2014 15:55:35 +0100 Andreas Schwab <schwab@suse.de> wrote: >> AS> David Kastrup <dak@gnu.org> writes: >>>> Doesn't need a separate repo: a server side commit hook refusing >>>> non-fast-forward pushes (more exactly: updating the reference after the >>>> commit object is already there) on any path not starting, say, with >>>> dev/, should be easily possible. >> AS> Doesn't even need that as long as you can delete branches. >> >> Doesn't even need that as long as we have Github. DK> We don't "have" GitHub. It's owned by a company and is running DK> proprietary software to which we don't have access. Sorry, I forgot to add sarcasm tags. Ted ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 15:33 ` Ted Zlatanov @ 2014-12-11 15:49 ` David Kastrup 0 siblings, 0 replies; 42+ messages in thread From: David Kastrup @ 2014-12-11 15:49 UTC (permalink / raw) To: emacs-devel Ted Zlatanov <tzz@lifelogs.com> writes: > On Thu, 11 Dec 2014 16:26:21 +0100 David Kastrup <dak@gnu.org> wrote: > > DK> Ted Zlatanov <tzz@lifelogs.com> writes: >>> On Thu, 11 Dec 2014 15:55:35 +0100 Andreas Schwab <schwab@suse.de> wrote: >>> > AS> David Kastrup <dak@gnu.org> writes: >>>>> Doesn't need a separate repo: a server side commit hook refusing >>>>> non-fast-forward pushes (more exactly: updating the reference after the >>>>> commit object is already there) on any path not starting, say, with >>>>> dev/, should be easily possible. >>> > AS> Doesn't even need that as long as you can delete branches. >>> >>> Doesn't even need that as long as we have Github. > > DK> We don't "have" GitHub. It's owned by a company and is running > DK> proprietary software to which we don't have access. > > Sorry, I forgot to add sarcasm tags. It isn't sarcasm if an overwhelming majority of readers would not know the difference. This happens to be a publicly archived mailing list. -- David Kastrup ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 14:55 ` Andreas Schwab 2014-12-11 15:00 ` Ted Zlatanov @ 2014-12-11 15:19 ` David Kastrup 1 sibling, 0 replies; 42+ messages in thread From: David Kastrup @ 2014-12-11 15:19 UTC (permalink / raw) To: Andreas Schwab; +Cc: emacs-devel Andreas Schwab <schwab@suse.de> writes: > David Kastrup <dak@gnu.org> writes: > >> Doesn't need a separate repo: a server side commit hook refusing >> non-fast-forward pushes (more exactly: updating the reference after the >> commit object is already there) on any path not starting, say, with >> dev/, should be easily possible. > > Doesn't even need that as long as you can delete branches. Yes and no. Deleting and recreating a branch removes its reflog. If something goes wrong at the server side, it might be nice to have around. For basically ephemeral branches, this might be fine. For branches like master, one might want to disable branch deletion altogether except for possibly some privileged users. For, say, /dev/username/* one might want to restrict branch deletion/non-fastforward to the given username. A commit hook can do such things IIRC. -- David Kastrup ^ permalink raw reply [flat|nested] 42+ messages in thread
* Re: Patch queue management systems 2014-12-11 8:59 ` Steinar Bang 2014-12-11 11:52 ` Ted Zlatanov @ 2014-12-11 18:43 ` Achim Gratz 1 sibling, 0 replies; 42+ messages in thread From: Achim Gratz @ 2014-12-11 18:43 UTC (permalink / raw) To: emacs-devel Steinar Bang writes: > "username/feature" sounds like a good naming scheme and one that could > cut down on the inevitable clutter (implicit blame). I'd rather suggest features/<...>. Anyone not wanting to look at feature branches would simply not get those refs and everyone else can either import single feature branches or all of them with an additional line in the config file. > (and I still think having a separate feature branch git repository is a > good idea. If that repository resides on the same server and is created > with hardlinks to the real repo, it should also be cheap > disk-usage-wise, at least initially....) By using a branch prefix you can keep it in the same repository. There's a multitude of ways to have a feature repository share the objects with the main repository if you'd rather want that. Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Wavetables for the Terratec KOMPLEXER: http://Synth.Stromeko.net/Downloads.html#KomplexerWaves ^ permalink raw reply [flat|nested] 42+ messages in thread
end of thread, other threads:[~2014-12-11 18:43 UTC | newest] Thread overview: 42+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <546D2E75.6090701@cs.ucla.edu> [not found] ` <837fyp7tvi.fsf@gnu.org> [not found] ` <546E2899.4050702@cs.ucla.edu> [not found] ` <54756754.5090103@cs.ucla.edu> [not found] ` <jwvzjbehukc.fsf-monnier+emacsbugs@gnu.org> [not found] ` <54762721.4060908@cs.ucla.edu> [not found] ` <17zjb2h650.fsf@fencepost.gnu.org> [not found] ` <m27fy6rws3.fsf@lifelogs.com> [not found] ` <jwv8uimx7an.fsf-monnier+emacsbugs@gnu.org> [not found] ` <86mw71pl6d.fsf@yandex.ru> 2014-12-06 10:08 ` Patch queue management systems Eli Zaretskii 2014-12-06 13:12 ` Ted Zlatanov 2014-12-08 21:49 ` Thomas Koch 2014-12-08 23:10 ` Lars Magne Ingebrigtsen 2014-12-09 0:00 ` Lars Magne Ingebrigtsen 2014-12-09 0:32 ` Lars Magne Ingebrigtsen 2014-12-09 2:57 ` Stefan Monnier 2014-12-09 3:16 ` Lars Magne Ingebrigtsen 2014-12-09 12:37 ` Dmitry Gutov 2014-12-09 17:20 ` Lars Magne Ingebrigtsen 2014-12-09 20:40 ` Dmitry Gutov 2014-12-09 20:44 ` Lars Magne Ingebrigtsen 2014-12-09 21:32 ` Dmitry Gutov 2014-12-09 21:58 ` Lars Magne Ingebrigtsen 2014-12-09 21:57 ` Lars Magne Ingebrigtsen 2014-12-10 14:35 ` Ted Zlatanov 2014-12-08 22:24 ` Lars Magne Ingebrigtsen 2014-12-08 22:54 ` joakim 2014-12-09 5:31 ` Ivan Andrus 2014-12-09 0:06 ` Thien-Thi Nguyen 2014-12-09 2:54 ` Stefan Monnier 2014-12-09 3:15 ` Lars Magne Ingebrigtsen 2014-12-09 8:13 ` Stephen Leake 2014-12-09 13:03 ` Dmitry Gutov 2014-12-09 17:09 ` Eli Zaretskii 2014-12-09 17:17 ` Dmitry Gutov 2014-12-09 17:36 ` Eli Zaretskii 2014-12-09 19:31 ` Dmitry Gutov 2014-12-10 14:39 ` Ted Zlatanov 2014-12-11 8:59 ` Steinar Bang 2014-12-11 11:52 ` Ted Zlatanov 2014-12-11 12:38 ` Steinar Bang 2014-12-11 14:31 ` Ted Zlatanov 2014-12-11 14:39 ` David Kastrup 2014-12-11 14:50 ` Ted Zlatanov 2014-12-11 14:55 ` Andreas Schwab 2014-12-11 15:00 ` Ted Zlatanov 2014-12-11 15:26 ` David Kastrup 2014-12-11 15:33 ` Ted Zlatanov 2014-12-11 15:49 ` David Kastrup 2014-12-11 15:19 ` David Kastrup 2014-12-11 18:43 ` Achim Gratz
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.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).