Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Software release checklist for v4.13 #1323

Closed
22 tasks done
blms opened this issue Feb 22, 2023 · 0 comments
Closed
22 tasks done

Software release checklist for v4.13 #1323

blms opened this issue Feb 22, 2023 · 0 comments
Assignees
Labels
chore performant Tasks for or taken on by Performant

Comments

@blms
Copy link
Contributor

blms commented Feb 22, 2023

release prep

  • Pull updated copies of the develop and main branches
  • Use git flow to create a new release branch with the appropriate version (e.g., git flow release start 0.5)
  • Review database migrations to make sure updates look good (django only; should be caught in testing/qa)
  • Update release version to appropriate number (for Python apps, set to final version without any -pre or -dev tags).
  • Update changelog to make sure that all features, changes, bugfixes, etc included in the release are documented. You may want to review the git revision history to be sure you’ve captured everything.
  • Update deploy notes to document any manual steps that need to be done with the deploy (e.g., running any import scripts, configuring site domain in Django admin, etc)
  • Update any README badges that are pointing to develop branches to use either main or default branch (travis-ci build, code coverage, etc).
  • Make sure local settings are documented (for django app: sample local settings file includes any new configurations).
  • Check python requirements for any internal dependencies that should be released (or at least pinned to a specific git commit)
  • Release & publish any internal JS dependencies with updates; specfy the published version number in package.json
  • Use npm audit to check and fix vulnerabilities in npm dependencies
  • Make sure that unit tests are passing on travis-ci for release branch (fix them if they are not)
  • Make sure code coverage is 95% or higher. Review for any important gaps.
  • Review code documentation to make sure it is up to date. If the database has changed, generate and include current schema documentation images.
  • Run pip freeze, save output as requirements.lock and check in to document known working versions of python dependencies
  • Use git flow to finish the release (merge release branch into both main and develop, create a tag, remove the release branch, etc.). (git flow release finish 0.5)

after release

  • Increase the develop branch version so it is set to the next expected release (i.e., if you just released 0.5 then develop will probably be 0.6-dev unless you are working on a major update, in which case it will be 1.0-dev)
  • Push all updates to GitHub (main branch, develop branch, tags)
  • Clean up any release branches on GitHub

specifics for geniza v4.13

  • run ./manage.py add_fragment_urls against iiif repo pgp-bodleian-manifests.csv with -o
  • run ./manage.py import_manifests --update --filter princetongenizalab.github.io/iiif/bodleian/
  • make sure ms heb c 13/6-8 is created and remove/replace the outdated 6, 7, 8 ones
@blms blms added chore performant Tasks for or taken on by Performant labels Feb 22, 2023
@blms blms self-assigned this Feb 22, 2023
@blms blms closed this as completed Mar 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore performant Tasks for or taken on by Performant
Projects
None yet
Development

No branches or pull requests

1 participant