Skip to content

Use uv.lock#71

Merged
joaonc merged 8 commits into
mainfrom
wip-2
Mar 14, 2026
Merged

Use uv.lock#71
joaonc merged 8 commits into
mainfrom
wip-2

Conversation

@joaonc
Copy link
Copy Markdown
Owner

@joaonc joaonc commented Mar 14, 2026

  • Use uv.lock instead of requirements files.
  • GitHub actions updates.

Closes #70

Summary by CodeRabbit

  • Bug Fixes

    • Fixed configuration saving
    • Improved UI error messages
    • Fixed pre-commit hook invocation
  • Chores

    • Removed PySide6 and many dev/docs tooling dependencies
    • Cleared packaged docs requirements
    • Updated CI/workflow tooling and commands
    • Reworked requirement management and install/sync flows
  • Documentation

    • Updated development setup instructions
    • Expanded README content

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 14, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: f299e775-c9a6-4ca4-ba99-08a4adc3c3cd

📥 Commits

Reviewing files that changed from the base of the PR and between 77a756b and 2994f7f.

📒 Files selected for processing (5)
  • .github/workflows/build-app.yml
  • .github/workflows/docs.yml
  • .github/workflows/linting.yml
  • .github/workflows/release.yml
  • .github/workflows/tests.yml

📝 Walkthrough

Walkthrough

Migrates dependency management from pip requirements files to uv lock-based groups, updates admin CLI helpers to use uv, removes many admin/requirements entries, updates CI workflows to use uv-wrapped inv/uv commands and newer actions, and makes small build/precommit/ui/config fixes and documentation updates.

Changes

Cohort / File(s) Summary
CI workflow updates
.github/workflows/build-app.yml, .github/workflows/docs.yml, .github/workflows/linting.yml, .github/workflows/release.yml, .github/workflows/tests.yml
Bumped action versions, added UV_SYSTEM_PYTHON in some jobs, and replaced direct inv / python -m calls with uv run wrappers and adjusted install/deploy steps.
Dependency group config
pyproject.toml
Added dependency-groups.dev and dependency-groups.docs and set tool.uv.default-groups = ['dev'].
Admin pip tooling refactor
admin/pip.py
Replaced per-file requirements logic with normalized alias-based API, added Requirements.DOCS, introduced _normalize_requirement, _get_requirements, _requirements_to_groups, and switched flows to uv lock/uv sync semantics; pip_install() now accepts optional requirements.
Requirements files removal
admin/requirements/... (requirements-dev.in, requirements-dev.txt, requirements-docs.in, requirements-docs.txt, requirements.in, requirements.txt)
Cleared or removed many dev/docs and PySide6 package entries, substantially emptying/removing pinned requirements previously stored under admin/requirements.
Build / automation helpers
admin/build.py, admin/precommit.py
Fixed PR merge target to use actual branch variable; corrected pre-commit subprocess invocation to use pre-commit run.
Admin UI & config tweaks
admin/ui.py, src/hd_active/hd_active_config.py
Error messages now reference filename stem (file_stem) for missing-file reporting; config writer opens file with explicit 'w' mode.
Docs & README updates
docs/development.md, README.md
Updated developer docs to install typer-invoke and use inv/uv flows; added short README text about SSD vs HD usage.

Sequence Diagram(s)

sequenceDiagram
  participant Dev as Developer
  participant CI as GitHub Actions
  participant Admin as admin/pip CLI
  participant UV as uv (lock/sync)
  participant Repo as Repository (lockfile)

  Dev->>Repo: push branch with changes
  CI->>Repo: checkout code
  CI->>Admin: run `uv run inv` (tasks)
  Admin->>UV: call `uv lock` / `uv sync` / `uv pip`
  UV->>Repo: read/write lockfiles (uv.lock / groups)
  Repo-->>CI: artifacts (built/uploaded docs, packages)
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Poem

🐇 I hopped through locks and CI streams,
Replaced old files with tidy schemes,
uv hums softly, inv wrapped tight,
Devs can sleep well through the night,
A rabbit nibbles bugs to dreams. 🥕

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 69.23% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Out of Scope Changes check ❓ Inconclusive Changes to README.md (SSD/HD content), admin/precommit.py (subprocess name fix), and admin/ui.py (error message improvements) appear tangential to the core uv.lock migration objective. Clarify whether README updates and bug fixes in admin/precommit.py and admin/ui.py should be separated into dedicated PRs to keep this PR focused on the uv.lock migration.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Use uv.lock' directly matches the main objective to replace requirements files with uv-based lock file management, and aligns with the linked issue #70.
Linked Issues check ✅ Passed The PR substantially addresses all coding objectives from issue #70: migrates to uv lock-based management, updates pyproject.toml with dependency groups, modifies admin/pip.py to use uv commands while retaining inv interface, and updates workflows.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch wip-2
📝 Coding Plan
  • Generate coding plan for human review comments

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

CodeRabbit can use your project's `pylint` configuration to improve the quality of Python code reviews.

Add a pylint configuration file to your project to customize how CodeRabbit runs pylint.

Repository owner deleted a comment from coderabbitai Bot Mar 14, 2026
@joaonc joaonc merged commit 957abfe into main Mar 14, 2026
3 checks passed
@joaonc joaonc deleted the wip-2 branch March 14, 2026 17:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use uv.lock

1 participant