mharbison72 (Matt Harbison)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 16 2017, 3:10 PM (66 w, 2 d)

Recent Activity

Yesterday

mharbison72 committed rHG36b134c436b8: setup: build exewrapper with Unicode support on py3.
setup: build exewrapper with Unicode support on py3
Mon, Oct 22, 11:49 AM
mharbison72 committed rHG973ff03d9bc0: exewrapper: convert to _tcsxxx functions for Unicode compatability.
exewrapper: convert to _tcsxxx functions for Unicode compatability
Mon, Oct 22, 11:49 AM
mharbison72 committed rHGaca727359ec5: exewrapper: drop an unused variable.
exewrapper: drop an unused variable
Mon, Oct 22, 11:49 AM
mharbison72 committed rHG4a81d82474e9: lfs: consult the narrow matcher when extracting pointers from ctx (issue5794).
lfs: consult the narrow matcher when extracting pointers from ctx (issue5794)
Mon, Oct 22, 8:10 AM

Sat, Oct 20

mharbison72 added a comment to D4312: New bookflow extension for bookmark-based branching.

I'm actually kinda looking forward to see if lfs works better with all the new changes.

Sat, Oct 20, 9:46 PM
mharbison72 committed rHGa9e303dcd1e1: py3: stringify setupversion on Windows.
py3: stringify setupversion on Windows
Sat, Oct 20, 3:13 AM
mharbison72 committed rHGbd1ec1e36bf0: tests: add coverage for some untested areas of hgweb.
tests: add coverage for some untested areas of hgweb
Sat, Oct 20, 3:13 AM

Fri, Oct 19

mharbison72 committed rHGef6cab7930b3: py3: fix module imports in tests, as flagged by test-check-module-imports.t.
py3: fix module imports in tests, as flagged by test-check-module-imports.t
Fri, Oct 19, 8:56 AM
mharbison72 committed rHG5a81c4aa6313: tests: glob over a difference between Windows 7 and Window 10.
tests: glob over a difference between Windows 7 and Window 10
Fri, Oct 19, 8:56 AM
mharbison72 committed rHG3b84ef904aea: py3: fix module imports in test-highlight.t.
py3: fix module imports in test-highlight.t
Fri, Oct 19, 8:56 AM
mharbison72 committed rHGfad6068249d9: lfs: don't add extension to hgrc after conversion (BC).
lfs: don't add extension to hgrc after conversion (BC)
Fri, Oct 19, 8:56 AM
mharbison72 updated subscribers of D5130: lfs: autoload the extension when cloning from repo with lfs enabled.

! In D5130#76736, @mharbison72 wrote:
Also, I need to see if this can be made to work with cloning from a local repo.

I'm really not a fan of local / hardlink clones. They are very brittle. When you start throwing extra repo features like LFS into the mix, it becomes even more dangerous. Especially when we start talking about adding modifying .hg/requires automatically. The fundamental problem is the hardlink clone is strictly separate but it "inherits" some state from its parent. If we start varying behavior of the two repos, interaction between them can be wonky. In general, for advanced features, we should go through the "hg clone --pull" interface to create a clean break and minimize potential for wonkiness.

Fri, Oct 19, 12:04 AM

Thu, Oct 18

mharbison72 committed rHG633da7139e4a: py3: fix test-import-context.t.
py3: fix test-import-context.t
Thu, Oct 18, 9:11 AM
mharbison72 committed rHG1524c305377f: py3: restore perfstartup() prior to b456b2e0ad9f on Windows.
py3: restore perfstartup() prior to b456b2e0ad9f on Windows
Thu, Oct 18, 9:11 AM
mharbison72 committed rHG124507a263e5: help: document the server capabilities added by the LFS extension.
help: document the server capabilities added by the LFS extension
Thu, Oct 18, 9:11 AM
mharbison72 committed rHGe5d74742d00e: py3: fix test-propertycache.py on Windows.
py3: fix test-propertycache.py on Windows
Thu, Oct 18, 9:11 AM

Wed, Oct 17

mharbison72 added a comment to D5130: lfs: autoload the extension when cloning from repo with lfs enabled.

One thing I forgot to mention in the commit comment is that hg clone --rev REV, where REV is some commit prior to committing any lfs blobs, will cause the requirement to be added to the clone. That didn't happen previously with the transaction hook. But that's probably enough of a corner case to not really care.

Wed, Oct 17, 8:49 PM
mharbison72 added a comment to D5130: lfs: autoload the extension when cloning from repo with lfs enabled.

As a follow-up, it would be nice to have the LFS wire protocol capabilities documented in mercurial/help/internals/wireprotocol.txt, especially since it isn't obvious how the now 2 capabilities are different.

Wed, Oct 17, 8:00 AM
mharbison72 closed D5130: lfs: autoload the extension when cloning from repo with lfs enabled.
Wed, Oct 17, 3:30 AM
mharbison72 committed rHG6637b079ae45: lfs: autoload the extension when cloning from repo with lfs enabled.
lfs: autoload the extension when cloning from repo with lfs enabled
Wed, Oct 17, 3:29 AM
mharbison72 created D5130: lfs: autoload the extension when cloning from repo with lfs enabled.
Wed, Oct 17, 12:36 AM

Tue, Oct 16

mharbison72 accepted D5121: procutil: port over windows encoding fixes from logtoprocess.

LGTM, thanks.

Tue, Oct 16, 10:49 PM
mharbison72 committed rHG43f0a37bd9ed: py3: byteify extension in test-relink.t.
py3: byteify extension in test-relink.t
Tue, Oct 16, 3:25 AM
mharbison72 added a comment to D5025: py3: make test-contrib-perf.t work on python 3.
In D5025#75556, @yuja wrote:
def perfstartup(ui, repo, **opts):
    opts = _byteskwargs(opts)
    timer, fm = gettimer(ui, opts)
  • cmd = sys.argv[0] + cmd = fsencode(sys.argv[0])

Applying fsencode() on sys.argv is probably wrong on Windows, but it's perf.py,
I don't care.

Sadly, it doesn't work on Windows. But since os.system() is called with an r-string, bytes wouldn't be right anyway. When I simply formatted in sys.argv[0], I got this:

--- c:/Users/Matt/projects/hg_py3/tests/test-contrib-perf.t
+++ c:/Users/Matt/projects/hg_py3/tests/test-contrib-perf.t.err
@@ -184,6 +184,7 @@
   $ hg perfrevrange
   $ hg perfrevset 'all()'
   $ hg perfstartup
+  (null): can't open file '<unprintable file name>': [Errno 2] $ENOENT$
   $ hg perfstatus
   $ hg perftags
   $ hg perftemplating

This will be good to figure out because there are ~400 other instances of this error, mostly around launching hooks.

Tue, Oct 16, 12:11 AM

Mon, Oct 15

mharbison72 added a comment to D5025: py3: make test-contrib-perf.t work on python 3.
In D5025#75556, @yuja wrote:
def perfstartup(ui, repo, **opts):
    opts = _byteskwargs(opts)
    timer, fm = gettimer(ui, opts)
  • cmd = sys.argv[0] + cmd = fsencode(sys.argv[0])

Applying fsencode() on sys.argv is probably wrong on Windows, but it's perf.py,
I don't care.

Mon, Oct 15, 11:05 PM
mharbison72 committed rHG3570adf20d91: help: fix a missing quote character in ui.tweakdefaults.
help: fix a missing quote character in ui.tweakdefaults
Mon, Oct 15, 2:05 AM

Sun, Oct 14

mharbison72 committed rHG52b773f5e9a4: tests: replace `cd ..` with an absolute path in a couple ssh tests.
tests: replace `cd ..` with an absolute path in a couple ssh tests
Sun, Oct 14, 12:52 AM
mharbison72 committed rHG8783710b1d58: run-tests: restore quoting the python executable for running *.py tests.
run-tests: restore quoting the python executable for running *.py tests
Sun, Oct 14, 12:52 AM
mharbison72 committed rHG9c4cbbb0fc51: lfs: register the flag processors per repository.
lfs: register the flag processors per repository
Sun, Oct 14, 12:52 AM
mharbison72 committed rHG9d5ddf55415b: revlog: allow flag processors to be applied via store options.
revlog: allow flag processors to be applied via store options
Sun, Oct 14, 12:52 AM
mharbison72 committed rHGab04ce6f0674: py3: use str to query registry values on Windows.
py3: use str to query registry values on Windows
Sun, Oct 14, 12:52 AM

Fri, Oct 12

mharbison72 committed rHG38ac525b44c9: phabricator: drop support for the legacy phabricator.auth.token config (BC).
phabricator: drop support for the legacy phabricator.auth.token config (BC)
Fri, Oct 12, 1:42 AM
mharbison72 committed rHG1be1689d9ce9: absorb: print '{rev}:' as a prefix to the hash.
absorb: print '{rev}:' as a prefix to the hash
Fri, Oct 12, 1:42 AM
mharbison72 committed rHG535fc8a22365: lfs: avoid a potential variable reference before assignment error in cmdserver.
lfs: avoid a potential variable reference before assignment error in cmdserver
Fri, Oct 12, 1:32 AM

Thu, Oct 11

mharbison72 added inline comments to D4939: logtoprocess: use new runbgcommand from procutil.
Thu, Oct 11, 12:09 PM

Fri, Oct 5

mharbison72 added a comment to D4750: filelog: stop proxying rawsize() (API).

Apparently thg uses this to avoid loading the data into memory just to figure out the length like fctx.rawsize(). Any suggestions?

Fri, Oct 5, 12:37 AM
mharbison72 added a comment to D4778: wireprotov2: client support for following content redirects.

Windows doesn't like this test, and gets a connection refused. Under the glob is the machine name instead of $LOCALIP that is used above it. Obviously this isn't the right fix, but this makes the test run on Windows to illustrate it's not something else:

Fri, Oct 5, 12:12 AM

Thu, Oct 4

mharbison72 added a comment to D4713: largefiles: automatically load largefiles extension when required (BC).
In D4713#73260, @yuja wrote:

IIUC, we would have to enable the largefiles extension once to clone the
repo, but that's no longer needed. So you can enable the extension without
hearing its name at all.

Perhaps, a warning can be displayed when the non-core repository requirement
is added?

Thu, Oct 4, 12:36 AM

Wed, Oct 3

mharbison72 committed rHG138e2d6d3b53: setup: ignore message about disabling 3rd party extensions because of version.
setup: ignore message about disabling 3rd party extensions because of version
Wed, Oct 3, 8:29 AM

Tue, Oct 2

mharbison72 added a comment to D4713: largefiles: automatically load largefiles extension when required (BC).
In D4713#73077, @yuja wrote:
> Can we add some warnings here? The largefiles is IMHO one of the most buggy
>  extensions, and loading it has a side effect (e.g. fsmonitor is disabled.)
>  It shouldn't be silently loaded into the process.


I get what you’re thinking, but maybe a debug message is better than a warning, even though it’s less visible. I’m concerned about every invocation being unnecessarily noisy now that .hg/hgrc isn’t updated,

I don't think a debug message would work because ordinary users will never
see it. Is that common to work on largefiles repo without enabling the
extension globally?

Tue, Oct 2, 11:19 PM
mharbison72 committed rHGa339b5e0d7c6: py3: suppress the output from .write() calls in more tests.
py3: suppress the output from .write() calls in more tests
Tue, Oct 2, 8:50 AM
mharbison72 committed rHG8d41097dfe7d: py3: byteify test-lfs.t.
py3: byteify test-lfs.t
Tue, Oct 2, 8:50 AM
mharbison72 committed rHGe1f97179a3f5: lfs: explicitly name a key when sorting blob pointers.
lfs: explicitly name a key when sorting blob pointers
Tue, Oct 2, 8:50 AM
mharbison72 committed rHG5ee3146c1b20: py3: byteify test-lock.py.
py3: byteify test-lock.py
Tue, Oct 2, 8:50 AM
mharbison72 committed rHG1004c8892e63: py3: suppress the output from .write() calls in more tests.
py3: suppress the output from .write() calls in more tests
Tue, Oct 2, 7:59 AM
mharbison72 committed rHGcc7ca11488b6: py3: byteify test-lfs.t.
py3: byteify test-lfs.t
Tue, Oct 2, 7:59 AM
mharbison72 committed rHG801c625cfaf1: lfs: explicitly name a key when sorting blob pointers.
lfs: explicitly name a key when sorting blob pointers
Tue, Oct 2, 7:59 AM
mharbison72 committed rHGcf0aa4ef4c9a: py: byteify test-lock.py.
py: byteify test-lock.py
Tue, Oct 2, 7:59 AM
mharbison72 added a comment to D4713: largefiles: automatically load largefiles extension when required (BC).
In D4713#72604, @yuja wrote:
  1. Map of requirements to list of extensions to load automatically when
  2. requirement is present. autoextensions = { + b'largefiles': [b'largefiles'], b'lfs': [b'lfs'], }

Can we add some warnings here? The largefiles is IMHO one of the most buggy
extensions, and loading it has a side effect (e.g. fsmonitor is disabled.)
It shouldn't be silently loaded into the process.

Tue, Oct 2, 1:22 AM
mharbison72 committed rHGdb7666f1dea8: py3: suppress the output from .write() calls in more tests.
py3: suppress the output from .write() calls in more tests
Tue, Oct 2, 1:21 AM
mharbison72 committed rHG2f58aba48af1: py3: byteify test-lfs.t.
py3: byteify test-lfs.t
Tue, Oct 2, 1:21 AM
mharbison72 committed rHG8553d1bac578: lfs: explicitly name a key when sorting blob pointers.
lfs: explicitly name a key when sorting blob pointers
Tue, Oct 2, 1:21 AM
mharbison72 committed rHGe986c986713c: py: byteify test-lock.py.
py: byteify test-lock.py
Tue, Oct 2, 1:21 AM
mharbison72 committed rHGa063b84ce064: py3: byteify contrib/dumprevlog.
py3: byteify contrib/dumprevlog
Tue, Oct 2, 1:19 AM
mharbison72 committed rHG2b4c8fa08504: py3: quote $PYTHON in test-merge-symlinks.t.
py3: quote $PYTHON in test-merge-symlinks.t
Tue, Oct 2, 1:19 AM

Mon, Oct 1

mharbison72 committed rHG8bd589aecf65: py3: avoid b'' output in test-hgweb-non-interactive.t.
py3: avoid b'' output in test-hgweb-non-interactive.t
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG7b35209ba1a7: py3: convert print to a function call in a few tests.
py3: convert print to a function call in a few tests
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG6e2c8f7f894e: py3: byteify windows.shelltocmdexe().
py3: byteify windows.shelltocmdexe()
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG0f8ff3ff5d5c: run-tests: flush output stream before prompting to accept changes.
run-tests: flush output stream before prompting to accept changes
Mon, Oct 1, 12:28 PM
mharbison72 committed rHGd1bc6cf2be69: py3: use util.forcebytestr() to convert push lock error to bytes.
py3: use util.forcebytestr() to convert push lock error to bytes
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG4017968f0a1d: util: use a context manager in readlock().
util: use a context manager in readlock()
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG5fe0b880200e: py3: convert os.readlink() path to native strings on Windows.
py3: convert os.readlink() path to native strings on Windows
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG803b7569c9ea: py3: suppress the output from .write() calls in the remaining tests.
py3: suppress the output from .write() calls in the remaining tests
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG8d6ab33a61b2: py3: conditionalize json float precision difference in test-debugcommands.t.
py3: conditionalize json float precision difference in test-debugcommands.t
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG8a42aa04ef36: py3: byteify extension in test-debugcommands.t.
py3: byteify extension in test-debugcommands.t
Mon, Oct 1, 12:28 PM
mharbison72 committed rHGb55747ca518f: py3: ensure printing to stdout uses str in test-hgweb-no-request-uri.t.
py3: ensure printing to stdout uses str in test-hgweb-no-request-uri.t
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG9c8eff5cfa1b: py3: mask out None type when printing in `debuglocks`.
py3: mask out None type when printing in `debuglocks`
Mon, Oct 1, 12:28 PM
mharbison72 committed rHG2209e72f9fcb: py3: ensure standard exceptions use `str` type strings in windows.py.
py3: ensure standard exceptions use `str` type strings in windows.py
Mon, Oct 1, 12:28 PM
mharbison72 committed rHGc841e8855cd3: py3: replace a StandardError reference.
py3: replace a StandardError reference
Mon, Oct 1, 12:28 PM

Sun, Sep 30

mharbison72 committed rHG8098b34333c3: py3: avoid b'' output in test-hgweb-non-interactive.t.
py3: avoid b'' output in test-hgweb-non-interactive.t
Sun, Sep 30, 9:43 AM
mharbison72 committed rHGc3181ceb5553: py3: convert print to a function call in a few tests.
py3: convert print to a function call in a few tests
Sun, Sep 30, 9:43 AM
mharbison72 committed rHG1cf8b7768510: py3: convert print to a function call in a few tests.
py3: convert print to a function call in a few tests
Sun, Sep 30, 8:30 AM
mharbison72 committed rHGb108b4298446: py3: avoid b'' output in test-hgweb-non-interactive.t.
py3: avoid b'' output in test-hgweb-non-interactive.t
Sun, Sep 30, 8:30 AM
mharbison72 committed rHG41a23e3f3470: py3: use util.forcebytestr() to convert push lock error to bytes.
py3: use util.forcebytestr() to convert push lock error to bytes
Sun, Sep 30, 8:30 AM
mharbison72 committed rHGf8258daba33a: py3: byteify windows.shelltocmdexe().
py3: byteify windows.shelltocmdexe()
Sun, Sep 30, 8:30 AM
mharbison72 committed rHG53867269b981: run-tests: flush output stream before prompting to accept changes.
run-tests: flush output stream before prompting to accept changes
Sun, Sep 30, 8:30 AM

Sat, Sep 29

mharbison72 committed rHGa87853927584: util: use a context manager in readlock().
util: use a context manager in readlock()
Sat, Sep 29, 9:13 PM
mharbison72 committed rHG7f3bcc72ff40: py3: convert os.readlink() path to native strings on Windows.
py3: convert os.readlink() path to native strings on Windows
Sat, Sep 29, 9:13 PM
mharbison72 committed rHGfb63752ab1b0: py3: suppress the output from .write() calls in the remaining tests.
py3: suppress the output from .write() calls in the remaining tests
Sat, Sep 29, 8:19 PM
mharbison72 committed rHG998241ca120e: py3: conditionalize json float precision difference in test-debugcommands.t.
py3: conditionalize json float precision difference in test-debugcommands.t
Sat, Sep 29, 8:19 PM
mharbison72 committed rHG4c15238e823b: py3: byteify extension in test-debugcommands.t.
py3: byteify extension in test-debugcommands.t
Sat, Sep 29, 8:19 PM

Fri, Sep 28

mharbison72 committed rHG0a4c576825b9: py3: ensure printing to stdout uses str in test-hgweb-no-request-uri.t.
py3: ensure printing to stdout uses str in test-hgweb-no-request-uri.t
Fri, Sep 28, 8:02 AM

Thu, Sep 27

mharbison72 committed rHG549bc25529a2: py3: mask out None type when printing in `debuglocks`.
py3: mask out None type when printing in `debuglocks`
Thu, Sep 27, 7:30 AM
mharbison72 committed rHGe37a4df2bf15: py3: ensure standard exceptions use `str` type strings in windows.py.
py3: ensure standard exceptions use `str` type strings in windows.py
Thu, Sep 27, 7:30 AM
mharbison72 committed rHG88db05d80c8b: py3: replace a StandardError reference.
py3: replace a StandardError reference
Thu, Sep 27, 7:29 AM

Wed, Sep 26

mharbison72 committed rHGf1d6021453c2: py3: remove a couple of superfluous calls to pycompat.rapply().
py3: remove a couple of superfluous calls to pycompat.rapply()
Wed, Sep 26, 7:49 AM
mharbison72 committed rHG91d63fd58e7d: py3: byteify an inline python test extension.
py3: byteify an inline python test extension
Wed, Sep 26, 7:49 AM
mharbison72 committed rHGd1e0b905c59d: py3: conditionalize access to socketserver.ForkingMixIn.
py3: conditionalize access to socketserver.ForkingMixIn
Wed, Sep 26, 7:49 AM
mharbison72 committed rHG28626957395a: convert: fix a file descriptor leak.
convert: fix a file descriptor leak
Wed, Sep 26, 7:49 AM

Tue, Sep 25

mharbison72 added a comment to D4711: localrepo: automatically load lfs extension when required (BC).

I actually wrote the patch to add the lfs requirement on clone. However, the way lfs is advertised on the server is a bit buggy. See https://hg.mozilla.org/users/gszorc_mozilla.com/hg/rev/d39bf70535a5.

I could solve this problem if I wanted to. But I have other aspects of the code I'd prefer to work on.

Tue, Sep 25, 12:27 PM
mharbison72 committed rHGe5871e8fbb57: py3: update missing module list in test-check-py3-compat.t for Windows.
py3: update missing module list in test-check-py3-compat.t for Windows
Tue, Sep 25, 9:58 AM
mharbison72 committed rHGc31ce080eb75: py3: convert arguments, cwd and env to native strings when spawning subprocess.
py3: convert arguments, cwd and env to native strings when spawning subprocess
Tue, Sep 25, 8:48 AM
mharbison72 committed rHG874712506b07: py3: apply byteskwargs to contrib/perf.
py3: apply byteskwargs to contrib/perf
Tue, Sep 25, 8:48 AM
mharbison72 committed rHGdb875f97a969: py3: un-byteify strings around os.system() and os.devnull in contrib/perf.
py3: un-byteify strings around os.system() and os.devnull in contrib/perf
Tue, Sep 25, 8:48 AM
mharbison72 committed rHGc4ab9fa81377: py3: work around the lack of sys.maxint in contrib/perf.
py3: work around the lack of sys.maxint in contrib/perf
Tue, Sep 25, 8:48 AM
mharbison72 committed rHG6787dc1b93a9: py3: handle sysstr conversion around get/set attr in contrib/perf.
py3: handle sysstr conversion around get/set attr in contrib/perf
Tue, Sep 25, 8:48 AM
mharbison72 committed rHG86dbeb7c9a11: py3: switch contrib/perf from xrange to pycompat.xrange.
py3: switch contrib/perf from xrange to pycompat.xrange
Tue, Sep 25, 8:48 AM
mharbison72 committed rHG68ea1f8dcb84: py3: proxy posixfile objects to re-add a useful 'name' attribute on Windows.
py3: proxy posixfile objects to re-add a useful 'name' attribute on Windows
Tue, Sep 25, 8:48 AM
mharbison72 committed rHGfb628c048d64: py3: don't use os.getcwdb() on Windows to avoid DeprecationWarnings.
py3: don't use os.getcwdb() on Windows to avoid DeprecationWarnings
Tue, Sep 25, 8:48 AM
mharbison72 committed rHG24e493ec2229: py3: rename pycompat.getcwd() to encoding.getcwd() (API).
py3: rename pycompat.getcwd() to encoding.getcwd() (API)
Tue, Sep 25, 8:48 AM