Re: [Linux-ha-dev] Recommended Hg/Bugzilla policy

2006-11-15 Thread Lars Marowsky-Bree
On 2006-11-14T08:20:53, Alan Robertson [EMAIL PROTECTED] wrote:

 Basically none of it.
 
 If the change is already in the tree, and doesn't affect ANY files I
 touched, then it's completely broken for it to ask me to merge changes
 ALREADY IN THE TREE back into the tree.  I CANNOT POSSIBLY make a
 coherent comment on these changes I don't have the slightest clue about.
  They were already there - I'm just putting them back. 

This is not what is happening. Your changes and the one in the other
repo are both equivalent lines of development, but you want to merge
them into a single tip again - and end both independent lines.

This is where the merge is occuring; you're not putting them back,
you're merging them.

hg can't know that they are independent. Sure it sees they are not
touching the same files, but this isn't the same.

This follows from the distributed repo approach.

You don't need to comment on the specific changes merged. It's
sufficient to comment it with Merging my development branch with dev.
or some such.

The hg log still has the history for both branches, so you don't need to
repeat it.

  Just because the merge was done automatically, you still need to
  commit it to join the two (albeit short) lines of development
  together.
 Hg needs to get a clue:  No files in common == nothing to join.

Feel free to argue this position upstream, but I doubt it will fly.

 OK.  All I said was Merge???.  As long as merges aren't supposed to
 have bugzilla numbers on them, then I'm OK.

They don't have to, but they should say which branches you merged.

 So the process should be
 like this:
   make your changes
   test them
   commit them locally (and selectively)

You already created a new branch at this point, btw.

You don't tend to commit selectively with hg (or another distributed
SCM). You have independent changes in independent workspaces, and you
merge them as necessary.

   pull upstream changes
   commit them with a special comment - while carefully excluding
   any other changes in your workspace you don't want
   to accidentally commit as part of the merge.
   (FWIW: sounds error-prone to me)

Uhm. No. You pull, update, and merge. I don't see why you'd need to
exclude anything.

   push changes upstream - hoping no one else did any pushes
   since step 4.  If they did, then repeat from
   step 4 until it works.
   Many developers pushing near a deadline may make
   this take 2 or 3 tries to work.
 
 Is that right?

No. There's several steps in there I don't even get. But, you seem to be
operating on the assumption that merges are bad, and want to avoid them.
I don't see why - merges are a part of distributed SCMs. They don't need
to be avoided.

 So, the only thing I got wrong here was the text of the comment.  And,
 it wasn't that far off.

Andrew has been asking for better comments on merges several times on
the list though. It doesn't really work well to propose changes to the
commit policies and ignore those improvements already made ;-) Maybe you
simply missed those mails.

 I can see how that tool helps.  I can't see why I need to re-comment on
 changes that have already been commented on, and I have no idea about.

Again, you don't.

 I can't see why if there are ZERO files in common, why I have to remerge
 them.

Because zero files in common does not equal same line of
development.


Sincerely,
Lars Marowsky-Brée

-- 
SUSE Labs, Research and Development
SUSE LINUX Products GmbH - A Novell Business -- Charles Darwin
Ignorance more frequently begets confidence than does knowledge.

___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: [Linux-ha-dev] Recommended Hg/Bugzilla policy

2006-11-14 Thread Alan Robertson
Andrew Beekhof wrote:
 On 11/14/06, Alan Robertson [EMAIL PROTECTED] wrote:
 Andrew Beekhof wrote:
  In light of this thread, I was somewhat surprised to see this:
 http://hg.linux-ha.org/dev?cs=5efbd40c99db


 Me too.  If you'd have been around I'd have tried to find out what this
 was about.

 What happened was this:

 I did a commit.
 I tried to push to -dev
 I was informed that I needed to pull first
 I did the pull from -dev
 I was informed I needed to merge some things together.
 I issued the merge command.
 There were no conflicts, so I didn't have to do anything
 manually.
 Then I had to commit the things I had to merge and push
 them back to -dev.

 I have NO IDEA what this was about.  It sounds a bit
 like a bug to me... :-(

 Can anyone give me a clue about this?
 
 Which part dont you understand?

Basically none of it.

If the change is already in the tree, and doesn't affect ANY files I
touched, then it's completely broken for it to ask me to merge changes
ALREADY IN THE TREE back into the tree.  I CANNOT POSSIBLY make a
coherent comment on these changes I don't have the slightest clue about.
 They were already there - I'm just putting them back.  OK, this is a
little broken.  And, I have to re-explain what these changes do???  This
is never going to happen.  I have no idea what these changes do - and no
way to find out.  If the merge can happen automatically, then the
comments need to happen automatically too...

If I put the bugzilla number for that bug, then you'll mistakenly think
I made those changes, and that they have something to do with that bug -
when neither is true.  This is a HUGE breakage.  But, maybe I need to
know how to properly comment on such merge changes...

 Just because the merge was done automatically, you still need to
 commit it to join the two (albeit short) lines of development
 together.

Hg needs to get a clue:  No files in common == nothing to join.

 I've attached a jpeg of roughly what's happening...
 
 Each circle is a commit.
 A, B : commits common to both repositories
 C, D : commits made since your last pull
 E, F : your commits
 
 G is the merge commit for which the message should read something like:
   Hg: Merge local changes back into dev
 or:
   Hg: Merge crm-stable into dev
 or:
   Hg: Merge dev back into crm-stable

OK.  All I said was Merge???.  As long as merges aren't supposed to
have bugzilla numbers on them, then I'm OK.   So the process should be
like this:
make your changes
test them
commit them locally (and selectively)
pull upstream changes
commit them with a special comment - while carefully excluding
any other changes in your workspace you don't want
to accidentally commit as part of the merge.
(FWIW: sounds error-prone to me)
push changes upstream - hoping no one else did any pushes
since step 4.  If they did, then repeat from
step 4 until it works.
Many developers pushing near a deadline may make
this take 2 or 3 tries to work.

Is that right?

So, the only thing I got wrong here was the text of the comment.  And,
it wasn't that far off.

 On a related note, this can be a particularly useful command:
hg log -M -r STABLE-2.0.7:tip  --template *
 {desc|firstline|strip} - {author}\n
 
 ...particularly if we prefix the first line of the commit with the
 name of the affected  heartbeat subsystem and the bug being fixed.
 
 eg. here are all the bugzillas we've fixed since 2.0.7
 
 # hg log -M -r STABLE-2.0.7:tip  --template *
 {desc|firstline|strip}\n | grep OSDL
 * OSDL 1412: Remove reliance on farside_pid by stonithd
 * RA: Fix for OSDL 1422 - refresh interval off by a factor of 1000
 * CIB: Fix for OSDL #1432 - update_attr() causes attrd to hang at
 shutdown when there is no DC
 * CIB: Fix for OSDL #1385 - Corrupted config file prevents heartbeat
 restart
 * OSDL #1441: Spec file fixes
 * OSDL #1421: Improved handling when timeout  start_delay
 * OSDL #1435 - Fix TE regression, never update the CIB with
 unconfirmed stop actions
 
 
 i'm sure people can see how this might make writing change logs a
 little easier - provided we write good commit messages (especially
 since with Hg there is one log per changeset instead of per file per
 changeset).

I can see how that tool helps.  I can't see why I need to re-comment on
changes that have already been commented on, and I have no idea about.
I can't see why if there are ZERO files in common, why I have to remerge
them.

Hg is nice in lots of ways.  Being fast is high on the list.  But, this
business is broken, IMHO.

Please understand that although I'm irritated, my irritation isn't at
the people on this mailing list.


-- 
Alan Robertson [EMAIL PROTECTED]

Openness is the foundation and 

Re: [Linux-ha-dev] Recommended Hg/Bugzilla policy

2006-11-13 Thread Lars Marowsky-Bree
On 2006-11-13T16:51:07, Alan Robertson [EMAIL PROTECTED] wrote:

 Me too.  If you'd have been around I'd have tried to find out what this
 was about.
 
 What happened was this:
 
   I did a commit.
   I tried to push to -dev
   I was informed that I needed to pull first
   I did the pull from -dev
   I was informed I needed to merge some things together.
   I issued the merge command.
   There were no conflicts, so I didn't have to do anything
   manually.
   Then I had to commit the things I had to merge and push
   them back to -dev.

I've had this happen to myself. What happens is that your commit is
relative to an older revision (ie, one which has several children), and
not relative to the tip.

If you commit at that stage, you create a branch in the upstream repo
(which is how I screwed up ;-); so merge first.

The sequence you went through is actually correct, but the merge message
is ... uhm ... ;-)

   I have NO IDEA what this was about.  It sounds a bit
   like a bug to me... :-(

It's not a bug (I once had a branch I couldn't merge back myself; that
probably was a bug ;-), but a different modus operandi.

Only when you commit and push relative to the tip can you avoid this,
which isn't likely to happen if the changes take a while to work out.
So, this is something to get used to: history isn't always linear.

Sincerely,
Lars 

-- 
SUSE Labs, Research and Development
SUSE LINUX Products GmbH - A Novell Business -- Charles Darwin
Ignorance more frequently begets confidence than does knowledge.

___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: Re: [Linux-ha-dev] Recommended Hg/Bugzilla policy

2006-11-11 Thread Andrew Beekhof

In light of this thread, I was somewhat surprised to see this:
   http://hg.linux-ha.org/dev?cs=5efbd40c99db

Particularly given some other emails I have sent to this list on the topic.

On 11/9/06, Alan Robertson [EMAIL PROTECTED] wrote:

Lars Marowsky-Bree wrote:
 On 2006-11-07T08:17:10, Alan Robertson [EMAIL PROTECTED] wrote:

 I'd like to suggest what I think is a simple but useful policy for
 dealing with commits to Mercurial which correspond to bug reports.

 I've tried getting people to agree to bugzilla  SCM policies/guidelines
 for more than several months, but in the past, nobody ever sticked to
 them. ;-)

 So, yes, I think including the bug number in the commits in the first
 line is a great idea, and I love to see that you're finally agreeing.

I never disagreed on this.  But, I'm always happy to give you a reason
to complain ;-)

 3) For each bug which has been marked as fixed, the changeset submitted
to -dev should be indicated by URL.  An example of what I mean can be
found in OSDL bugzilla 1443.

 Yes, providing the backlink is good, but having it in the commit message
 is what I consider most important.

http://www.osdl.org/developer_bugzilla/show_bug.cgi?id=1443
Note that in this case, it took me two changesets to really resolve
the bug.  Both are indicated in the bugzilla.  This bug doesn't
follow my suggested guidelines perfectly - in the 2nd changeset it
just says Bugzilla 1443 instead of OSDL 1443.  The appearance
of the # sign would also be an improvement, I think...

 I don't think we really need the #. It makes cutpaste more annoying (#
 is included if you double-click on the word), and and everyone knows
 that, well, it is a number, so it is sort-of redundant.

 In an ideal world these things could be followed consistently enough
 that one could write a tool that given any changeset could find the
 bugzilla for it and vice versa.  But, failing that, it would be good if
 humans could do it quickly and easily.

 Yes.

 I'd also like to point out that commit messages of user-visible changes
 should always include an update to the changelog in the spec file.

Sounds really good to me, since otherwise I have to put them in the
ChangeLog myself - and that's my least favorite part of this release
process.

--
Alan Robertson [EMAIL PROTECTED]

Openness is the foundation and preservative of friendship...  Let me
claim from you at all times your undisguised opinions. - William
Wilberforce
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: [Linux-ha-dev] Recommended Hg/Bugzilla policy

2006-11-09 Thread Alan Robertson
Lars Marowsky-Bree wrote:
 On 2006-11-07T08:17:10, Alan Robertson [EMAIL PROTECTED] wrote:
 
 I'd like to suggest what I think is a simple but useful policy for
 dealing with commits to Mercurial which correspond to bug reports.
 
 I've tried getting people to agree to bugzilla  SCM policies/guidelines
 for more than several months, but in the past, nobody ever sticked to
 them. ;-)
 
 So, yes, I think including the bug number in the commits in the first
 line is a great idea, and I love to see that you're finally agreeing.

I never disagreed on this.  But, I'm always happy to give you a reason
to complain ;-)

 3) For each bug which has been marked as fixed, the changeset submitted
to -dev should be indicated by URL.  An example of what I mean can be
found in OSDL bugzilla 1443.
 
 Yes, providing the backlink is good, but having it in the commit message
 is what I consider most important.
 
http://www.osdl.org/developer_bugzilla/show_bug.cgi?id=1443
Note that in this case, it took me two changesets to really resolve
the bug.  Both are indicated in the bugzilla.  This bug doesn't
follow my suggested guidelines perfectly - in the 2nd changeset it
just says Bugzilla 1443 instead of OSDL 1443.  The appearance
of the # sign would also be an improvement, I think...
 
 I don't think we really need the #. It makes cutpaste more annoying (#
 is included if you double-click on the word), and and everyone knows
 that, well, it is a number, so it is sort-of redundant.
 
 In an ideal world these things could be followed consistently enough
 that one could write a tool that given any changeset could find the
 bugzilla for it and vice versa.  But, failing that, it would be good if
 humans could do it quickly and easily.
 
 Yes.
 
 I'd also like to point out that commit messages of user-visible changes
 should always include an update to the changelog in the spec file.

Sounds really good to me, since otherwise I have to put them in the
ChangeLog myself - and that's my least favorite part of this release
process.

-- 
Alan Robertson [EMAIL PROTECTED]

Openness is the foundation and preservative of friendship...  Let me
claim from you at all times your undisguised opinions. - William
Wilberforce
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: [Linux-ha-dev] Recommended Hg/Bugzilla policy

2006-11-08 Thread Lars Marowsky-Bree
On 2006-11-07T08:17:10, Alan Robertson [EMAIL PROTECTED] wrote:

 I'd like to suggest what I think is a simple but useful policy for
 dealing with commits to Mercurial which correspond to bug reports.

I've tried getting people to agree to bugzilla  SCM policies/guidelines
for more than several months, but in the past, nobody ever sticked to
them. ;-)

So, yes, I think including the bug number in the commits in the first
line is a great idea, and I love to see that you're finally agreeing.

 3) For each bug which has been marked as fixed, the changeset submitted
to -dev should be indicated by URL.  An example of what I mean can be
found in OSDL bugzilla 1443.

Yes, providing the backlink is good, but having it in the commit message
is what I consider most important.

http://www.osdl.org/developer_bugzilla/show_bug.cgi?id=1443
Note that in this case, it took me two changesets to really resolve
the bug.  Both are indicated in the bugzilla.  This bug doesn't
follow my suggested guidelines perfectly - in the 2nd changeset it
just says Bugzilla 1443 instead of OSDL 1443.  The appearance
of the # sign would also be an improvement, I think...

I don't think we really need the #. It makes cutpaste more annoying (#
is included if you double-click on the word), and and everyone knows
that, well, it is a number, so it is sort-of redundant.

 In an ideal world these things could be followed consistently enough
 that one could write a tool that given any changeset could find the
 bugzilla for it and vice versa.  But, failing that, it would be good if
 humans could do it quickly and easily.

Yes.

I'd also like to point out that commit messages of user-visible changes
should always include an update to the changelog in the spec file.


Sincerely,
Lars

-- 
SUSE Labs, Research and Development
SUSE LINUX Products GmbH - A Novell Business -- Charles Darwin
Ignorance more frequently begets confidence than does knowledge.

___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: [Linux-ha-dev] Recommended Hg/Bugzilla policy

2006-11-07 Thread Alan Robertson
Zhen Huang wrote:
 I think it's a good idea to unify the commit comments. I would like to
 follow them.
 
 BTW, sorry for the unclear comment GUI: Fix OSDL 1415: use
 xxx-xxx-xxx to replace xxx_xxx_xxx
 (http://hg.linux-ha.org/dev?cmd=changeset;node=64516dbe675b).
 It should be use new attribute name like xxx-xxx (like
 stonith-enabled) to replace old name xxx_xxx(like stonith_enabled)

Strangely enough, I figured it out anyway ;-)

I wasn't picking on you -- just making a suggestion to see what everyone
thinks.


-- 
Alan Robertson [EMAIL PROTECTED]

Openness is the foundation and preservative of friendship...  Let me
claim from you at all times your undisguised opinions. - William
Wilberforce
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/