Closed
Description
openedon Jan 20, 2024
- 01/22 Code freeze for the endgame
- 01/26 Endgame done
- 01/31 Expected release date (this may change)
Monday
- Check that all queries in this issue use the current milestone @aiday-mar
- Run OSS tool @aiday-mar
- Update links in the Endgame notebooks to point to new milestone @aiday-mar
- Code freeze at 5pm PT
- Ensure we have a green build on all platforms at 5pm PT
- 🔖All closed feature-requests either have a
verification-needed
oron-testplan
label - Create test plan items following the template here by 6pm PT
- Remind the team that TPIs should be written so that anyone can test. If this is not feasible, then TPI authors should assign specific testers @aiday-mar
- Update your availability for testing here - https://tools.code.visualstudio.com/team-manifest team
- Update availability of testers in vacation (Check OOF section in the Internal Backlog Plan). Double check N/A testers. @aiday-mar
- Remind team that in the event of sickness or overload with TPIs, to inform the endgame champ ASAP so items can be reassigned
- Remind team to go through their fixed issues for the milestone and update repro steps for issues which require more detailed instructions.
Tuesday
- Test plan items assigned (using https://tools.code.visualstudio.com/test-plan-items)
- Run the tool multiple times to balance load if test items come in later and assignments are already made
- Assigned to you
- Test build starts at 7am CET
- Test plan ready by 8am CET
- Remind the team about the priorities
- Tuesday should be dedicated exclusively to testing activities. Our goal is to ensure the completion of all Test Plan Items (TPIs) and subsequently proceed with the verification phase. Fixes or commits should be refrained from unless there are exceptional circumstances such as blocked TPIs or build-related issues. On Tuesday Redmond EOD, only blocked TPIs should remain open with a corresponding label
blocked
and status update comment in the issue. - Redmond members commence testing the TPIs authored by Zurich members, enabling them to address any feedback on the following day.
- Tuesday should be dedicated exclusively to testing activities. Our goal is to ensure the completion of all Test Plan Items (TPIs) and subsequently proceed with the verification phase. Fixes or commits should be refrained from unless there are exceptional circumstances such as blocked TPIs or build-related issues. On Tuesday Redmond EOD, only blocked TPIs should remain open with a corresponding label
- 🔖Testing
- 🔖Verification needed
Wednesday
- 🔖Testing
- These remaining TPIs should be the ones that are currently blocked. Discuss during the standup and redistrubute assignments based on the TPI owner and the test coverage. For instance, if a TPI is owned by a member from Zurich and has not undergone sufficient testing, it will be reassigned to one of the Zurich team members.
- Remind team members to triage issues found in testing and assign major issues that they intend to fix to the current milestone
- 🔖Verification needed
Thursday
- Make sure to have the
insider
build @aiday-mar - Pause scheduled
insider
builds (includes vscode.dev publishing) @aiday-mar - Fixing (self-assigned, milestone assigned)
- Increased scrutiny sets in due to testing being completed. Fixes pose a much higher risk
- Move issues to the next month that can be deferred
- 🔖Verification needed
- 🔖Verification
- By Thursday EOD (Redmond), branch from
main
and release @aiday-mar- Branch following repositories to
release/<x.y>
- vscode
- vscode-distro
- vscode-dev
- Localization: Run Update VS Code Branch build with
release/*
as the VS Code Branch parameter (it's the default so you shouldn't have to change anything) - Announce
main
is open for business and all issues on the current iteration are candidates and that the candidate release process is to be followed. - Build and manually release Insider from release/<x.y> branch for Code
- Build and manually release Insider from release/<x.y> branch for vscode.dev (if there were vscode.dev candidates)
- Branch following repositories to
- Build a
stable
build from release/<x.y> branch to ensure stable build is green @aiday-mar - Bump up the version in
package.json
onmain
- @aiday-mar - Create next milestone and ensure that it has a due date. The created milestone and its due date will be automatically synced across our repos @aiday-mar
Friday
- Only candidate issues are open and assigned to 🔖milestone
- All issues 🔖verified
- All open PRs on the milestone 🔖merged or deferred
- Fixing (PR + review required - major bugs only - to be discussed in stand-up meeting, labeled as
candidate
) - Satellite modules/npm packages ready, version updated, smoke tested
- yo generator @aeschli
- js-debug @connor4312
- Debug Adapter Protocol @connor4312
- vscode-debugadapter-node @connor4312
- vscode-test-web @aeschli
- vsce @joaomoreno
- All release notes updated
- release notes are collected in a file named _
v<Major>_<Minor>.md
_ in this repo directory - Release notes screen recording guidance: https://microsoft-my.sharepoint.com/:p:/p/buhollan/Ecg_j89jzlVGtfqWGy7SQBEB_OsuLPZ65jjKRVlo_OdlgA
- release notes are collected in a file named _
- Acknowledge pull requests in release notes. We acknowledge PRs from outside the team. We have improved the tooling so that the @aiday-mar can generate the pull request acknowledgment for all repositories at once. @aiday-mar
-
debug-adapter-protocol
,inno-updater
,jsonc-parser
,language-server-protocol
,lsif-node
,vscode
,vscode-codicons
,vscode-css-languageservice
,vscode-debugadapter-node
,vscode-dev-containers
,vscode-docs
,vscode-emmet-helper
,vscode-eslint
,vscode-extension-samples
,vscode-generator-code
,vscode-hexeditor
,vscode-html-languageservice
,vscode-js-debug
,vscode-js-debug-companion
,vscode-js-profile-visualizer
,vscode-jshint
,vscode-json-languageservice
,vscode-languageserver-node
,vscode-livepreview
,vscode-loader
,vscode-lsif-extension
,vscode-node-debug
,vscode-node-debug2
,vscode-pull-request-github
,vscode-recipes
,vscode-references-view
,vscode-textmate
,vscode-vsce
,vscode-pylint
,vscode-black-formatter
,vscode-isort
,lsprotocol
,vscode-flake8
,vscode-autopep8
,vscode-python-tools-extension-template
,vscode-mypy
,vscode-python-debugger
-
- Acknowledge issue trackers from the community @chrmarti
- When done fixing/verifying and there are changes since last build at the end of day PT
- Build and manually release Insider from release/<x.y> for Code @aiday-mar
- Build and manually release Insider from release/<x.y> for vscode.dev (if there were vscode.dev candidates) @aiday-mar
Friday/Monday
- Polish release notes redmond
- Fixing (only critical bugs - no string changes)
- Schedule an endgame restrospective with @aiday-mar, endgame buddy, and next endgame champ for this week. Retrospective template
- Decide whether a Patch Tuesday release will happen:
- Check the internal iteration plan for scheduled security issues (MSRCs) to determine if a Patch Tuesday release is needed.
- If no Patch Tuesday release is planned, let the Updates team know of that fact ([email protected]) @aiday-mar
- Otherwise, if a Patch Tuesday release is necessary, start off a Patch Tuesday Release plan @aiday-mar
- Remind the team: if they are going to be OOF for more than five days during the next iteration, assign someone to look out for critical issues in their feature areas and fix them if necessary. This helps with bug identification and fixing for recovery releases. @aiday-mar
Monday - Wednesday
- 🔖milestone issues
- 🔖candidate issues
- Polish release notes redmond
- Cherry-pick hand-picked and reviewed changes to
release/<x.y>
@aiday-mar - Build
Insider
fromrelease/<x.y>
@aiday-mar - Manually release
Insider
@aiday-mar - Build stable for all platforms as new candidate issues come in @aiday-mar
- Documentation updated
- Run
scripts/test-documentation.sh|bat
and add file or fix issues if there are new colors that are not documented. @aiday-mar
Note: The
Insiders
build needs to be in the wild for 24 hours before we can enter the last phase of the endgame. @aiday-mar
Wednesday/Thursday - Expected release day (this may change)
- Build stable for all platforms @aiday-mar
- Build but don't release an insider build based on
main
for all platforms @aiday-mar - Sanity Testing
- Windows 64 bit owner @dbaeumer
- System Installer
- User Installer
- Archive
- Server
- CLI
- Windows ARM64 owner @joaomoreno
- System Installer
- User Installer
- Archive
- CLI
- macOS Intel owner @isidorn
- Archive
- Universal Archive
- Server
- CLI
- macOS ARM64 owner @bpasero
- Archive
- Universal Archive
- Server
- CLI
- Linux x64 owner @aeschli
- Archive
- DEB
- RPM
- Snap
- Linux Server owner (can be tested from any OS with Docker) @alexr00
- x64
- ARM32
- ARM64
- x64 Alpine
- ARM64 Alpine
- Linux CLI owner (can be tested from any OS with Docker) @deepak1556
- x64
- ARM32
- ARM64
- x64 Alpine
- ARM64 Alpine
- Windows 64 bit owner @dbaeumer
- Publish website @ntrogh
- Publish to stable @aiday-mar
- Trigger the vscode.dev Deploy pipeline for
release/x.y
for theprod
deployment target. Note that there are four deploy approvals needed - one for overall and one per each of the three service regions @aiday-mar- Request approval from another team member at the necessary step to deploy the vscode.dev build. @aiday-mar
- Create an official release @aiday-mar
- Create a tag (make sure you pull the release branch first):
git tag <x.y.z>
- Push the tag:
git push origin <x.y.z>
- Create a GitHub release: Open the GitHub tags, and click far right
... > Create Release
. Use the correct title and description from our release notes. Also change the relative links for the key highlight list items to absolute links Example
- Create a tag (make sure you pull the release branch first):
- Twitter announcement @chrisdias
- Create and publish next release notes placeholder @ntrogh
- Enable scheduled
insider
builds @aiday-mar - Release insiders based on main @aiday-mar
- Publish @types/vscode @aiday-mar
- Close the milestone on GitHub @aiday-mar