Skip to content

[docs] Website build fails on Windows: version-replace plugin doesn't substitute placeholders #3516

Description

@GabrielBBaldez

Search before asking

  • I searched in the issues and found nothing similar.

Description

On Windows, building the documentation website (npm run build in website/) fails the broken-links check. The remark-version-replace plugin does not substitute the $FLUSS_VERSION$ / $FLUSS_MAVEN_REPO_URL$ placeholders, so the Maven-JAR links in iceberg.md, lance.md and paimon.md resolve to a literal $FLUSS_MAVEN_REPO_URL$/... and Docusaurus reports ~24 broken links (onBrokenLinks: 'throw'), failing the build.

Root cause: getDocsVersionName() in website/src/plugins/remark-version-replace/index.js splits the file path on '/' only:

const parts = pathname.split('/');
const websiteIndex = parts.lastIndexOf('website');

On Windows vfile.path uses backslash separators (e.g. C:\...\website\docs\engine-flink\reads.md), so split('/') yields a single-element array, lastIndexOf('website') returns -1, the function returns '', and no replacements are applied.

Steps to reproduce

On Windows, in website/:

npm run clear && npm run build

→ build fails with ~24 broken links pointing to $FLUSS_MAVEN_REPO_URL$/....

Willingness to contribute

  • I'm willing to submit a PR!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions