Skip to content

build: move the docs tooling out of the dev group (TL3) - #254

Merged
lesnik512 merged 1 commit into
mainfrom
ci/docs-group
Sep 27, 2026
Merged

lesnik512 merged 1 commit into
mainfrom
ci/docs-group

Conversation

@lesnik512

Copy link
Copy Markdown
Member

Follow-up to #253, which had to drop floors (3.14). This removes the cause and restores it.

The duplication

mkdocs and mkdocs-llmstxt were declared in two places:

dev = [..., "mkdocs>=1.6.1", "mkdocs-llmstxt>=0.4.0", ...]
# docs/requirements.txt
mkdocs
mkdocs-material
mkdocs-llmstxt

docs/requirements.txt is where the docs recipe already read them from, so the dev entries were redundant. TL3 reserves the dev group for test dependencies, and nothing in tests/ or CI touches mkdocs.

What it cost

floors (3.14). watchdog ships no cp314 wheel, so under --no-build the resolver could not use mkdocs 1.6.1 and climbed to mkdocs 2.0.dev, which requires httpx>=1.0.dev5:

× No solution found when resolving dependencies:
╰─▶ Because watchdog>=2.0.0 has no usable wheels and mkdocs==1.6.1 depends on it,
    mkdocs>=2.0.dev0 depends on httpx>=1.0.dev5

Unconstrained, that resolved httpx 1.0.dev6 and the suite failed collection on httpx.BaseTransport, removed in the 1.0 line. #253 dropped the entry under CI6's carve-out for a matrix entry no upstream wheel covers. With mkdocs out of the resolution, the carve-out is not needed: httpx stays at 0.28.1 and the leg passes.

Also brings the recipe into line

 docs:
-    uv pip install -r docs/requirements.txt
-    uv run mkdocs serve
+    uvx --with-requirements docs/requirements.txt mkdocs serve

This was the only repo installing docs tooling into the project environment. The other 23 run it through uvx.

Verified

The exact floors commands on every matrix entry, 3.14 included:

interpreter pinned floors result
3.10 fastapi 0.115.3, faststream 0.3.14, httpx 0.28.1 461 passed, 2 skipped
3.11 same 461 passed, 2 skipped
3.12 same 461 passed, 2 skipped
3.13 same 461 passed, 2 skipped
3.14 same 461 passed, 2 skipped

uvx --with-requirements docs/requirements.txt mkdocs build --strict builds the site. just lint-ci clean. Normal resolution: 463 passed. mkdocs no longer appears in uv.lock at all.

mkdocs and mkdocs-llmstxt were declared twice: in the dev group and in
docs/requirements.txt, which is where the docs recipe already reads them from.
TL3 reserves the dev group for test dependencies, and every other repo in the
org runs mkdocs through uvx rather than installing it into the project env.

Dropping them restores floors (3.14), which #253 had to leave out: watchdog
ships no cp314 wheel, so under --no-build the resolver climbed to mkdocs
2.0.dev and pulled an httpx 1.0 prerelease the suite cannot import.
@codecov

codecov Bot commented Sep 27, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Flag Coverage Δ
unittests 100.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@lesnik512
lesnik512 merged commit ef866a0 into main Sep 27, 2026
18 checks passed
@lesnik512
lesnik512 deleted the ci/docs-group branch September 27, 2026 18:22
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