[X] Confirmed this is an issue with charm-tools, not charmstore-client
[X] Provide versions of tools used
[X] Described the feature or ways to replicate the issue
What version am I running?
I'm using 3.0.4 from PyPi inside charmcraft.
I am using: Ubuntu 22.04
Versions of relevant modules within charm-build run:
:: charmtools.build.tactics: Packages in buildvenv:
:: Package Version
:: ---------- -------
:: pip 23.0.1
:: setuptools 67.4.0
:: wheel 0.38.4
Issue/Feature
Charm build fails with:
:: Collecting kombu==5.2.4
:: Downloading kombu-5.2.4.tar.gz (423 kB)
:: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 423.4/423.4 kB 4.2 MB/s eta 0:00:00
:: Preparing metadata (setup.py): started
:: Preparing metadata (setup.py): finished with status 'error'
:: error: subprocess-exited-with-error
::
:: × python setup.py egg_info did not run successfully.
:: │ exit code: 1
:: ╰─> [5 lines of output]
:: /root/snap/charmcraft/common/tmp7pqi369d/lib/python3.10/site-packages/setuptools/config/setupcfg.py:520: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
:: warnings.warn(msg, warning_class)
:: error in kombu setup command: 'tests_require' must be a string or list of strings containing valid project/version requirement specifiers; Expected end or semicolon (after name and no valid version specifier)
:: pytz>dev
:: ^
:: [end of output]
Apparenty, pytz>dev is not a valid PEP440 requirements string. It would need to be pytz>0.dev.0. Anyway, I can't change that package as it is buried many dependencies down.
setuptools >= 67 seems to have become very strict. I think, but will test, that setuptools < 67 will still work with non PEP440 valid requirement lines.
Possible fix
The possible fixes are to just pin setuptools < 67 for the moment, or to provide an option to allow the pip requirement to be passed as an option. I'll investigate both those issues.
Checklist
What version am I running?
I'm using 3.0.4 from PyPi inside charmcraft.
I am using: Ubuntu 22.04
Versions of relevant modules within charm-build run:
Issue/Feature
Charm build fails with:
Apparenty,
pytz>dev
is not a valid PEP440 requirements string. It would need to bepytz>0.dev.0
. Anyway, I can't change that package as it is buried many dependencies down.setuptools >= 67 seems to have become very strict. I think, but will test, that setuptools < 67 will still work with non PEP440 valid requirement lines.
Possible fix
The possible fixes are to just pin setuptools < 67 for the moment, or to provide an option to allow the pip requirement to be passed as an option. I'll investigate both those issues.