This is an automated email from the ASF dual-hosted git repository.
lhotari pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
The following commit(s) were added to refs/heads/master by this push:
new 6c8141e38f Fix download page after website framework upgrade to
Docusaurus 3 (#4724)
6c8141e38f is described below
commit 6c8141e38f3825d8e022b9c1b042bda77487d158
Author: Lari Hotari <[email protected]>
AuthorDate: Wed Mar 11 15:41:53 2026 +0200
Fix download page after website framework upgrade to Docusaurus 3 (#4724)
---
site3/website/docusaurus.config.js | 28 ++----
site3/website/package.json | 5 +-
site3/website/scripts/build-website.sh | 3 -
site3/website/scripts/replace.js | 50 -----------
.../src/pages/{releases.md => releases.mdx} | 0
.../version-4.17.3/overview/overview.md | 2 +-
site3/website/yarn.lock | 99 +---------------------
7 files changed, 11 insertions(+), 176 deletions(-)
diff --git a/site3/website/docusaurus.config.js
b/site3/website/docusaurus.config.js
index 78692406c4..478c76d48a 100644
--- a/site3/website/docusaurus.config.js
+++ b/site3/website/docusaurus.config.js
@@ -18,25 +18,7 @@ const variables = {
archive_releases_base_url: deployUrl + "/archives",
}
-/**
- * Remark plugin that replaces {{ site.xxx }} template variables in markdown.
- * Works on text nodes and link/image URLs in the AST.
- */
-function makeVariableReplacer(vars) {
- const pattern = /\{\{site\.([\w]+)\}\}/g;
- function replaceVars(str) {
- return str.replace(pattern, (match, key) => {
- return key in vars ? String(vars[key]) : match;
- });
- }
- function visitNode(node) {
- if (typeof node.value === 'string') node.value = replaceVars(node.value);
- if (typeof node.url === 'string') node.url = replaceVars(node.url);
- if (Array.isArray(node.children)) node.children.forEach(visitNode);
- }
- return () => (tree) => visitNode(tree);
-}
-const variableReplacer = makeVariableReplacer(variables);
+
/** @type {import('@docusaurus/types').Config} */
const config = {
@@ -53,6 +35,11 @@ const config = {
hooks: {
onBrokenMarkdownLinks: 'warn',
},
+ preprocessor: ({fileContent}) => {
+ return fileContent.replace(/\{\{\s*site\.([\w]+)\s*\}\}/g, (match, key)
=> {
+ return key in variables ? String(variables[key]) : match;
+ });
+ },
},
presets: [
@@ -63,14 +50,11 @@ const config = {
docs: {
sidebarPath: require.resolve('./sidebars.json'),
breadcrumbs: false,
- remarkPlugins: [variableReplacer],
},
blog: {
showReadingTime: true,
- remarkPlugins: [variableReplacer],
},
pages: {
- remarkPlugins: [variableReplacer],
},
theme: {
customCss: require.resolve('./src/sass/index.scss'),
diff --git a/site3/website/package.json b/site3/website/package.json
index e053f459c4..133bebe28e 100644
--- a/site3/website/package.json
+++ b/site3/website/package.json
@@ -5,7 +5,6 @@
"scripts": {
"docusaurus": "docusaurus",
"start": "docusaurus start",
- "replace-build": "node ./scripts/replace.js && docusaurus build",
"build": "docusaurus build",
"swizzle": "docusaurus swizzle",
"deploy": "docusaurus deploy",
@@ -37,7 +36,5 @@
"last 1 safari version"
]
},
- "devDependencies": {
- "replace-in-file": "^6.3.2"
- }
+ "devDependencies": {}
}
diff --git a/site3/website/scripts/build-website.sh
b/site3/website/scripts/build-website.sh
index 5a388bacc4..8729c645eb 100755
--- a/site3/website/scripts/build-website.sh
+++ b/site3/website/scripts/build-website.sh
@@ -8,9 +8,6 @@ cd $WEBSITE_DIR
yarn install
OUTPUT_DIR=$WEBSITE_DIR/build
-# Replace {{ site.xx }} variables
-node $SCRIPTS_DIR/replace.js
-
# build the website to OUTPUT_DIR
yarn build
diff --git a/site3/website/scripts/replace.js b/site3/website/scripts/replace.js
deleted file mode 100755
index d2deb368e4..0000000000
--- a/site3/website/scripts/replace.js
+++ /dev/null
@@ -1,50 +0,0 @@
-const replace = require("replace-in-file");
-const docusaurusConfig = require("../docusaurus.config")
-
-const CWD = process.cwd();
-const docsDir = `${CWD}/docs`;
-const versionedDocsDir = `${CWD}/versioned_docs`;
-const pagesDir = `${CWD}/src/pages`;
-
-function doReplace(options) {
- replace(options)
- .then((changes) => {
- if (options.dry) {
- console.log("Modified files:");
- console.log(changes.join("\n"));
- }
- })
- .catch((error) => {
- console.error("Error occurred:", error);
- });
-}
-
-variablesFrom = []
-variablesTo = []
-function addVariable(name, value) {
- variablesFrom.push(new RegExp("{{\\s" + name + "\\s}}", "g"))
- variablesTo.push(value)
-
- variablesFrom.push(new RegExp("{{\\s" + name + "}}", "g"))
- variablesTo.push(value)
-
- variablesFrom.push(new RegExp("{{" + name + "\\s}}", "g"))
- variablesTo.push(value)
-
- variablesFrom.push(new RegExp("{{" + name + "}}", "g"))
- variablesTo.push(value)
-
-}
-
-for (const fieldKey in docusaurusConfig.customFields) {
- addVariable("site." + fieldKey, docusaurusConfig.customFields[fieldKey])
-}
-
-const options = {
- files: [`${docsDir}/**/*.md`, `${versionedDocsDir}/**/*.md`,
`${pagesDir}/*.md`, `${pagesDir}/**/*.md` ],
- from: variablesFrom,
- to: variablesTo,
- dry: false
-};
-
-doReplace(options);
diff --git a/site3/website/src/pages/releases.md
b/site3/website/src/pages/releases.mdx
similarity index 100%
rename from site3/website/src/pages/releases.md
rename to site3/website/src/pages/releases.mdx
diff --git a/site3/website/versioned_docs/version-4.17.3/overview/overview.md
b/site3/website/versioned_docs/version-4.17.3/overview/overview.md
index 62b746f5a4..f41f4da538 100644
--- a/site3/website/versioned_docs/version-4.17.3/overview/overview.md
+++ b/site3/website/versioned_docs/version-4.17.3/overview/overview.md
@@ -39,7 +39,7 @@
Object/[BLOB](https://en.wikipedia.org/wiki/Binary_large_object) storage | Stori
Learn more about Apache BookKeeper™ and what it can do for your
organization:
-- [Apache BookKeeper 4.17.3 Release Notes](/release-notes#4164)
+- [Apache BookKeeper 4.17.3 Release Notes](/release-notes#4173)
- [Java API docs]({{site.javadoc_base_url}})
Or start [using](../getting-started/installation) Apache BookKeeper today.
diff --git a/site3/website/yarn.lock b/site3/website/yarn.lock
index d9bcd1ab03..880e898aa3 100644
--- a/site3/website/yarn.lock
+++ b/site3/website/yarn.lock
@@ -3720,15 +3720,6 @@ cli-table3@^0.6.3:
optionalDependencies:
"@colors/colors" "1.5.0"
-cliui@^8.0.1:
- version "8.0.1"
- resolved
"https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"
- integrity
sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==
- dependencies:
- string-width "^4.2.0"
- strip-ansi "^6.0.1"
- wrap-ansi "^7.0.0"
-
clone-deep@^4.0.1:
version "4.0.1"
resolved
"https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"
@@ -4865,11 +4856,6 @@ fs-extra@^11.1.1, fs-extra@^11.2.0:
jsonfile "^6.0.1"
universalify "^2.0.0"
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved
"https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity
sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
-
fsevents@~2.3.2:
version "2.3.3"
resolved
"https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
@@ -4885,11 +4871,6 @@ gensync@^1.0.0-beta.2:
resolved
"https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
integrity
sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
-get-caller-file@^2.0.5:
- version "2.0.5"
- resolved
"https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
- integrity
sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-
get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.3.0:
version "1.3.0"
resolved
"https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01"
@@ -4953,18 +4934,6 @@ glob-to-regexp@^0.4.1:
resolved
"https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
integrity
sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
-glob@^7.2.0:
- version "7.2.3"
- resolved
"https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
- integrity
sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
- dependencies:
- fs.realpath "^1.0.0"
- inflight "^1.0.4"
- inherits "2"
- minimatch "^3.1.1"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
global-dirs@^3.0.0:
version "3.0.1"
resolved
"https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.1.tgz#0c488971f066baceda21447aecb1a8b911d22485"
@@ -5428,15 +5397,7 @@ [email protected]:
resolved
"https://registry.yarnpkg.com/infima/-/infima-0.2.0-alpha.45.tgz#542aab5a249274d81679631b492973dd2c1e7466"
integrity
sha512-uyH0zfr1erU1OohLk0fT4Rrb94AOhguWNOcD9uGrSpRvNB+6gZXUoJX5J0NtvzBO10YZ9PgvA4NFgt+fYg8ojw==
-inflight@^1.0.4:
- version "1.0.6"
- resolved
"https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity
sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@2, [email protected], inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3,
inherits@~2.0.4:
[email protected], inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3,
inherits@~2.0.4:
version "2.0.4"
resolved
"https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
integrity
sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
@@ -6683,7 +6644,7 @@ minimalistic-assert@^1.0.0:
resolved
"https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
integrity
sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
[email protected], minimatch@^3.1.1:
[email protected]:
version "3.1.5"
resolved
"https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.5.tgz#580c88f8d5445f2bd6aa8f3cadefa0de79fbd69e"
integrity
sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==
@@ -6847,13 +6808,6 @@ on-headers@~1.1.0:
resolved
"https://registry.yarnpkg.com/on-headers/-/on-headers-1.1.0.tgz#59da4f91c45f5f989c6e4bcedc5a3b0aed70ff65"
integrity
sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==
-once@^1.3.0:
- version "1.4.0"
- resolved
"https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity
sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
- dependencies:
- wrappy "1"
-
onetime@^5.1.2:
version "5.1.2"
resolved
"https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
@@ -7026,11 +6980,6 @@ path-exists@^5.0.0:
resolved
"https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7"
integrity
sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved
"https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity
sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
-
[email protected]:
version "1.0.2"
resolved
"https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
@@ -8149,20 +8098,6 @@ repeat-string@^1.0.0:
resolved
"https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
integrity
sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==
-replace-in-file@^6.3.2:
- version "6.3.5"
- resolved
"https://registry.yarnpkg.com/replace-in-file/-/replace-in-file-6.3.5.tgz#ff956b0ab5bc96613207d603d197cd209400a654"
- integrity
sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg==
- dependencies:
- chalk "^4.1.2"
- glob "^7.2.0"
- yargs "^17.2.1"
-
-require-directory@^2.1.1:
- version "2.1.1"
- resolved
"https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
- integrity
sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
-
require-from-string@^2.0.2:
version "2.0.2"
resolved
"https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
@@ -8640,7 +8575,7 @@ std-env@^3.7.0:
resolved
"https://registry.yarnpkg.com/std-env/-/std-env-3.10.0.tgz#d810b27e3a073047b2b5e40034881f5ea6f9c83b"
integrity
sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==
-string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
+string-width@^4.1.0, string-width@^4.2.0:
version "4.2.3"
resolved
"https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity
sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
@@ -9325,11 +9260,6 @@ wrap-ansi@^8.0.1, wrap-ansi@^8.1.0:
string-width "^5.0.1"
strip-ansi "^7.0.1"
-wrappy@1:
- version "1.0.2"
- resolved
"https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity
sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
-
write-file-atomic@^3.0.3:
version "3.0.3"
resolved
"https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
@@ -9369,34 +9299,11 @@ xml-js@^1.6.11:
dependencies:
sax "^1.2.4"
-y18n@^5.0.5:
- version "5.0.8"
- resolved
"https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
- integrity
sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
-
yallist@^3.0.2:
version "3.1.1"
resolved
"https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity
sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
-yargs-parser@^21.1.1:
- version "21.1.1"
- resolved
"https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
- integrity
sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
-
-yargs@^17.2.1:
- version "17.7.2"
- resolved
"https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269"
- integrity
sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
- dependencies:
- cliui "^8.0.1"
- escalade "^3.1.1"
- get-caller-file "^2.0.5"
- require-directory "^2.1.1"
- string-width "^4.2.3"
- y18n "^5.0.5"
- yargs-parser "^21.1.1"
-
yocto-queue@^1.0.0:
version "1.2.2"
resolved
"https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.2.2.tgz#3e09c95d3f1aa89a58c114c99223edf639152c00"