view tests/test-issue1993.t @ 33284:b2670290eab4

followlines: join merge parents line ranges in blockdescendants() (issue5595) In blockdescendants(), we had an assertion when line range of a merge changeset was not consistent depending on which parent was considered for computation. For instance, this might occur when file content (in lookup range) is significantly different between parent branches of the merge as demonstrated in added tests (where we almost completely rewrite the "baz" file while also introducing similarities with its content in the other branch we later merge to). Now, in such case, we combine line ranges from all parents by storing the envelope of both line ranges. This is conservative (the line range is extended, possibly unnecessarily) but at least this should avoid missing descendants with changes in a range that would fall in that of one parent but not in another one (the case of "baz: narrow change (2->2+)" changeset in tests).
author Denis Laxalde <denis.laxalde@logilab.fr>
date Wed, 05 Jul 2017 13:54:53 +0200
parents 4591cd6b6794
children
line wrap: on
line source

  $ hg init a
  $ cd a
  $ echo a > a
  $ hg ci -Am0
  adding a
  $ echo b > b
  $ hg ci -Am1
  adding b
  $ hg tag -r0 default
  warning: tag default conflicts with existing branch name
  $ hg log
  changeset:   2:30a83d1e4a1e
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     Added tag default for changeset f7b1eb17ad24
  
  changeset:   1:925d80f479bb
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     1
  
  changeset:   0:f7b1eb17ad24
  tag:         default
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  $ hg update 'tag(default)'
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
  $ hg parents
  changeset:   0:f7b1eb17ad24
  tag:         default
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     0
  
  $ hg update 'branch(default)'
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ hg parents
  changeset:   2:30a83d1e4a1e
  tag:         tip
  user:        test
  date:        Thu Jan 01 00:00:00 1970 +0000
  summary:     Added tag default for changeset f7b1eb17ad24
  

  $ cd ..