Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 19:47:35 -0500] rev 49884
sparse: fix a py2 based usage of `map()`
In a local pytype run, this fixes:
File "/mnt/c/Users/Matt/hg/hgext/sparse.py", line 386, in debugsparse:
unsupported operand type(s) for item retrieval: 'fcounts: Iterator[int]' and '0: int' [unsupported-operands]
No attribute '__getitem__' on 'fcounts: Iterator[int]'
File "/mnt/c/Users/Matt/hg/hgext/sparse.py", line 387, in debugsparse:
unsupported operand type(s) for item retrieval: 'fcounts: Iterator[int]' and '1: int' [unsupported-operands]
No attribute '__getitem__' on 'fcounts: Iterator[int]'
File "/mnt/c/Users/Matt/hg/hgext/sparse.py", line 388, in debugsparse:
unsupported operand type(s) for item retrieval: 'fcounts: Iterator[int]' and '2: int' [unsupported-operands]
No attribute '__getitem__' on 'fcounts: Iterator[int]'
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:38:14 -0500] rev 49883
histedit: byteify the help for the multifold action
While there's some allowance for str in `_()`, it's commented to be for "goofy
unicode docstrings in test", so no idea how well that works, but it should at
least come back as bytes. With HGPLAIN, however, the str isn't touched and is
returned as-is, so this seems like a real bug.
Anton Shestakov <av6@dwimlabs.net> [Wed, 11 Jan 2023 16:51:37 +0400] rev 49882
dirstate: add missing methods and kwargs to idirstate interface
Anton Shestakov <av6@dwimlabs.net> [Thu, 05 Jan 2023 19:52:00 +0400] rev 49881
dirstate: swap pathto() and get_entry() in idirstate
This way the order of methods in dirstate and idirstate classes is the same.
Just to make it easier to use diff tools to compare the two classes.
Anton Shestakov <av6@dwimlabs.net> [Thu, 05 Jan 2023 19:50:33 +0400] rev 49880
dirstate: update docstrings in idirstate from the current dirstate
Matt Harbison <matt_harbison@yahoo.com> [Wed, 04 Jan 2023 13:47:10 -0500] rev 49879
setup: drop legacy osx compiler tuning to enable universal builds
This was triggering deprecation warnings about migrating to `packaging.version`
from `distutils` Version classes with `make local`. But rather than migrate
that code, let's just get rid of some ~10-12 year old workarounds. As a bonus,
the cext libraries that are built are now universal binaries containing x86_64
and arm64 images (at least when built on macOS 11.4 with Xcode 12.5 and the
universal version of Python 3.9.13).
Several things to note here:
- Apple dropped support for 10.15 in Nov 2022, and OS X Lion that is
referenced is 10.7 (unsupported since late 2014)
- `xcode4` was basically always True because of the `>=` check (10.8 used
Xcode 5, and I have Xcode 10.2 on 10.14)
- `xcode51` was always False for modern-ish Xcode, because of the exact
version string matching
- Python 3.8 only supports OS X 10.9+; the Python 3.9.1+ universal installer
is macOS 11+ only, and Python 3.10 drops the x86_64 installer to deliver
only the universal installer.
All of this is to say, the only thing lost by dropping this code on modern Xcode
is that `os.environ['ARCHFLAGS'] = ''` is no longer set. But we probably
shouldn't be setting that anymore, as shown by the universal libraries now being
generated. I was able to `make local` and `python3 run-tests.py --local` with
python 3.9.9, Xcode 10.2, and macOS 10.14.6, and didn't incur any more than the
usual few test errors, so this should still work on some older versions of
macOS.
Anton Shestakov <av6@dwimlabs.net> [Mon, 09 Jan 2023 18:25:31 +0400] rev 49878
tests: optional PEP 657 error location in test-lfs-serve-access.t (
issue6782)
Matt Harbison <matt_harbison@yahoo.com> [Wed, 04 Jan 2023 00:20:27 -0500] rev 49877
tests: simplify `(py3 no-py36 !)` output matching predicates to `(no-py36 !)`
It's all py3 now.
Matt Harbison <matt_harbison@yahoo.com> [Wed, 04 Jan 2023 00:16:52 -0500] rev 49876
tests: drop `(py3 !)` output matching predicates
Presumably these were paired with `(no-py3 !)` at one point, but now they were
unconditionally true.
test-check-code.t required a couple of `(glob)` markers on the changed lines in
test-lfs-serve-access.t, because of the `$LOCALIP` usage on those lines. Not
sure how those lines slipped through the checks previously.
Matt Harbison <matt_harbison@yahoo.com> [Tue, 19 Jul 2022 16:46:37 -0400] rev 49875
run-tests: drop a workaround for python2
The problem is only on python3, but the awkward handling was because python2
didn't have this exception type. I've sporadically seen it running in WSL, but
no clue what it means.