Skip to content

Shipping a new release

andresriancho edited this page Feb 9, 2013 · 16 revisions

Building a new distributable package

Only core w3af developers and package maintainers (like Debian, Fedora, FreeBSD package maintainers) will find this section useful, these are the main steps that we'll go through:

  • Run initial git flow commands to merge the corresponding branches
  • Set release w3af's version
  • Update the CHANGELOG file
  • Create the source code documentation using Sphinx
  • Run the make_bz2.sh script that will create the bz2 file from the tag
  • Upload the files to w3af.org
  • Run final git flow commands
  • Community tasks related to a release

Run initial git flow commands

TBD: Create a release branch

Set release version

Setting the version for the next release is trivial, just change the core/data/constants/version.txt file to the required version.

Update the changelog

Each release is associated with a milestone, when updating the readme/CHANGELOG use the issues in the milestone as a source for the CHANGELOG.

(15 Feb 2013)    Version 1.5
============================
Github tag: https://github.com/andresriancho/w3af/tree/1.5
Github milestone: https://github.com/andresriancho/w3af/issues?milestone=2

* Change A
* Change B
...
* Change N

Create source code documentation

  1. Run Sphinx
  2. Upload the generated code to w3af.org

Create distributable package

For *nix systems

Create the bz2 package:

cd ~/w3af/extras/pkg-generation/
./make_bz2.sh 1.0-rc4

After running this command we have a new file named "w3af-1.0-rc4.tar.bz2" in the "pkg-generation" directory. We recommend you to copy this file to "/tmp/", extract it, and run w3af at least once before you upload it to w3af.org.

For Windows

Create the Windows installer following this guide.

Upload the files to w3af.org

scp w3af-v1.5.bz2 [email protected]:/var/www/...
scp w3af-v1.5.bz2.md5 [email protected]:/var/www/...

And update the downloads page.

Run final git flow commands

TBD: Create a tag using git flow

Creating the '''git tag''' is easy, just run the following command replacing 1.0-rc4 with the correct version.

git tag -a v1.4 -m "Tagging the 1.0-rc4 release of the 'w3af' project."

This will create a tag for the current working copy, you can list all the tags in a repository using git tag.

Community tasks related to a release

Let the community know about this new release!