Alex Willmer
7c4982ebee
Merge pull request #913 from willmerae/issue-906-minimal
...
master.ParentEnumerationMethod: Require matching pkg.__name__
3 years ago
Alex Willmer
d2ca8a9423
master.ParentEnumerationMethod: Require matching pkg.__name__
...
Co-authored-by: Stefano Rivera <stefano@rivera.za.net>
When the requested module (e.g. ansible.module_utils.distro)
- is provided by another module *e.g. distro)
- that itself was a package (e.g. distro 1.7.0)
At runtime
- ansible/module_utils/distro/__init__.py executes
- if https://pypi.org/project/distro/ is present, it's loaded as
ansible.module_utils.distro
- otherwise ansible/module_utils/distro/_distro.py is loaded
ParentEnumerationMethod would wrongly use whatever was in
sys.modules['ansible.module_utils.distro]. Instead we should ascend to
the first parent that has fullname == sys.modules[fullname].__name__.
Then descend to the appropriate .py file on disk.
This bug didn't show up before because until distro 1.7.0 (Feb 2022) the
top-level distro module was a module (distro.py) not a package
(distro/__init__.py)
fixes #906
3 years ago
Alex Willmer
47699e15aa
master.SysModulesMethod: log rejection reasons
3 years ago
Alex Willmer
0fa0a93f55
master.PkgutilMethod: log rejection reasons
3 years ago
Alex Willmer
60c4ae5599
Add notes on imports and importlib
3 years ago
Alex Willmer
5b8f7dd1be
Start v0.3.3 development
3 years ago
Alex Willmer
e8c3fe7881
Fix Trove classifier, bump version
...
fixes #891
(cherry picked from commit 1a84184838
)
3 years ago
Alex Willmer
bd3cfb4230
Merge pull request #892 from moreati/prepare-0.3.2
...
Fix Trove classifier, bump version
3 years ago
Alex Willmer
1a84184838
Fix Trove classifier, bump version
...
fixes #891
3 years ago
Alex Willmer
2bdffd05d0
Merge pull request #886 from moreati/prepare-0.3.1
...
Prepare 0.3.1
3 years ago
Alex Willmer
b19223c168
Release 0.3.1
3 years ago
Alex Willmer
61ccf055ad
Merge branch 'master' into prepare-0.3.1
3 years ago
Alex Willmer
5b505f524a
Merge pull request #884 from moreati/macos-11-again
...
Drop macOS 10.14 tests, explicitly test on macOS 11
3 years ago
Alex Willmer
d424895344
ci: Drop Mac1014 jobs
...
The VM Image has been retired by Azure Pipelines.
3 years ago
Alex Willmer
77c306199c
ci: Explicitly test on macOS-11 VM Image
...
As of writing this macOS-latest isn't quite yet upgraded, but warnings about
it are spewing out.
3 years ago
Alex Willmer
86b1fb0f49
Merge pull request #883 from Rosa-Luxemburgstiftung-Berlin/pr-ansible2.12
...
support for ansible 2.12
3 years ago
Klaus Zerwes
f1fde91984
Revert "Revert "fixed tests for ansible 2.12""
...
This reverts commit ffb58cd557
.
3 years ago
Klaus Zerwes
2b4f04c554
Revert "Revert "fixed tests for ansible 2.12""
...
This reverts commit 478f286efb
.
3 years ago
Klaus Zerwes
b8dd348b1e
Revert "Revert "fixed tests for ansible 2.12""
...
This reverts commit f82bd3d714
.
3 years ago
Klaus Zerwes
81f075340b
use conditionals in list form
3 years ago
Klaus Zerwes
ffb58cd557
Revert "fixed tests for ansible 2.12"
...
include is deprecated and will be removed in 2.16, so there is some time to fix this left
This reverts commit 19c28b2b1a
.
3 years ago
Klaus Zerwes
f82bd3d714
Revert "fixed tests for ansible 2.12"
...
include is deprecated and will be removed in 2.16, so there is some time to fix this left
This reverts commit 7bc2102d2b
.
3 years ago
Klaus Zerwes
478f286efb
Revert "fixed tests for ansible 2.12"
...
include is deprecated and will be removed in 2.16, so there is some time to fix this left
This reverts commit 2d3970552e
.
3 years ago
Klaus Zerwes
e509c1fb77
Update tests/ansible/integration/interpreter_discovery/ansible_2_8_tests.yml
...
Co-authored-by: Alex Willmer <alex@moreati.org.uk>
3 years ago
Klaus Zerwes
54b9115f20
Update docs/ansible_detailed.rst
...
fixed supported ansible / python version listing
Co-authored-by: Alex Willmer <alex@moreati.org.uk>
3 years ago
Klaus Zerwes
3d450f0f22
fix interpreter discovery tests for changed python interpreter behaviour from ansible 2.12 on
3 years ago
Klaus Zerwes
b9782ded9c
run ansible 5 tests only w/ py39
3 years ago
Klaus Zerwes
2d3970552e
fixed tests for ansible 2.12
3 years ago
Klaus Zerwes
7bc2102d2b
fixed tests for ansible 2.12
3 years ago
Klaus Zerwes
19c28b2b1a
fixed tests for ansible 2.12
3 years ago
Klaus Zerwes
b0610cb63c
issue #874 ansible 2.12 requires min python 3.8 on the controller
3 years ago
Klaus Zerwes
13af356bc9
issue #874 tox.ini : fixed ansible5 definition
3 years ago
Klaus Zerwes
40fc1f8a25
issue #874 try to implement the testst for ansible 2.12
3 years ago
Klaus Zerwes
56c341790c
prepare support for ansible community 5 aka. core 2.12
3 years ago
Klaus Zerwes
6fb5502a35
issue #874 support for ansible core 2.12 aka. ansible community 5.0
3 years ago
Alex Willmer
a564d8a268
Merge pull request #882 from moreati/macos-11
...
Fix macOS 11.x and 12.x bootstrap
3 years ago
Alex Willmer
9a19f0ed16
mitogen.master: Fix stdlib discovery when sys.prefix contains symlinks
...
This can be he case when Python has been installed with Homebrew.
3 years ago
Alex Willmer
cadd393cd7
ci: Expand macOS coverage to 10.14, latest release on Azure Pipelines
...
10.14 will be retired on Azure mid December 2021. I want to get so test runs
while we can.
3 years ago
Alex Willmer
8276b81b7d
ci: Account for pre-existing children in process leak checks
3 years ago
Alex Willmer
552819e765
mitogen.parent: Detect and avoid Python2.7 wrapper on macOS 11 & 12
...
Without this errors such as the following occur
```
✗ MITOGEN_LOG_LEVEL=DEBUG python3 foo.py
Python: execv: (null): No such file or directory
Traceback (most recent call last):
File "foo.py", line 16, in <module>
target = router.local(python_path='/usr/bin/python2.7', debug=True)
File "/Users/alex/src/mitogen2/mitogen/parent.py", line 2486, in local
return self.connect(u'local', **kwargs)
File "/Users/alex/src/mitogen2/mitogen/parent.py", line 2446, in connect
return self._connect(klass, **mitogen.core.Kwargs(kwargs))
File "/Users/alex/src/mitogen2/mitogen/parent.py", line 2426, in _connect
conn.connect(context=context)
File "/Users/alex/src/mitogen2/mitogen/parent.py", line 1708, in connect
raise self.exception
mitogen.parent.EofError: EOF on stream; last 100 lines received:
MITO000
MITO001
```
Before
```
$ ./preamble_size.py
SSH command size: 625
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97496 95.2KiB 50355 49.2KiB 51.6% 12663 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
After
```
$ ./preamble_size.py
SSH command size: 705
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97885 95.6KiB 50516 49.3KiB 51.6% 12728 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48733 47.6KiB 24570 24.0KiB 50.4% 6771 6.6KiB 13.9%
```
3 years ago
Alex Willmer
4c02ea659e
Merge pull request #878 from moreati/ci-version-comparisons
...
ci: Fix version comparisons involving double digits
3 years ago
Alex Willmer
d9b8d50d4e
Fix ansible.__version__ comparisons with multi-digit components
...
Ansible 2.8 is older than Ansible 2.10, but `'2.8' < '2.10' == False`
3 years ago
Alex Willmer
465ac8abff
ansible: Fix AttributeError in kubectl connection
3 years ago
Alex Willmer
e194a6367f
ci: Fix version comparisons involving double digits
...
See https://gist.github.com/moreati/e7507c5b606b12ec0ddafcb7c8debbf1
3 years ago
Alex Willmer
9a66d3aeec
Merge pull request #876 from moreati/first-stage-space
...
mitogen.parent: Remove tabs from minimized first stage
3 years ago
Alex Willmer
e6bc53ca3a
mitogen.parent: Remove tabs from minimized first stage
...
Saves 4 bytes
Before
```
$ python preamble_size.py
SSH command size: 629
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97497 95.2KiB 50356 49.2KiB 51.6% 12665 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
After
```
$ python preamble_size.py
SSH command size: 625
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97496 95.2KiB 50355 49.2KiB 51.6% 12663 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
3 years ago
Alex Willmer
b5ad3b7c63
Merge pull request #875 from moreati/job-per-tox-env
...
ci: One Tox environment per Azure job
3 years ago
Alex Willmer
7bdec56a70
ci: One Tox environment per Azure job
...
Should result in
- better isolation of faults
- easier retries of failed jobs
- quicker test completion, to to more efficient queueing.
This does not expand test coverage, merely rearranges the tests already run.
3 years ago
Alex Willmer
65e343afc0
Merge pull request #873 from moreati/first-stage-wo-platform
...
mitogen.parent: Eliminate use of platform module in first stage
3 years ago
Alex Willmer
dd6d73db37
mitogen.parent: Eliminate use of platform module in first stage
...
This reduces the size of the initial SSH command by 204 bytes, & may fix errors
running Mitogen on macOS. AFAICT platform was used but not imported.
Before
```
$ python ./preamble_size.py
SSH command size: 833
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97565 95.3KiB 50427 49.2KiB 51.7% 12689 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
After
```
$ python preamble_size.py
SSH command size: 629
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97543 95.3KiB 50357 49.2KiB 51.6% 12665 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
3 years ago