Skip to content

Release Process

saku edited this page Jul 8, 2025 · 1 revision

This section is intended for maintainers who will be releasing new versions of @cybozu/eslint-config.

Prerequisites

  • You must have publish permissions for the @cybozu/eslint-config package on npm
  • Make sure you're logged in to npm: npm login

Steps

  1. Determine the version and run a dry-run

    npm run release:dryrun -- --release-as 24.0.0-alpha.0

    This will show you the version and changelog that will be generated.

  2. Create the release

    npm run release -- --release-as 24.0.0-alpha.0

    This will:

    • Update the version in package.json
    • Generate/update CHANGELOG.md
    • Create a git commit with the changes
    • Create a git tag
  3. Push and publish

    # Push the tag and commits
    git push --follow-tags origin master
    
    # Publish to npm
    # For alpha/beta releases, specify the tag to avoid publishing as 'latest'
    npm publish --tag alpha
    
    # For stable releases, omit the --tag flag
    npm publish
  4. Create release notes

    • Go to https://github.com/cybozu/eslint-config/releases/new
    • Select the tag you just created
    • Select the previous tag for comparison
    • Click "Generate release notes" to auto-generate the release notes
    • For alpha/beta releases, make sure to check "Set as a pre-release"
    • For stable releases, leave "Set as the latest release" checked

Version Guidelines

  • Major version: Changes that might cause new errors
  • Minor version: Changes that might cause new warnings
  • Patch version: Changes that don't cause any new errors or warnings

Important Notes

  • Alpha/Beta releases: Always use the --tag alpha or --tag beta flag when publishing to npm to avoid making it the default latest version
  • Pre-releases: Always check "Set as a pre-release" when creating GitHub releases for alpha/beta versions
  • Testing: Always run the dry-run first to verify the version and changelog before actually releasing
Clone this wiki locally