learn-request-queue/RELEASE.md

1.3 KiB

Release Checklist

Release Type

  • Were there any database schema changes?
  • Are there any significant UI changes?
  • Have any significant new features been added?
  • Are there any API changes?

If the answer to any of the above is yes, then the release MUST be a major or minor release. Otherwise, the release MAY be a patch release (at developer's discretion).

Major/Minor Releases

  • Add a commit which adds a database upgrade script at db/upgrade/[oldversion]-[newversion].sql
    • ALWAYS use a transaction for the entirety of this file
    • At minimum, DB version must be bumped
    • Test the upgrade script as follows:
      git checkout [previous release tag]
      docker-compose down
      docker-compose up
      psql -h 0 -U postgres < db/upgrade/v[previous]-v[current].sql
      
      Update the version in src/version.ts and verify the app works as expected.
  • Add a commit which bumps the version in src/version.ts and db/00-version.sql, entitled Bump version to vMAJOR.MINOR
  • Tag the latest commit with vMAJOR.MINOR
  • Write release notes

Patch Releases

  • Add a commit which bumps the patch level in src/version.ts, entitled Bump version to vMAJOR.MINOR.PATCH
  • Tag the latest commit with vMAJOR.MINOR.PATCH
  • Write release notes