mainSavannah Administration - Support: sr #109047, Admin changes for git migration of...

 
 

sr #109047: Admin changes for git migration of "lmi"

Submitter:  Greg Chicares <chicares>
Submitted:  Mon 23 May 2016 08:59:17 PM UTC
   
 
Category:  Source code repositories - developer access Priority:  5 - Normal
Severity:  3 - Normal Status:  Done
Privacy:  Public Assigned to:  rwp
Operating System:  None Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Mon 01 Aug 2016 11:09:32 AM UTC, comment #11: 

First of all, I can now confirm that the subject in the notifications has been fixed (see e.g. http://lists.nongnu.org/archive/html/lmi-commits/2016-07/msg00042.html), thanks again!

As for upgrading to the latest git-multimail: I'm ready to serve as guinea pig for this if it can be useful, but it's not really urgent now that we have nicely working notifications anyhow, so please feel free to do it if you'd like to test the upgrade, but we definitely could continue using the current version too.

Vadim Zeitlin <zeitlin>
Sun 31 Jul 2016 11:55:36 PM UTC, comment #10: 

I am sure that someone will post with the URL for looking at the config. But yes changes still need to go through one of the savannah hackers.

vcs:/srv/git# cat lmi.git/config
[core]
        repositoryformatversion = 0
        filemode = true
        bare = true
        sharedrepository = 2
[receive]
        denyNonFastforwards = true
[gitcvs "pserver"]
        enabled = 1
[gitcvs "ext"]
        enabled = 0
[gitcvs]
        dbname = %G/gitcvs-db/sqlite
[multimailhook]
        mailinglist = -email is unavailable-

Perhaps it will help to show the current snapshot of things.

vcs:/srv/git# find $(find . -maxdepth 3 -name hooks) -name git_multimail.py -ls
7752718   92 -rwxr-xr-x   1 root     root        91100 Dec  1  2014 ./emacs.git/hooks/git_multimail.py
6687098   92 -rwxr-xr-x   1 root     root        91100 Jul  6 20:58 ./test-rwp.git/hooks/git_multimail.py
6690933   92 -rwxr-xr-x   1 root     root        91100 Jul 31 21:16 ./lmi.git/hooks/git_multimail.py
6745120   92 -rwxr-xr-x   1 root     root        91100 Jul 24 23:14 ./adonthell/adonthell-wastesedge.git/hooks/git_multimail.py
5933781    0 lrwxrwxrwx   1 root     root           53 Nov 19  2014 ./guile.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
6722829    0 lrwxrwxrwx   1 root     root           53 Mar  5  2014 ./noalyss.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
6745131   92 -rwxr-xr-x   1 root     root        91100 Jul 24 23:17 ./adonthell.git/hooks/git_multimail.py
3371466    0 lrwxrwxrwx   1 root     root           53 Jun  5  2015 ./guix/gnunet.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
3371465    0 lrwxrwxrwx   1 root     root           53 May 11  2015 ./guix/dhcp.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
7378704    0 lrwxrwxrwx   1 root     root           53 Nov 19  2014 ./guix/maintenance.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
5446536    0 lrwxrwxrwx   1 root     root           53 Nov 19  2014 ./guix/guix-artwork.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
8016381    0 lrwxrwxrwx   1 root     root           53 May 12  2014 ./shepherd.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
6717102    0 lrwxrwxrwx   1 root     root           53 Mar  6  2014 ./gnokii.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
4900210    0 lrwxrwxrwx   1 root     root           53 Nov 19  2014 ./guix.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
6687998   92 -rwxr-xr-x   1 root     root        91100 Jul  6 20:48 ./gnuastro.git/hooks/git_multimail.py
6716594   92 -rwxr-xr-x   1 root     root        91100 Dec  1  2014 ./emacs/elpa.git/hooks/git_multimail.py
6720022    0 lrwxrwxrwx   1 root     root           53 Jan 29  2014 ./groff.git/hooks/git_multimail.py -> /usr/src/git-multimail/git-multimail/git_multimail.py
3240320   92 -rwxr-xr-x   1 root     root        91100 Aug  2  2015 ./freetype/freetype2-demos.git/hooks/git_multimail.py
2978186   92 -rwxr-xr-x   1 root     root        91100 Aug  2  2015 ./freetype/freetype2.git/hooks/git_multimail.py

vcs:/srv/git# find $(find $(find . -maxdepth 3 -name hooks) -name git_multimail.py -print | xargs -L1 dirname) -name post-receive -ls
7752724    4 -rwxr-xr-x   1 root     root         1677 Dec  2  2014 ./emacs.git/hooks/post-receive
6714787    4 -rwxr-xr-x   1 root     root         1660 Jul  6 20:58 ./test-rwp.git/hooks/post-receive
6690957    4 -rwxr-xr-x   1 root     root         1683 May 25 07:06 ./lmi.git/hooks/post-receive
6716500    4 -rwxr-xr-x   1 root     root         1695 Jul 24 23:16 ./adonthell/adonthell-wastesedge.git/hooks/post-receive
5933802    4 -rwxr-xr-x   1 root     root         1551 Nov 19  2014 ./guile.git/hooks/post-receive
6723307    4 -rwxr-xr-x   1 root     root         1583 Mar  5  2014 ./noalyss.git/hooks/post-receive
6745137    4 -rwxr-xr-x   1 root     root         1695 Jul 24 23:17 ./adonthell.git/hooks/post-receive
3371498    4 -rwxr-xr-x   1 root     root         1549 May 11  2015 ./guix/gnunet.git/hooks/post-receive
3371477    4 -rwxr-xr-x   1 root     root         1549 May 11  2015 ./guix/dhcp.git/hooks/post-receive
7378726    4 -rwxr-xr-x   1 root     root         1549 Nov 19  2014 ./guix/maintenance.git/hooks/post-receive
5446553    4 -rwxr-xr-x   1 root     root         1549 Nov 19  2014 ./guix/guix-artwork.git/hooks/post-receive
8016400    4 -rwxr-xr-x   1 root     root         1565 May 12  2014 ./shepherd.git/hooks/post-receive
6719764    4 -rwxr-xr-x   1 root     root         1577 Mar  6  2014 ./gnokii.git/hooks/post-receive
4900219    4 -rwxr-xr-x   1 root     root         1565 Jul 31 21:09 ./guix.git/hooks/post-receive
6688762    4 -rwxr-xr-x   1 root     root         1687 May 18 03:14 ./gnuastro.git/hooks/post-receive
6716599    4 -rwxr-xr-x   1 root     root         1677 Dec  2  2014 ./emacs/elpa.git/hooks/post-receive
6720509    4 -rwxr-xr-x   1 root     root         1518 Feb 16  2014 ./groff.git/hooks/post-receive
3240323    4 -rwxrwxr-x   1 root     root         1689 Jul 30  2015 ./freetype/freetype2-demos.git/hooks/post-receive
2978189    4 -rwxrwxr-x   1 root     root         1689 Jul 30  2015 ./freetype/freetype2.git/hooks/post-receive

All of them use a post-receive with customizations that imports git_multimail.py.  Some of them have a fixed snapshot.  (Which is my known working state.  I just set lmi that way.)  And some of them are symlinked to a shared copy.

The failing subject one is where I had set up a clone with the symlink to the shared copy.  But apparently the post-receive I grabbed and modified doesn't work with it and causes the subject to be empty.  Soo...  To immediately address the problem of the missing subject lines I set lmi up with the snapshot combination that I know is working for another project.

I would rather like to update the shared copy with a git pull but that will have immediate effect upon all of the symlinked copies.  Which means that each of those that have been working could potentially stop working.  Or their behavior might change where someone wouldn't like the result.  So each would need to be tested and verified if doing that.

I would rather set up a version B next to it and update it.  Then could walk through the projects one by one and update and verify each that they are working okay.  Can probably figure out what is different in the post-receive and then all of them will be the same.  But it still would need to be done.

But anyway... That is why things are lagging behind on this part of things. But it is quite easy to update to the newest snapshot available now for your project lmi and work through the details with this project.  That is fine.  And good because then could update the other projects after working through the details here.

Bob Proulx <rwp>
Site Administrator
Sun 31 Jul 2016 09:37:12 PM UTC, comment #9: 

It would definitely be useful to see the configuration used, although I guess I would still need to ask you to make any changes to it.

As for combineWhenSingleCommit, I still have no idea: it's true that it was added only slightly more than a year ago, i.e. relatively recently, see https://github.com/git-multimail/git-multimail/commit/b14cae61abc9dc40c25613ab8dcb281ac3bd170a. But according to the commit message, the behaviour before this option was added had been to always combine the emails for a single commit, so I don't understand how is it possible to get two of them.

Anyhow, the most important thing was fixing the subject, so thanks a lot for doing this! I haven't tested it yet as commits need to be reviewed first, but we should be able to see if (that?) it works soon enough. Thanks again!

Vadim Zeitlin <zeitlin>
Sun 31 Jul 2016 09:24:10 PM UTC, comment #8: 

No on setting multimailhook.combineWhenSingleCommit. When I grep the source of git_multimail.py I see no reference to that variable anywhere. So setting it would have no effect. That is probably a feature available in a newer version than any of the ones currently in use. Because looking at the upstream I see many changes in the recent history.

I fear doing a blanket update because in order to satisfy everyone's needs we are importing the python module into a customized post-receive hook.  I fear that a blanket update of the git_multimail.py would probably break that.  But I am happy to try it for your project.  Work through the updates needed there.  And then can backport those changes to other projects.

I recall that there is some URL that allows people to see the contents of the $project.git directories.  But a search for a way now I couldn't find one.  Otherwise I would point you to it and you could see your own configuration more easily without needing me as a middle man for it.

Bob Proulx <rwp>
Site Administrator
Sun 31 Jul 2016 09:18:16 PM UTC, comment #7: 

By dead reckoning the subject line problem should be fixed now.

Bob Proulx <rwp>
Site Administrator
Sun 31 Jul 2016 08:42:33 PM UTC, comment #6: 

Drat! I should have checked the mail archive afterward. That empty subject is a problem that also occurred to another project. I found a different combination of files was needed than what I set up to make that work. Fixing that problem now.

Bob Proulx <rwp>
Site Administrator
Sat 30 Jul 2016 08:56:14 PM UTC, comment #5: 

Bob, if you already use git-multimail, do you set multimailhook.combineWhenSingleCommit to false explicitly in git config file by chance? Because by default this option should be set to true and we shouldn't be getting two emails for a single commit, yet this is what happens to us, see e.g. the thread at http://lists.nongnu.org/archive/html/lmi-commits/2016-07/msg00029.html for an example.

Also, I have no idea why do all the individual commit emails don't have any subject (again, please see the link above for an example). It would be really great if this could be fixed because this makes these emails much less useful than they could be...

Thanks in advance!

Vadim Zeitlin <zeitlin>
Mon 25 Jul 2016 02:15:36 AM UTC, comment #4: 

The script we are using to send commmit messages is the one from https://github.com/git-multimail/git-multimail .  That one works the best of the various ones we have seen so far.  If you think there is a better one then I am happy to switch you over to it. Or if you want to suggest a different configuration that is fine too.

Bob Proulx <rwp>
Site Administrator
Sun 29 May 2016 01:19:19 PM UTC, comment #3: 

I agree that a separate summary message is helpful for a string
of commits. For non-summary messages, it would be nice to use
the first line of the commit message as the subject, e.g. here:


http://lists.nongnu.org/archive/html/lmi-commits/2016-05/index.html
| May 27, 2016
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] (no subject), Greg Chicares, 21:28
| [lmi-commits] [lmi] master updated (0798ad3 -> b27a3af), Greg Chicares, 21:28


Greg Chicares <chicares>
Thu 26 May 2016 02:08:59 PM UTC, comment #2: 

Bob: I, for one, wholeheartedly support the idea of sending a separate summary message because I know that it's quite useful, from past experience with the other projects.

However I do think it's not very useful to send 2 messages when there is just a single commit. I don't know which script do you use for generating notifications, but, after trying quite a few of them about a year ago, I chose https://github.com/git-multimail/git-multimail for my personal projects because it seemed better than the alternatives from all points of view. And this one does everything right: it can be configured to send a single message for just a single commit, but sends an entire thread with a summary message at the root and "[1/N]" children posts when committing more than one of them. If you're annoyed by the questions about multiple commits, switching to git-multimail might be a good way to get rid of them once and for all.

Vadim Zeitlin <zeitlin>
Wed 25 May 2016 07:15:05 AM UTC, comment #1: 

Congratulations on your switch to git.

I have updated your project description.  There isn't an interface to do so yourself.  But we like to see the descriptions filled in so writing Savannah Support is the right thing to do.

I have no idea why cgit reports "foo" for about. It does that for all of the projects I spot checked. I will put that on the todo list that as something to figure out.

I set up git commit diffs to go to your mailing list.  Let me know if things are not right.  It is currently somewhat manual to set up.

Git commit diff messages are independent of svn.  Unless you ask nothing is normally done to disable the subversion repository and associated commit messages.

Let me also add that everyone who turns on git commit diff messages then try one single commit and push and are shocked, shocked, to see two message diffs be sent.  The first is a summary of all of the commits in the set.  The second is that single commit.  And then they want that to be reduced.  But let me suggest that you leave that setting in place for a while of real use.  Because normally there will be longer strings of commits pushed.  In that larger case you still get one summary message for possibly a long list in the push.  Then you get one for each of the individual commits.  It is in that case that the summary is most useful.

Give it a try.  If you don't like the summary in those cases then let me know.  I forget but I am pretty sure that can be disabled individually.

Bob Proulx <rwp>
Site Administrator
Mon 23 May 2016 08:59:17 PM UTC, original submission:  

I've migrated nongnu/lmi from svn to git; please make these
two changes, or let me know me how I can make them myself:

1 Reconfigure this existing list:
     https://lists.nongnu.org/mailman/listinfo/lmi-commits
to send notifications of git changes (svn changes can be
ignored from now on if that makes this change easier).

2 Add some information that 'cgit' expects:

  description = "Let me illustrate... creates life insurance illustrations"
  owner       = "Gregory W. Chicares"

Also, I'm not sure what 'cgit' variable is used here:
  http://git.savannah.gnu.org/cgit/lmi.git/about/
but the 'description' above would be nicer than "foo"
as it presently shows.

Greg Chicares <chicares>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by zeitlin
  • -email is unavailable- added by rwp (Posted a comment)
  • -email is unavailable- added by chicares (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2016-07-30 zeitlin Carbon-Copy- Added -email is unavailable-
    2016-05-25 rwp StatusNone Done
        Assigned toNone rwp
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.13-0329.
    Corresponding source code