Fri, 08 Nov 2019 11:19:20 -0800 cleanup: remove pointless r-prefixes on single-quoted strings
Augie Fackler <augie@google.com> [Fri, 08 Nov 2019 11:19:20 -0800] rev 43554
cleanup: remove pointless r-prefixes on single-quoted strings This is the promised second step on single-quoted strings. These had existed because our source transformer didn't turn r'' into b'', so we had tagged some strings as r-strings to get "native" strings on both Pythons. Now that the transformer is gone, we can dispense with this nonsense. Methodology: I ran hg locate 'set:added() or modified() or clean()' | egrep '.*\.py$' | xargs egrep --color=never -n -- \[\^b\]\[\^a-z\]r\'\[\^\'\\\\\]\*\'\[\^\'\ in an emacs grep-mode buffer, and then used a keyboard macro to iterate over the results and remove the r prefix as needed. # skip-blame removing unneeded r prefixes left over from Python 3 migration. Differential Revision: https://phab.mercurial-scm.org/D7306
Sun, 10 Nov 2019 07:30:14 -0800 rust-threads: force Rayon to respect the worker count in config
Raphaël Gomès <rgomes@octobus.net> [Sun, 10 Nov 2019 07:30:14 -0800] rev 43553
rust-threads: force Rayon to respect the worker count in config As per the inline comment, this is a workaround because Rust code does not yet know how to read config files. Differential Revision: https://phab.mercurial-scm.org/D7310
Fri, 18 Oct 2019 07:20:26 +0100 phabricator: use context manager form of progress in uploadchunks
Ian Moody <moz-ian@perix.co.uk> [Fri, 18 Oct 2019 07:20:26 +0100] rev 43552
phabricator: use context manager form of progress in uploadchunks Follow-up to 453079605242 / D7046. Differential Revision: https://phab.mercurial-scm.org/D7134
Thu, 07 Nov 2019 13:18:19 -0500 cleanup: remove pointless r-prefixes on double-quoted strings
Augie Fackler <augie@google.com> [Thu, 07 Nov 2019 13:18:19 -0500] rev 43551
cleanup: remove pointless r-prefixes on double-quoted strings This is only double-quoted strings. I'll do single-quoted strings as a second step. These had existed because our source transformer didn't turn r"" into b"", so we had tagged some strings as r-strings to get "native" strings on both Pythons. Now that the transformer is gone, we can dispense with this nonsense. Methodology: I ran hg locate 'set:added() or modified() or clean()' | egrep '.*\.py$' | xargs egrep --color=never -n -- \[\^a-z\]r\"\[\^\"\\\\\]\*\"\[\^\"\] in an emacs grep-mode buffer, and then used a keyboard macro to iterate over the results and remove the r prefix as needed. # skip-blame removing unneeded r prefixes left over from Python 3 migration. Differential Revision: https://phab.mercurial-scm.org/D7305
Thu, 07 Nov 2019 03:59:22 -0800 formatting: remove another data-ogre from the config example
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 03:59:22 -0800] rev 43550
formatting: remove another data-ogre from the config example The fix extension will pass the contents on stdin and read the output from stdout. By invoking `rustfmt` as `rustfmt {rootpath}`, we tell rustfmt to format the given path and update it on disk. That also makes rustftm not produce the formatted output to stdout. So the fix extension ends up writing out empty files. Differential Revision: https://phab.mercurial-scm.org/D7304
Thu, 07 Nov 2019 03:46:48 -0800 fix: replace str() by b'%d' for formatting integer
Martin von Zweigbergk <martinvonz@google.com> [Thu, 07 Nov 2019 03:46:48 -0800] rev 43549
fix: replace str() by b'%d' for formatting integer Differential Revision: https://phab.mercurial-scm.org/D7303
Thu, 08 Jan 2009 02:03:00 +0000 zeroconf: improve the extension's documentation
Vernon Tang <vt@foilhead.net> [Thu, 08 Jan 2009 02:03:00 +0000] rev 43548
zeroconf: improve the extension's documentation Differential Revision: https://phab.mercurial-scm.org/D7302
Wed, 06 Nov 2019 16:30:14 -0500 branchmap: pytype is confused about bytestr
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 16:30:14 -0500] rev 43547
branchmap: pytype is confused about bytestr Differential Revision: https://phab.mercurial-scm.org/D7290
Wed, 06 Nov 2019 15:34:40 -0500 mail: suppress a pytype error that's just experimentally wrong
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:34:40 -0500] rev 43546
mail: suppress a pytype error that's just experimentally wrong It's probably more correct to pass a str here, but I'm not going to worry about it for now. Differential Revision: https://phab.mercurial-scm.org/D7283
Wed, 06 Nov 2019 15:12:13 -0500 dagparser: suppress some pytype errors around pycompat.bytestring
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:12:13 -0500] rev 43545
dagparser: suppress some pytype errors around pycompat.bytestring I can't justify why we're getting these errors, but nothing I do fixes these handful of calls, so let's just move on with suppressions. Differential Revision: https://phab.mercurial-scm.org/D7277
Wed, 06 Nov 2019 14:48:34 -0500 encoding: add comment-based type hints for pytype
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:48:34 -0500] rev 43544
encoding: add comment-based type hints for pytype Differential Revision: https://phab.mercurial-scm.org/D7275
Fri, 08 Nov 2019 23:26:50 +0900 merge with stable
Yuya Nishihara <yuya@tcha.org> [Fri, 08 Nov 2019 23:26:50 +0900] rev 43543
merge with stable
Thu, 17 Oct 2019 19:29:22 -0400 dirs: reject consecutive slashes in paths
Augie Fackler <augie@google.com> [Thu, 17 Oct 2019 19:29:22 -0400] rev 43542
dirs: reject consecutive slashes in paths We shouldn't ever see those, and the fuzzer go really excited that if it gives us a 65k string with 55k slashes in it we use a lot of RAM. This is a better fix than what I tried in D7105. It was suggested by Yuya, and I verified it does in fact cause the fuzzer to not OOM. This is a revision of D7234, but with the missing set of an error added. I added a unit test of the dirs behavior because I needed to reason more carefully about the failure modes around consecutive slashes. Differential Revision: https://phab.mercurial-scm.org/D7252
Tue, 05 Nov 2019 22:56:12 -0500 tests: quote $PYTHON in test-byteify-strings.t
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Nov 2019 22:56:12 -0500] rev 43541
tests: quote $PYTHON in test-byteify-strings.t This is needed because the default install location is "Program Files" on Windows. Differential Revision: https://phab.mercurial-scm.org/D7251
Wed, 06 Nov 2019 00:35:41 -0800 repoview: define filteredchangelog as a top-level (non-local) class
Martin von Zweigbergk <martinvonz@google.com> [Wed, 06 Nov 2019 00:35:41 -0800] rev 43540
repoview: define filteredchangelog as a top-level (non-local) class As suggested by Greg. This makes it easier for extensions to override the filtering. Differential Revision: https://phab.mercurial-scm.org/D7256
Wed, 06 Nov 2019 17:35:24 -0500 cmdutil: suppress bogus pytype errors
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 17:35:24 -0500] rev 43539
cmdutil: suppress bogus pytype errors pytype seems to handle our subclass of tuple (scmutil.status) especially poorly. We should probably file a bug. Differential Revision: https://phab.mercurial-scm.org/D7294
Wed, 06 Nov 2019 17:25:43 -0500 changegroup: suppress pytype error that's wrong
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 17:25:43 -0500] rev 43538
changegroup: suppress pytype error that's wrong Differential Revision: https://phab.mercurial-scm.org/D7293
Wed, 06 Nov 2019 17:23:47 -0500 changegroup: avoid shadowing a set with an int
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 17:23:47 -0500] rev 43537
changegroup: avoid shadowing a set with an int This confuses the heck out of pytype, and I basically agree with it that this shadowing is confusing. There's a chance this causes some memory to be freed later, but I think it's probably not worth worrying about for now. Differential Revision: https://phab.mercurial-scm.org/D7292
Wed, 06 Nov 2019 17:19:33 -0500 bundle2: more pytype suppressions around bytestring
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 17:19:33 -0500] rev 43536
bundle2: more pytype suppressions around bytestring We clearly need to work around this somehow. Differential Revision: https://phab.mercurial-scm.org/D7291
Wed, 06 Nov 2019 16:26:53 -0500 archival: suppress some incorrect pytype failures
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 16:26:53 -0500] rev 43535
archival: suppress some incorrect pytype failures Again, I suspect some missing coverage in type stubs for the stdlib. I'll revisit these later. Differential Revision: https://phab.mercurial-scm.org/D7288
Wed, 06 Nov 2019 15:42:30 -0500 simplemerge: disable a pytype error where it's just confused
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:42:30 -0500] rev 43534
simplemerge: disable a pytype error where it's just confused Differential Revision: https://phab.mercurial-scm.org/D7287
Wed, 06 Nov 2019 15:42:12 -0500 match: suppress error about subscripting an exception
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:42:12 -0500] rev 43533
match: suppress error about subscripting an exception I get the sense I should file a bug about subscripting Exception subclasses. Differential Revision: https://phab.mercurial-scm.org/D7286
Wed, 06 Nov 2019 15:35:44 -0500 vfs: more attribute suppressions
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:35:44 -0500] rev 43532
vfs: more attribute suppressions Differential Revision: https://phab.mercurial-scm.org/D7285
Wed, 06 Nov 2019 15:35:21 -0500 mdiff: mark diffopts as having dynamic attributes
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:35:21 -0500] rev 43531
mdiff: mark diffopts as having dynamic attributes This class looks like we could move it to being an attrs and life would be better, but let's do that later. Differential Revision: https://phab.mercurial-scm.org/D7284
Wed, 06 Nov 2019 15:29:08 -0500 vfs: suppress some pytype errors around us using a private attribute
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:29:08 -0500] rev 43530
vfs: suppress some pytype errors around us using a private attribute Looking at threading._MainThread seems like we're probably a little unsupported, but since this code appears to work on both Python 2 and 3 I'm not going to sweat this for now. Differential Revision: https://phab.mercurial-scm.org/D7282
Wed, 06 Nov 2019 15:24:44 -0500 wireprototypes: disable pytype where it's just confused
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:24:44 -0500] rev 43529
wireprototypes: disable pytype where it's just confused By inspection validnames is always a Set[bytes] here, but for some reason pytype is convinced it's a bytes. Let's disable the error for now. Differential Revision: https://phab.mercurial-scm.org/D7281
Wed, 06 Nov 2019 15:16:04 -0500 scmposix: another suppression on IOError subscripting
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:16:04 -0500] rev 43528
scmposix: another suppression on IOError subscripting As before, this will clear up when we move to Python 3-only. Differential Revision: https://phab.mercurial-scm.org/D7280
Wed, 06 Nov 2019 15:15:42 -0500 pvec: add an explicit type hint to help pytype
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:15:42 -0500] rev 43527
pvec: add an explicit type hint to help pytype Differential Revision: https://phab.mercurial-scm.org/D7279
Wed, 06 Nov 2019 15:12:46 -0500 procutil: suppress pytype warnings around windows-only attributes
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:12:46 -0500] rev 43526
procutil: suppress pytype warnings around windows-only attributes Differential Revision: https://phab.mercurial-scm.org/D7278
Wed, 06 Nov 2019 15:03:02 -0500 posix: add a pytype suppression
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:03:02 -0500] rev 43525
posix: add a pytype suppression This one seems a little sketchier than the others, but this will clean up when we're Python 3-only. Differential Revision: https://phab.mercurial-scm.org/D7276
Wed, 06 Nov 2019 14:48:22 -0500 color: suppress pytype warning on a windows-only module
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:48:22 -0500] rev 43524
color: suppress pytype warning on a windows-only module Differential Revision: https://phab.mercurial-scm.org/D7274
Wed, 06 Nov 2019 14:20:27 -0500 compression: tell pytype to not sweat a missing `zstd` module
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:20:27 -0500] rev 43523
compression: tell pytype to not sweat a missing `zstd` module Differential Revision: https://phab.mercurial-scm.org/D7273
Wed, 06 Nov 2019 17:46:26 -0500 pytype: don't warn us about ignored-on-py3 metaclasses
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 17:46:26 -0500] rev 43522
pytype: don't warn us about ignored-on-py3 metaclasses We can remove this when we're Python 3-only, but for now it's just too awkward to deal with and it's harmless. Differential Revision: https://phab.mercurial-scm.org/D7272
Wed, 06 Nov 2019 14:12:53 -0500 linelog: be more careful about types before looking for _target attribute
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:12:53 -0500] rev 43521
linelog: be more careful about types before looking for _target attribute Without this, pytype (correctly) complains that fakejge might not have a _cmprev attribute. We're operating on some constraints not expressible in the type system, so we detect the invalid case and raise a nicer exception now. Sadly, we also need an `assert` to give PyType a clue that we know what we're doing, but I can absolutely live with that. Differential Revision: https://phab.mercurial-scm.org/D7271
Wed, 06 Nov 2019 14:11:29 -0500 linelog: suppress annoying pytype warning about an ignored metaclass
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:11:29 -0500] rev 43520
linelog: suppress annoying pytype warning about an ignored metaclass This isn't actively hurting us right now, and it's not trivial to set up this metaclass correctly on both Python 2 and Python 3 without dragging in all of `six`, but we still get lots of typechecking goodness with this error suppressed. Differential Revision: https://phab.mercurial-scm.org/D7270
Wed, 06 Nov 2019 14:10:09 -0500 hgignore: ignore generated pytype stubs
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:10:09 -0500] rev 43519
hgignore: ignore generated pytype stubs Differential Revision: https://phab.mercurial-scm.org/D7269
Wed, 06 Nov 2019 14:09:36 -0500 hghave: add a check for pytype, Google's Python type checker
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:09:36 -0500] rev 43518
hghave: add a check for pytype, Google's Python type checker I'm not unbiased, but I strongly prefer pytype to mypy: it does more inference, so we don't need as many annontations. In theory we can use both, but since I'm doing some tinkering with pytype I figured I'd just try setting it up. Differential Revision: https://phab.mercurial-scm.org/D7268
Wed, 06 Nov 2019 15:13:23 -0500 encoding: define local identify functions with explicit type comments
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:13:23 -0500] rev 43517
encoding: define local identify functions with explicit type comments This removes some obfuscation as far as pytype is concerned and corrects many bogus type errors. Differential Revision: https://phab.mercurial-scm.org/D7267
Wed, 06 Nov 2019 15:19:23 -0500 vfs: add NotImplementedError version of join
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:19:23 -0500] rev 43516
vfs: add NotImplementedError version of join Again, this helps out pytype. Differential Revision: https://phab.mercurial-scm.org/D7266
Wed, 06 Nov 2019 15:11:30 -0500 vfs: add a NotImplementedError implementation of __call__
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:11:30 -0500] rev 43515
vfs: add a NotImplementedError implementation of __call__ This helps pytype considerably on this file. Differential Revision: https://phab.mercurial-scm.org/D7265
Wed, 06 Nov 2019 15:19:56 -0500 vfs: fix erroneous bytes constants
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:19:56 -0500] rev 43514
vfs: fix erroneous bytes constants Detected with pytype. Differential Revision: https://phab.mercurial-scm.org/D7264
Wed, 06 Nov 2019 15:17:38 -0500 pvec: migrate to modern integer division
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:17:38 -0500] rev 43513
pvec: migrate to modern integer division Detected with pytype. Differential Revision: https://phab.mercurial-scm.org/D7263
Wed, 06 Nov 2019 17:46:12 -0500 templateutil: fix a missing ABCMeta assignment
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 17:46:12 -0500] rev 43512
templateutil: fix a missing ABCMeta assignment Caught by pytype. Differential Revision: https://phab.mercurial-scm.org/D7262
Wed, 06 Nov 2019 15:15:00 -0500 pvec: fix overlooked chr() call
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:15:00 -0500] rev 43511
pvec: fix overlooked chr() call Caught by pytype. Differential Revision: https://phab.mercurial-scm.org/D7261
Wed, 06 Nov 2019 15:29:28 -0500 vfs: another bytes-str confusion on thread name
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 15:29:28 -0500] rev 43510
vfs: another bytes-str confusion on thread name Differential Revision: https://phab.mercurial-scm.org/D7260
Wed, 06 Nov 2019 14:19:05 -0500 statprof: correctly always pass a str as the thread name
Augie Fackler <augie@google.com> [Wed, 06 Nov 2019 14:19:05 -0500] rev 43509
statprof: correctly always pass a str as the thread name Caught by pytype. Differential Revision: https://phab.mercurial-scm.org/D7259
Wed, 06 Nov 2019 13:46:16 +0100 rust-status: remove dead code
Raphaël Gomès <rgomes@octobus.net> [Wed, 06 Nov 2019 13:46:16 +0100] rev 43508
rust-status: remove dead code The `walk_explicit` function is only called when using a prefix matcher, which the Rust code does not yet support. This function will return in a future patch, probably with a different signature for performance reasons. With it, the `files` argument and its interface code can be removed for now. Differential Revision: https://phab.mercurial-scm.org/D7253
Tue, 05 Nov 2019 18:32:00 -0500 hghave: disallow symlinks on Windows
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Nov 2019 18:32:00 -0500] rev 43507
hghave: disallow symlinks on Windows Symlinks on Windows require either a special priviledge, or enabling Developer Mode. It's probably the latter that is enabled on the new CI machine. But since Mercurial itself is saying no to symlinks on Windows, the tests for symlinks shouldn't be attempted. This should fix a lot of the noise in the py3 tests. Differential Revision: https://phab.mercurial-scm.org/D7233
Tue, 05 Nov 2019 15:00:44 -0800 repoview: avoid wrapping changelog if there's nothing to filter
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 15:00:44 -0800] rev 43506
repoview: avoid wrapping changelog if there's nothing to filter This simplifies the code a bit by moving the optimizaton for no filtered revisions to one place. I assume it also makes working with repos without obsmarkers a little faster, but it doesn't seem significant. Differential Revision: https://phab.mercurial-scm.org/D7248
Tue, 05 Nov 2019 14:33:02 -0800 repoview: move changelog.flags() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:33:02 -0800] rev 43505
repoview: move changelog.flags() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7247
Tue, 05 Nov 2019 14:31:50 -0800 repoview: move changelog.parentrevs() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:31:50 -0800] rev 43504
repoview: move changelog.parentrevs() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7246
Tue, 05 Nov 2019 14:23:32 -0800 repoview: move changelog.linkrev() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:23:32 -0800] rev 43503
repoview: move changelog.linkrev() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7245
Tue, 05 Nov 2019 14:22:25 -0800 repoview: move changelog.node() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:22:25 -0800] rev 43502
repoview: move changelog.node() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7244
Tue, 05 Nov 2019 14:21:47 -0800 repoview: move changelog.rev() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:21:47 -0800] rev 43501
repoview: move changelog.rev() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7243
Tue, 05 Nov 2019 14:17:58 -0800 repoview: move changelog.strip() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:17:58 -0800] rev 43500
repoview: move changelog.strip() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7242
Tue, 05 Nov 2019 14:16:46 -0800 repoview: move changelog.headrevs() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:16:46 -0800] rev 43499
repoview: move changelog.headrevs() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7241
Tue, 05 Nov 2019 14:14:45 -0800 repoview: move changelog.revs() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:14:45 -0800] rev 43498
repoview: move changelog.revs() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7240
Tue, 05 Nov 2019 14:12:10 -0800 repoview: move changelog.__iter__() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:12:10 -0800] rev 43497
repoview: move changelog.__iter__() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7239
Tue, 05 Nov 2019 14:11:30 -0800 repoview: move changelog.__contains__() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:11:30 -0800] rev 43496
repoview: move changelog.__contains__() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7238
Tue, 05 Nov 2019 14:07:08 -0800 repoview: move changelog.tiprev() override to filteredchangelog
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Nov 2019 14:07:08 -0800] rev 43495
repoview: move changelog.tiprev() override to filteredchangelog Differential Revision: https://phab.mercurial-scm.org/D7237
(0) -30000 -10000 -3000 -1000 -300 -100 -60 +60 +100 +300 +1000 +3000 tip