-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Requirements April 2024 #8146
Requirements April 2024 #8146
Conversation
Moved the cleanup code to a fixture
Remove completely our own version parsing and rely on the one from packaging. Older versions of packaging used to be more lenient with our release tags ("ckan-x.y.z") but now they will fail. We need to remove the `ckan-` bit before parsing.
# via mypy | ||
nose==1.3.7 | ||
# via pyutilib | ||
packaging==21.3 | ||
# via redis |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This package is still required by sphinx in form packaging>=21.0
Any new CKAN setup(inside test containers) will get the latest packaging version - v24. But all existing instances will continue to use previously pinned v21.3(unless you install dev-requirements with eager update strategy)
v21 of packaging had LegacyVersion class(it was removed in v22) and it will cause a type error because you removed if not isinstance(version, Version):
check from app_globals.
Let's add packaging>=22
or ==24
to dev-requirements to be sure that no LegacyVersion
appears in code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, we are using packaging
in app_globals, cli and the toolkit so it should be a first level requirement in requirements.in, right? Otherwise we'll rely on people installing dev-requirements.txt, which should not be necessary. I'll add it.
Typing error unrelated, see #8196 (comment) |
Some failures, which is to be expected. A quick glance seems to suggest three areas to fix:
rq or redis?pytest) -> Setup methods in testsAttributeError: 'TestPackageMemberCreateAuth' object has no attribute 'dataset'
) - Probably a pytest change -> Setup methods in tests