Skip to content

Release plan for 2022.20 #20169

@karrtikr

Description

@karrtikr

All dates should align with VS Code's iteration and endgame plans.

Feature freeze (Monday @ 17:00 America/Vancouver, Nov 28)

  • Announce the feature freeze on both Teams and e-mail, leave enough time for teams to surface any last minute issues that need to get in before freeze. Make sure debugger and Language Server teams are looped in as well.

Release candidate (Monday, Dec 05)

NOTE: Third Party Notices are automatically added by our build pipelines using https://tools.opensource.microsoft.com/notice.

  • Update main for the release
    • Change the version in package.json to the next even number and switch the -dev to -rc (🤖)
    • Run npm install to make sure package-lock.json is up-to-date, you should now see changes to thepackage.json and package-lock.json (🤖)
    • Check pypi.org and update the version of debugpy in install_debugpy.py if necessary.
    • Update ThirdPartyNotices-Repository.txt as appropriate. This file is manually edited so you can check with the teams if anything needs to be added here.
    • Get approval on PR then merge pull request into main
  • Create the release branch
    • If there are release branches that are two versions old you can delete them at this time
    • Create a new release/YYYY.minor branch from main
  • Create a draft GitHub release for the release notes (🤖)
    • Click generate release notes
    • Create a new release/YYYY.XX branch from main
  • Update main post-release (🤖)
    • Bump the minor version number to the next ("YYYY.[minor+1]") release in the main branch to an odd number and switch the -rc to -dev(🤖)
    • Run npm install to make sure package-lock.json is up-to-date, you should now see changes to thepackage.json and package-lock.json (🤖)
    • Create a pull request against main
    • Get approval on PR then merge pull request into main
  • Announce the code freeze is over on the same channels, not required if this occurs on normal release cadence
  • Update Component Governance (Notes are in the team OneNote under Python VS Code → Dev Process → Component Governance).
  • Open appropriate documentation issues
  • Begin drafting a blog post. Contact the PM team for this.

Release (Wednesday, Dec 07)

Preparation

  • Make sure the appropriate pull requests for the documentation -- including the WOW page -- are ready
  • Final updates to the release-YYYY.minor branch
    • Create a branch against release-YYYY.minor for a pull request
    • Update the version in package.json to remove the -rc (🤖)
    • Run npm install to make sure package-lock.json is up-to-date (the only update should be the version number if package-lock.json has been kept up-to-date) (🤖)
    • Update ThirdPartyNotices-Repository.txt manually if necessary
    • Create pull request against release/YYYY.minor (🤖)
    • Merge pull request into release/YYYY.minor

Release

  • Make sure CI is passing for Release branch (🤖).
  • Run the CD pipeline on the release/yyyy.minor branch.
  • Check to ensure VS Code release has gone out before moving onto publishing the python extension
    • Press the approve button if everything looks good to publish to market place.
  • Create a GitHub release (🤖)
    • Update the release notes
    • Take the release out of draft
  • Publish documentation changes
  • Publish the blog post
  • Determine if a hotfix is needed
  • Merge the release branch back into main. Don't overwrite the main branch version. (🤖)

Prep for the next release

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions