Release Guides

First please read the canonical Apache Release Guidelines.

This page also lists the various different release guides available that folks have created on different Apache projects. If you find another guide please add it to the list.

For Java based projects check out the Jakarta Commons release guide.

Here are some other project specific documentation...

Contributing Guides

For more see the third party contribution guide.

Notes On Release Management For New Projects And Managers

The Foundation Documentation

Digest the release documentation on the ASF release documentation. If you have any questions which aren't answered in those documents, please ask on infrastructure or incubator general (for new projects).

New projects should also be familiar with the incubator release policy.

Release Managers Should Subscribe To Infrastructure

Set up a filter for your mail and sign up. It's your responsibility to keep up to date.

The Project Release Style

It's a good idea for projects to record their style (even if only in a relative fashion: for example, we use the struts release process). It's ok to copy useful passages and practices from other ASF projects but it's best to link to ASF documentation since policy may change.

New release managers need to understand this style and (if it isn't recorded) should document it.

New projects should take a good look around at the best practice from the rest of Apache and elsewhere then pick elements with a good match to their project.

The Release Plan

It's good to have a plan. Typically this should be developed by concensus. The degree of formality differs. Use what works for you.

Consider Using A Wiki To Develop A Release Plan

Wikis are very suitable for developing and documenting a release plan. They are easy, fluid and informal but are also a separate channel from the code. It's good at easy self-organisation: developers who aren't committers can volunteer easily.

Java Notes


All distributed artifacts must contain LICENSE and NOTICE texts. Java projects typically distribute bare jars as do downstream distributors. So, ensure that all jars contain both LICENSE and NOTICE texts. The traditional location for these files is in the META-INF directory.

Build snippets for maven and ant can be found in the Jakarta Commons release guide.

Compile Using The Right JDK

Projects should specify a minimum target JDK. It is important that the release is built so that it will function correct when run against that JDK. The easiest way to do this is to compile against that target JDK.

Ensure MANIFEST Complies with Standards

See Jakarta Commons release guide for a checklist.

ReleaseGuides (last edited 2011-05-03 11:32:21 by SebastianBazley)