Skip to content

Latest commit

 

History

History
88 lines (58 loc) · 1.88 KB

File metadata and controls

88 lines (58 loc) · 1.88 KB

Releasing

This document describes the steps to release a new version of PublicSuffix.

Prerequisites

  • You have commit access to the repository
  • You have push access to the repository
  • You have a GPG key configured for signing tags
  • You have permission to publish to RubyGems

Release process

  1. Determine the new version using Semantic Versioning

    VERSION=X.Y.Z
    • MAJOR version for incompatible API changes
    • MINOR version for backwards-compatible functionality additions
    • PATCH version for backwards-compatible bug fixes
  2. Update the version file with the new version

    Edit lib/public_suffix/version.rb and update the VERSION constant:

    VERSION = "X.Y.Z"
  3. Update the changelog with the new version

    Edit CHANGELOG.md and add a new section for the release following the Common Changelog format (see CONTRIBUTING.md for details):

    ## X.Y.Z - YYYY-MM-DD
    
    ### Changed
    
    - Description of changes
  4. Install dependencies

    bundle install

    or simply:

    bundle
  5. Run tests and confirm they pass

    bundle exec rake test
  6. Commit the new version

    git commit -am "Release $VERSION"
  7. Create a signed tag

    git tag -a v$VERSION -s -m "Release $VERSION"
  8. Push the changes and tag

    git push origin main
    git push origin v$VERSION

    Pushing the tag will trigger CI to automatically build and publish the gem to RubyGems.

Post-release

  • Verify the CI release workflow completed successfully
  • Verify the new version appears on RubyGems
  • Verify the GitHub release was created
  • Announce the release if necessary