From 07945fc665585df97c3c6f14505a27a5b9c7e8fd Mon Sep 17 00:00:00 2001 From: Ilia Kebets Date: Mon, 8 Jul 2024 14:51:45 +0200 Subject: [PATCH] write sync-versions script --- tools/eslint-plugin-sonarjs/sync-version.mjs | 42 +++++++++++++++++++ .../eslint-plugin-sonarjs/upgrade-version.mjs | 6 --- 2 files changed, 42 insertions(+), 6 deletions(-) create mode 100644 tools/eslint-plugin-sonarjs/sync-version.mjs delete mode 100644 tools/eslint-plugin-sonarjs/upgrade-version.mjs diff --git a/tools/eslint-plugin-sonarjs/sync-version.mjs b/tools/eslint-plugin-sonarjs/sync-version.mjs new file mode 100644 index 0000000000..af2e0d1454 --- /dev/null +++ b/tools/eslint-plugin-sonarjs/sync-version.mjs @@ -0,0 +1,42 @@ +/** + * 1. get version from packages/eslint-plugin-sonarjs/package.json + * 2. update it in its/eslint-plugin-sonarjs/package.json + * 3. update it in its/eslint-plugin-sonarjs/test/integration/test.sh + * 4. update it in tools/eslint-plugin-sonarjs/build-to-its.sh + */ +import * as fs from 'node:fs'; +import * as path from 'node:path'; +const __dirname = import.meta.dirname; +import { default as pluginPackageJson } from '../../packages/eslint-plugin-sonarjs/package.json' assert { type: 'json' }; + +const version = pluginPackageJson.version; +console.log(`Setting eslint-plugin-sonarjs version to ${version}`); + +const TARGET_FILES = [ + path.join(__dirname, '..', '..', 'its', 'eslint-plugin-sonarjs', 'package.json'), + path.join( + __dirname, + '..', + '..', + 'its', + 'eslint-plugin-sonarjs', + 'test', + 'integration', + 'test.sh', + ), + path.join(__dirname, 'build-to-its.sh'), +]; +TARGET_FILES.map(targetPath => replaceInPath(targetPath, version)); + +function replaceInPath(filePath, version) { + console.log(`Updating version in ${filePath}`); + const content = fs.readFileSync(filePath, 'utf8'); + const updatedContent = replaceVersion(content, version); + fs.writeFileSync(filePath, updatedContent); + + function replaceVersion(text, newVersion) { + const regex = /eslint-plugin-sonarjs-(\d+\.\d+\.\d+)\.tgz/g; + const replacement = `eslint-plugin-sonarjs-${newVersion}.tgz`; + return text.replace(regex, replacement); + } +} diff --git a/tools/eslint-plugin-sonarjs/upgrade-version.mjs b/tools/eslint-plugin-sonarjs/upgrade-version.mjs deleted file mode 100644 index 76fbd886f1..0000000000 --- a/tools/eslint-plugin-sonarjs/upgrade-version.mjs +++ /dev/null @@ -1,6 +0,0 @@ -/** - * 1. get version from packages/eslint-plugin-sonarjs/package.json - * 2. update it in its/eslint-plugin-sonarjs/package.json - * 3. update it in its/eslint-plugin-sonarjs/test/integration/test.sh - * 4. update it in tools/eslint-plugin-sonarjs/build-to-its.sh - */