Skip to end of metadata
Go to start of metadata

Esper release

The steps to perform a new release are:

Perform MVEL Integration Tests Manually

Since MVEL is an optional jar file and scripting language supported not through JSR 223 support but directly, the MVEL specific tests are deactive by default.

In regression\scripts\TestScriptExpression.java enable TEST_MVEL and rerun the tests.

Add merge&release tag

Add tag to tags/release_x.x.0_prerelease from trunk.

Run code quality tools

The project standard requires the following tools to pass before a release:

Findbugs

Findbugs is a separate download that comes with it's own GUI. In the GUI import the Esper source code and dependencies, and run an analysis. Analyze the findings and prioritize the required fixes. Not all reported warnings are relevant, and many are origined in ANTLR generated source code. Use judgement.

IntelliJ IDEA

We have free licenses to IntelliJ IDEA and their code analysis tools is also very good and, of course, integrated with the IDE.

  • Run IDE Default profile over the Esper module. Look at the following issues: bitwise ops, class structure, code style, error handling, performance, threading, probable bugs; Some too-fine grained categories are usually: control flow, data flow, declaration redundance (module doesn't see extension points).
  • Create/Run the "JavaDoc" profile for checking java docs only (see "general" section of checkboxes).

Change version in

  • esper/pom.xml
  • esper/build.xml
  • esper/doc/reference/en/master.xml (releaseinfo element)
  • esper/src/site/site.xml
  • examples/pom.xml (2 places)
  • examples/etc/setenv.bat and setenv.sh

search for further reference to old version number via text file searcher

Make sure all code is checked into Subversion repository, all JavaDocs generate, perform a backup (optional, such as via "ant source_zip")

Review changelog.txt in root dir

Clean Maven cache - this helps make sure all references to older jar file cause an error if used

Remove jar files from C:\Documents and Settings\<NAME>\.m2\repository\com\espertech

Build, test and install


If you want to skip unit testing and only do a binary build, run
mvn install -DskipTests

JavaDoc

 

 

Manual

generate PDF

Site release

  • Update site content in src/site
  • News (about\news\news.apt)
  • History (about\history\history.apt)
  • Version links to the new documentation (using\documentation\documentation.apt)
    *. Generate and release site

  • add google analytics to download.html manually, see snipped in site folder. Also make sure you move the bottom google analytics section into the top head section for this to work.
  • copy to release dir
  • copy download.html for articles that require the old link to evaluation/download/download.html

Distribution release

  • Create distribution zip: "ant dist_zip" and "ant dist_tar"
  • copy to distribution dir
  • "ant source_zip", copy src zips to distribution dir

Maven repository deployment

Test Release

  • web site updated?
  • doc links on web site
  • distribution available, download, unpack

Subversion

  • Check in changed site file, if any
  • Place tag

JIRA Management

  • Close all resolved JIRA
  • Admin project release package

Announce

  • Let team know via user and dev mailing lists
  • Place announcement in CEP forum group
  • Upload new esper-configuration.xsd to ET site, update download.php and news.php and index.php on site
Labels
  • None