Mercurial > hg
annotate tests/test-bad-pull.t @ 51730:63ede7a43a37 stable
demandimport: don't delay threading import
A recent cpython change breaks demandimport by importing threading
locally in importlib.util.LazyLoader.exec_module; add it (plus warnings
and _weakrefset, which are imported by threading) to demandimport's
ignore list.
```
Traceback (most recent call last):
File "/usr/bin/hg", line 57, in <module>
from mercurial import dispatch
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
File "/usr/lib/python3/dist-packages/hgdemandimport/demandimportpy3.py", line 52, in exec_module
super().exec_module(module)
File "<frozen importlib.util>", line 257, in exec_module
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
File "/usr/lib/python3/dist-packages/hgdemandimport/demandimportpy3.py", line 52, in exec_module
super().exec_module(module)
File "<frozen importlib.util>", line 267, in exec_module
AttributeError: partially initialized module 'threading' has no attribute 'RLock' (most likely due to a circular import)
```
Ref: https://github.com/python/cpython/issues/117983
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1076449
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1076747
author | Julien Cristau <jcristau@debian.org> |
---|---|
date | Fri, 26 Jul 2024 10:52:28 +0200 |
parents | ebee234d952a |
children |
rev | line source |
---|---|
37845
b4b7427b5786
tests: remove #require killdaemons
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32940
diff
changeset
|
1 #require serve |
15446
c5c9ca3719f9
tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents:
12376
diff
changeset
|
2 |
17019
5d0538599428
test-bad-pull: partially adjust for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
16496
diff
changeset
|
3 $ hg clone http://localhost:$HGPORT/ copy |
5d0538599428
test-bad-pull: partially adjust for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
16496
diff
changeset
|
4 abort: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
39707
diff
changeset
|
5 [100] |
395 | 6 |
15515
21766d5531cb
tests: remove hacks for testing if file or directory exists
Mads Kiilerich <mads@kiilerich.com>
parents:
15446
diff
changeset
|
7 $ test -d copy |
21766d5531cb
tests: remove hacks for testing if file or directory exists
Mads Kiilerich <mads@kiilerich.com>
parents:
15446
diff
changeset
|
8 [1] |
395 | 9 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
37845
diff
changeset
|
10 $ "$PYTHON" "$TESTDIR/dumbhttp.py" -p $HGPORT --pid dumb.pid |
22959
10116463b0b1
tests: pull common http server setup out of individual tests
Mike Hommey <mh@glandium.org>
parents:
22046
diff
changeset
|
11 $ cat dumb.pid >> $DAEMON_PIDS |
16334
b9bd95e61b49
tests: fix shutdown race in test-bad-pull
Matt Mackall <mpm@selenic.com>
parents:
16296
diff
changeset
|
12 $ hg clone http://localhost:$HGPORT/foo copy2 |
b9bd95e61b49
tests: fix shutdown race in test-bad-pull
Matt Mackall <mpm@selenic.com>
parents:
16296
diff
changeset
|
13 abort: HTTP Error 404: * (glob) |
45839
ebee234d952a
errors: set detailed exit code to 100 for some remote errors
Martin von Zweigbergk <martinvonz@google.com>
parents:
39707
diff
changeset
|
14 [100] |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
15 $ killdaemons.py |