Closed jaraco closed 3 weeks ago
Here's what changed between those builds (Python 3.11):
setuptools main @ diff --unified orig.deps new.deps
--- orig.deps 2024-04-19 05:46:35
+++ new.deps 2024-04-19 05:45:27
@@ -10,10 +10,11 @@
chardet==5.2.0
charset-normalizer==3.3.2
colorama==0.4.6
+ConfigUpdater==3.2
coverage==7.4.4
cryptography==42.0.5
distlib==0.3.8
-docutils==0.20.1
+docutils==0.21.1
domdf-python-tools==3.8.0.post2
execnet==2.1.1
filelock==3.13.4
@@ -26,11 +27,11 @@
iniconfig==2.0.0
jaraco.classes==3.4.0
jaraco.context==5.3.0
-jaraco.develop==8.11.1
+jaraco.develop==8.13.0
jaraco.env==1.0.0
jaraco.envs==2.6.0
-jaraco.functools==4.0.0
-jaraco.packaging==9.5.0
+jaraco.functools==4.0.1
+jaraco.packaging==10.0.0
jaraco.path==3.7.0
jaraco.text==3.12.0
jaraco.ui==2.3.0
@@ -69,11 +70,11 @@
requests==2.31.0
requests-file==2.0.0
requests-toolbelt==1.0.0
-ruff==0.3.7
+ruff==0.4.0
SecretStorage==3.3.3
-setuptools @ file:///home/runner/work/setuptools/setuptools/.tox/.tmp/package/1/setuptools-69.5.1.post20240416-0.editable-py3-none-any.whl#sha256=fadab4f1bd57c44a5fc7cc35cb87e69f42e632072f7bf894c2b33b9c844098c5
+setuptools @ file:///home/runner/work/setuptools/setuptools/.tox/.tmp/package/1/setuptools-69.5.1.post20240418-0.editable-py3-none-any.whl#sha256=4459986076a2dd5055c9f711ede2889dbad1d870c71fb2bd9c28b3d0bcdbecb0
snowballstemmer==2.2.0
-Sphinx==7.2.6
+Sphinx==7.3.6
sphinxcontrib-applehelp==1.0.8
sphinxcontrib-devhelp==1.0.6
sphinxcontrib-htmlhelp==2.0.5
@@ -85,10 +86,11 @@
toml==0.10.2
tomli==2.0.1
tomli_w==1.0.0
+tomlkit==0.12.4
tox==4.14.2
typeguard==4.2.1
typing_extensions==4.11.0
urllib3==2.2.1
-virtualenv==20.25.1
-wheel==0.42.0
+virtualenv==20.25.3
+wheel==0.43.0
zipp==3.18.1
I'm able to replicate the same failure on my machine locally.
Uninstalling ConfigUpdater
allows the tests to pass and reinstalling restores the failure.
Some Python versions were released recently, so I thought that might be a factor, but both runs are Python 3.11.9.
I don't yet understand where ConfigUpdater comes from or why it's relevant. Searching the codebase, I don't find that string at all.
I see now. Setuptools tests depend on ini2toml[lite]
, but late versions of jaraco.develop
depend on ini2toml[full]
and that's where ConfigUpdater
gets pulled in and its presence violates the test assumptions. That dependency was added in https://github.com/jaraco/jaraco.develop/commit/52e113e30492eedc2927336f65cc4059f94e47ea as part of https://github.com/coherent-oss/roadmap/issues/8.
I'm unsure the right course of action here. Ideally, the tests shouldn't be sensitive to the ini2toml
flavor installed, but they are.
We could remove the setuptools[testing]
dependency on jaraco.develop
, which is required only to allow tools/finalize.py
to be doctested (amounting to an import check at the moment).
For now I'll mark the test as xfail while we investigate/discuss.
Thanks @jaraco, for identifying that. I believe I can change that to stop failing (either by explicitly specifying the translator to use ConfigParser
or by changing ini2toml
directly).
The main difference is that ConfigUpdater
is more similar to RawConfigParser
than ConfigParser
when it comes to parsing escaping sequences in the style %%
.
Some time ago, I introduced a test case in setuptools
inspired by the aiohttp
's setup.cfg
. That file contains such %%
-style escaping sequence.
3 days ago, the head commit at 6067fa41a was passing tests, but when re-run here, two tests are failing (two forms of
test_apply_pyproject_equivalent_to_setupcfg
).