Skip to content

DoD for release

Julien Déramond edited this page Sep 17, 2021 · 59 revisions
  • Run linters;
  • Run compilers;
  • Run tests;
  • Check documentation site: examples and contents;
  • Test cross-browser compatibility locally and with BrowserStack:
    • Firefox ESR
    • IE11 (v4 only)
    • Latest Edge, Chrome, Firefox, Safari
    • iOS Safari
    • Chrome & Firefox on Android
  • Including RTL mode;
  • Ask for reviews and accessibility testing;
  • sync with Bootstrap's release and probably wait for it;
  • npm run release-version $current_version $next_version to bump version number
    • then, if bumping a minor or major version:
      • Manually change version_short in package.json
      • Add docs version to site/data/docs-versions.yml
      • Manually change docs_version in config.yml and other references to the previous version
      • Update redirects in docs frontmatter (site/content/docs/_index.html?)
      • Move site/content/docs/5.x to site/content/docs/5.x+1
      • Increment site/static/docs/{version} version
      • Increment version in nuget/boosted.nuspec
      • Ensure Algolia indexes new release content (probably requires a PR)
    • check wrong matches in CHANGELOG.md, and maybe site/content/docs/<version>/migration.md
    • ⚠️ check the package-lock.json and package.json content, only "boosted" should have its version changed!
    • manually update the version in nuget/boosted.nuspec and nuget/boosted.sass.nuspec
    • ⚠️ site/content/docs/5.1/**/*.md should not always be modified
  • if year changed recently, happy new year 🎉 but please change © year in .scss main files (reboot, grid, utilities and main file) as well as in NOTICE.txt.
  • npm run release to compile dist, update SRI hashes in doc and package the release
  • Prepare changelog:
  • commit and push dist with a chore(release) commit message
  • merge (on v4-dev or main)
  • tag your version, and push your tag
  • create a GitHub release:
    • attach zip file
    • paste CHANGELOG / Ship list in the release's description
  • run build/ship.sh x.x.x to… (v4 only)
    • Pull the latest changes update new version numbers
    • Compile CSS and JS
    • Compress dist files
    • Generate the hashes and update our config's cdn section
    • Compile the docs
    • Copy-pasta built docs to bs-docs-named clone of Boosted.
  • npm pack then npm publish
  • publish on Nuget
  • check release on NPM, Nuget, Packagist
  • publish documentation on gh-pages:
    • copy ../_site (main) or ../bs-docs (v4-dev) to the gh-pages branch
    • check every index.html used as redirections to be redirecting to the new release
    • when bumping minor version: ensure dist URLs in examples' HTML has changed
    • double-check everything before pushing, starting by searching for forgotten old version number occurences
  • make an announcement in Plazza 🎉

Clone this wiki locally