Overview
Migrate from pip/tox/setup.py to uv, and replace flake8/black with ruff, following the same approach as learningequality/kolibri#14457.
Complexity: Low
Target branch: release-v0.9.x
Context
Kolibri has migrated to uv for Python version management, virtual environments, dependency resolution, and CI. The same migration should be applied across the ecosystem for consistency.
The Change
- Replace flake8/black/reorder-python-imports with ruff
- Configure
exclude-newer = "7 days" in [tool.uv] for supply chain safety
- Add
uv-lock pre-commit hook (from astral-sh/uv-pre-commit) to keep uv.lock in sync
- Add a
cooldown period to the dependabot.yml with a value of 7 days
- Update developer documentation
Acceptance Criteria
AI usage
This issue was copied from another issue written by AI
Overview
Migrate from pip/tox/setup.py to uv, and replace flake8/black with ruff, following the same approach as learningequality/kolibri#14457.
Complexity: Low
Target branch: release-v0.9.x
Context
Kolibri has migrated to uv for Python version management, virtual environments, dependency resolution, and CI. The same migration should be applied across the ecosystem for consistency.
The Change
exclude-newer = "7 days"in[tool.uv]for supply chain safetyuv-lockpre-commit hook (fromastral-sh/uv-pre-commit) to keepuv.lockin synccooldownperiod to thedependabot.ymlwith a value of 7 daysAcceptance Criteria
exclude-newercooldown configured in pyproject.tomluv-lockpre-commit hook added to.pre-commit-config.yamlcooldownof 7 days configured independabot.ymlAI usage
This issue was copied from another issue written by AI