mirror of
https://github.com/immich-app/immich.git
synced 2026-02-04 08:49:01 +03:00
chore: replace patch doc links (#25591)
chore: automatically use the latest patch release
This commit is contained in:
28
docs/static/archived-versions.json
vendored
28
docs/static/archived-versions.json
vendored
@@ -7,34 +7,14 @@
|
|||||||
"label": "v2.4.1",
|
"label": "v2.4.1",
|
||||||
"url": "https://docs.v2.4.1.archive.immich.app"
|
"url": "https://docs.v2.4.1.archive.immich.app"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"label": "v2.4.0",
|
|
||||||
"url": "https://docs.v2.4.0.archive.immich.app"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"label": "v2.3.1",
|
"label": "v2.3.1",
|
||||||
"url": "https://docs.v2.3.1.archive.immich.app"
|
"url": "https://docs.v2.3.1.archive.immich.app"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"label": "v2.3.0",
|
|
||||||
"url": "https://docs.v2.3.0.archive.immich.app"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"label": "v2.2.3",
|
"label": "v2.2.3",
|
||||||
"url": "https://docs.v2.2.3.archive.immich.app"
|
"url": "https://docs.v2.2.3.archive.immich.app"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"label": "v2.2.2",
|
|
||||||
"url": "https://docs.v2.2.2.archive.immich.app"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"label": "v2.2.1",
|
|
||||||
"url": "https://docs.v2.2.1.archive.immich.app"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"label": "v2.2.0",
|
|
||||||
"url": "https://docs.v2.2.0.archive.immich.app"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"label": "v2.1.0",
|
"label": "v2.1.0",
|
||||||
"url": "https://docs.v2.1.0.archive.immich.app"
|
"url": "https://docs.v2.1.0.archive.immich.app"
|
||||||
@@ -43,18 +23,10 @@
|
|||||||
"label": "v2.0.1",
|
"label": "v2.0.1",
|
||||||
"url": "https://docs.v2.0.1.archive.immich.app"
|
"url": "https://docs.v2.0.1.archive.immich.app"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"label": "v2.0.0",
|
|
||||||
"url": "https://docs.v2.0.0.archive.immich.app"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"label": "v1.144.1",
|
"label": "v1.144.1",
|
||||||
"url": "https://docs.v1.144.1.archive.immich.app"
|
"url": "https://docs.v1.144.1.archive.immich.app"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"label": "v1.144.0",
|
|
||||||
"url": "https://docs.v1.144.0.archive.immich.app"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"label": "v1.143.1",
|
"label": "v1.143.1",
|
||||||
"url": "https://docs.v1.143.1.archive.immich.app"
|
"url": "https://docs.v1.143.1.archive.immich.app"
|
||||||
|
|||||||
@@ -1,6 +1,12 @@
|
|||||||
#! /usr/bin/env node
|
#! /usr/bin/env node
|
||||||
const { readFileSync, writeFileSync } = require('node:fs');
|
const { readFileSync, writeFileSync } = require('node:fs');
|
||||||
|
|
||||||
|
const asVersion = (item) => {
|
||||||
|
const { label, url } = item;
|
||||||
|
const [major, minor, patch] = label.substring(1).split('.').map(Number);
|
||||||
|
return { major, minor, patch, label, url };
|
||||||
|
};
|
||||||
|
|
||||||
const nextVersion = process.argv[2];
|
const nextVersion = process.argv[2];
|
||||||
if (!nextVersion) {
|
if (!nextVersion) {
|
||||||
console.log('Usage: archive-version.js <version>');
|
console.log('Usage: archive-version.js <version>');
|
||||||
@@ -8,10 +14,32 @@ if (!nextVersion) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const filename = './docs/static/archived-versions.json';
|
const filename = './docs/static/archived-versions.json';
|
||||||
const oldVersions = JSON.parse(readFileSync(filename));
|
let versions = JSON.parse(readFileSync(filename));
|
||||||
const newVersions = [
|
const newVersion = {
|
||||||
{ label: `v${nextVersion}`, url: `https://docs.v${nextVersion}.archive.immich.app` },
|
label: `v${nextVersion}`,
|
||||||
...oldVersions,
|
url: `https://docs.v${nextVersion}.archive.immich.app`,
|
||||||
];
|
};
|
||||||
|
|
||||||
writeFileSync(filename, JSON.stringify(newVersions, null, 2) + '\n');
|
let lastVersion = asVersion(newVersion);
|
||||||
|
for (const item of versions) {
|
||||||
|
const version = asVersion(item);
|
||||||
|
// only keep the latest patch version for each minor release
|
||||||
|
if (
|
||||||
|
lastVersion.major === version.major &&
|
||||||
|
lastVersion.minor === version.minor &&
|
||||||
|
lastVersion.patch >= version.patch
|
||||||
|
) {
|
||||||
|
versions = versions.filter((item) => item.label !== version.label);
|
||||||
|
console.log(
|
||||||
|
`Removed ${version.label} (replaced with ${lastVersion.label})`
|
||||||
|
);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
lastVersion = version;
|
||||||
|
}
|
||||||
|
|
||||||
|
writeFileSync(
|
||||||
|
filename,
|
||||||
|
JSON.stringify([newVersion, ...versions], null, 2) + '\n'
|
||||||
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user