Skip to content

🚀 Release todo 22.0.15, 23.0.8, 24.0.2 #18609

Description

@nickvergessen

💺 Preparation

🚀 v22.0.15

Start with the oldest version here, so the appstore and github releases show the newest version as "Last release"

  • 🛑 When releasing from a stable32 branch make sure to:
    • Adjust the branch checkout below
    • Copy the l10n/ folder from stable32 and commit it
  • Backport the changelog
    • [stable32] chore(release): Changelog for v22.0.15 #18602
    • Remove changelog entries in CHANGELOG.md of higher versions
    • Bump the version in appinfo/info.xml
    • Bump the version in package.json. The following command will return a new version name, make sure it matches what you expect:
      # Make sure the printed version matches the info.xml version
      npm version --no-git-tag-version $(xmllint --xpath '/info/version/text()' appinfo/info.xml)
  • Merge the backport
  • Make sure you pull the latest stable branch:
    git checkout stable32
    git pull origin stable32
  • Clean the dev instance and update all dependencies with the lock file versions and build the production javascript:
    make production-setup
    # On 24 and older versions run:
    # make dev-setup build-js-production
  • Do a quick smoke test by starting a call with:
    • Chrome
    • Edge
    • Firefox
    • Safari
    • Desktop client (Talk 16+)
    • Android app
    • iOS app
  • Create tag (note that the leading v in v22.0.15 will be automatically added to the tag)
    make create-tag version=$(xmllint --xpath '/info/version/text()' appinfo/info.xml)
  • Push the git tag to https://github.com/nextcloud-releases/spreed
    git push releases v$(xmllint --xpath '/info/version/text()' appinfo/info.xml)
    Make sure you have access rights to the remote repository, and it is set up on your machine:
    git remote add releases git@github.com:nextcloud-releases/spreed.git
  • Prepare a (pre-)release in https://github.com/nextcloud/spreed/releases/new?tag=v22.0.15
    • Make sure that chosen tag is v22.0.15, target is stable32, and previous tag is v22.0.14
    • Add the respective CHANGELOG.md section from merged PR
    • Use the Generate release notes button and wrap the output result into
      ## What's Changed
      
      <details>
      	<!-- insert the output here -->
      </details>
      
    • Set as a pre-release / as the latest release
    • Publish release
  • Prepare a (pre-)release in https://github.com/nextcloud-releases/spreed/releases/new?tag=v22.0.15
    • Copy the full content from the release description of the previous step
    • Set as a pre-release / as the latest release
    • Publish release
  • Check that the GitHub Action started: https://github.com/nextcloud-releases/spreed/actions
  • Rename milestone 🪺 Next Patch (32) to v22.0.15 in https://github.com/nextcloud/spreed/milestones
    gh api repos/nextcloud/spreed/milestones --paginate --jq \
        '.[] | select(.title == "🪺 Next Patch (32)") | .number' \
        | xargs -I{} gh api --method PATCH repos/nextcloud/spreed/milestones/{} -f title="v22.0.15"
    Unless last release of the stable branch:
    • Create a follow-up milestone for 🪺 Next Patch (32) (Due date in ~4 weeks, ~1 week for beta/RC)
      # Adjust the due date (UTC) before running
      gh api --method POST repos/nextcloud/spreed/milestones \
          -f title="🪺 Next Patch (32)" -f due_on="YYYY-MM-DDT00:00:00Z"
    • Move all open issues from milestone v22.0.15 to 🪺 Next Patch (32): https://github.com/nextcloud/spreed/issues?q=is%3Aissue%20state%3Aopen%20milestone%3Av22.0.15
      for n in $(gh issue list --repo nextcloud/spreed --state open --limit 500 \
          --milestone "v22.0.15" --json number --jq '.[].number'); do
          gh issue edit "$n" --repo nextcloud/spreed --milestone "🪺 Next Patch (32)"
      done
    • Move all open PRs from milestone v22.0.15 to 🪺 Next Patch (32): https://github.com/nextcloud/spreed/pulls?q=is%3Apr%20state%3Aopen%20milestone%3Av22.0.15
      for n in $(gh pr list --repo nextcloud/spreed --state open --limit 500 \
          --search 'milestone:"v22.0.15"' --json number --jq '.[].number'); do
          gh pr edit "$n" --repo nextcloud/spreed --milestone "🪺 Next Patch (32)"
      done
  • Close the v22.0.15 milestone
    gh api repos/nextcloud/spreed/milestones --paginate --jq \
        '.[] | select(.title == "v22.0.15") | .number' \
        | xargs -I{} gh api --method PATCH repos/nextcloud/spreed/milestones/{} -f state=closed
  • Ensure that the GitHub Action finished successfully: https://github.com/nextcloud-releases/spreed/actions

🚀 v23.0.8

Start with the oldest version here, so the appstore and github releases show the newest version as "Last release"

  • 🛑 When releasing from a stable33 branch make sure to:
    • Adjust the branch checkout below
    • Copy the l10n/ folder from stable33 and commit it
  • Backport the changelog
    • [stable33] chore(release): Changelog for v24.0.2, 23.0.8 and 22.0.15 #18603
    • Remove changelog entries in CHANGELOG.md of higher versions
    • Bump the version in appinfo/info.xml
    • Bump the version in package.json. The following command will return a new version name, make sure it matches what you expect:
      # Make sure the printed version matches the info.xml version
      npm version --no-git-tag-version $(xmllint --xpath '/info/version/text()' appinfo/info.xml)
  • Merge the backport
  • Make sure you pull the latest stable branch:
    git checkout stable33
    git pull origin stable33
  • Clean the dev instance and update all dependencies with the lock file versions and build the production javascript:
    make production-setup
    # On 24 and older versions run:
    # make dev-setup build-js-production
  • Do a quick smoke test by starting a call with:
    • Chrome
    • Edge
    • Firefox
    • Safari
    • Desktop client (Talk 16+)
    • Android app
    • iOS app
  • Create tag (note that the leading v in v23.0.8 will be automatically added to the tag)
    make create-tag version=$(xmllint --xpath '/info/version/text()' appinfo/info.xml)
  • Push the git tag to https://github.com/nextcloud-releases/spreed
    git push releases v$(xmllint --xpath '/info/version/text()' appinfo/info.xml)
    Make sure you have access rights to the remote repository, and it is set up on your machine:
    git remote add releases git@github.com:nextcloud-releases/spreed.git
  • Prepare a (pre-)release in https://github.com/nextcloud/spreed/releases/new?tag=v23.0.8
    • Make sure that chosen tag is v23.0.8, target is stable33, and previous tag is v23.0.7
    • Add the respective CHANGELOG.md section from merged PR
    • Use the Generate release notes button and wrap the output result into
      ## What's Changed
      
      <details>
      	<!-- insert the output here -->
      </details>
      
    • Set as a pre-release / as the latest release
    • Publish release
  • Prepare a (pre-)release in https://github.com/nextcloud-releases/spreed/releases/new?tag=v23.0.8
    • Copy the full content from the release description of the previous step
    • Set as a pre-release / as the latest release
    • Publish release
  • Check that the GitHub Action started: https://github.com/nextcloud-releases/spreed/actions
  • Rename milestone 🍏 Next Patch (33) to v23.0.8 in https://github.com/nextcloud/spreed/milestones
    gh api repos/nextcloud/spreed/milestones --paginate --jq \
        '.[] | select(.title == "🍏 Next Patch (33)") | .number' \
        | xargs -I{} gh api --method PATCH repos/nextcloud/spreed/milestones/{} -f title="v23.0.8"
    Unless last release of the stable branch:
    • Create a follow-up milestone for 🍏 Next Patch (33) (Due date in ~4 weeks, ~1 week for beta/RC)
      # Adjust the due date (UTC) before running
      gh api --method POST repos/nextcloud/spreed/milestones \
          -f title="🍏 Next Patch (33)" -f due_on="YYYY-MM-DDT00:00:00Z"
    • Move all open issues from milestone v23.0.8 to 🍏 Next Patch (33): https://github.com/nextcloud/spreed/issues?q=is%3Aissue%20state%3Aopen%20milestone%3Av23.0.8
      for n in $(gh issue list --repo nextcloud/spreed --state open --limit 500 \
          --milestone "v23.0.8" --json number --jq '.[].number'); do
          gh issue edit "$n" --repo nextcloud/spreed --milestone "🍏 Next Patch (33)"
      done
    • Move all open PRs from milestone v23.0.8 to 🍏 Next Patch (33): https://github.com/nextcloud/spreed/pulls?q=is%3Apr%20state%3Aopen%20milestone%3Av23.0.8
      for n in $(gh pr list --repo nextcloud/spreed --state open --limit 500 \
          --search 'milestone:"v23.0.8"' --json number --jq '.[].number'); do
          gh pr edit "$n" --repo nextcloud/spreed --milestone "🍏 Next Patch (33)"
      done
  • Close the v23.0.8 milestone
    gh api repos/nextcloud/spreed/milestones --paginate --jq \
        '.[] | select(.title == "v23.0.8") | .number' \
        | xargs -I{} gh api --method PATCH repos/nextcloud/spreed/milestones/{} -f state=closed
  • Ensure that the GitHub Action finished successfully: https://github.com/nextcloud-releases/spreed/actions

🚀 v24.0.2

Start with the oldest version here, so the appstore and github releases show the newest version as "Last release"

  • 🛑 When releasing from a stable34 branch make sure to:
    • Adjust the branch checkout below
    • Copy the l10n/ folder from stable34 and commit it
  • Backport the changelog
    • [stable34] chore(release): Changelog for v24.0.2, 23.0.8 and 22.0.15 #18604
    • Remove changelog entries in CHANGELOG.md of higher versions
    • Bump the version in appinfo/info.xml
    • Bump the version in package.json. The following command will return a new version name, make sure it matches what you expect:
      # Make sure the printed version matches the info.xml version
      npm version --no-git-tag-version $(xmllint --xpath '/info/version/text()' appinfo/info.xml)
  • Merge the backport
  • Make sure you pull the latest stable branch:
    git checkout stable34
    git pull origin stable34
  • Clean the dev instance and update all dependencies with the lock file versions and build the production javascript:
    make production-setup
    # On 24 and older versions run:
    # make dev-setup build-js-production
  • Do a quick smoke test by starting a call with:
    • Chrome
    • Edge
    • Firefox
    • Safari
    • Desktop client (Talk 16+)
    • Android app
    • iOS app
  • Create tag (note that the leading v in v24.0.2 will be automatically added to the tag)
    make create-tag version=$(xmllint --xpath '/info/version/text()' appinfo/info.xml)
  • Push the git tag to https://github.com/nextcloud-releases/spreed
    git push releases v$(xmllint --xpath '/info/version/text()' appinfo/info.xml)
    Make sure you have access rights to the remote repository, and it is set up on your machine:
    git remote add releases git@github.com:nextcloud-releases/spreed.git
  • Prepare a (pre-)release in https://github.com/nextcloud/spreed/releases/new?tag=v24.0.2
    • Make sure that chosen tag is v24.0.2, target is stable34, and previous tag is v24.0.1
    • Add the respective CHANGELOG.md section from merged PR
    • Use the Generate release notes button and wrap the output result into
      ## What's Changed
      
      <details>
      	<!-- insert the output here -->
      </details>
      
    • Set as a pre-release / as the latest release
    • Publish release
  • Prepare a (pre-)release in https://github.com/nextcloud-releases/spreed/releases/new?tag=v24.0.2
    • Copy the full content from the release description of the previous step
    • Set as a pre-release / as the latest release
    • Publish release
  • Check that the GitHub Action started: https://github.com/nextcloud-releases/spreed/actions
  • Rename milestone 🏖️ Next Patch (34) to v24.0.2 in https://github.com/nextcloud/spreed/milestones
    gh api repos/nextcloud/spreed/milestones --paginate --jq \
        '.[] | select(.title == "🏖️ Next Patch (34)") | .number' \
        | xargs -I{} gh api --method PATCH repos/nextcloud/spreed/milestones/{} -f title="v24.0.2"
    Unless last release of the stable branch:
    • Create a follow-up milestone for 🏖️ Next Patch (34) (Due date in ~4 weeks, ~1 week for beta/RC)
      # Adjust the due date (UTC) before running
      gh api --method POST repos/nextcloud/spreed/milestones \
          -f title="🏖️ Next Patch (34)" -f due_on="YYYY-MM-DDT00:00:00Z"
    • Move all open issues from milestone v24.0.2 to 🏖️ Next Patch (34): https://github.com/nextcloud/spreed/issues?q=is%3Aissue%20state%3Aopen%20milestone%3Av24.0.2
      for n in $(gh issue list --repo nextcloud/spreed --state open --limit 500 \
          --milestone "v24.0.2" --json number --jq '.[].number'); do
          gh issue edit "$n" --repo nextcloud/spreed --milestone "🏖️ Next Patch (34)"
      done
    • Move all open PRs from milestone v24.0.2 to 🏖️ Next Patch (34): https://github.com/nextcloud/spreed/pulls?q=is%3Apr%20state%3Aopen%20milestone%3Av24.0.2
      for n in $(gh pr list --repo nextcloud/spreed --state open --limit 500 \
          --search 'milestone:"v24.0.2"' --json number --jq '.[].number'); do
          gh pr edit "$n" --repo nextcloud/spreed --milestone "🏖️ Next Patch (34)"
      done
  • Close the v24.0.2 milestone
    gh api repos/nextcloud/spreed/milestones --paginate --jq \
        '.[] | select(.title == "v24.0.2") | .number' \
        | xargs -I{} gh api --method PATCH repos/nextcloud/spreed/milestones/{} -f state=closed
  • Ensure that the GitHub Action finished successfully: https://github.com/nextcloud-releases/spreed/actions

🛣️ Conclude

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions