Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • M MathJax
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 304
    • Issues 304
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MathJax
  • MathJax
  • Wiki
  • Release process checklist

Release process checklist · Changes

Page history
Update for v2.7 authored Aug 25, 2016 by Peter Krautzberger's avatar Peter Krautzberger
Hide whitespace changes
Inline Side-by-side
Release-process-checklist.md
View page @ c1b8980e
***Table of Contents***
## For all releases (major, minor, patch, and beta)
* [For regular releases](https://github.com/mathjax/MathJax/wiki/Release-process-checklist#for-releases)
* [For beta releases](https://github.com/mathjax/MathJax/wiki/Release-process-checklist#for-beta-releases)
## For regular releases
**Note: we follow [semantic versioning](http://semver.org/) and the terms major, minor, patch release are used as in that context.**
**Note: we follow [semantic versioning](http://semver.org/) and the terms major, minor, patch, and beta release are used as in that context.**
### At GitHub
1. All code changes are internally tested according to the MathJax [[Development Process]]. Once the working branch is deemed ready, iti s merged into the `mathjax/master` (for out-of-line patch releases it is merged into the branch of the minor version). Don't forget to repack and recombine the files before merging.
2. If it is not a patch release, an `vN.M-latest` branch is created. Double check that MathJax's internal version is updated as well.
3. The release is tagged/released on GitHub. This causes a labeled distribution to be created (with the tag name) in the GitHub download manager.
3. Complete the [[Documentation update process]].
4. The download distribution should then be downloaded and smoke tested.
1. All code changes are internally tested according to the MathJax [[Development Process]].
2. If it is not a patch release, an `vN.m-latest` branch is created.
3. Double check that MathJax's internal version and `package.json` is updated as well.
4. Don't forget to repack and recombine the files before merging.
5. Complete the [[Documentation update process]].
5. Once the `mathjax/develop` branch is deemed ready, it is merged into the `mathjax/master` (for out-of-line patch releases it is also merged into the branch of the minor version).
4. The release is tagged on GitHub with a tag name such as `N.m.p-beta.0`; follow the example of preceding release notes.
6. The distribution should then be downloaded and smoke tested.
### At CDN
Reference: https://github.com/mathjax/MathJax/wiki/CDN-Hosting-at-Google-Cloud-Storage
1. Upload the changed files to the CDN: create/update `mathjax/N.m-latest/`, update `mathjax/latest/` (unless a patch release is made to an older version, then just `mathjax/N.m-latest`).
1. The GCS buckets are: `cdn.mathjax.org` for regular releases & `beta.mathjax.org` for beta releases
1. Create or update `mathjax/N.m-latest/` and update `mathjax/latest/` -- unless it's a patch release for an older version, then just update `mathjax/N.m-latest`.
1. When fonts change, you'll need to [fix mime-type headers](https://github.com/mathjax/MathJax/wiki/CDN-Hosting-at-Google-Cloud-Storage#mime-type-headers). If there were no updates, it's faster to copy the fonts from `latest` to `N.m-latest` [in the cloud](https://github.com/mathjax/MathJax/wiki/CDN-Hosting-at-Google-Cloud-Storage#copying).
1. If updated, check the custom headers of fonts (e.g., via curl).
1. Purge the cache: it seems CloudFlare picks up changes to GCS immediately. But to be sure, purge the changed files via the CloudFlare Web Interface or purge the entire CDN.
1. Purge the cache: it seems CloudFlare picks up changes to GCS immediately. But to be sure, purge the changed files or the entire CDN via the CloudFlare Web Interface.
### At mathjax.org
1. For major and minor releases, a news announcement for the release is posted. The post should follow the announcement for previous versions, in particular
* Describe what is new
* Summary of what changed in the release
* Advise regarding the CDN propagation (clear browser cache etc)
* Point to the release
* Give instructions for reporting bugs, and refer questions to MathJax Users
2. Extract from this a press release.
* A copy of the What's new document from the documenation
2. Extract from this a press release (again, follow previous examples).
### For the community
......@@ -42,35 +42,6 @@ Reference: https://github.com/mathjax/MathJax/wiki/CDN-Hosting-at-Google-Cloud-S
* The new post should be announced on social media channels, see [[MathJax-web-presence]].
* The press release should be pushed to MailChimp.
## For beta releases
This is almost identical, except that we don't do as much.
### At GitHub
1. All code changes are internally tested according to the MathJax [[Development Process]] and merged into the `mathjax/vN.M-beta` branch at GitHub. Repack and recombine the files to make sure they are consistent with the unpacked versions.
2. The `vN.M-beta` branch is created. This makes the branch appear as a separate line in the network viewer. Check that MathJax's internal version is updated as well.
4. The download distribution should then be downloaded and smoke tested.
### At CDN
1. Upload the new version to the CDN by updating the copy in the `mathjax-beta` buckets.
1. Set the custom headers for the fonts.
1. Check the custom headers via curl.
### At mathjax.org
2. A news announcement for the beta release is posted. The post should follow the announcement for previous versions, in particular
* Describe what is new
* Point to the beta branch and download at github.
* Give instructions for reporting bugs, and refer questions to MathJax User Groups
### For the community
* Send word to the MathJax sponsors
* Announcement should be posted to the User Groups at mathjax-dev and mathjax-users
* The new post should be announced on social media channels [[MathJax-web-presence]].
## Note for patch release
......
Clone repository

MathJax Wiki

  • Contributing
    • Contributor License Agreement etc
    • Quick guide to translating mathjax
  • Development
    • Development Process
      • Release Process Checklist
      • Documentation Update Process
      • Source Control Policies
      • GitHub
    • Design Documents
      • MathJax Roadmap
      • Semantic Enrichment project
      • CDN Hosting
        • CDN requirements
        • CDN Hosting at Google Cloud Storage
      • Performance Discussion
      • Profiling and Diagnostics Tools
      • Documentation generation guide
      • Testing
        • Platforms supported
        • Test Machines
  • MathJax web presence