Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CDT 11.4.0 #548

Closed
41 of 96 tasks
jonahgraham opened this issue Sep 13, 2023 · 2 comments
Closed
41 of 96 tasks

CDT 11.4.0 #548

jonahgraham opened this issue Sep 13, 2023 · 2 comments
Labels
endgame Steps to prepare, build and release CDT
Milestone

Comments

@jonahgraham
Copy link
Member

jonahgraham commented Sep 13, 2023

This is the Release plan and TODO list for the release in the title. CDT makes its simrel contribution on +1 day in the release cycle (normally Monday by 10pm UTC).

Steps for M1

Items before M1 +1 day:

  • Create release on PMI
  • Create a milestone on GitHub
  • Create New and Noteworthy page for the release
  • Prepare for the new release with all these updates: (Note: As I do this work I check the boxes, but I only check the top level one on this line once it is merged)
    • Update cdt.target to point to new dependency versions
    • Synchronize CDT.setup to cdt.target
    • cdt-baseline.target always refers to latest version of CDT. Change this if it isn't appropriate for a specific branch.
    • Add any new features released in latest to cdt-baseline.target
      • In the Problems view you can filter to see only This plug-in is not present in currently active API baseline. by choosing this error filter: "API Problems/Default API Baseline Problem". Ignore any test/example bundles.
    • Update help-docs-eclipserun-repo in root pom.xml and bump versions of all the docs plug-ins
    • Increment version of all feature.xml, pom.xml and any other place full version is used. (Easiest way is global find and replace, e.g. s/9.9.0/9.10.0/g and review changes.) (See bd814fd for a past example)
    • Update comparator.repo in root pom.xml to last release and if there have been any changes since the branch, bump versions of MANIFEST.MFs (If your local java version is the same as the docker container, or if you build in the docker container, a command line like mvn verify -DskipTests -P baseline-compare-and-replace -P build-standalone-debugger-rcp is good to test this has worked and nothing needs updating.)
    • Update Maven versions (check CI job)
    • Update simrel-site in root pom.xml
    • Remove old API error filters if they are no longer relevant. In the Problems view you can filter to see only these types of problems by selecting only "API Problems/Unused API Problem Filter Problem". (See 1048197 for a past example)
  • Ensure the build is stable (on both Jenkins and GitHub actions) - it is always better to release a "Green Dot" build
  • Ensure all previous Endgame issues are done.

Items on M1 +0 day:

Items on M1 +1 day:

Items on M1 +4 day (or shortly after):

  • The final part of the release is to wait for announcement (normally on +4 day) like this on epp-dev and test the EPP build and confirm operation with a +1 to epp-dev mailing

Steps for M2

Items on M2 +0 day:

Items on M2 +1 day:

  • Run CQ license check and make sure no new CQs need to be filed - this does not need to be done for every milestone, but needs to be done if there are dependency changes.
  • Promote a cdt build from jenkins
    • if cdt.target has been updated to Platform M1, then STANDALONE can be checked, otherwise do it on +4
  • Smoke test the release by installing it into platform's SDK build.
  • Add description to the promote-a-build job and the job it promoted.
  • Mark promoted job as Keep forever
  • Using the CBI aggregator tooling update cdt.aggrcon. An example of a previous contribution is in gerrit
  • Notify the cdt-dev list that the build was posted. Example on cdt-dev archives

Items on M2 +4 day (or shortly after):

  • The final part of the release is to wait for announcement (normally on +4 day) like this on epp-dev and test the EPP build and confirm operation with a +1 to epp-dev mailing

Steps for M3

Items on M3 +0 day:

Items on M3 +1 day:

  • Run CQ license check and make sure no new CQs need to be filed - this does not need to be done for every milestone, but needs to be done if there are dependency changes.
  • Promote a cdt build from jenkins
    • if cdt.target has been updated to Platform M1, then STANDALONE can be checked, otherwise do it on +4
  • Smoke test the release by installing it into platform's SDK build.
  • Add description to the promote-a-build job and the job it promoted.
  • Mark promoted job as Keep forever
  • Using the CBI aggregator tooling update cdt.aggrcon. An example of a previous contribution is in gerrit
  • Notify the cdt-dev list that the build was posted. Example on cdt-dev archives

Items on M3 +4 day (or shortly after):

  • The final part of the release is to wait for announcement (normally on +4 day) like this on epp-dev and test the EPP build and confirm operation with a +1 to epp-dev mailing

Steps for RC1

Items before RC1 +1 day:

  • Ensure there are no API errors

Items on RC1 +0 day:

  • update cdt.target to most recent platform
  • update dependencies in MANIFEST.MF to require that platform (see a1febf0 as an example)

Items on RC1 +1 day:

  • Run CQ license check and make sure no new CQs need to be filed - this does not need to be done for every milestone, but needs to be done if there are dependency changes.
  • Promote a cdt build from jenkins
    • if cdt.target has been updated to Platform M1, then STANDALONE can be checked, otherwise do it on +4
  • Smoke test the release by installing it into platform's SDK build.
  • Add description to the promote-a-build job and the job it promoted.
  • Mark promoted job as Keep forever
  • Using the CBI aggregator tooling update cdt.aggrcon. An example of a previous contribution is in gerrit
  • Notify the cdt-dev list that the build was posted. Example on cdt-dev archives

Items on RC1 +4 day (or shortly after):

  • The final part of the release is to wait for announcement (normally on +4 day) like this on epp-dev and test the EPP build and confirm operation with a +1 to epp-dev mailing

Steps for RC2

These steps should be done before RC2 release, they can be completed at anytime between the last branch creation/release and RC2.

Items before RC2 +1 day:

  • Run CQ license check and make sure no new CQs need to be filed - this does not need to be done for every milestone, but needs to be done if there are dependency changes. Note it is probably too late to get a CQ resolved in time for release at this point, so consider mitigation too.
  • Create branch for CDT release. Ideally we want to release from the branch.

Items on RC2 +0 day:

  • update cdt.target to most recent platform
  • update dependencies in MANIFEST.MF to require that platform (see a1febf0 as an example)

Items on RC2 +1 day:

  • Run CQ license check and make sure no new CQs need to be filed - this does not need to be done for every milestone, but needs to be done if there are dependency changes.
  • Promote a cdt build from jenkins
    • if cdt.target has been updated to Platform M1, then STANDALONE can be checked, otherwise do it on +4
  • Smoke test the release by installing it into platform's SDK build.
  • Add description to the promote-a-build job and the job it promoted.
  • Mark promoted job as Keep forever
  • Using the CBI aggregator tooling update cdt.aggrcon. An example of a previous contribution is in gerrit
  • Notify the cdt-dev list that the build was posted. Example on cdt-dev archives

Items on RC2 +4 day (or shortly after):

  • The final part of the release is to wait for announcement (normally on +4 day) like this on epp-dev and test the EPP build and confirm operation with a +1 to epp-dev mailing

Steps for Release

Items for quiet week (between RC2 and release):

  • Ensure release entry on PMI "Release Date" section it says the appropriate "This release is part of Eclipse IDE ??????".
  • Make sure documentation is part of simrel's help.
  • Review closed issues and merged PRs to make sure labels and milestones are accurate
  • Review the New and Noteworthy for content
  • Create a GitHub releases page (like https://github.com/eclipse-cdt/cdt/releases/tag/CDT_11_1_0)

Items to be done 2 days before release:

Release day:

@jonahgraham jonahgraham added the endgame Steps to prepare, build and release CDT label Sep 14, 2023
@jonahgraham jonahgraham added this to the 11.4.0 milestone Sep 14, 2023
@jonahgraham jonahgraham mentioned this issue Sep 14, 2023
96 tasks
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Sep 14, 2023
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Sep 14, 2023
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Sep 14, 2023
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Sep 14, 2023
With BREE back on in eclipse-cdt#551 we bump all affected bundles so make
sure we republish updated versions in 11.4

Part of eclipse-cdt#548
Part of eclipse-cdt#551
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Sep 14, 2023
@jonahgraham
Copy link
Member Author

jonahgraham commented Sep 15, 2023

main now looks good and is fully ready for CDT 11.4 development.

davmac314 pushed a commit to davmac314/cdt that referenced this issue Sep 24, 2023
@jonahgraham
Copy link
Member Author

Due to a mistake on my end we didn't contribute a new build for SimRel 2023-12 M2. Normal service expected to return for M3.

jonahgraham added a commit to jonahgraham/cdt that referenced this issue Nov 14, 2023
Includes updating to latest target platform. This should
also fix eclipse-cdt#591 but it is hard to tell until after it is
integrated into SimRel and the output checked in EPP.

Fixes eclipse-cdt#591
Part of eclipse-cdt#548
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Nov 15, 2023
Includes updating to latest target platform. This should
also fix eclipse-cdt#591 but it is hard to tell until after it is
integrated into SimRel and the output checked in EPP.

Fixes eclipse-cdt#591
Part of eclipse-cdt#548
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Nov 15, 2023
Includes updating to latest target platform. This should
also fix eclipse-cdt#591 but it is hard to tell until after it is
integrated into SimRel and the output checked in EPP.

Fixes eclipse-cdt#591
Part of eclipse-cdt#548
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Nov 15, 2023
Includes updating to latest target platform. This should
also fix eclipse-cdt#591 but it is hard to tell until after it is
integrated into SimRel and the output checked in EPP.

Fixes eclipse-cdt#591
Part of eclipse-cdt#548
jonahgraham added a commit that referenced this issue Nov 15, 2023
Includes updating to latest target platform. This should
also fix #591 but it is hard to tell until after it is
integrated into SimRel and the output checked in EPP.

Fixes #591
Part of #548
jonahgraham added a commit to jonahgraham/cdt that referenced this issue Dec 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
endgame Steps to prepare, build and release CDT
Projects
None yet
Development

No branches or pull requests

1 participant