Skip to content

Latest commit

 

History

History
61 lines (44 loc) · 1.59 KB

releasing.md

File metadata and controls

61 lines (44 loc) · 1.59 KB

Releasing

Prerequisite: Sonatype (Maven Central) Account

Create an account on the Sonatype issues site. Ask an existing publisher to open an issue requesting publishing permissions for com.squareup projects.

Cutting a Release

  1. Update CHANGELOG.md.

  2. Set versions:

    export RELEASE_VERSION=X.Y.Z
    export NEXT_VERSION=X.Y.Z-SNAPSHOT
    
  3. Update versions:

    sed -i "" \
      "s/VERSION_NAME=.*/VERSION_NAME=$RELEASE_VERSION/g" \
      gradle.properties
    sed -i "" \
      "s/\"com.squareup.moshi:\([^\:]*\):[^\"]*\"/\"com.squareup.moshi:\1:$RELEASE_VERSION\"/g" \
      `find . -name "README.md"`
    
  4. Tag the release and push to GitHub.

    git commit -am "Prepare for release $RELEASE_VERSION."
    git tag -a parent-$RELEASE_VERSION -m "Version $RELEASE_VERSION"
    git push && git push --tags
    
  5. Wait for GitHub Actions to start building the release.

  6. Prepare for ongoing development and push to GitHub.

    sed -i "" \
      "s/VERSION_NAME=.*/VERSION_NAME=$NEXT_VERSION/g" \
      gradle.properties
    git commit -am "Prepare next development version."
    git push
    
  7. Wait for GitHub Actions to build and publish releases for both Windows and Non-Windows.

  8. Visit Sonatype Nexus to promote (close then release) the releases. Or drop it if there is a problem!