The CLOSED_IS_PRESENT changes look correct to me.

>>>>> "Mark" == Mark J Nelson <Mark.J.Nelson at Sun.COM> writes:

Mark> Yeah, since I only missed two previously, I went ahead and stayed
Mark> with $CODEMGR_WS/usr/closed for these.

Okay.

Mike> Second issue: can you show an example of the mail message with the
Mike> new merge warning/error messages?

Mark> Attached.

Thanks; comments below.

Mark> I still have it in my head that using nightly to do automated
Mark> bringovers into a workspace known to have local changes is not
Mark> common practice.

It's possible I'm an oddball.  But it's mighty tempting to have
nightly(1) do the clobber, bringover/pull, and build, so that they can
all happen right after each other (no waiting for the user to notice
that a phase has finished), and so that the clobber build works
correctly.

I guess I can live with an assumption that all builds happen in a child.
This should be called out in flag-day email (unless it has been
mentioned already and I missed it).

After looking at the bringover output, I do think it's noisy (e.g., the
"searching..." and "adding..." messages from Mercurial).  And in the
failure case, I expect users to get confused by the "hg update" and "hg
merge" suggestions that Mercurial prints.

> ==== BRINGOVER LOG ====
> 
> pulling from /home/mjnelson/tmp/nightly_test_repos/hgparent
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> not updating, since new heads added
> (run 'hg heads' to see heads, 'hg merge' to merge)
> pulling from /home/mjnelson/tmp/nightly_test_repos/hgparent/usr/closed
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> not updating, since new heads added
> (run 'hg heads' to see heads, 'hg merge' to merge)
> merging usr/parentfile
> merging usr/parentfile failed!
> 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
> There are unresolved merges, you can redo the full merge using:
>   hg update -C 4
>   hg merge 5
> ***
> *** In repository /home/mjnelson/tmp/nightly_test_repos/onnv-bugfixes:
> ***
> *** nightly was unable to automatically merge your changes.
> *** Run hg merge manually, then restart nightly with -n.
> ***
> merging closedfile
> 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
> (branch merge, don't forget to commit)
> ***
> *** In repository 
> /home/mjnelson/tmp/nightly_test_repos/onnv-bugfixes/usr/closed:
> ***
> *** nightly successfully merged your changes.  This means that your working
> *** directory has been updated, but those changes are not yet committed.
> *** After nightly completes, you should validate the results of the merge,
> *** then use hg commit manually.
> ***
> trouble with bringover, quitting at Wed Jul 30 14:58:00 MDT 2008.

We could make the failure case less confusing by changing

    *** Run hg merge manually, then restart nightly with -n.

to something like

    *** Redo the full merge manually (as above), then restart nightly with -n.

A couple other fairly simple suggestions for making the output visually
cleaner:

First, organize the output by repo, rather than by phase (pull/merge).

Second, separate the logs for each repo, e.g., with a blank line.

This would give us something like

    ==== BRINGOVER LOG ====
    
    pulling from /home/mjnelson/tmp/nightly_test_repos/hgparent
    searching for changes
    adding changesets
    adding manifests
    adding file changes
    added 1 changesets with 1 changes to 1 files (+1 heads)
    not updating, since new heads added
    (run 'hg heads' to see heads, 'hg merge' to merge)
    merging usr/parentfile
    merging usr/parentfile failed!
    0 files updated, 0 files merged, 0 files removed, 1 files unresolved
    There are unresolved merges, you can redo the full merge using:
      hg update -C 4
      hg merge 5
    ***
    *** In repository /home/mjnelson/tmp/nightly_test_repos/onnv-bugfixes:
    ***
    *** nightly was unable to automatically merge your changes.
    *** Redo the full merge manually (as above), then restart nightly with -n.
    ***

    pulling from /home/mjnelson/tmp/nightly_test_repos/hgparent/usr/closed
    searching for changes
    adding changesets
    adding manifests
    adding file changes
    added 1 changesets with 1 changes to 1 files (+1 heads)
    not updating, since new heads added
    (run 'hg heads' to see heads, 'hg merge' to merge)
    merging closedfile
    0 files updated, 1 files merged, 0 files removed, 0 files unresolved
    (branch merge, don't forget to commit)
    ***
    *** In repository 
/home/mjnelson/tmp/nightly_test_repos/onnv-bugfixes/usr/closed:
    ***
    *** nightly successfully merged your changes.  This means that your working
    *** directory has been updated, but those changes are not yet committed.
    *** After nightly completes, you should validate the results of the merge,
    *** then use hg commit manually.
    ***

    trouble with bringover, quitting at Wed Jul 30 14:58:00 MDT 2008.

We can deal with the chatter from Mercurial, and hopefully eliminate the
need for the "***", some other time.

mike

Reply via email to