Skip to content

Apache NetBeans 32 Release Checklist #9684

Open

Description

@ebarboni

Tracking for RELEASE 32

Week before freeze

Freeze preparations

Freezing day and first release candidate

  • [netbeans.git] change the current milestone on all remaining open pull request to the next milestone NB XX+1 (use bulk edit in the PR table)
  • [netbeans.git] create/recreate delivery branch from master
  • [netbeans.git] create release branch from master
  • [dev ml] Announce feature freeze and branching on dev@ using [NOTICE] emails Feature freeze and branching
  • [netbeans-antora.git] Add plugin center and update center redirects https://github.com/apache/netbeans-antora/blob/main/supplemental-ui/.htaccess. New release plugin center should point to existing release plugins (XX-1) until rc3 to allow for plugin authors to request verification.
  • [jenkins,browser] check site if build in jenkins / also website
  • [netbeans.git] (PR Release process PRs (eg. versions, sync) that are part of the release process and can be ignored in release notes. ) Increment module spec versions on master for the next release using ant increment-spec-versions. Master branch reopen on merge, reply to previous [NOTICE] mail to inform
  • [netbeans.git] Create a tag on git XX-RC1 action to create tag and generate prerelease notes from previous version
  • [netbeans-jenkins-lib.git] Add the metadata about the release to netbeansrelease.json, including a milestone for XX-rc1 using the hash from the release branch (eg. git show). This will be the last hash shared with any other branch.
  • [jenkins] Trigger a build for the release branch in the Jenkins NetBeansTLP job. a buildname with releaseXX0 should be present. A build may have started automatically but will likely not have picked up the latest metadata - if so, stop and restart. Build with parameters – 'push to nightly'. This is about 2h
  • [RM computer] Download artefact or nightlies and check branding should be XX RC1
  • [RM computer]If branding is correct => lock build. (branding incorrect often means json file out of sync during build) respin.
  • [dev ml] Announce RC1 on dev/user ML RC Announce Template
  • [mail] send mail to plugin dev
  • [netbeans.git] Add pinned discussion to the releasecandidate
  • [netbeans.git] merge prepared RC issue template PR
  • [netbeans.git] (PR Release process PRs (eg. versions, sync) that are part of the release process and can be ignored in release notes. ) Create a snapshot see workflow
  • [browser] check apidoc on bits.netbeans.org have release XX

Additional release candidates (rc2, rc3, ...)

This section should be copy pasted for each additional weekly release candidate

PR synchronisation on first modification of delivery

  • [netbeans.git] (PR Release process PRs (eg. versions, sync) that are part of the release process and can be ignored in release notes. ) Sync delivery to releaseXXX for XX-rcN
  • [netbeans.git] (PR Release process PRs (eg. versions, sync) that are part of the release process and can be ignored in release notes. ) Sync delivery to master after XX-rcN

on the new RC build date

  • [netbeans.git] merge the sync PR to releaseXXX.
  • [netbeans-jenkins-lib.git] Add the metadata about the release to netbeansrelease.json
  • [netbeans.git] Create a tag on git XX-RCn action to create tag and generate prerelease notes from previous version
  • [jenkins] Trigger a build for the release branch in the Jenkins NetBeansTLP job. a buildname with releaseXX0 should be present. A build may have started automatically but will likely not have picked up the latest metadata - if so, stop and restart. Build with parameters – 'push to nightly'. This is about 2h
  • [RM computer] Download artefact or nightlies and check branding should be XX rcN
  • [RM computer] If branding is correct => lock build. (branding incorrect often means json file out of sync during build) respin.
  • [netbeans.git] merge the sync PR to master.
  • [dev/user ml] Announce rcN on dev/user ML RC Announce Template

In sync with rc3 or week 3

  • [netbeans-antora.git] Update the plugin redirect for the coming release and dev to the new plugin center for version XX.

Release preparation and vote

The release is always created from the same git hash as the last release candidate. Assuming no modifications on delivery, and at least 3 weeks from freeze (usually 3 RC), proceed to vote.

  • [netbeans-jenkins-lib.git] Add the metadata about the release to netbeansrelease.json
  • [netbeans.git] Create a tag on git XX-RC1 action to create tag and generate draft release notes from previous version
    • IMPORTANT add editorkit 27 info,
    • IMPORTANT add upgrade list
  • [jenkins]Trigger a build for the release branch in the Jenkins NetBeansTLP job. a buildname with releaseXX0 should be present. A build may have started automatically but will likely not have picked up the latest metadata - if so, stop and restart. Build with no parameter.
  • [RM computer] If branding is correct => lock build. (branding incorrect often means json file out of sync during build) respin.

  • [RM computer] Download and extract the build artifacts. (everything in zip => archive.zip)
  • [RM computer] Check sha512 on archive/dist/netbeans (should be source and zip)
  • [dist svn] move file to svn "dev/netbeans/netbeans/XX"
  • [RM computer] sign file export GPG_EMAIL="YOU@apache.org";find . -name '*.zip' -exec gpg -u $GPG_EMAIL --armor --output {}.asc --detach-sign {} \;
  • commit for vote preparation
  • [RM computer] on archive/mavenrepo do sign everything : export GPG_EMAIL="YOU@apache.org";find . \( -name '*.nbm' -o -name '*.xml' -o -name '*.pom' -o -name '*.sha1' -o -name "*.md5" -o -name "*.jar" \) -exec gpg -u $GPG_EMAIL --armor --output {}.asc --detach-sig {} \;
  • [RM computer] upload to repository central (by default it will close the repository) mvn org.sonatype.plugins:nexus-staging-maven-plugin:1.7.0:deploy-staged-repository -DserverId=apache.releases.https -DnexusUrl=https://repository.apache.org -DstagingProfileId=20604114d0070e -DrepositoryDirectory=<pathofsignedartefacts>
  • [dev ml] Send vote email to dev list Vote mail template
  • [netbeans-antora-site.git] prepare site download page PR
  • [netbeans-antora-site.git] prepare site blog entry page PR
  • [netbeans-antora-ui.git] prepare banner PR
  • [netbeans.git] Prepare issue template for next iteration

Release

Assuming successful release vote. If vote fails, return to process for generating another release candidate.

Post-release (1 week)

Activity

  1. added this to the NB32 milestone on Oct 8, 2026
  2. added
    Release processPRs (eg. versions, sync) that are part of the release process and can be ignored in release notes.
    on Oct 8, 2026
  3. added theissue type on Oct 8, 2026
  4. pinned this issue on Oct 8, 2026
  5. mbien commented on Oct 8, 2026

    @mbien
    Member
  6. gnubsdguy commented on Oct 9, 2026

    @gnubsdguy
  7. mbien commented on Oct 9, 2026

    @mbien
    Member

    @gnubsdguy this page isn't for issue reports. Please create a new issue and fill in the details, e.g log and instructions how to reproduce it.

  8. locked as off topic and limited conversation to collaborators on Oct 9, 2026
  9. ebarboni commented on Oct 15, 2026

    @ebarboni
    ContributorAuthor

    apache/netbeans-antora#60 the plugin redirect PR

  10. mbien commented on Oct 16, 2026

    @mbien
    Member

    extra checklist (feel free to edit comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Release processPRs (eg. versions, sync) that are part of the release process and can be ignored in release notes.

    Type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions