The tox-battery python package provides only one feature to the tox tool. It detects changes to the requirements files that are the deps of a tox environment and optionally re-builds the environments if there are changes to the requirements. The tox-battery package can't run with tox 4.0.0 because of incompatibilites. So make upgrade won't upgrade us to the latest version of tox in a bunch of repos. However tox>=4.0.0 has the requirements monitoring feature built-in and if we drop the tox-battery dependency, we'll get the latest tox with the right featureset.
Tasks
[ ] In each repo that has both tox and tox-battery as requirements, add a local constraint to constraints.txt
[ ] Create the PR and tag @feanil for review.
Relevant repos
[ ] api-doc-tools
[ ] auth-backends
[ ] bok-choy
[ ] code-annotations
[ ] codejail-includes
[ ] completion
[ ] devstack
[ ] django-config-models
[ ] django-lang-pref-middleware
[ ] django-pyfs
[ ] django-splash
[ ] django-user-tasks
[ ] ecommerce
[ ] ecommerce-worker
[ ] edx-ace
[ ] edx-analytics-dashboard
[ ] edx-analytics-data-api
[ ] edx-bulk-grades
[ ] edx-celeryutils
[ ] edx-cookiecutters
[ ] edx-django-utils
[ ] edx-enterprise
[ ] edx-enterprise-data
[ ] edx-enterprise-subsidy-client
[ ] edx-lint
[ ] edx-milestones
[ ] edx-notes-api
[ ] edx-platform
[ ] edx-proctoring
[ ] edx-rbac
[ ] edx-repo-health
[ ] edx-rest-api-client
[ ] edx-sphinx-theme
[ ] edx-toggles
[ ] edx-val
[ ] edx-when
[ ] enterprise-catalog
[ ] enterprise-subsidy
[ ] event-bus-kafka
[ ] event-bus-redis
[ ] event-routing-backends
[ ] event-tracking
[ ] help-tokens
[ ] opaque-keys
[ ] openedx-events
[ ] openedx-event-sink-clickhouse
[ ] openedx-filters
[ ] openedx-learning
[ ] openedx-ledger
[ ] pytest-repo-health
[ ] pytest-warnings-report
[ ] repo-tools-data-schema
[ ] super-csv
[ ] taxonomy-connector
[ ] testeng-ci
[ ] web-fragments
[ ] xapi-db-load
[ ] XBlock
[ ] xblock-drag-and-drop-v2
[ ] xblock-google-drive
[ ] xblock-sdk
[ ] xblock-skill-tagging
[ ] xblock-utils
[ ] xqueue
[ ] xss-utils
Acceptance Criteria
All repos mentioned above have a local constraint that prevents tox from being upgraded.
Context
The tox-battery python package provides only one feature to the tox tool. It detects changes to the requirements files that are the deps of a tox environment and optionally re-builds the environments if there are changes to the requirements. The tox-battery package can't run with tox 4.0.0 because of incompatibilites. So make upgrade won't upgrade us to the latest version of tox in a bunch of repos. However tox>=4.0.0 has the requirements monitoring feature built-in and if we drop the tox-battery dependency, we'll get the latest tox with the right featureset.
Tasks
constraints.txt
Relevant repos
Acceptance Criteria