1. mdelagra
  2. mercurial-reviewboard
Issue #6 invalid

Issue using branch option

Michael De Wildt
created an issue

postreview plugin, version 3.4.0 searching for changes abort: 00changelog.i@000000000000: ambiguous identifier!

In addition, if I take out the offending lines (367, 368), the branch search yields repoid 2 on my machine and then attempts to search for changes from there upwards. This is somewhat inefficient when the repository I am using has more than 45,000 change sets.

Comments (5)

  1. Michael De Wildt reporter

    I think I have misunderstood the option up until now.

    Am I correct in saying:

    The branch option creates a diff of *all* changesets on a named branch, not just the outgoing ones. So it could be used for if you create a new feature on a branch and wish to send all the changesets of said feature branch to review board?

    If this is the case I think it needs a safety to stop a user accidentally creating a huge diff if they use the option on a main line development branch. For example - If I use it on the "stable" branch of TortoseHg it will go off and create a diff of the entire TortiseHg codebase!

    Thoughts?

  2. mdelagra repo owner

    That's correct. The branch option will always search for the first parent on a different branch. You can control the leaf revision by passing in a revision number, but you can't control the parent revision. Also the --branch and --outgoingchanges options are mutually exclusive. You can see both the check_parent_options and find_branch_parent functions here:

    https://bitbucket.org/mdelagra/mercurial-reviewboard/src/4a58330e130e/mercurial_reviewboard/__init__.py#cl-344

    I don't know about adding a safety. Sometimes you might actually want to create a really big code review. I'm not sure how to differentiate between intentionally and unintentionally large diffs.

  3. Log in to comment