|
[Rivet] Various things for Rivetcholm cholm at nbi.dkFri Jun 30 13:44:53 BST 2017
Hi Andy et al, On 2017-06-30 13:59, Andy Buckley wrote: > Hi Christian & al, > > Thanks for your work on this. It's very comprehensive. No worries. > I would like to benefit from what you've done here: your "alt-devel" > strategy sounds very similar to the long-term developments that we've > had planned. Unfortunately those got held up -- for *years*! -- by the > technical work needed to handle events with systematics weight > vectors. In collaboration with Jan Fiete, Jochen, and Przemek we > recently added histogram preloading to the default branch, which will > become version 2.6.0, so some pieces are at least close to release. Right, I saw that. Note, however, for the delayed finalize to work, one needs something like what is done in include/Rivet/Tools/Runner.hh - that is, record the collision system so we can build a fake event to initialize the analyses on. Of course, analyses should be updated to use CounterPtr instead of member double to record sum of selected event weights (and similar). It will still work in the old set-up as-is, but will break in delayed-finalization settings. > As we've already discussed, some of your innovations aren't things > that we'll want to pull into the main Rivet development line, but > others (and the documentation bugfixes!) do sound useful. How do you > suggest that we selectively merge your changes in a git repository > into our Mercurial? I think there's a number of ways to do it :-) Of course, if you used Git we could have done it more or less with a simple pull/merge request :-) Here's the options as I see it - in no particular order. - You tell me which changes from https://gitlab.cern.ch/cholm/myrivet/compare/hg-tipp...master you would like to have, and I make a patch (or several) for the whole thing. You can also do that yourself - e.g., git diff hg-tipp..master include/Rivet/Analysis.hh > include_Rivet_Analysis_hh.patch This will of course intermingle code changes, documentation fixes, etc. -(*) You can clone my gitlab repo, make a local branch (say, "changes-to-take") and cherry pick commits from the master branch into that branch git clone https://cholm@gitlab.cern.ch/cholm/myrivet.git cd myrivet git checkout hg-tipp git branch changes-to-take git cherry-pick <commits> where the <commits> are the hash(es) on https://gitlab.cern.ch/cholm/myrivet/compare/hg-tipp...master that you want to take. Then make a diff or the like. -(*) Install hg-git, practically do as above but using the hg interface (graft instead of cherry-pick, etc.) Note, git branches are represented as hg bookmarks. For this, you'd clone your mercurial repo, and then add my git repo as another remote. Then pull in my changes, and cherry pick from the bookmark "master". Once you're happy you push to upstream. (*) Mind you, I have not tested this, so I cannot tell if it works. The last option is by far the nicest, since it keeps history, log messages, etc. I'm essentially on vacation from today until the 7. of August. I will read emails sporadically. Yours, -- Christian Holm Christensen ------------------------------------------------- Niels Bohr Institute, Blegdamsvej 17, DK-2100 Copenhagen http://cern.ch/cholm, +4524618591
More information about the Rivet mailing list |