Skip to content

Release Notes ​

What changed in the v2.0.x line of @viteplus/versions. For the line before it see Earlier releases.

INFO

This line is archived and no longer maintained. See the current release notes for the v2.1.x line, which reworked the version switcher and moved dependency injection to @remotex-labs/xinject.

v2.0.9 ​

A packaging fix so installing @viteplus/versions no longer pulls VitePress into your project.

  • Fixed: vitepress is no longer a runtime dependency. It was listed in both dependencies (pinned to a 2.0.0-alpha build) and peerDependencies, so installing @viteplus/versions fetched its own copy of VitePress alongside the one your site already had. It is now dev-only here, and the supported range is the optional peer ^1.6.4 || ^2.0.0 alone.
  • Changed: Updated vitepress, eslint, typescript-eslint, eslint-plugin-perfectionist, @types/node, and @remotex-labs/xbuild to their current releases.

v2.0.8 ​

A fix so custom content directory names stay out of the URL.

  • Fixed: Renaming sources or archive no longer prefixes every URL with the directory name. Route rewriting matched the literal strings src/ and archive/, so any other name fell through unrewritten — sources: 'latest' served the home page at /latest/ instead of /. Both prefixes are now read from your configuration.
  • Fixed: A locale prefix is stripped by length rather than by substring match, so a path that repeats the directory or locale name deeper in the tree is no longer mangled.
  • Changed: Updated vitepress, eslint, typescript-eslint, eslint-plugin-perfectionist, and @types/node to their current releases.

v2.0.7 ​

Packaging correctness and toolchain modernization, plus a fix so external nav links are no longer version-prefixed.

  • Added: A package.json exports map for the entry point and the ./components/* subpath, so @viteplus/versions and its Vue components resolve correctly under modern ESM bundlers.
  • Fixed: External links in the navigation are left untouched — isNavItemWithLink now excludes http(s) links, so they are no longer rewritten with a version path prefix.
  • Changed: Migrated the toolchain from npm to pnpm, refactored CI/CD into dedicated workflows, modernized the ESLint config, and switched tsconfig to project references emitting declarations only.

v2.0.6 ​

Sidebar and routing robustness, plus a documentation "suggest changes" edit link.

  • Added: An edit link on every docs page that opens a pre-filled GitHub issue for suggesting changes.
  • Changed: Route rewriting resolves the active locale through a shared extractLocale helper.
  • Changed: The sidebar falls back gracefully when a locale has no entries, and path joining uses a safe utility so versioned links stay correct across platforms.

v2.0.5 ​

Multi-locale, multi-version support across the sidebar, navigation, and rewrites.

  • Added: Per-locale navigation resolution, so each language can define its own nav.
  • Added: Language-and-region locale keys such as fr-FR are matched to their base language.
  • Added: External links (starting with http) in nav and sidebar are left untouched, as if marked skipVersioning.
  • Changed: parseSidebar renamed to parseSidebars.
  • Changed: Sidebar and route parsing reworked to resolve the active locale and version dynamically.

v2.0.4 ​

  • Changed: The version switcher renders only when archived versions exist.
  • Changed: Locale handling in themeConfig refined.

v2.0.3 ​

  • Added: Compatibility with the stable vitepress@2.0.0 release.
  • Fixed: Navbar icon rendering.

v2.0.2 ​

  • Fixed: The version switcher no longer chains version prefixes when switching repeatedly.

v2.0.1 ​

v2.0.0 ​

Full rewrite around a new defineVersionedConfig API, a src + archive layout, and per-version navigation and sidebars.

ts
// .vitepress/config.ts
import { defineVersionedConfig } from '@viteplus/versions';

export default defineVersionedConfig({
    versionsConfig: {
        current: 'v2.0.x',
        versionSwitcher: { text: 'Version', includeCurrentVersion: true }
    }
});

Earlier releases ​

  • v1.0.0 - initial release (archived docs).

See also ​

Released under the Mozilla Public License 2.0