Page MenuHomePhabricator
Feed All Stories

Yesterday

marmoute committed rHGf0a2c1972e81: copies: simplify chain loop.
copies: simplify chain loop
Sat, Oct 19, 1:43 PM
marmoute closed D7131: copies: simplify chain loop.
Sat, Oct 19, 1:38 PM
marmoute closed D7127: sidedatacopies: only fetch information once for merge.
Sat, Oct 19, 1:38 PM
marmoute committed rHG90213d027154: sidedatacopies: only fetch information once for merge.
sidedatacopies: only fetch information once for merge
Sat, Oct 19, 1:38 PM
marmoute closed D7124: copies: move from a copy on branchpoint to a copy on write approach.
Sat, Oct 19, 1:38 PM
marmoute closed D7076: copies: compute the exact set of revision to walk.
Sat, Oct 19, 1:38 PM
marmoute closed D7075: copies: add an explicit test using multiple roots.
Sat, Oct 19, 1:38 PM
marmoute committed rHGffd04bc9f57d: copies: move from a copy on branchpoint to a copy on write approach.
copies: move from a copy on branchpoint to a copy on write approach
Sat, Oct 19, 1:38 PM
marmoute committed rHG83bb1e89ab9b: copies: compute the exact set of revision to walk.
copies: compute the exact set of revision to walk
Sat, Oct 19, 1:38 PM
marmoute committed rHGdda9482f60d2: copies: add an explicit test using multiple roots.
copies: add an explicit test using multiple roots
Sat, Oct 19, 1:38 PM
marmoute closed D7074: sidedatacopies: fast path data fetching if revision has no sidedata.
Sat, Oct 19, 1:38 PM
marmoute committed rHG8a2925265402: sidedatacopies: fast path data fetching if revision has no sidedata.
sidedatacopies: fast path data fetching if revision has no sidedata
Sat, Oct 19, 1:38 PM
martinvonz added a comment to D7127: sidedatacopies: only fetch information once for merge.

Nice work on this series. It's all queued now.

Sat, Oct 19, 1:36 PM
mharbison72 added a reviewer for D7130: automation: avoid '~' in the temp directory on Windows: indygreg.
Sat, Oct 19, 1:21 PM
kevincox added a comment to D7116: rust-performance: introduce FastHashMap type alias for HashMap.

The following comparison shows that for input > 20 bytes, fnv has worse overall performance than xx

Sat, Oct 19, 8:14 AM
martinvonz added a comment to D7144: status: use unfiltered repo if we're getting status of working copy.

To reviewers: I only care about this patch (and its parent is needed for this to pass tests). Feel free to drop any other patches you don't like.

Sat, Oct 19, 3:43 AM
martinvonz created D7145: status: move initialization closer together.
Sat, Oct 19, 3:39 AM
martinvonz created D7144: status: use unfiltered repo if we're getting status of working copy.
Sat, Oct 19, 3:39 AM
martinvonz created D7139: largefiles: move lfstatus context manager to lfutil.
Sat, Oct 19, 3:38 AM
martinvonz created D7143: largefiles: avoid dynamically subclassing context instances.
Sat, Oct 19, 3:38 AM
martinvonz created D7141: largefiles: use context manager for wlock in repo.status() override.
Sat, Oct 19, 3:38 AM
martinvonz created D7142: largefiles: delete unused repo.status_nolfiles().
Sat, Oct 19, 3:38 AM
martinvonz created D7140: largefiles: allow "lfstatus" context manager to set value to False.
Sat, Oct 19, 3:38 AM
martinvonz added a comment to D7135: copies: filter out file already in parent in duplicatecopies().
In D7135#104894, @yuja wrote:
  • a/tests/test-issue1175.t

+++ b/tests/test-issue1175.t
@@ -82,7 +82,6 @@

continue: hg graft --continue
$ hg graft --continue
grafting 1:5974126fad84 "b1"
  • warning: can't find ancestor for 'b' copied from 'a'! $ hg log -f b -T 'changeset: {rev}:{node|short}\nsummary: {desc}\n\n' changeset: 3:376d30ccffc0 summary: b1

This test was added at a43fdf33a6be, which might need bad copy information.

Ah, so maybe the bug used to be incorrectly suppressed by the logic for finding the source in an old version. Thanks for digging that up. I somehow didn't think to check.

  • a/mercurial/copies.py

+++ b/mercurial/copies.py
@@ -810,10 +810,11 @@

  1. of the function is much faster (and is required for carrying copy
  2. metadata across the rebase anyway). exclude = pathcopies(repo[fromrev], repo[skiprev])

+ pctx = wctx.p1()

for dst, src in pycompat.iteritems(pathcopies(repo[fromrev], repo[rev])):
    if dst in exclude:
        continue
  • if dst in wctx:

+ if dst in wctx and dst not in pctx:

wctx[dst].markcopied(src)

Seems fine as we don't support hg rm b; hg cp a b case.

Yes, exactly. I should have mentioned that.

Sat, Oct 19, 2:12 AM
martinvonz added a comment to D7135: copies: filter out file already in parent in duplicatecopies().
In D7135#104894, @yuja wrote:
  • a/tests/test-issue1175.t

+++ b/tests/test-issue1175.t
@@ -82,7 +82,6 @@

continue: hg graft --continue
$ hg graft --continue
grafting 1:5974126fad84 "b1"
  • warning: can't find ancestor for 'b' copied from 'a'! $ hg log -f b -T 'changeset: {rev}:{node|short}\nsummary: {desc}\n\n' changeset: 3:376d30ccffc0 summary: b1

This test was added at a43fdf33a6be, which might need bad copy information.

Sat, Oct 19, 1:14 AM
martinvonz closed D7138: largefiles: use context manager for setting "lfstatus" on subrepos too.
Sat, Oct 19, 1:14 AM
martinvonz closed D7137: largefiles: reset "lfstatus" attribute to previous value in "finally".
Sat, Oct 19, 1:13 AM
martinvonz closed D7136: largefiles: add context manager for setting/clearing "lfstatus" attribute.
Sat, Oct 19, 1:13 AM
martinvonz committed rHG2cb787b65cf2: largefiles: use context manager for setting "lfstatus" on subrepos too.
largefiles: use context manager for setting "lfstatus" on subrepos too
Sat, Oct 19, 1:13 AM
martinvonz committed rHG013637f4812e: largefiles: reset "lfstatus" attribute to previous value in "finally".
largefiles: reset "lfstatus" attribute to previous value in "finally"
Sat, Oct 19, 1:13 AM
martinvonz committed rHG03dae1044edd: largefiles: add context manager for setting/clearing "lfstatus" attribute.
largefiles: add context manager for setting/clearing "lfstatus" attribute
Sat, Oct 19, 1:13 AM
yuja added a comment to D7135: copies: filter out file already in parent in duplicatecopies().
  • a/tests/test-issue1175.t

+++ b/tests/test-issue1175.t
@@ -82,7 +82,6 @@

continue: hg graft --continue
$ hg graft --continue
grafting 1:5974126fad84 "b1"
  • warning: can't find ancestor for 'b' copied from 'a'! $ hg log -f b -T 'changeset: {rev}:{node|short}\nsummary: {desc}\n\n' changeset: 3:376d30ccffc0 summary: b1
Sat, Oct 19, 1:09 AM

Fri, Oct 18

martinvonz created D7138: largefiles: use context manager for setting "lfstatus" on subrepos too.
Fri, Oct 18, 8:52 PM
martinvonz created D7137: largefiles: reset "lfstatus" attribute to previous value in "finally".
Fri, Oct 18, 8:51 PM
martinvonz created D7136: largefiles: add context manager for setting/clearing "lfstatus" attribute.
Fri, Oct 18, 8:51 PM
mharbison72 added a comment to D7132: tests: conditionalize a permission based test in test-hgrc.t.

726bd0b612a2 does the same thing.

Fri, Oct 18, 6:05 PM
martinvonz created D7135: copies: filter out file already in parent in duplicatecopies().
Fri, Oct 18, 5:24 PM
dlax committed rHGd0f89e8c615a: py3: adjust expected traceback in test-hook.t.
py3: adjust expected traceback in test-hook.t
Fri, Oct 18, 2:58 PM
dlax committed rHG3f1b4d1a90c3: tests: use non-reverse grep in traceback in test-hook.t.
tests: use non-reverse grep in traceback in test-hook.t
Fri, Oct 18, 2:58 PM
dlax committed rHGa973a75e92bf: py3: add Python 3 exception output to test-hook.t.
py3: add Python 3 exception output to test-hook.t
Fri, Oct 18, 2:58 PM
dlax committed rHGe20bafd65a96: py3: ajust abort message in test-hook.t.
py3: ajust abort message in test-hook.t
Fri, Oct 18, 2:58 PM
yuja committed rHG8d432d3a2d7c: rust-cpython: prepare for writing tests that require libpython.
rust-cpython: prepare for writing tests that require libpython
Fri, Oct 18, 2:36 PM
yuja committed rHG434d7a3e92e3: rust-cpython: make inner functions and structs of ref_sharing private.
rust-cpython: make inner functions and structs of ref_sharing private
Fri, Oct 18, 2:36 PM
yuja committed rHG0df8312463ae: rust-cpython: keep Python<'a> token in PyRefMut.
rust-cpython: keep Python<'a> token in PyRefMut
Fri, Oct 18, 2:36 PM
yuja committed rHGf8c114f20d2d: rust-cpython: require GIL to borrow immutable reference from PySharedRefCell.
rust-cpython: require GIL to borrow immutable reference from PySharedRefCell
Fri, Oct 18, 2:36 PM
yuja committed rHGffc1fbd7d1f5: rust-cpython: make PyLeakedRef operations relatively safe.
rust-cpython: make PyLeakedRef operations relatively safe
Fri, Oct 18, 2:36 PM
yuja committed rHGce6dd1cee4c8: rust-cpython: put leaked reference in PyLeakedRef.
rust-cpython: put leaked reference in PyLeakedRef
Fri, Oct 18, 2:36 PM
indygreg committed rHG96eb9ef777a8: run-tests: make code coverage work on Python 3.
run-tests: make code coverage work on Python 3
Fri, Oct 18, 12:45 PM
Kwan committed rHG47946f08e463: py3: don't index into bytes in phabricator's _tokenize().
py3: don't index into bytes in phabricator's _tokenize()
Fri, Oct 18, 12:45 PM
Alphare committed rHG6230c70a1863: rust-dirstate-status: use fast-path even with fsmonitor and sparse extensions.
rust-dirstate-status: use fast-path even with fsmonitor and sparse extensions
Fri, Oct 18, 12:45 PM
martinvonz added inline comments to D7128: rust-dirstate-status: use fast-path even with fsmonitor and sparse extensions.
Fri, Oct 18, 12:37 PM
JordiGH added a comment to D7000: grep: enable all-files by default (BC).

Wait, I found some problems, here is an amendment:

Fri, Oct 18, 11:40 AM
JordiGH added a comment to D7000: grep: enable all-files by default (BC).

Sure :)

Fri, Oct 18, 11:26 AM
indygreg closed D7133: run-tests: make code coverage work on Python 3.
Fri, Oct 18, 8:42 AM
indygreg committed rHG9160ffe341e7: run-tests: make code coverage work on Python 3.
run-tests: make code coverage work on Python 3
Fri, Oct 18, 8:41 AM
yuja added a comment to D7133: run-tests: make code coverage work on Python 3.

Fixed some os.environb and queued, thanks.

Fri, Oct 18, 8:40 AM
yuja added a comment to D7118: rust-dirstatemap: remove additional lookups in traverse.
>> +++ b/mercurial/dirstate.py
>> @@ -919,6 +919,9 @@
>>
>>   matchalways = match.always()
>>   matchtdir = match.traversedir
>>   dmap = self._map
>>
>> +        if rustmod is not None:
>> +            dmap = self._map._rustmap
>
> If it's the same trick, can't it be abstracted away? `if rustmod` seems weird.
The main issue I faced is that Python classes built from `rust-cpython` cannot be subclassed, so we have to resort to an additional level of indirection. IIRC, the main reason was that there was no way of enforcing a subclass to call `super()` which would result in the Rust class not being initialized properly. Or maybe I'm missing the point?
Fri, Oct 18, 8:40 AM
Alphare added a comment to D7118: rust-dirstatemap: remove additional lookups in traverse.
In D7118#104834, @yuja wrote:

+++ b/mercurial/dirstate.py
@@ -919,6 +919,9 @@

matchalways = match.always()
matchtdir = match.traversedir
dmap = self._map

+ if rustmod is not None:
+ dmap = self._map._rustmap

If it's the same trick, can't it be abstracted away? if rustmod seems weird.

Fri, Oct 18, 8:24 AM
Kwan closed D7129: py3: don't index into bytes in phabricator's _tokenize().
Fri, Oct 18, 7:08 AM
Alphare closed D7128: rust-dirstate-status: use fast-path even with fsmonitor and sparse extensions.
Fri, Oct 18, 7:08 AM
Kwan committed rHGb3a1ba3f46f1: py3: don't index into bytes in phabricator's _tokenize().
py3: don't index into bytes in phabricator's _tokenize()
Fri, Oct 18, 7:08 AM
Alphare closed D7117: rust-dirstatemap: remove additional lookups in dirstatemap.
Fri, Oct 18, 7:08 AM
Alphare committed rHG93827664a7d7: rust-dirstate-status: use fast-path even with fsmonitor and sparse extensions.
rust-dirstate-status: use fast-path even with fsmonitor and sparse extensions
Fri, Oct 18, 7:08 AM
Alphare committed rHG5d4046594d6f: rust-dirstatemap: remove additional lookups in dirstatemap.
rust-dirstatemap: remove additional lookups in dirstatemap
Fri, Oct 18, 7:08 AM
yuja added a comment to D7118: rust-dirstatemap: remove additional lookups in traverse.

+++ b/mercurial/dirstate.py
@@ -919,6 +919,9 @@

matchalways = match.always()
matchtdir = match.traversedir
dmap = self._map

+ if rustmod is not None:
+ dmap = self._map._rustmap

Fri, Oct 18, 6:47 AM
dlax committed rHG726bd0b612a2: tests: avoid chmod on windows in hgrc tests.
tests: avoid chmod on windows in hgrc tests
Fri, Oct 18, 5:48 AM
Kwan created D7134: phabricator: use context manager form of progress in uploadchunks.
Fri, Oct 18, 2:21 AM

Thu, Oct 17

indygreg created D7133: run-tests: make code coverage work on Python 3.
Thu, Oct 17, 11:40 PM
mharbison72 created D7132: tests: conditionalize a permission based test in test-hgrc.t.
Thu, Oct 17, 10:16 PM
marmoute created D7131: copies: simplify chain loop.
Thu, Oct 17, 7:47 PM
marmoute updated the diff for D7127: sidedatacopies: only fetch information once for merge.
Thu, Oct 17, 7:47 PM
marmoute updated the diff for D7124: copies: move from a copy on branchpoint to a copy on write approach.
Thu, Oct 17, 7:47 PM
marmoute updated the diff for D7076: copies: compute the exact set of revision to walk.
Thu, Oct 17, 7:46 PM
dlax committed rHG2c70dd03b743: py3: fix sorting of obsolete markers during push.
py3: fix sorting of obsolete markers during push
Thu, Oct 17, 7:31 PM
dlax committed rHG48b9fbfb00b9: exchange: extract a function to sort obsolete markers.
exchange: extract a function to sort obsolete markers
Thu, Oct 17, 7:31 PM
dlax committed rHGd201a637c971: py3: encode underlying error message during parse error of %include.
py3: encode underlying error message during parse error of %include
Thu, Oct 17, 7:31 PM
mharbison72 created D7130: automation: avoid '~' in the temp directory on Windows.
Thu, Oct 17, 7:31 PM
Kwan created D7129: py3: don't index into bytes in phabricator's _tokenize().
Thu, Oct 17, 7:31 PM
indygreg created D7126: tests: use time.time() for relative start and stop times.
Thu, Oct 17, 7:30 PM
indygreg created D7125: tests: rename stopped and started variables to reflect times.
Thu, Oct 17, 7:30 PM
Alphare created D7128: rust-dirstate-status: use fast-path even with fsmonitor and sparse extensions.
Thu, Oct 17, 7:30 PM
marmoute added inline comments to D7075: copies: add an explicit test using multiple roots.
Thu, Oct 17, 7:30 PM
martinvonz added inline comments to D7076: copies: compute the exact set of revision to walk.
Thu, Oct 17, 7:30 PM
marmoute created D7127: sidedatacopies: only fetch information once for merge.
Thu, Oct 17, 7:30 PM
yuja added a comment to D7105: dirs: reject consecutive slashes in paths.
TBH I'm not sure what's going on there. Perhaps a bad byte/newline sequence in the file?
Thu, Oct 17, 7:30 PM
marmoute abandoned D7071: copies: use unchecked parentrevs function to access parent.
Thu, Oct 17, 7:30 PM
marmoute abandoned D7073: revlog: introduce a `_uncheckedflags` shortcut.
Thu, Oct 17, 7:30 PM
marmoute added a comment to D7073: revlog: introduce a `_uncheckedflags` shortcut.

Should no longer be necessary with D7123, right?

Thu, Oct 17, 7:30 PM
Alphare added a comment to D7116: rust-performance: introduce FastHashMap type alias for HashMap.

I've seen very good results with https://github.com/servo/rust-fnv in the past so it is probably worth including that in the comparison and possibly using it. It is especially good for small keys which seems like a common case in hg.

Thu, Oct 17, 7:30 PM

Wed, Oct 16

indygreg planned changes to D6929: ci: add comment about block duration pricing.
Wed, Oct 16, 10:52 PM
indygreg planned changes to D6928: ci: fetch explicit attributes.
Wed, Oct 16, 10:52 PM
indygreg planned changes to D6927: ci: report cost to run each job.
Wed, Oct 16, 10:52 PM
indygreg planned changes to D6925: ci: track spot instance state, randomly assign availability zone.
Wed, Oct 16, 10:52 PM
indygreg added a comment to D6925: ci: track spot instance state, randomly assign availability zone.

Oops.

Wed, Oct 16, 10:51 PM
indygreg planned changes to D6926: ci: retry expired spot instance requests.
Wed, Oct 16, 10:51 PM
indygreg abandoned D6925: ci: track spot instance state, randomly assign availability zone.
Wed, Oct 16, 10:51 PM
indygreg planned changes to D6924: ci: store job start parameters in DynamoDB.
Wed, Oct 16, 10:51 PM
indygreg planned changes to D6922: ci: implement a "try server".
Wed, Oct 16, 10:51 PM
indygreg added a comment to D6906: ci: implement a new CI system for Mercurial.

Since nobody seems to have plans to review this, I'll hold off on requesting review at this time.

Wed, Oct 16, 10:50 PM
indygreg added a comment to D7105: dirs: reject consecutive slashes in paths.

I dropped this from committed because of discussion on this review and because Windows was not happy with the change:

Wed, Oct 16, 10:38 PM