Page MenuHomePhabricator

martinvonz (Martin von Zweigbergk)
User

Projects

User Details

User Since
Jun 28 2017, 5:28 PM (107 w, 1 d)

Recent Activity

Today

martinvonz created D6661: lookup: don't use "00changelog.i@None" when lookup of prefix fails.
Fri, Jul 19, 1:37 PM

Yesterday

martinvonz added a comment to D6655: continue: added support for graft.

There is a lot of duplication here. Can you try to extract common parts?

Thu, Jul 18, 2:20 PM

Wed, Jul 17

martinvonz added a comment to D6612: tests: show the files fields of changelogs for many merges.

(Martin, this looks fine to me, if you've got no objections let's include it in 5.1)

Wed, Jul 17, 6:36 PM
martinvonz closed D6647: copies: remove unnecessary override of p[12]copies() in workingctx.
Wed, Jul 17, 2:27 AM
martinvonz committed rHG97b03f0e7c7b: copies: remove unnecessary override of p[12]copies() in workingctx.
copies: remove unnecessary override of p[12]copies() in workingctx
Wed, Jul 17, 2:26 AM

Mon, Jul 15

martinvonz committed rHG3018749a71bb: py3: source-transform only call-sites of iteritems(), not definitions.
py3: source-transform only call-sites of iteritems(), not definitions
Mon, Jul 15, 7:45 PM
martinvonz added a comment to D6641: py3: source-transform only call-sites of iteritems(), not definitions.
In D6641#97205, @yuja wrote:
  • a/mercurial/__init__.py

+++ b/mercurial/__init__.py
@@ -225,7 +225,9 @@

    1. It changes iteritems/values to items/values as they are not
    2. present in Python 3 world.
  • elif fn in ('iteritems', 'itervalues'):

+ elif (fn in ('iteritems', 'itervalues') and
+ not (tokens[i - 1].type == token.NAME and
+ tokens[i - 1].string == 'def')):

Perhaps, we need to bump the BYTECODEHEADER version to recompile all
py3 modules.

Mon, Jul 15, 7:42 PM
martinvonz created D6647: copies: remove unnecessary override of p[12]copies() in workingctx.
Mon, Jul 15, 6:36 PM
martinvonz closed D6644: py3: fix formatting of branchmap log messages with repo.filtername=None.
Mon, Jul 15, 10:14 AM
martinvonz closed D6641: py3: source-transform only call-sites of iteritems(), not definitions.
Mon, Jul 15, 10:14 AM
martinvonz committed rHG5a6ba3165736: py3: source-transform only call-sites of iteritems(), not definitions.
py3: source-transform only call-sites of iteritems(), not definitions
Mon, Jul 15, 10:14 AM
martinvonz committed rHGc7d236b55a3e: py3: fix formatting of branchmap log messages with repo.filtername=None.
py3: fix formatting of branchmap log messages with repo.filtername=None
Mon, Jul 15, 10:14 AM
martinvonz created D6644: py3: fix formatting of branchmap log messages with repo.filtername=None.
Mon, Jul 15, 2:36 AM

Sat, Jul 13

martinvonz created D6641: py3: source-transform only call-sites of iteritems(), not definitions.
Sat, Jul 13, 3:11 AM

Wed, Jul 10

martinvonz closed D6603: copies: filter invalid copies only at end of pathcopies() (issue6163).
Wed, Jul 10, 3:40 PM
martinvonz committed rHG83666f011679: py3: store _origdoc as str.
py3: store _origdoc as str
Wed, Jul 10, 3:39 PM
martinvonz closed D6604: copies: follow copies across merge base without source file (issue6163).
Wed, Jul 10, 3:39 PM
martinvonz closed D6623: py3: store _origdoc as str.
Wed, Jul 10, 3:39 PM
martinvonz committed rHGd013099c551b: copies: filter invalid copies only at end of pathcopies() (issue6163).
copies: filter invalid copies only at end of pathcopies() (issue6163)
Wed, Jul 10, 3:39 PM
martinvonz committed rHG819712deac69: copies: follow copies across merge base without source file (issue6163).
copies: follow copies across merge base without source file (issue6163)
Wed, Jul 10, 3:39 PM
martinvonz closed D6602: copies: inline _chainandfilter() to prepare for next patch.
Wed, Jul 10, 3:39 PM
martinvonz committed rHG11ceb1b8fd74: copies: inline _chainandfilter() to prepare for next patch.
copies: inline _chainandfilter() to prepare for next patch
Wed, Jul 10, 3:39 PM
martinvonz closed D6601: copies: remove most early returns from pathcopies() and _forwardcopies().
Wed, Jul 10, 3:39 PM
martinvonz committed rHGa48f6f18dc6d: copies: remove most early returns from pathcopies() and _forwardcopies().
copies: remove most early returns from pathcopies() and _forwardcopies()
Wed, Jul 10, 3:39 PM
martinvonz closed D6600: copies: move short-circuiting of dirstate copies out of _forwardcopies().
Wed, Jul 10, 3:39 PM
martinvonz committed rHGbcb4b5c5964b: copies: move short-circuiting of dirstate copies out of _forwardcopies().
copies: move short-circuiting of dirstate copies out of _forwardcopies()
Wed, Jul 10, 3:39 PM
martinvonz closed D6599: tests: add more tests of copy tracing with removed and re-added files.
Wed, Jul 10, 3:39 PM
martinvonz committed rHGab416b5d9b91: tests: add more tests of copy tracing with removed and re-added files.
tests: add more tests of copy tracing with removed and re-added files
Wed, Jul 10, 3:39 PM
martinvonz closed D6598: tests: split out tests for unrelated copy source/target into separate file.
Wed, Jul 10, 3:38 PM
martinvonz committed rHG67bf11597eb8: tests: split out tests for unrelated copy source/target into separate file.
tests: split out tests for unrelated copy source/target into separate file
Wed, Jul 10, 3:38 PM
martinvonz updated the diff for D6623: py3: store _origdoc as str.
Wed, Jul 10, 12:39 PM
martinvonz added inline comments to D6623: py3: store _origdoc as str.
Wed, Jul 10, 12:32 PM

Tue, Jul 9

martinvonz created D6623: py3: store _origdoc as str.
Tue, Jul 9, 3:16 AM

Mon, Jul 8

martinvonz closed D6614: py3: don't run source transformer on hgext3rd (extensions).
Mon, Jul 8, 6:04 PM
martinvonz committed rHGd28d91f9f35a: py3: don't run source transformer on hgext3rd (extensions).
py3: don't run source transformer on hgext3rd (extensions)
Mon, Jul 8, 6:04 PM
martinvonz created D6614: py3: don't run source transformer on hgext3rd (extensions).
Mon, Jul 8, 12:52 PM
martinvonz added a comment to D6613: commit: improve the files field of changelog for merges.

See some thoughts from me and others on https://bz.mercurial-scm.org/show_bug.cgi?id=4292. Is your goal to shrink the changelog? Or that you feel that the current behavior is incorrect? Or something else?

Mon, Jul 8, 2:03 AM

Thu, Jul 4

martinvonz added a comment to D6602: copies: inline _chainandfilter() to prepare for next patch.

Wow, Phabricator decides to send the email almost two full days after the
review was created. Anyone knows what's going on?

Thu, Jul 4, 1:56 PM
martinvonz closed D6595: changelog: fix handling of empty copy entries in changeset.
Thu, Jul 4, 11:01 AM
martinvonz committed rHGe3df1e15bee9: changelog: fix handling of empty copy entries in changeset.
changelog: fix handling of empty copy entries in changeset
Thu, Jul 4, 11:01 AM
martinvonz created D6603: copies: filter invalid copies only at end of pathcopies() (issue6163).
Thu, Jul 4, 10:55 AM
martinvonz created D6604: copies: follow copies across merge base without source file (issue6163).
Thu, Jul 4, 10:55 AM
martinvonz added a comment to D6430: rust-discovery: using from Python code.

The ×2.5 speedup is the kind of things that motivate this series. Even if the mozilla-unified/mozilla-try is just and example it triggers the kind of pathological case we encounter in real life: large undecided set. We keep finding such pathological case from time to time, and will keep finding them. In addition there are case with legitimate large undedicated set (the mozilla example for one).
Having this faster code significantly reduce the impact of these pathological cases.

Thu, Jul 4, 10:55 AM
martinvonz created D6602: copies: inline _chainandfilter() to prepare for next patch.
Thu, Jul 4, 10:54 AM
martinvonz created D6599: tests: add more tests of copy tracing with removed and re-added files.
Thu, Jul 4, 10:54 AM
martinvonz created D6601: copies: remove most early returns from pathcopies() and _forwardcopies().
Thu, Jul 4, 10:54 AM
martinvonz created D6600: copies: move short-circuiting of dirstate copies out of _forwardcopies().
Thu, Jul 4, 10:54 AM
martinvonz created D6598: tests: split out tests for unrelated copy source/target into separate file.
Thu, Jul 4, 10:54 AM
martinvonz created D6595: changelog: fix handling of empty copy entries in changeset.
Thu, Jul 4, 10:51 AM

Sun, Jun 30

martinvonz closed D6587: copies: return only path from _tracefile() since that's all caller needs.
Sun, Jun 30, 6:57 AM
martinvonz committed rHG4ebbd7c4a3c5: copies: return only path from _tracefile() since that's all caller needs.
copies: return only path from _tracefile() since that's all caller needs
Sun, Jun 30, 6:57 AM
martinvonz committed rHG2702dfc7e029: automv: access status fields by name, not index.
automv: access status fields by name, not index
Sun, Jun 30, 12:14 AM
martinvonz committed rHGabd902a85040: automv: use public API for getting copies.
automv: use public API for getting copies
Sun, Jun 30, 12:14 AM

Sat, Jun 29

martinvonz closed D6586: automv: access status fields by name, not index.
Sat, Jun 29, 7:04 PM
martinvonz committed rHGff89280c626d: automv: access status fields by name, not index.
automv: access status fields by name, not index
Sat, Jun 29, 7:04 PM
martinvonz committed rHG1caadb8e3d2c: automv: use public API for getting copies.
automv: use public API for getting copies
Sat, Jun 29, 7:04 PM
martinvonz closed D6585: automv: use public API for getting copies.
Sat, Jun 29, 7:04 PM

Fri, Jun 28

martinvonz created D6587: copies: return only path from _tracefile() since that's all caller needs.
Fri, Jun 28, 7:52 PM
martinvonz created D6586: automv: access status fields by name, not index.
Fri, Jun 28, 5:13 PM
martinvonz created D6585: automv: use public API for getting copies.
Fri, Jun 28, 5:11 PM
martinvonz added inline comments to D6584: shelve: remove rebase.clearstatus().
Fri, Jun 28, 1:48 PM
martinvonz added inline comments to D6553: shelve: move shelve extension to core.
Fri, Jun 28, 12:31 PM

Thu, Jun 27

D6557: relnotes: added description about statemod._statecheck is now accepted and ready to land.
Thu, Jun 27, 6:06 PM
martinvonz added inline comments to D6557: relnotes: added description about statemod._statecheck.
Thu, Jun 27, 1:08 PM
martinvonz added inline comments to D6551: statecheck: added support for cmdutil.afterresolvedstates.
Thu, Jun 27, 1:03 PM
martinvonz added inline comments to D6551: statecheck: added support for cmdutil.afterresolvedstates.
Thu, Jun 27, 1:02 PM
martinvonz added inline comments to D6393: rust-dirstate: add "dirs" Rust implementation.
Thu, Jun 27, 12:50 PM
martinvonz closed D6570: rebase: fix in-memory rebasing of copy of empty file.
Thu, Jun 27, 12:20 PM
martinvonz committed rHGe079e001d536: rebase: fix in-memory rebasing of copy of empty file.
rebase: fix in-memory rebasing of copy of empty file
Thu, Jun 27, 12:20 PM
martinvonz closed D6569: tests: demonstrate broken in-memory rebase of copy to empty file.
Thu, Jun 27, 12:20 PM
martinvonz committed rHG4a6826868625: tests: demonstrate broken in-memory rebase of copy to empty file.
tests: demonstrate broken in-memory rebase of copy to empty file
Thu, Jun 27, 12:20 PM
D6581: update: fix spurious unclean status bug shown by previous commit is now accepted and ready to land.

Thanks for fixing this quickly! The fix looks very straight-forward too.

Thu, Jun 27, 11:05 AM

Wed, Jun 26

martinvonz committed rHG898b36f74f75: copies: document how 'copies' dict instances are reused.
copies: document how 'copies' dict instances are reused
Wed, Jun 26, 7:33 PM
martinvonz closed D6578: copies: document how 'copies' dict instances are reused.
Wed, Jun 26, 7:33 PM
martinvonz added a comment to D6475: merge: fix race that could cause wrong size in dirstate.

Try this:
hg co -C 4.9; hg debugrebuilddirstate; hg co 5.0; hg st
Before this patch, that produced an empty output as it should. After this patch, it lists hundreds of modified files (536 to be specific). A workaround is to add --config worker.enabled=no. Can you look into it? It's obviously a pretty serious bug that needs to be fixed before we release a new version.

Wed, Jun 26, 5:27 PM
martinvonz added a comment to D6475: merge: fix race that could cause wrong size in dirstate.

Try this:

Wed, Jun 26, 5:21 PM
martinvonz created D6578: copies: document how 'copies' dict instances are reused.
Wed, Jun 26, 8:20 AM

Tue, Jun 25

martinvonz added a comment to D6561: copies: simplify merging of copy dicts on merge commits.
In D6561#95834, @yuja wrote:
while work:
  • r, i1, copies1 = heapq.heappop(work)

+ r, i1, copies = heapq.heappop(work)

if work and work[0][0] == r:
    # We are tracing copies from both parents
    r, i2, copies2 = heapq.heappop(work)
  • copies = {}
  • allcopies = set(copies1) | set(copies2)
  • for dst in allcopies:

+ for dst, src in copies2.items():

    1. Unlike when copies are stored in the filelog, we consider
    2. it a copy even if the destination already existed on the
    3. other branch. It's simply too expensive to check if the
    4. file existed in the manifest.
  • if dst in copies1:
  • # If it was copied on the p1 side, mark it as copied from

+ if dst not in copies:
+ # If it was copied on the p1 side, leave it as copied from

    1. that side, even if it was also copied on the p2 side.
  • copies[dst] = copies1[dst]
  • else: copies[dst] = copies2[dst]

Are we sure there's no copies alias held by later work?
I'm just asking because we've optimized some copies.copy()s away at
5ceb91136ebe. I don't know if it's safe or not to mutate copies at this
point.

Tue, Jun 25, 9:08 PM

Mon, Jun 24

martinvonz created D6570: rebase: fix in-memory rebasing of copy of empty file.
Mon, Jun 24, 7:11 PM
martinvonz created D6569: tests: demonstrate broken in-memory rebase of copy to empty file.
Mon, Jun 24, 7:11 PM
martinvonz closed D6561: copies: simplify merging of copy dicts on merge commits.
Mon, Jun 24, 3:00 PM
martinvonz closed D6560: copies: remove a redundant matcher filtering in _changesetforwardcopies().
Mon, Jun 24, 2:59 PM
martinvonz committed rHG907cef396635: copies: simplify merging of copy dicts on merge commits.
copies: simplify merging of copy dicts on merge commits
Mon, Jun 24, 2:59 PM
martinvonz committed rHGc7104896ec42: copies: remove a redundant matcher filtering in _changesetforwardcopies().
copies: remove a redundant matcher filtering in _changesetforwardcopies()
Mon, Jun 24, 2:59 PM
martinvonz closed D6559: copies: delete obsolete comment in _changesetforwardcopies().
Mon, Jun 24, 2:59 PM
martinvonz committed rHG8f9cfc8d2ae1: copies: delete obsolete comment in _changesetforwardcopies().
copies: delete obsolete comment in _changesetforwardcopies()
Mon, Jun 24, 2:59 PM

Sun, Jun 23

martinvonz added inline comments to D6503: statecheck: added support for STATES.
Sun, Jun 23, 5:46 PM
martinvonz added inline comments to D6484: states: moved cmdutil.unfinishedstates to state.py.
Sun, Jun 23, 5:36 PM
martinvonz added a comment to D6566: abort: added logic for of hg abort.

Need to set the parent of this patch

Sun, Jun 23, 5:29 PM

Sat, Jun 22

martinvonz closed D6564: copies: avoid reusing the same variable for two different copy dicts.
Sat, Jun 22, 10:26 AM
martinvonz committed rHGe7c55e24d6bf: copies: avoid reusing the same variable for two different copy dicts.
copies: avoid reusing the same variable for two different copy dicts
Sat, Jun 22, 10:26 AM
martinvonz committed rHG15f04d652b62: drawdag: don't crash when writing copy info to changesets.
drawdag: don't crash when writing copy info to changesets
Sat, Jun 22, 10:25 AM
martinvonz closed D6565: drawdag: don't crash when writing copy info to changesets.
Sat, Jun 22, 10:25 AM
martinvonz committed rHG84aff7e20c55: merge with stable.
merge with stable
Sat, Jun 22, 2:41 AM

Fri, Jun 21

martinvonz created D6565: drawdag: don't crash when writing copy info to changesets.
Fri, Jun 21, 1:01 PM

Thu, Jun 20

martinvonz created D6564: copies: avoid reusing the same variable for two different copy dicts.
Thu, Jun 20, 7:15 PM
martinvonz created D6560: copies: remove a redundant matcher filtering in _changesetforwardcopies().
Thu, Jun 20, 5:09 PM
martinvonz created D6561: copies: simplify merging of copy dicts on merge commits.
Thu, Jun 20, 5:09 PM
martinvonz created D6559: copies: delete obsolete comment in _changesetforwardcopies().
Thu, Jun 20, 5:09 PM
martinvonz added inline comments to D6501: state: created new class statecheck to handle unfinishedstates.
Thu, Jun 20, 2:25 AM