Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
quarto-dev
GitHub Repository: quarto-dev/quarto-cli
Path: blob/main/dev-docs/checklist-make-a-new-quarto-release.md
3544 views
  • ensure your git repo is up to date with main

  • create a branch v1.x, where x is the version being released

    • git checkout -b v1.4

    • git push origin v1.4

  • mark the current release as the new release in the main branch

  • mark v1.4 release as stable

  • once the v1.5 build completes, edit the quarto.org website configuration on https://github.com/quarto-dev/quarto-web to reflect the new version

    • this means flipping the profile group configuration in _quarto.yml from [rc,prelease] to [prerelease,rc]

      • push the changes to the main branch

  • quarto-dev/quarto-web changes

    • wait for the downloads file to be automatically updated by the GitHub Action on https://github.com/quarto-dev/quarto-web

    • In the prerelease branch:

      • update the highlights files

        • create docs/prerelease/1.5/{_highlights, index, _pre-release-feature}.qmd files based on the ones from the previous release

        • change docs/prerelease/_highlights.qmd so its include points to the new version-specific _highlights.qmd file (here, 1.5)

        • change docs/prerelease/_highlights-release.qmd so its include points to the new version-specific _highlights.qmd file (here, 1.4)

      • add the stable version to the older downloads list by editing /docs/download/_download-older.yml

      • run quarto run tools/release-notes.R to generate the release notes

    • push the changes to prerelease branch, ensure they build correctly

    • Merge the prerelease branch into main, push to main

      • ensure the build completes successfully

    • Merge main into prerelease, push to prerelease

      • ensure the build completes successfully

    • Create new tag on main with stable release version number (here, v1.4) to mark when the new main site version went live

      • git tag -a v1.4 -m "v1.4"

      • git push origin v1.4

    • Update prerelease version number (here, v1.5)

      • edit _quarto-prerelease-docs.yml to point to the new version

    • publish the release blog post that should exist in https://github.com/quarto-dev/quarto-web/tree/main/docs/blog/posts

      • Create a branch off of main (to trigger our PR automation to make the corresponding change to prerelease).

      • Removing the draft: true line in the metadata

      • Change the date to match the release date.

  • Update https://github.com/quarto-dev/quarto-cli/blob/main/CITATION.cff

  • Packaging and package managers, etc

    • chocolatey (Only once quarto.org download page is updated with the new release)

    • pypi

      • Go to the quarto-cli-pypi repo

      • Update version.txt to be the version you'd like to publish and commit

      • Go to actions

        • Select 'Publish Quarto PyPi'

        • Click "Run Workflow"

          • Publishing Test: You may elect to publish to test.pypi first by unchecking the Production Release option

            • Once complete, trest using

              python3 -m pip install --index-url https://test.pypi.org/ --extra-index-url https://pypi.org/ quarto-cli
            • You may have to run this command twice as the first time may report the package not found and cause cache invalidation. The next try should succeed.

            • Published to: https://test.pypi.org/project/quarto-cli/

          • Publishing Production: You may elect to publish to production pypyi by checking the Production Release option

        • Take a sip of tea ☕, bask in the glory of automation.

    • Others installers