Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Pre-Release tasks

The following tasks should be performed at least one day before starting the actual maven release!

  • Check that all maven plugins are used in the latest version
    Code Block
    $> mvn versions:display-plugin-updates 
    
  • Check that all maven dependencies are used in the latest version
    Code Block
    $> mvn versions:display-dependency-updates 
    

Release Preparations

  • Heads up on the mailing-lists

e.g.:

Code Block
first steps for the next release

hi @ all,

if there are no objections, i'll start with the first steps for the next release (review, documentation,...).
it would be great to start with the release procedure next week.

regards,
...

First Steps

Code Block
mvn release:prepare -DdryRun=true

//attention: use an useful tag-name (asked before the new version numbers) format [deltaspike-[version]]


//important: check the generated javadoc

//important: check if content was lost during release:prepare (especially license headers in pom.xml files)

mvn release:clean

mvn deploy

//check http://repository.apache.org/content/repositories/snapshots/org/apache/deltaspike/*

mvn release:prepare -Papache-release
//attention: use an useful tag-name (asked before the new version numbers)
//attention: invoke x2 (esp. in european countries)

//check tag in svn

// ATTENTION, THIS IS ONLY A WORKAROUND!
// AND WILL NOT BE NEEDED AFTER THE NEW maven-release-plugin GOT RELEASED 
cp -r ../git . 
// DON'T FORGET TO DELETE deltaspike/deltaspike/.git AGAIN AFTER THE RELEASE! 

mvn release:perform -Papache-release

//login to https://repository.apache.org/ and go to "Staging Repositories"
//check the shadded configs and esp. ...-[version]-source-release.zip
//close the repository

TODO - add GIT specific parts e.g. release branch,...

Start the Vote (PPMC)

Code Block
[VOTE] Release of DeltaSpike [...]

Hi,

I'd like to call a VOTE on releasing Apache DeltaSpike [...].

Maven staging repository:
[...]

Source release:
[...]

Git release branch:
[...]
(The branch will be pushed after the required votes passed.)

Please take a look at the [...] artifacts and vote!

Please note:
This vote is "majority approval" with a minimum of three +1 votes of PPMC (or IPMC) members.
This vote is open for 72 hours.

------------------------------------------------
[ ] +1 for community members who have reviewed the bits
[ ] +0
[ ] -1 for fatal flaws that should cause these bits not to be released, and why ...
------------------------------------------------

Thanks,
...

Close PPMC vote

Close the vote after 72 hours.

Code Block
Result (was: Re: [VOTE] Release of Apache DeltaSpike ...-incubating)

thank you for voting!

... binding +1 votes:
 - ... (ppmc, ipmc, mentor)

... non-binding +1 votes:
 - ... (committer)
 
... +0 votes
... -1 votes

regards,
...

Steps after voting started

create a link to the release notes at http://s.apache.org (format DeltaSpike_version)

tweet about the vote via @DeltaSpikeTeam.

e.g.:

Code Block
The #DeltaSpike community is currently voting on 0.1-incubating! http://s.apache.org/DeltaSpike_01incubating

Start the Vote (IPMC)

Code Block
[VOTE] Release Apache DeltaSpike ...-incubating

Hi,

This is the ... incubator release for Apache DeltaSpike, with the artifacts being versioned as ...-incubating.

We have received ... binding +1 votes (including ... votes of IPMC members) during the release voting on deltaspike-dev.

Vote thread:
...

Result:
...

Git release branch:
...
(It will be pushed to our Apache Git repository after this vote passed.)

Git release tag:
...
(It will be pushed to our Apache Git repository after this vote passed.)

Release notes:
...

Release artifacts:
...

PGP release file:
...

This vote is open for 72 hours.

------------------------------------------------
[ ] +1  approve
[ ] +0  no opinion
[ ] -1  disapprove (and reason why)
------------------------------------------------

Thanks,
...

Review the Release (IPMC)

See Reviewing a Release for more details.
//incubator.apache.org/guides/releasemanagement.html

Close IPMC vote

Close the vote after 72 hours.

Code Block
[RESULT] [VOTE] Release DeltaSpike ...-incubating

thank you for voting!

... binding +1 votes (ipmc):
 - ...

... +0 and ... -1 votes

regards,
...

Perform the final release

If the binding majority approved the vote continue.

Announce the Release

E-Mail

Code Block
[ANNOUNCE] Release of Apache DeltaSpike ... (incubating)

The Apache DeltaSpike team is pleased to announce (v...-incubating).

DeltaSpike consists of a number of portable CDI extensions that provide
useful features for Java application developers. The goal of DeltaSpike
is to create a de-facto standard of CDI-Extensions that is developed
and maintained by the community.

Apache DeltaSpike is available in the central Maven repository under
Group ID "org.apache.deltaspike.*".

Release Notes:
http://s.apache.org/DeltaSpike_...

We would be happy to receive your feedback to improve Apache DeltaSpike
step by step.

Enjoy!

...

Write the e-mails to:

  • announce at apache dot org
  • general at incubator dot apache dot org
  • deltaspike-dev at incubator dot apache dot org and deltaspike-users at incubator dot apache at org

Further announcements

  • Twitter the news

e.g.:

Code Block
[ANNOUNCE] The Apache #DeltaSpike team is pleased to announce http://s.apache.org/DeltaSpike_01incubating. Feel free to test it! Feedback is very welcome!
  • Write blog entries (smile)

Post release steps

Push release branch and tag

Code Block
titleExample with v0.1
git remote add release_repo [release repo]
git fetch release_repo

git checkout master
git pull --rebase

git checkout -b deltaspike-0.1-incubating release_repo/deltaspike-0.1-incubating   //now we are on the release branch
git push origin deltaspike-0.1-incubating
git push origin deltaspike-project-0.1-incubating

Merge back release branch

Code Block
titleExample with v0.1
git checkout master
git pull --rebase
git merge deltaspike-0.1-incubating
git push //origin master

git remote rm release_repo