On Wed, Jan 30, 2008 at 03:36:48PM -0500, Richard Lowe wrote:
> Dean Roehrich <Dean.Roehrich at sun.com> writes:
> 
> > On Wed, Jan 30, 2008 at 02:24:39PM -0500, Richard Lowe wrote:
> >> > Okay, so 'hg commit' will be naked, and won't have a cdm wrapper to make 
> >> > sure
> >> > the commit message is in the correct form (PSARC case, or CR number and
> >> > synopsis, on first line).  Is this covered by one of the commit hooks?
> >> 
> >> We really don't want to do that on commit, I don't think.
> >
> > If not on commit, then when?  I take it that on/nv users would expect to 
> > make
> > frequent use of cdm_recommit?  I'm not real clear on what is happening in
> > cdm_recommit...it looks like we're concatenating the log messages for 
> > several
> > changesets and then, what is squishdeltas doing?, maybe an 'hg revert', 'hg
> > strip', 'hg commit -A' kind of thing with the new, concatenated, log 
> > message?
> 
> I can't tell if you're asking about the implementation or its result.
> 
> The result is the same as you would have with 'wx redelget'

Unfortunately, I've never used wx (or cdm, ha!), so I'm struggling to decipher
things.


> The implementation forces a commit of the current workspace content
> over a different prior revision, then removes the prior set of
> changes.

...which would give a result similar to revert,strip,commit?

If you're not actually doing revert/strip/commit, then are we getting too cozy
with Mercurial internals?  How difficult will it be for individual people to
keep up with Mercurial releases and still use cdm?


> I don't think we would want to do comment checks on hg commit, because

I agree now, though our reasons differ.  I'd like cdm to do it, and I guess
you're saying cdm_comchk covers this.  But that means there must be a file
somewhere that contains the proposed log message, and the user must use
'hg commit -l'.  That's fine, and must be what the wx users are doing anyway.


> > It's not clear to me, yet, where this enforcement should happen.  I think it
> > makes sense for cdm to do this, given that the users will be taught to use a
> > bunch of cdm commands anyway; if the user had to do it with a commit hook 
> > then
> > what happens when they are working on different projects that require
> > different commit hooks (what if people on my team are also working on 
> > on/nv)?
> > The bullet-proofing would have to be on the gate; it would need to do some
> > verification, with the ability to abort the incoming push.
> 
> That's precisely what we hope to do (check such things in a gate
> hook).

I think most projects (ours, included) would probably expect to grab the one
being used for on/nv as a template for their own gates.


> I'd also like to check them pre-push, but that could cause problems
> for projects with different needs, yes.

I think I've talked myself out of that idea.  It's not bullet-proof, and if
it's not bullet-proof then it may as well be handled by cdm, and therefore
probably a pointless push-side hg hook.  Any hook should be positioned where
it will be bullet-proof and won't cause problems when that user is working on
other projects, and that means it's on the gate.

Dean

Reply via email to