Apache NetBeans 32 Release Checklist
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 5/100
- Issue 类型
- 功能
- 描述清晰度
- 需要澄清
- 活跃度
- 活跃
- 领域
- release
调研方向
This is a release-manager checklist, not a code change, and it has no single file to edit. The items reference meta/netbeansrelease.json in netbeans-jenkins-lib, the issue template under .github/ISSUE_TEMPLATE/, and supplemental-ui/.htaccess in netbeans-antora. Work on it only with the release manager's coordination, and treat the issue as done when the release is published.
由索引模型根据 Issue 内容生成。
描述
Tracking for RELEASE 32
Week before freeze
- [netbeans.git] create/check milestone in github for version XX+1, should be NB XX+1
- [dev ml] Announce the feature freeze date on dev@ using [NOTICE] emails Feature freeze announce template
- [plugin repository] Login to https://plugins.netbeans.apache.org/ and create a new version XX NetBeans versions
Freeze preparations
- [netbeans.git] prepare RC issue template update PR https://github.com/apache/netbeans/labels/Release%20process issue template (https://github.com/apache/netbeans/pull/9150/changes/e239f52ed64fa05def7b2c98389226e8f65c25b1)
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 https://github.com/apache/netbeans/labels/Release%20process ) 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 https://github.com/apache/netbeans/labels/Release%20process ) 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 https://github.com/apache/netbeans/labels/Release%20process ) Sync delivery to releaseXXX for XX-rcN
- [netbeans.git] (PR https://github.com/apache/netbeans/labels/Release%20process ) 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
- [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="[email protected]";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="[email protected]";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.
- [dev ml] Send mail to validate vote.
- [dist svn] Move staged release files (
svn mv) from "dev/netbeans/netbeans/XX" to "release/netbeans/netbeans/XX" - [apache maven repo] Release staged Maven artefacts
- [netbeans.git] Publish GitHub release notes
- [netbeans.git] close and unpin discussion for release XX
- [netbeans.git] close milestone and move remaining issue for release XX
- [netbeans.git] Merge issue template for next iteration
- [netbeans-antora-site.git] Update website for release, merging new release page, blog post, and archiving of release XX-1
- [netbeans-antora-ui.git] Merge website banner PR
- [announce ml] Announce release via email, including [email protected] and [email protected]
- [netbeans.git] Merge SNAPSHOT PR, or rebuild one
Post-release (1 week)
- [dist svn]Archive previous release by removing (
svn rm) "release/netbeans/netbeans/XX-1" (archive.apache.org is automatically synced from dist.apache.org) - [netbeans-antora.git] Update website previous.xml to notify of new release and update .htaccess to point NetBeans XX-1 update center to previous.xml (reference PR https://github.com/apache/netbeans-antora/pull/57)
- [netbeans-jenkins-lib.git] Update the metadata about the releasexxx (release date) and master release date (previous date) netbeansrelease.json
- 主要语言
- Java
- 星标
- 3.1k
- 派生
- 939
- 平均合并
- 5 天 43 分钟
- 30 天内合并 PR
- 40
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
apache/netbeans 的其他 Issue
-
Contribution welcome kind:feature Platform
难度 2/5 1-3 小时 新手友好度 72/100
apache/netbeans#9614 · 2 条评论 ·
维护者通常 1 天内回复
-
kind:bug LSP needs:triage
难度 2/5 1-3 小时 新手友好度 78/100
apache/netbeans#9548 · 1 条评论 ·
维护者通常 1 天内回复
-
Editor Java kind:feature needs:triage
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
kind:bug needs:triage os:linux os:macos Platform UI
难度 1/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
kind:bug needs:triage
难度 1/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
相似的 Issue
-
approved bug
难度 2/5 1-3 小时 新手友好度 70/100
checkstyle/checkstyle#21981 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
beehive-lab/TornadoVM#1248 ·
维护者通常 1 天内回复
-
bug jdbc-v2
难度 2/5 1-3 小时 新手友好度 70/100
ClickHouse/clickhouse-java#3214 ·
维护者通常 1 天内回复
-
area: detector eco: java help wanted lane: free-agent roadmap size: S type: parser
难度 2/5 1-3 小时 新手友好度 62/100
arminazimi/evergreen#355 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
micronaut-projects/micronaut-data#4134 ·
维护者通常 1 天内回复