Skip to content

fix(docs): version-picker shows selected option on /versions/latest/ - #204

Merged
Chris-Wolfgang merged 3 commits into
mainfrom
fix/version-picker-latest-select
Jul 20, 2026
Merged

fix(docs): version-picker shows selected option on /versions/latest/#204
Chris-Wolfgang merged 3 commits into
mainfrom
fix/version-picker-latest-select

Conversation

@Chris-Wolfgang

Copy link
Copy Markdown
Owner

Summary

Fan-out of Try-Pattern PR #247. The version-picker JS had a dead URL-match resolution block that tried to match the latest alias URL (/<repo>/versions/latest/) against concrete version URLs (/<repo>/versions/vX.Y.Z/) — structurally different by construction, so the match NEVER succeeded. The render loop then unconditionally skipped the latest entry, leaving no option selected on /versions/latest/.

Fix: delete the dead resolution block; keep latest as a first-class option ONLY when the reader is on /versions/latest/. On concrete-version pages the skip still applies — no redundant latest + vX.Y.Z pair.

Same patch, same file. Direct fan-out of Try-Pattern's canonical.

Verification

Try-Pattern PR verified via HTML harness across 4 URL cases; change event fires and navigates correctly. See Try-Pattern #247 for details.

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings July 14, 2026 01:22

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Fixes the DocFX documentation version picker so /versions/latest/ correctly shows latest as the selected dropdown option by removing dead URL-resolution logic and adjusting how the latest entry is handled.

Changes:

  • Removed an unreachable “resolve latest to a concrete version” block that could never match by URL structure.
  • Adjusted picker rendering to include the latest option when appropriate so /versions/latest/ can display a selected latest entry.

Comment thread docfx_project/public/version-picker.js
Chris-Wolfgang and others added 2 commits July 20, 2026 19:03
Same fix as ETL-Xml#187 (0ab73c1) for the identical bug fanned out
to this repo. Copilot on #204 flagged that `currentVersion`
defaulted to 'latest' on non-versioned pages, so the skip predicate
`v.version === 'latest' && currentVersion !== 'latest'` never
fired there — surfacing `latest` in the picker outside
/versions/latest/.

Change the default from 'latest' to `null`. Behavior now matches
the PR title exactly:

- /versions/latest/  → currentVersion='latest' → latest included, selected
- /versions/v0.8.1/  → currentVersion='v0.8.1' → latest skipped
- non-versioned pgs  → currentVersion=null     → latest skipped, none selected

Also updated the inline comment to describe starts-null semantics.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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