##// END OF EJS Templates
contrib: add a bat file to build all of the wheels on Windows...
contrib: add a bat file to build all of the wheels on Windows This is duplicated from the current CI config, to be able to build releases consistently outside of CI. I don't like the duplication, but I'm not worried about things changing too often, so I'm not bothering with PowerShell or some form that would allow execution by the CI runner. We should consider putting the config in `pyproject.toml`, where things like what python versions to support can be centrally controlled for all platforms. The output directory is different from CI here, but that's fine because it is intended to run this on a system that is *not* hosting the CI setup, and `dist/` is more standard. I dropped the `win32` part of the output because that implies the 32-bit Intel architecture. Apparently, arm64 builds are supported back to Python 3.9, but support is still experimental (with py3.13)[1]. The CI system starts arm64 support with Python 3.11, because that's the first version that an arm64 Python installer was available on Windows. This doesn't second guess that decision. The required `msgfmt.exe` was installed manually[2], as it isn't currently handled by the dependency installation script. Otherwise, this was successfully used with an activated venv based on Python 3.12.5, and only `cibuildwheel==2.21.3` installed. [1] https://cibuildwheel.pypa.io/en/stable/#what-does-it-do [2] https://github.com/mlocati/gettext-iconv-windows/releases/download/v0.22.5a-v1.17-r3/gettext0.22.5a-iconv1.17-shared-64.exe

File last commit:

r53162:ea9cbb0f stable
r53162:ea9cbb0f stable
Show More
test-check-code.t
98 lines | 3.6 KiB | text/troff | Tads3Lexer
/ tests / test-check-code.t
Pierre-Yves David
tests: move the '-hg' postfix for all style tests...
r27368 #require test-repo
timeless
tests: silence test-repo obsolete warning...
r29219 $ . "$TESTDIR/helpers-testrepo.sh"
Pierre-Yves David
tests: move the '-hg' postfix for all style tests...
r27368 $ check_code="$TESTDIR"/../contrib/check-code.py
$ cd "$TESTDIR"/..
New errors are not allowed. Warnings are strongly discouraged.
(The writing "no-che?k-code" is for not skipping this file when checking.)
Siddharth Agarwal
tests: disable lints on mercurial/thirdparty...
r34396 $ testrepohg locate \
> -X contrib/python-zstandard \
> -X hgext/fsmonitor/pywatchman \
> -X mercurial/thirdparty \
Victor Stinner
cext: add Python 3.10 support...
r47090 > -X mercurial/pythoncapi_compat.h \
Siddharth Agarwal
tests: disable lints on mercurial/thirdparty...
r34396 > | sed 's-\\-/-g' | "$check_code" --warnings --per-file=0 - || false
Gregory Szorc
automation: perform tasks on remote machines...
r42191 Skipping contrib/automation/hgautomation/__init__.py it has no-che?k-code (glob)
Skipping contrib/automation/hgautomation/aws.py it has no-che?k-code (glob)
Skipping contrib/automation/hgautomation/cli.py it has no-che?k-code (glob)
Gregory Szorc
automation: initial support for running Linux tests...
r42471 Skipping contrib/automation/hgautomation/linux.py it has no-che?k-code (glob)
Gregory Szorc
automation: implement "publish-windows-artifacts" command...
r43177 Skipping contrib/automation/hgautomation/pypi.py it has no-che?k-code (glob)
Gregory Szorc
automation: initial support for running Linux tests...
r42471 Skipping contrib/automation/hgautomation/ssh.py it has no-che?k-code (glob)
Gregory Szorc
automation: add a command to submit to a Try server...
r43327 Skipping contrib/automation/hgautomation/try_server.py it has no-che?k-code (glob)
Gregory Szorc
automation: perform tasks on remote machines...
r42191 Skipping contrib/automation/hgautomation/windows.py it has no-che?k-code (glob)
Skipping contrib/automation/hgautomation/winrm.py it has no-che?k-code (glob)
Augie Fackler
fuzz: use a more standard approach to allow local builds of fuzzers...
r44265 Skipping contrib/fuzz/FuzzedDataProvider.h it has no-che?k-code (glob)
Skipping contrib/fuzz/standalone_fuzz_target_runner.cc it has no-che?k-code (glob)
Gregory Szorc
packaging: consolidate CLI functionality into packaging.py...
r43913 Skipping contrib/packaging/hgpackaging/cli.py it has no-che?k-code (glob)
Gregory Szorc
packaging: split downloading code into own module...
r42074 Skipping contrib/packaging/hgpackaging/downloads.py it has no-che?k-code (glob)
Gregory Szorc
packaging: move Inno Setup core logic into a module...
r42077 Skipping contrib/packaging/hgpackaging/inno.py it has no-che?k-code (glob)
Gregory Szorc
packaging: support building Inno installer with PyOxidizer...
r45270 Skipping contrib/packaging/hgpackaging/pyoxidizer.py it has no-che?k-code (glob)
Gregory Szorc
packaging: establish hgpackaging package...
r42073 Skipping contrib/packaging/hgpackaging/util.py it has no-che?k-code (glob)
Gregory Szorc
wix: functionality to automate building WiX installers...
r42087 Skipping contrib/packaging/hgpackaging/wix.py it has no-che?k-code (glob)
Raphaël Gomès
fsmonitor: use new dirstate APIs (issue6728)...
r50363 Skipping hgext/fsmonitor/__init__.py it has no-che?k-code (glob)
Pierre-Yves David
tests: move the '-hg' postfix for all style tests...
r27368 Skipping i18n/polib.py it has no-che?k-code (glob)
Gregory Szorc
statprof: vendor statprof.py...
r30253 Skipping mercurial/statprof.py it has no-che?k-code (glob)
test-http-bad-server: move the extension in `testlib`...
r49451 Skipping tests/testlib/badserverext.py it has no-che?k-code (glob)
Gregory Szorc
tests: add test that @commands in debugcommands.py are sorted...
r30540
@commands in debugcommands.py should be in alphabetical order.
>>> import re
>>> commands = []
>>> with open('mercurial/debugcommands.py', 'rb') as fh:
... for line in fh:
Gregory Szorc
tests: use raw string in test-check-code.t...
r41688 ... m = re.match(br"^@command\('([a-z]+)", line)
Gregory Szorc
tests: add test that @commands in debugcommands.py are sorted...
r30540 ... if m:
... commands.append(m.group(1))
>>> scommands = list(sorted(commands))
>>> for i, command in enumerate(scommands):
... if command != commands[i]:
... print('commands in debugcommands.py not sorted; first differing '
... 'command is %s; expected %s' % (commands[i], command))
... break
Jun Wu
test-check-code: prevent files being added to the root directory...
r31726
Prevent adding new files in the root directory accidentally.
Yuya Nishihara
tests: alias syshg and syshgenv so they can be switched conditionally
r33199 $ testrepohg files 'glob:*'
Alex Gaynor
phabricator: include the suggested arc config in the repo...
r33584 .arcconfig
Augie Fackler
clang-format: configuration for the clang-format source formatter...
r34799 .clang-format
Jun Wu
test-check-code: prevent files being added to the root directory...
r31726 .editorconfig
Raphaël Gomès
heptapod: add `.gitattributes` file to improve language detection...
r51287 .gitattributes
Jun Wu
test-check-code: prevent files being added to the root directory...
r31726 .hgignore
.hgsigs
.hgtags
av6
hgweb: add .jshintrc with some basic rules...
r35163 .jshintrc
Jun Wu
test-check-code: prevent files being added to the root directory...
r31726 CONTRIBUTING
CONTRIBUTORS
COPYING
Makefile
David Demelier
doc: rename README to README.rst...
r34580 README.rst
Jun Wu
test-check-code: prevent files being added to the root directory...
r31726 hg
hgeditor
hgweb.cgi
Augie Fackler
pyproject: add config file...
r47531 pyproject.toml
Martin von Zweigbergk
rust: move rustfmt.toml to repo root so it can be used by `hg fix`...
r46195 rustfmt.toml
Jun Wu
test-check-code: prevent files being added to the root directory...
r31726 setup.py
Yuya Nishihara
test-check-code: prevent from adding Python modules shadowed by ancient C
r37822
Prevent adding modules which could be shadowed by ancient .so/.dylib.
$ testrepohg files \
> mercurial/base85.py \
> mercurial/bdiff.py \
> mercurial/diffhelpers.py \
> mercurial/mpatch.py \
> mercurial/osutil.py \
> mercurial/parsers.py \
> mercurial/zstd.py
[1]
Augie Fackler
tests: ensure the python 3 passing test list stays sorted...
r40199
Keep python3 tests sorted:
$ sort < contrib/python3-whitelist > $TESTTMP/py3sorted
$ cmp contrib/python3-whitelist $TESTTMP/py3sorted || echo 'Please sort passing tests!'
Gregory Szorc
tests: check for Windows line endings...
r44091
Keep Windows line endings in check
Matt Harbison
tests: use `testrepohg` in one more place in test-check-code.t...
r46546 $ testrepohg files 'set:eol(dos)'
Matt Harbison
contrib: add a bat file to build all of the wheels on Windows...
r53162 contrib/packaging/build-windows-wheels.bat
Gregory Szorc
tests: check for Windows line endings...
r44091 contrib/win32/hg.bat
contrib/win32/mercurial.ini