Skip to content
Snippets Groups Projects
  1. Feb 13, 2014
    • Simon Heimberg's avatar
      rebase: do not raise an UnboundLocalError when called wrong (issue4106) · 9155257e6330
      Simon Heimberg authored
      When the base is not found, we should not raise a traceback about a not defined
      variable. This hides the real problem: the function rebasenode was (probably)
      called wrong.
      
      An AssertionError is raised to highlight that the caller of the function did
      something wrong.
      
      An alternative approach is to only assign None to the variable "base" and let
      the merge mechanism raise an abort message. This was the behaviour for this
      case before ad9db007656f. But the only known case for this problem is when an
      extension calls this function wrong. An AssertionError makes this clearer than
      an abort message. When a different case is detected, the behaviour can be
      improved then.
      9155257e6330
  2. Feb 28, 2014
  3. Feb 26, 2014
    • Pierre-Yves David's avatar
      resolve: use "other" changeset from merge state (issue4163) · ba619c50a355
      Pierre-Yves David authored
      We can use the "other" data from the recorded merge state instead of inferring
      what the other could be from working copy parent. This will allow resolve to
      fulfil its duty even when the second parent have been dropped.
      
      Most direct benefit is fixing a regression in backout.
      ba619c50a355
    • Pierre-Yves David's avatar
      merge: add "other" file node in the merge state file · 3678707e4017
      Pierre-Yves David authored
      This data is mostly redundant with the "other" changeset node (+ other changeset
      file path). However, more data never hurt.
      
      The old format do not store it so this require some dancing to add and remove it
      on demand.
      3678707e4017
  4. Feb 27, 2014
    • Pierre-Yves David's avatar
      merge: infer the "other" changeset when falling back to v1 format · 303cbfe3dcc8
      Pierre-Yves David authored
      When we have to fallback to the old version of the file, we infer the
      "other" from current working directory parent. The same way it is currently done
      in the resolve command. This is know to have shortcoming… but we cannot do
      better from the data contained in the old file format. This is actually the
      motivation to add this new file format.
      303cbfe3dcc8
  5. Feb 26, 2014
    • Pierre-Yves David's avatar
      merge: record the "other" node in merge state · 02c60e380fd0
      Pierre-Yves David authored
      We need to record the merge we were merging with. This solve multiple
      bug with resolve when dropping the second parent after a merge. This
      happen a lot when doing special merge (overriding the ancestor).
      Backout, shelve, rebase, etc. can takes advantage of it.
      
      This changeset just add the information in the merge state. We'll use it in the
      resolve process in a later changeset.
      02c60e380fd0
    • Pierre-Yves David's avatar
      merge: introduce new format for the state file · 2b7d54e929b4
      Pierre-Yves David authored
      This new format will allow us to address common bugs while doing special merge
      (graft, backout, rebase…) and record user choice during conflict resolution.
      
      The format is open so we can add more record for future usage.
      
      This file still store hexified version of node to help human willing to debug
      it by hand. The overhead or oversize are not expected be an issue.
      
      The old format is still used. It will be written to disk along side the newer
      format. And at parse time we detect if the data from old version of the
      mergestate are different from the one in the new version file. If its the same,
      both have most likely be written at the same time and you can trust the extra
      data from the new file. If it differs, the old file have been written by an
      older version of mercurial that did not knew about the new file. In that case we
      use the content of the old file.
      2b7d54e929b4
  6. Feb 27, 2014
  7. Feb 26, 2014
  8. Feb 13, 2014
  9. Feb 25, 2014
  10. Feb 27, 2014
  11. Feb 25, 2014
    • Piotr Klecha's avatar
      pull: close peer repo on completion (issue2491) (issue2797) · 7f865a94691e
      Piotr Klecha authored
      When pulling changes from a compressed bundle Mercurial first uncompresses it
      to a temporary file in .hg directory. This file will not be deleted unless
      the bundlerepo (other) is explicitly closed.
      
      This is similar to cleanup that occurs after incoming.
      7f865a94691e
  12. Feb 26, 2014
    • Paul Boddie's avatar
      hgweb: ensure isdirectory is None for repositories, replacing any True value · 3d77e567de56
      Paul Boddie authored
      Until now, repositories did not provide any value for isdirectory in rows
      produced for the index output, and thus isdirectory was generally evaluated as
      None for each index entry representing a repository.
      
      However, directories (visible when viewed with the descend and collapse
      settings enabled) did provide a value of True and this value appeared to
      persist in subsequent rows processed by the templater, causing isdirectory
      tests in templates to produce incorrect results for index entries appearing
      after directories.
      
      This patch asserts the None value for repositories, thus erasing any such
      persistent True values.
      3d77e567de56
  13. Feb 27, 2014
  14. Feb 26, 2014
  15. Feb 25, 2014
  16. Feb 23, 2014
  17. Feb 16, 2014
  18. Feb 24, 2014
Loading