This is an archive of the discontinued Mercurial Phabricator instance.

rebase: fix regression in file change detection introduced by 0ecb3b11fcad
ClosedPublic

Authored by mjacob on Jul 28 2020, 2:59 PM.

Details

Summary

Before 0ecb3b11fcad, wctx._compact(), was called by wctx.nofilechanges() as
a side effect. Later, it turned out that this side effect is needed to correctly
detect which files changed. See https://phab.mercurial-scm.org/D8733#131949 for
the history.

The problem could also be triggered by running tests/test-rebase-parameters.t
with --extra-config-opt rebase.experimental.inmemory=1.

Diff Detail

Repository
rHG Mercurial
Branch
stable
Lint
No Linters Available
Unit
No Unit Test Coverage

Event Timeline

mjacob created this revision.Jul 28 2020, 2:59 PM
This revision was not accepted when it landed; it landed in state Needs Review.
This revision was automatically updated to reflect the committed changes.
martinvonz added inline comments.Sep 17 2020, 7:10 PM
hgext/rebase.py
1447

Reminder to do this :) Do you have a planned fix? Sorry if there is one that I just haven't seen (or forgotten).

(I just happened to notice this comment while looking at the rebase code today.)

mjacob added inline comments.Sep 19 2020, 1:21 AM
hgext/rebase.py
1447

Sorry, I forgot about this. Since this was submitted, I did almost no Mercurial development. I think I’ll look into this next week.