Skip to content

docs: stop rewriting links to /stable/ to the built version - #1157

Merged
dkropachev merged 1 commit into
scylladb:scylla-4.xfrom
nikagra:docs-keep-stable-links
Sep 29, 2026
Merged

dkropachev merged 1 commit into
scylladb:scylla-4.xfrom
nikagra:docs-keep-stable-links

Conversation

@nikagra

@nikagra nikagra commented Sep 28, 2026 •

Copy link
Copy Markdown

Depends on: nothing
Merge before: the fast-forward of scylla-4.19.2.x (4.x order: #1157 → fast-forward → #1158)
Needed by: the fast-forward of scylla-3.11.5.x to scylla-3.x, which also needs the 4.19.2.x fast-forward so that /stable/upgrade_guide/from_3x/ exists

The replacements hook in conf.py rewrites every java-driver.docs.scylladb.com/<x>/ link in page content to the version being built. On the live /scylla-3.11.5.x/ landing page, the deprecation notice's "documentation" link (#919), written as /stable/, renders as /scylla-3.11.5.x/: it sends 3.x readers back to 3.x. scylla-3.x has two more such links (#1001), which would render as /scylla-3.11.5.x/upgrade_guide/from_3x/ after the fast-forward, a 404.

  • rewrite only scylla-* version-slug segments, the only kind the content uses besides stable
  • leave /stable/, the bare root and unversioned paths as written, so the README's /stable/api/ link stays put
  • no rendered line changes on the published 4.x versions

Verified: ran the current scylla-4.x rule and this one over every .md/.rst file of scylla-4.x, scylla-4.19.2.x, scylla-4.19.0.x, scylla-4.18.1.x, scylla-3.11.5.x and scylla-3.x, each with its own slug. Only /stable/ lines change: 1 on 3.11.5.x, 3 on 3.x, the README [API docs] line on 4.x; 0 on the published 4.x versions. Edge cases (/stable), /stable#, /stable-3/, /manual/core/, [url](url/), the bare root, an old versioned link) behave as intended. cd docs && make test: exit 0, no warnings. Not covered: the multiversion publish, and the live site before the two fast-forwards.

Refs: #1001
Jira: DRIVER-854

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: QUIET

Plan: Advanced

Run ID: b30c42dc-a4bc-4aa3-8a81-85340142d24f

📥 Commits

Reviewing files that changed from the base of the PR and between eccb142 and d78482d.

📒 Files selected for processing (1)
  • docs/source/conf.py

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The documentation URL replacement pattern now matches only paths with a scylla- version slug. Matching URLs are rewritten to the current multiversion slug. Stable and unversioned paths are not matched.

Priority: ⬇️ Low

Change: Bug fix

Merge Risk: ⚪ Minimal · up to d7848

Only versioned Scylla documentation links are rewritten; stable and unversioned links remain unchanged. No actionable merge risk remains.

Architecture Summary

Architecture risk: 🔵 Low · up to d7848

The change affects 1 system.

Changed systems: docs

Architecture concerns
No architecture-level concerns identified.

Review details

Systems and components

  • observed — docs (service) was modified; 1 changed file maps to changed impact.

Before / after behavior

  • observed — Modified behavior in docs/source/conf.py: The documentation URL replacement pattern is narrowed from matching any path on the domain to matching only paths with a scylla- version slug. Matching URLs are still rewritten to the current slug; stable and unversioned URLs are excluded.
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly describes the main change: stop rewriting /stable/ links to the version being built.
Description check ✅ Passed The description explains the link-rewriting change, its purpose, and the reported tests.
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.
  • Fix all pre-merge checks with AI

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.

The replacements hook pins every java-driver.docs.scylladb.com/<x>/ link
to the version being built. On 3.x pages that turns the deprecation
notice's link to the 4.x docs at /stable/ into a link back to 3.x.
Rewrite only scylla-* version slugs; /stable/ and unversioned links are
deliberate and stay as written.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
@nikagra
nikagra force-pushed the docs-keep-stable-links branch from 0cb70c2 to d78482d Compare September 29, 2026 16:21
@nikagra
nikagra marked this pull request as ready for review September 29, 2026 17:28
@dkropachev
dkropachev merged commit 54432a5 into scylladb:scylla-4.x Sep 29, 2026
6 checks passed
@nikagra
nikagra deleted the docs-keep-stable-links branch September 30, 2026 11:26
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.

2 participants