Difference between revisions of "Creating an OJ release version"
Jump to navigation
Jump to search
Line 68: | Line 68: | ||
# update Download links | # update Download links | ||
## on [[Downloading OpenJUMP|Download wiki page]] | ## on [[Downloading OpenJUMP|Download wiki page]] | ||
− | ## on openjump.org website | + | ## on http://openjump.org website |
# announce release | # announce release | ||
## on sf.net wiki frontpage news | ## on sf.net wiki frontpage news |
Revision as of 16:05, 29 May 2013
New Build/Release Procedure
The new build and release procedure uses maven.
Maven profiles
Command line to build and package OpenJUMP with maven is
mvn package -P <profile>,<profile>,...
where profile is at least one of the following:
- snapshot
- packages a snapshot of the basic edition core and plus (plus extensions from lib/plus)
- release
- builds of core and plus targeted for release, which can be named via
-D version.number=X.X.X -D version.release=release
- they mainly differ from snapshots because they
- - do not contain source code
- - do not expose language files in language/ folder
- example results:
- target/OpenJUMP-20120423-r2834-CORE.zip
- target/OpenJUMP-20120423-r2834-PLUS.zip
the following profiles can be added to build additional files
- portable
- builds portable zip files, one per edition. takes care of setting executable bits and recompresses jar files.
- example results:
- target/recompress/OpenJUMP-Portable-20120423-r2834-CORE.zip
- target/recompress/OpenJUMP-Portable-20120423-r2834-PLUS.zip
- installer (needs portable)
- builds multi platform executable izpack installers (*.jar,*.exe) for both core and plus from the portable packaging
- example result:
- target/izpack/OpenJUMP-Installer-20120423-r2834-CORE.jar
- target/izpack/OpenJUMP-Installer-20120423-r2834-CORE.exe
- target/izpack/OpenJUMP-Installer-20120423-r2834-PLUS.jar
- target/izpack/OpenJUMP-Installer-20120423-r2834-PLUS.exe
- srczip
- a zip file containing the source files of the build
- example result:
- target/OpenJUMP-20120425-r2834-src.zip
- javadoc
- build java doc html files for the current source
- example result:
- target/apidocs/
Build a release example
The command line to release a new version of OpenJUMP is
mvn package -P release[,portable[,installer]][,srczip][,javadoc] -D version.number=X.X.X -D version.release=release
- for releases you might want to give a version.number (default=unknown) and a version.release (default=release)
example
mvn package -P release -D version.number=1.5.1
The release step by step list
- Check etc/readme.txt (new components, licenses, contributors ...?)
- update and commit.
- summarize the changes to the previous version in Changes.txt, based on the Changelog file (copy/sorting out), commit to trunk
- add svn tag
- build release files with maven as outlined above
- test startup on all supported platform (if possible)
- update release notes (sf.net files readme.txt)
- upload the files to sourceforge's FRS
- release files
- readme.txt (sf.net files version)
- assign default download button per platform under file info (i)
- update Download links
- on Download wiki page
- on http://openjump.org website
- announce release
- on sf.net wiki frontpage news
- on the devel/user mailing lists
Old release process
- update the readme.txt
- summarize the changes to the previous version, based on the change log file (copy/sorting out)
- compile everything with the Ant script (check the java version to compile against)
- add the license, openjump.exe, and readme files (if not already included)
- so the platform independent zip & source release may be ready after copying the lic files into the zip (but best is to compare the zip content of an older release with the just created version)
- create a win-installer using Nullsoft NSIS (maybe with a pointer to download java 1.6) and include before-hand the ecw and mrsid libs into this edition (see also the notes on the svn for the past releases: e.g. for OJ 1.3.1)
- create another zip/release version that includes the sextante tools, postgis and print-plugin; based on the platform independent zip
- write the release notes
- upload the files to sourceforge
- make an announcement on slashgeo & our wiki & our sourceforge new section & change our webpage/links
- finally, updating of the documentation on the wiki on the new functions