Skip to content
Ian Gilman edited this page Aug 7, 2026 · 30 revisions

For every new stable build:

  1. Make sure you have all three repositories (openseadragon, openseadragon.github.com, and site-build) cloned next to each other in the same folder.
  2. Check to see if there are any pull requests in the site-build repository waiting to be merged for the release. If so (and they're ready), merge them.
  3. Make sure they're all up to date, and that you're on their master branches.
  4. Do a test grunt publish from the openseadragon repository and a grunt doc in the site-build repository to make sure the JSDocs build. If you want, you can also do a grunt dev in the site-build repository to check it visually.
  5. In the openseadragon repository:
    1. Update the version number in package.json.
    2. Update the version number and date in CITATION.cff.
    3. Make sure the changelog.txt file lists all the relevant changes and remove the "in progress" indication from the top version.
    4. Commit.
    5. git tag -a v<version> -m <version> (note the v), for example: git tag -a v0.9.125 -m 0.9.125.
    6. Double-check that you tagged the correct revision (you can use gitk, the GitHub GUI, or straight git like git show v<version>).
    7. git push origin master v<version>.
    8. grunt publish to build and publish to the site-build folder.
    9. Create a new release at https://github.com/openseadragon/openseadragon/releases/new and upload the files in build/releases (name it the same as the tag, e.g. v2.4.0). Enter the appropriate info from the changelog.
    10. Publish the release to npm: npm publish (see https://docs.npmjs.com/getting-started/publishing-npm-packages for more info).
    11. Add the next version number along with "in progress" to changelog.txt; commit and push.
  6. In the site-build repository:
    1. Commit the changes from the previous step.
    2. git tag -a v<version> -m <version> (note the v)
    3. git push origin master v<version>
    4. Run grunt publish to build and publish to the openseadragon.github.com folder.
  7. In the openseadragon.github.com folder:
    1. Commit the changes and push to GitHub.
  8. Let Ian know, and he'll share it on Twitter, Bluesky, Reddit, and Discord.
  9. Update https://github.com/openseadragon/browser-extension to the latest version of OSD.
  10. https://github.com/openseadragon/svg-overlay, https://github.com/openseadragon/html-overlay, and https://github.com/openseadragon/bookmark-url automatically use the latest version, but check them and merge any of their pull requests that have been waiting for the new release.

Clone this wiki locally