diff --git a/.github/bin/new-plugin.mjs b/.github/bin/new-plugin.mjs index c4c6f3d64..09613c9b6 100644 --- a/.github/bin/new-plugin.mjs +++ b/.github/bin/new-plugin.mjs @@ -60,7 +60,7 @@ console.log(`- Creating new plugin ${pluginName}`); path.join(pluginDir, 'CHANGELOG.md'), `# Changes to PostCSS ${pluginName} -### 1.0.0 (Unreleased) +### Unreleased (major) - Initial version `, @@ -74,7 +74,7 @@ console.log(`- Creating new plugin ${pluginName}`); const packageInfo = JSON.parse(await fsp.readFile(path.join(pluginDir, 'package.json'), 'utf8')); packageInfo.name = packageName; packageInfo.description = `TODO: Add description for ${pluginName}`; - packageInfo.version = '1.0.0'; + packageInfo.version = '0.0.0'; packageInfo.homepage = `https://github.com/csstools/postcss-plugins/tree/main/plugins/${pluginSlug}#readme`; packageInfo.bugs = 'https://github.com/csstools/postcss-plugins/issues'; packageInfo.csstools.exportName = exportName; diff --git a/.github/bin/release-plan/npm-version.mjs b/.github/bin/release-plan/npm-version.mjs index c180a1224..4c73aeaab 100644 --- a/.github/bin/release-plan/npm-version.mjs +++ b/.github/bin/release-plan/npm-version.mjs @@ -3,6 +3,29 @@ import fs from 'fs/promises'; import path from 'path'; export async function npmVersion(increment, packageDirectory) { + { + const packageInfo = JSON.parse(await fs.readFile(path.join(packageDirectory, 'package.json'))); + if (packageInfo.version === '0.0.0') { + switch (increment) { + case 'major': + packageInfo.version = '1.0.0'; + break; + case 'minor': + packageInfo.version = '0.1.0'; + break; + case 'patch': + packageInfo.version = '0.0.1'; + break; + + default: + throw new Error(`Unknown increment "${increment}"`); + } + + await fs.writeFile(path.join(packageDirectory, 'package.json'), JSON.stringify(packageInfo, null, '\t')); + return packageInfo.version; + } + } + await new Promise((resolve, reject) => { const versionCmd = spawn( 'npm',