Skip to content

chore: Migrate to uv; Bump required Python version to 3.14.#66

Open
junhaoliao wants to merge 1 commit into
y-scope:mainfrom
junhaoliao:feat/migrate-docs-to-uv
Open

chore: Migrate to uv; Bump required Python version to 3.14.#66
junhaoliao wants to merge 1 commit into
y-scope:mainfrom
junhaoliao:feat/migrate-docs-to-uv

Conversation

@junhaoliao

@junhaoliao junhaoliao commented Jul 3, 2026

Copy link
Copy Markdown
Member

Description

Migrate the docs taskchain from requirements.txt + ad-hoc venv bootstrap to UV-driven dependency management with behavior aligned to existing CLP/YScope task patterns.

Key updates:

  • Added UV project metadata for docs ([project] and [tool.uv]) and replaced Python dependency source from requirements.txt with pyproject.toml + uv.lock references in venv task sourcing.
  • Updated docs task implementations to run via uv run --directory "{{.ROOT_DIR}}" --locked and kept venv in build/venv.
  • Added reusable UV lock tasks through new dep taskfiles and wired them into top-level includes.
  • Updated README setup docs to require uv.
  • Removed requirements.txt from docs dependency bootstrapping, added UV lock metadata refresh.

Checklist

  • The PR satisfies the contribution guidelines.
  • This is a breaking change and that has been indicated in the PR title, OR this isn't a breaking change.
  • Necessary docs have been updated, OR no docs need to be updated.

Validation performed

Scenario 1: Verify modified task surface

Task: Ensure task discovery reflects updated and added uv tasks.
Command:

task --list-all

Output:

task: Available tasks for this project:
* clean:                        
* deps:lock:check-uv:           
* deps:lock:update-uv:          
* docs:build:                   
* docs:clean:                   
* docs:download-projects:       
* docs:release-tar:             
* docs:serve:                   

Explanation: confirms new lock tasks are present via the new taskfiles/deps include.

Scenario 2: Validate docs build path

Task: docs:build (build+symlink path and dependency gating).
Command:

task docs:build

Output:

task: Task "docs:venv" is up to date
task: Task "docs:build-dev-docs" is up to date
task: Task "docs:build-homepage" is up to date
task: [docs:build] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html'
task: [docs:build] mkdir -p '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html'
task: [docs:build] rsync -a --exclude='/index.html' "/home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html/" "/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/"
task: [docs:build] rsync -a '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/out/' '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/'
task: [docs:symlink-project-docs] cd "/home/junhao/.codex/worktrees/078f/yscope-docs/build/project-docs" || exit 0
for project_dir in */; do
  project_name="${project_dir%/}"

  for version_dir in "${project_dir}"/*/; do
    version_name=$(basename "${version_dir}")

    built_docs_dir="${version_dir}/build/docs/html"
    if [ -d "${built_docs_dir}" ]; then
      link_target="/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/${project_name}/${version_name}"
      mkdir -p "$(dirname "${link_target}")"
      ln -sf "$(readlink -f "${built_docs_dir}")" "${link_target}"
    else
      echo "Warning: No built docs found for ${project_name}@${version_name}"
    fi
  done
done
Warning: No built docs found for clp@main
Warning: No built docs found for clp@v0.1.0
Warning: No built docs found for clp@v0.1.1
Warning: No built docs found for clp@v0.1.2
Warning: No built docs found for clp@v0.1.3
Warning: No built docs found for clp@v0.10.0
Warning: No built docs found for clp@v0.11.0
Warning: No built docs found for clp@v0.12.0
Warning: No built docs found for clp@v0.2.0
Warning: No built docs found for clp@v0.2.1
Warning: No built docs found for clp@v0.3.0
Warning: No built docs found for clp@v0.4.0
Warning: No built docs found for clp@v0.5.0
Warning: No built docs found for clp@v0.5.1
Warning: No built docs found for clp@v0.6.0
Warning: No built docs found for clp@v0.7.0
Warning: No built docs found for clp@v0.8.0
Warning: No built docs found for clp@v0.9.0
Warning: No built docs found for clp-ffi-py@main
Warning: No built docs found for log-surgeon@main
Warning: No built docs found for spider@main
Warning: No built docs found for yscope-log-viewer@main

Scenario 3: Validate docs clean target

Task: docs:clean
Command:

task docs:clean

Output:

task: [docs:clean-dev-docs] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html'
task: [docs:clean-homepage] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/out'
task: [docs:clean-homepage] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/.next'
task: [docs:clean-homepage] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/node_modules'
task: [docs:clean-homepage] rm -f '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/next-env.d.ts'
task: [docs:clean-homepage] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/out'
task: [docs:clean-homepage] rm -f '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/public/robots.txt'
task: [docs:clean-homepage] rm -f '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/public/sitemap-0.xml'
task: [docs:clean-homepage] rm -f '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/public/sitemap.xml'
task: [docs:clean] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html'

Scenario 4: Validate project-docs download via UV runtime

Task: docs:download-projects
Command:

task docs:download-projects

Output:

task: Task "docs:venv" is up to date
task: [docs:download-projects] uv run --directory "/home/junhao/.codex/worktrees/078f/yscope-docs" --locked scripts/download-projects.py --build-dir "/home/junhao/.codex/worktrees/078f/yscope-docs/build/project-docs"
warning: refname 'v0.12.0' is ambiguous.

Scenario 5: Validate UV lock check/update tasks

Task: deps:lock:check-uv and deps:lock:update-uv
Command:

task deps:lock:check-uv
task deps:lock:update-uv

Output:

task: [deps:lock:uv-lock] uv lock --check
Using CPython 3.14.5
Resolved 39 packages in 0.41ms
task: [deps:lock:uv-lock] uv lock 
Using CPython 3.14.5
Resolved 39 packages in 0.47ms

Scenario 6: Validate release tar path after migration

Task: docs:release-tar
Command:

task docs:release-tar

Output:

task: [docs:build-homepage] cd '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage' || exit 1
npm install --no-audit --no-fund
npm run build
Files /home/junhao/.codex/worktrees/078f/yscope-docs/build/docs#venv.md5.tmp and /home/junhao/.codex/worktrees/078f/yscope-docs/build/docs#venv.md5 differ
task: [docs:venv] rm -rf "/home/junhao/.codex/worktrees/078f/yscope-docs/build/venv"
uv sync --locked
Using CPython 3.14.5
Creating virtual environment at: build/venv
Resolved 39 packages in 0.42ms
Installed 37 packages in 20ms
 + accessible-pygments==0.0.5
 + alabaster==1.0.0
 + annotated-types==0.7.0
 + babel==2.18.0
 + beautifulsoup4==4.15.0
 + certifi==2026.6.17
 + charset-normalizer==3.4.7
 + docutils==0.22.4
 + idna==3.18
 + imagesize==2.0.0
 + jinja2==3.1.6
 + markdown-it-py==4.2.0
 + markupsafe==3.0.3
 + mdit-py-plugins==0.6.1
 + mdurl==0.1.2
 + myst-parser==5.1.0
 + packaging==26.2
 + pydantic==2.13.4
 + pydantic-core==2.46.4
 + pydata-sphinx-theme==0.19.0
 + pygments==2.20.0
 + pyyaml==6.0.3
 + requests==2.34.2
 + roman-numerals==4.1.0
 + snowballstemmer==3.1.1
 + soupsieve==2.8.4
 + sphinx==9.1.0
 + sphinx-design==0.7.0
 + sphinxcontrib-applehelp==2.0.0
 + sphinxcontrib-devhelp==2.0.0
 + sphinxcontrib-htmlhelp==2.1.0
 + sphinxcontrib-jsmath==1.0.1
 + sphinxcontrib-qthelp==2.0.0
 + sphinxcontrib-serializinghtml==2.0.0
 + typing-extensions==4.16.0
 + typing-inspection==0.4.2
 + urllib3==2.7.0
task: [docs:build-dev-docs] uv run --directory "/home/junhao/.codex/worktrees/078f/yscope-docs" --locked sphinx-build -a -E -c '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/dev-docs' -b html '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/dev-docs' "/home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html"
Running Sphinx v9.1.0
loading translations [en]... done
making output directory... done
myst v5.1.0: MdParserConfig(commonmark_only=False, gfm_only=False, enable_extensions={'colon_fence'}, disable_syntax=[], all_links_external=False, links_external_new_tab=False, url_schemes=('http', 'https', 'mailto', 'ftp'), ref_domains=None, fence_as_directive=set(), number_code_blocks=[], title_to_header=False, heading_anchors=0, heading_slug_func=None, html_meta={}, footnote_sort=True, footnote_transition=True, words_per_minute=200, substitutions={}, linkify_fuzzy_links=True, dmath_allow_labels=True, dmath_allow_space=True, dmath_allow_digits=True, dmath_double_inline=False, update_mathjax=True, mathjax_classes='tex2jax_process|mathjax_process|math|output_area', enable_checkboxes=False, strikethrough_single_tilde=False, colon_fence_exact_match=False, suppress_warnings=[], highlight_code_blocks=True)
building [mo]: all of 0 po files
writing output... 
building [html]: all source files
updating environment: [new config] 8 added, 0 changed, 0 removed
reading sources... [ 12%] dev-guide/contrib-guides-cpp
reading sources... [ 25%] dev-guide/contrib-guides-general
reading sources... [ 38%] dev-guide/contrib-guides-overview
reading sources... [ 50%] dev-guide/contrib-guides-taskfiles
reading sources... [ 62%] dev-guide/index
reading sources... [ 75%] dev-guide/misc-deploying
reading sources... [ 88%] dev-guide/misc-project-docs
reading sources... [100%] index

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
copying assets... 
copying static files... 
Writing evaluated template result to /home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html/_static/documentation_options.js
Writing evaluated template result to /home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html/_static/language_data.js
Writing evaluated template result to /home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html/_static/basic.css
copying static files: done
copying extra files... 
copying extra files: done
copying assets: done
writing output... [ 12%] dev-guide/contrib-guides-cpp
writing output... [ 25%] dev-guide/contrib-guides-general
writing output... [ 38%] dev-guide/contrib-guides-overview
writing output... [ 50%] dev-guide/contrib-guides-taskfiles
writing output... [ 62%] dev-guide/index
writing output... [ 75%] dev-guide/misc-deploying
writing output... [ 88%] dev-guide/misc-project-docs
writing output... [100%] index

generating indices... genindex done
writing additional pages... search done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded, 3 warnings.

The HTML pages are in build/dev-docs-html.

added 571 packages in 3s

> yscope-docs-server@1.0.0 build
> npm run copy-bootstrap && next build


> yscope-docs-server@1.0.0 copy-bootstrap
> cp node_modules/bootstrap/dist/js/bootstrap.bundle.min.js public/

▲ Next.js 16.1.5 (Turbopack)

  Creating an optimized production build ...
✓ Compiled successfully in 1901.7ms
  Running TypeScript ...
  Collecting page data using 31 workers ...
  Generating static pages using 31 workers (0/4) ...
  Generating static pages using 31 workers (1/4) 
  Generating static pages using 31 workers (2/4) 
  Generating static pages using 31 workers (3/4) 
✓ Generating static pages using 31 workers (4/4) in 172.4ms
  Finalizing page optimization ...

Route (app)
┌ ○ /
└ ○ /_not-found


○  (Static)  prerendered as static content


> yscope-docs-server@1.0.0 postbuild
> next-sitemap --config next-sitemap.config.mjs && npm run copy-sitemap

✨ [next-sitemap] Loading next-sitemap config: file:///home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/next-sitemap.config.mjs
✅ [next-sitemap] Generation completed
┌───────────────┬────────┐
│ (index)       │ Values │
├───────────────┼────────┤
│ indexSitemaps │ 1      │
│ sitemaps      │ 1      │
└───────────────┴────────┘
-----------------------------------------------------
 SITEMAP INDICES 
-----------------------------------------------------

   ○ https://docs.yscope.com/sitemap.xml


-----------------------------------------------------
 SITEMAPS 
-----------------------------------------------------

   ○ https://docs.yscope.com/sitemap-0.xml



> yscope-docs-server@1.0.0 copy-sitemap
> cp -r public/sitemap*.xml public/robots.txt out/

task: [docs:build] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html'
task: [docs:build] mkdir -p '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html'
task: [docs:build] rsync -a --exclude='/index.html' "/home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html/" "/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/"
task: [docs:build] rsync -a '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/out/' '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/'
task: [docs:symlink-project-docs] cd "/home/junhao/.codex/worktrees/078f/yscope-docs/build/project-docs" || exit 0
for project_dir in */; do
  project_name="${project_dir%/}"

  for version_dir in "${project_dir}"/*/; do
    version_name=$(basename "${version_dir}")

    built_docs_dir="${version_dir}/build/docs/html"
    if [ -d "${built_docs_dir}" ]; then
      link_target="/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/${project_name}/${version_name}"
      mkdir -p "$(dirname "${link_target}")"
      ln -sf "$(readlink -f "${built_docs_dir}")" "${link_target}"
    else
      echo "Warning: No built docs found for ${project_name}@${version_name}"
    fi
  done
done
Warning: No built docs found for clp@main
Warning: No built docs found for clp@v0.1.0
Warning: No built docs found for clp@v0.1.1
Warning: No built docs found for clp@v0.1.2
Warning: No built docs found for clp@v0.1.3
Warning: No built docs found for clp@v0.10.0
Warning: No built docs found for clp@v0.11.0
Warning: No built docs found for clp@v0.12.0
Warning: No built docs found for clp@v0.2.0
Warning: No built docs found for clp@v0.2.1
Warning: No built docs found for clp@v0.3.0
Warning: No built docs found for clp@v0.4.0
Warning: No built docs found for clp@v0.5.0
Warning: No built docs found for clp@v0.5.1
Warning: No built docs found for clp@v0.6.0
Warning: No built docs found for clp@v0.7.0
Warning: No built docs found for clp@v0.8.0
Warning: No built docs found for clp@v0.9.0
Warning: No built docs found for clp-ffi-py@main
Warning: No built docs found for log-surgeon@main
Warning: No built docs found for spider@main
Warning: No built docs found for yscope-log-viewer@main
task: [docs:release-tar] tar czf "/home/junhao/.codex/worktrees/078f/yscope-docs/build/yscope-docs.tar.gz" -h -C "$(dirname "/home/junhao/.codex/worktrees/078f/yscope-docs/build/html")" "$(basename "/home/junhao/.codex/worktrees/078f/yscope-docs/build/html")"

Scenario 7: Validate docs serve path (expected timeout while host is live)

Task: docs:serve with 25s timeout wrapper
Command:

timeout 25 task docs:serve

Output:

task: Task "docs:http-server" is up to date
Files /home/junhao/.codex/worktrees/078f/yscope-docs/build/docs#venv.md5.tmp and /home/junhao/.codex/worktrees/078f/yscope-docs/build/docs#venv.md5 differ
task: [docs:venv] rm -rf "/home/junhao/.codex/worktrees/078f/yscope-docs/build/venv"
uv sync --locked
Using CPython 3.14.5
Creating virtual environment at: build/venv
Resolved 39 packages in 0.66ms
Installed 37 packages in 24ms
 + accessible-pygments==0.0.5
 + alabaster==1.0.0
 + annotated-types==0.7.0
 + babel==2.18.0
 + beautifulsoup4==4.15.0
 + certifi==2026.6.17
 + charset-normalizer==3.4.7
 + docutils==0.22.4
 + idna==3.18
 + imagesize==2.0.0
 + jinja2==3.1.6
 + markdown-it-py==4.2.0
 + markupsafe==3.0.3
 + mdit-py-plugins==0.6.1
 + mdurl==0.1.2
 + myst-parser==5.1.0
 + packaging==26.2
 + pydantic==2.13.4
 + pydantic-core==2.46.4
 + pydata-sphinx-theme==0.19.0
 + pygments==2.20.0
 + pyyaml==6.0.3
 + requests==2.34.2
 + roman-numerals==4.1.0
 + snowballstemmer==3.1.1
 + soupsieve==2.8.4
 + sphinx==9.1.0
 + sphinx-design==0.7.0
 + sphinxcontrib-applehelp==2.0.0
 + sphinxcontrib-devhelp==2.0.0
 + sphinxcontrib-htmlhelp==2.1.0
 + sphinxcontrib-jsmath==1.0.1
 + sphinxcontrib-qthelp==2.0.0
 + sphinxcontrib-serializinghtml==2.0.0
 + typing-extensions==4.16.0
 + typing-inspection==0.4.2
 + urllib3==2.7.0
task: Task "docs:build-dev-docs" is up to date
task: Task "docs:build-homepage" is up to date
task: [docs:build] rm -rf '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html'
task: [docs:build] mkdir -p '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html'
task: [docs:build] rsync -a --exclude='/index.html' "/home/junhao/.codex/worktrees/078f/yscope-docs/build/dev-docs-html/" "/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/"
task: [docs:build] rsync -a '/home/junhao/.codex/worktrees/078f/yscope-docs/docs/homepage/out/' '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/'
task: [docs:symlink-project-docs] cd "/home/junhao/.codex/worktrees/078f/yscope-docs/build/project-docs" || exit 0
for project_dir in */; do
  project_name="${project_dir%/}"

  for version_dir in "${project_dir}"/*/; do
    version_name=$(basename "${version_dir}")

    built_docs_dir="${version_dir}/build/docs/html"
    if [ -d "${built_docs_dir}" ]; then
      link_target="/home/junhao/.codex/worktrees/078f/yscope-docs/build/html/${project_name}/${version_name}"
      mkdir -p "$(dirname "${link_target}")"
      ln -sf "$(readlink -f "${built_docs_dir}")" "${link_target}"
    else
      echo "Warning: No built docs found for ${project_name}@${version_name}"
    fi
  done
done
Warning: No built docs found for clp@main
Warning: No built docs found for clp@v0.1.0
Warning: No built docs found for clp@v0.1.1
Warning: No built docs found for clp@v0.1.2
Warning: No built docs found for clp@v0.1.3
Warning: No built docs found for clp@v0.10.0
Warning: No built docs found for clp@v0.11.0
Warning: No built docs found for clp@v0.12.0
Warning: No built docs found for clp@v0.2.0
Warning: No built docs found for clp@v0.2.1
Warning: No built docs found for clp@v0.3.0
Warning: No built docs found for clp@v0.4.0
Warning: No built docs found for clp@v0.5.0
Warning: No built docs found for clp@v0.5.1
Warning: No built docs found for clp@v0.6.0
Warning: No built docs found for clp@v0.7.0
Warning: No built docs found for clp@v0.8.0
Warning: No built docs found for clp@v0.9.0
Warning: No built docs found for clp-ffi-py@main
Warning: No built docs found for log-surgeon@main
Warning: No built docs found for spider@main
Warning: No built docs found for yscope-log-viewer@main
task: [docs:serve] npm --prefix '/home/junhao/.codex/worktrees/078f/yscope-docs/build/node-deps' exec http-server '/home/junhao/.codex/worktrees/078f/yscope-docs/build/html' -c-1
Starting up http-server, serving /home/junhao/.codex/worktrees/078f/yscope-docs/build/html

http-server version: 14.1.1

http-server settings: 
CORS: disabled
Cache: 3600 seconds
Connection Timeout: 120 seconds
Directory Listings: visible
AutoIndex: visible
Serve GZIP Files: false
Serve Brotli Files: false
Default File Extension: none

Available on:
  http://127.0.0.1:8080
  http://192.168.3.200:8080
  http://192.168.122.1:8080
  http://192.168.128.3:8080
  http://172.30.88.222:8080
  http://172.19.0.1:8080
  http://172.17.0.1:8080
Hit CTRL-C to stop the server

task: Signal received: "terminated"
http-server stopped.
task: Failed to run task "docs:serve": exit status 143
task docs:serve exit code: 124

Explanation: Serve command was expected to run continuously; timeout 25s terminates it once startup succeeded.

Summary by CodeRabbit

  • New Features

    • Added tooling to generate and verify dependency locks across multiple documentation-related projects.
    • Updated documentation build/download and local environment setup to use uv with locked inputs.
  • Chores

    • Introduced pyproject.toml for project metadata and documentation dependencies.
    • Updated README requirements to list uv and adjusted the listed Python prerequisites.
    • Refreshed task configuration to align environment creation and syncing with uv lockfiles.

@junhaoliao junhaoliao requested a review from a team as a code owner July 3, 2026 18:14
@coderabbitai

coderabbitai Bot commented Jul 3, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

This PR migrates the docs tooling to uv: it adds project metadata in pyproject.toml, introduces uv lock taskfiles, updates docs tasks to run through uv, and adjusts the README requirements.

Changes

uv migration for docs tooling

Layer / File(s) Summary
Project metadata and dependencies via pyproject.toml
pyproject.toml
Adds project metadata, Python requirements, documentation dependencies, and uv packaging configuration.
uv lock orchestration taskfiles
taskfiles/deps/lock.yaml, taskfiles/deps/main.yaml, taskfile.yaml
Adds check-uv, update-uv, and uv-lock tasks, adds the deps taskfile wrapper, and includes it from the root taskfile.
Docs tasks run via uv
taskfiles/docs.yaml
Updates download-projects, build-dev-docs, and venv to use uv run and uv sync, and switches venv inputs to pyproject.toml and uv.lock.
README requirements update
README.md
Replaces the Python/venv prerequisites with uv and adds a uv reference link.

Estimated code review effort: 3 (Moderate) | ~20 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: migrating docs tooling to uv and updating the Python requirement to 3.14.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@junhaoliao junhaoliao changed the title chore: migrate docs tasks to uv chore: Migrate to uv. Jul 3, 2026
@junhaoliao junhaoliao changed the title chore: Migrate to uv. chore: Migrate to uv; Bump required Python version to 3.14. Jul 3, 2026
@junhaoliao junhaoliao requested a review from kirkrodrigues July 3, 2026 18:18

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@taskfiles/deps/lock.yaml`:
- Around line 4-19: The user-facing tasks check-uv and update-uv in the task
definition should have descriptions so they show up clearly in task --list. Add
a concise desc: entry to each of these task definitions, keeping uv-lock
unchanged since it is internal, and use the task names as the identifying
anchors when updating the taskfile.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 23573a49-f953-42e6-87fc-e01a88aa559c

📥 Commits

Reviewing files that changed from the base of the PR and between fb4670d and 0f9ebb3.

⛔ Files ignored due to path filters (1)
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (7)
  • README.md
  • pyproject.toml
  • requirements.txt
  • taskfile.yaml
  • taskfiles/deps/lock.yaml
  • taskfiles/deps/main.yaml
  • taskfiles/docs.yaml
💤 Files with no reviewable changes (1)
  • requirements.txt

Comment thread taskfiles/deps/lock.yaml
@junhaoliao junhaoliao force-pushed the feat/migrate-docs-to-uv branch from 8f47ff2 to 0f9ebb3 Compare July 3, 2026 22:58
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.

1 participant