Show RELEASENOTES.txt syntax highlighted
CruiseControl Release Notes
Changes listed by release, then alphabetically.
CruiseControl Release Notes - 2.7.2
build loop
======================
Configuration documentation generation
----------------------
* Created addiitonal plugin superclasses to make generating configxml.html. Still a work in progress (CC-202). Patch by Jerome Lacoste.
Mercurial Source Control & Bootstrapper
----------------------
* Sourcecontrol & Bootstrapper implementation for Mercurial (hg) http://www.selenic.com/mercurial/wiki/ (CC-638). Submitted by Jerome Lacoste.
CruiseControl Release Notes - 2.7.1
general
======================
* Upgraded Ant that is distributed with CruiseControl to Ant version 1.7.0.
* Fix source version cruisecontrol.sh to work with cygwin (CC-694). Patch by Rex Tener.
cc-config
======================
* Fixed cc-config\3rdparty\libsystray4j.so causes build to break on Windows (CC-684). Patch by Brian Egge.
* Updated cruisecontrol's main build to allow setting a proxy prior to downloading and including the cc-config application (CC-687). Patch by Ilkka Laukkanen.
contrib
======================
packager
----------------------
* Fix build root and rpm destination for rpm target. Patch by Joseph Benavidez.
* Init script improvments based on patch by Nicolas Ternisien
* Upgrading a package will no longer overwrite users config
* Packages now depend on Java and subversion
* Package now includes dashboard and cc-config
* Now includes working connectfour sample
* Stops CruiseControl on uninstall
* Now only builds CruiseControl if needed
* .svn folder in connectfour.zip now points to correct sourceforge repository url(http://cruisecontrol.svn.sourceforge.net/svnroot/cruisecontrol/trunk/connectfour)
* Sample project now use the projects directory, not checkouts directory
* Sample project does not use https any more
* Sample project config now uses ProjectConfig plugin
* Get Cruise to start on boot on Debian systems
Windows Installer
----------------------
* Added the -webport parameter so that Jetty will start by default, just like the binary distribution.
Documentation
======================
* Added docs for the Darcs scm plugin (CC-626).
* Fixed issue with logo appearing incorrectly placed in IE6. Patch by Jerome Lacoste.
* Add missing step in X10 publisher instructions. Patch by Bill Wohler.
dashboard
======================
NOTE: The dashboard has known display issues in Internet Explorer 7.
* Fixed display issues in IE6.
* Allowed artifacts to be kept in an arbitrary locations.
* Allowed config.xml to be kept in an arbitrary location
* Can render html/xml/txt in the browser.
* Can display the unit test output for passed builds.
* Enhanced the dashboard to display artifacts directories as tree structure.
* Added the cc-config (http://cc-config.sourceforge.net/) application so that it can be included in the dashboard (CC-658). Patch by Allan Wick.
* Allowed artifacts to be shown and downloaded in case of a failed build
* Allowed project name to contain hyphen (-)
* Allowed integration with project management tools
* Allowed using dashboard-config.xml to configure the dashboard
* Deprecated the way to configure the dashboard via web.xml
* Modificationset and Bootstrapping are no longer considered as building status in summary section.
* fixed unresolved velocity variable $build.build.duration in build detail page.
* Error details are missing in the dashboard (CC-665).
* Dashboard can't parse logfiles with testsuite elements without time attribute (CC-670).
* Dashboard can't parse logfiles with non-default date formats (CC-671).
* Fixed case where long project name would not wrap within Toolkit and Tooltip divs.
* Fixed layout problem with tabs when wrapping.
* Added Errors and Warnings tab. Removed Errors tab. Moved the test errors and test failures to Tests tab.
* Implemented the capability of displaying the status of last build while building
* Fixed the problem that cursor in IE6 does not show as hand for the link.
* Fixed the problem that timer does not stop after build finished.
* Fixed the problem that the hyperlink in building status turns brown.
* Fixed the problem that the color of text was red in IE6.
* Fixed the problem of allowforcebuild flag in dashboard-config.xml not accepting "true" or "yes" values as true.
* Added validation on project name to disallow the special characters in the set "!£$%^&*()+=#~?/<>[]{}`@:;\|'
* Made the colour of force build icon correct when a build changes from inactive to active.
* Include the zipped log files in the build detail page.
* Switched the active build icon to a transparent image that does not interfer with the background color.
* Changed the anthome to ant-1.7.0 when adding new projects via the dashboard.
build loop
======================
AllFusion Harvest
----------------------
* Added support for CA AllFusion Harvest via SDK (CC-513). Patch by Robert Thornburrow and Nayan Hajratwala. Removed previous command-line based support.
AntBuilder/Bootstrapper/Publisher
----------------------
* Add ant propertyfile attribute (CC-664). Patch by Willem Verstraeten.
* Provide support for configuring additional Ant libs and listeners (CC-542). Patch by Dan Fabulich.
* Provide support for displaying current build messages when using ant logger.
Builder Progress messages
----------------------
* Add a Progress signaling api to the builders: <composite>, <maven>, <maven2>, <ant>, and CCDist <distributed> (CC-686).
Experimental impl for <ant> builder to showProgress can be disabled with showProgress=false.
Progess messages are shown on the reporting/jsp project pages, below the project state text.
* Fix side effect of loading ant jars where possible by using -lib arg with full logger jar name. (CC-686) Patch by Yuan Yingjie, Hu Kai
build.sh/release.sh scripts
----------------------
* Set JAVA_HOME properly on MacOSX (CC-681). Patch by Ingo Richter
CommandLine and Process exec handling
----------------------
* Close process.outputStream to avoid deadlocks. (CC-527) Reported by Jason R. Hull
CompoundPublisher
----------------------
* New publisher which allows multiple publishers internally. (CC-656)
ConcurrentVersionsSystem/CVSBootstrapper
----------------------
* Added the ability to set the cvs compression level (CC-579). Patch by Maxim Butov.
default-plugins
----------------------
* Added darcs to the default plugins (CC-626).
Main
----------------------
* Put the ccname command line parameter back, after being inadvertently removed (CC-651). Patch by Lars Gehrken.
MavenMapper
----------------------
* MavenMapper extracts the email address for a certain committing user as configured in Mavens project.xml or pom.xml (M1 or M2) (CC-618). Contributed by Gisbert Amm.
Plugins
----------------------
* Introduce a "ControllerAware" interface for plugins (CC-680). Patch by committer emeritus Robert Watkins.
Project
----------------------
* Added a property named "buildforced" that will get passed to builders for conditional control (CC-653). Patch by Dave Kilroy.
PropertiesMapper
----------------------
* Refactored validation for cleanliness and removing duplication with ValidationHelper (CC-642). Patch by Gisbert Amm.
Schedule
----------------------
* Added trap for zero or less interval and updated docs to indicate that they are not legitimate values (CC-652). Suggested by Jeff Jensen.
SVN/SVNBootstrapper
----------------------
* svnrevision property set incorrectly (CC-683). Patch by Tim Brown and Brian Egge.
* svnbootstrapper documentation incorrectly lists "checkExternals" flag. Must be moved to the "svn" modificationset element (CC-678). Reported by Ram Singaram
* Improve error message when there is no valid localWorkingCopy for SVNBootstrapper (CC-679). Patch by Robert Watkins.
* Set svnrepository property so that it can be used by builders, etc (CC-639). Patch by Brian Egge.
* Prevent "premature" SVN modifications being detected with new attribute 'useLocalRevision' (CC-677). Patch by Robert Watkins.
TFS/TFSBootstrapper
----------------------
* TFS Support - new sourcecontrol and bootstrapper plugins (CC-666). Patch by Martin Woodward.
TimeBuild
----------------------
* Fixed problem when you set time build to 23:55 and the first modifcationcheck occur at 0:01 you won't get an modification (CC-650). Patch by Lars Gehrken.
UCM
----------------------
* Fixed ClearCase/UCM mode when rmver event found in history (CC-660). Patch by Paul Heaberlin.
Veto
----------------------
* Improvement to provide detail in log as to what changes caused the veto (CC-676). Patch by Barrett Nuzum.
Reporting (legacy)
======================
* Force build when already building could end up not going into the build queue(CC-436). Patch by Szczepan Faber
CruiseControl Release Notes - 2.7
dashboard
======================
NOTE: The dashboard has known issues when using it on CruiseControl installations other than the binary
distribution (or the windows installer). There will be a subsequent 2.7.1 release that fixes these issues.
NOTE: The dashboard has known display issues in Internet Explorer 6.
* Initial checkin of new CruiseControl dashboard.
* Tidied the failed and building pages, so that the text is aligned accordingly and does not leak out of the colored box.
* Performance enhancements to the active build page.
* Documentation enhancements, and updated to use newest screenshots.
* Reorganize the modifications tab so that messages are ordered.
* Clarified the administration page so that the difference between the config file location and config file editor is clear.
* Made hyperlinks clearly delineated.
* Fixed issue with refs to default servlet which would break in other web containers.
* Fixed bug with newly added projects reporting incorrect build times.
* Fixed broken link from active build page after build completed.
* Disabled configuration panel for inactive projects.
* CSS commenting to make clearer.
* Created documentation on writing "widgets".
* Enhanced reds and greens on the dashboard to provide a better sense of the state of the entire enterprise.
* Renamed "Last 25 Builds" to "Latest Builds" to more accurate.
* Fixed bug in project summation reporting the wrong number of builds.
* Fixed bug with remaining time calculation.
* Fixed bug where forcing a build wouldn't update the project statistics.
* Swapped the All Builds and All Successful Builds icons so that the wording and placement would make them more intuitive.
* Indicates when the Cruise server is down, such that force build will take no action.
* Ignoring non-cruise xml files in the log directories.
* Added ability to disable the force build button.
* Fixed the bug that rc2 does not support the pre-config project
* Fixed the bug that rc2 does not support the included project
* Fixed the bug that rc2 does not support the white space in the project name
* Fixed the bug that rc2 does not support that log directory cannot contain log.xml
* Fixed the text in Modification tab should not leak out of the tab
documentation
======================
* Update the look and feel of the documentation to be less intrusive and more contemporary in design. Added in newly trademarked CruiseControl logo.
* Added documentation about the new dashboard "widgets".
* Created installation guide for the dashboard.
* Update URL docs for subversion access to use new SF URL (old URLs to be decommissioned on June 28 by SF).
See: https://sourceforge.net/docs/E09#notice for instructions on how to switch your local working copy to the new URL.
build loop
======================
build.bat
----------------------
* Fixed bug with double, double-quoting the java path.
build.xml
----------------------
* Added the clean targets for the subbuilds to the main build, so that cleaning at the root will actually clean everything.
ClearCase
----------------------
* Change validation so that branch is not a required attribute.
CompositeBuilder
----------------------
* Changed to stop as soon as encounters first error, thereby reducing the log size for failed builds. Patch by Mark Kefauver.
CruiseControlConfig
----------------------
* <include.projects> now handles nested <include.projects>
ConcurrentVersionsSystem
----------------------
* Fixed a bug with date formatting when cvs returns dates in YYYY/MM/DD HH:mm:ss format. Patch, and pairing support, by Chris Read.
EmbeddedJettyServer
----------------------
* Added jmxport and rmiport parameters to the embedded jetty server that are passed to the dashboard.
JMX
----------------------
* Added the ability to retrieve commit messages for a project's "current" modification set.
* Added the ability to retrieve build output (e.g. from Ant) from the most recent, or active, build.
* Added the ability to retrieve statuses of all projects.
Main.java
----------------------
* Improved wording for dashboard webapp path and reporting web app path.
PlasticSCM & PlasticSCMBootstrapper
----------------------
* New sourcecontrol and bootstrapper for Plastic SCM. Contributed by Ruben de Alba.
contrib
======================
distributed
----------------------
* Remove deprecated "module" attribute.
* Add Agent Impl Version/Compile Date to BuildAgentServiceImpl.asString().
mainAsWar
----------------------
* Stop the non-daemon threads (BuildQueue and JMX Adapters) when the servlet is destroyed to allow a clean exit by the servlet container.
CruiseControl Release Notes - 2.6.2
documentation
======================
configxml.html
----------------------
* Added "veto" sourcecontrol to modificationset overview documentation (main/docs/configxml.html#modificationset). Patch by Allan Wick.
* Added "composite" builder to schedule overview documentation (main/docs/configxml.html#schedule). Pointed out by Kevin Quigley.
* Clarified documentation and fixed a typo for MKSBootstrapper (CC-584). Patch by Markus M. May.
build loop
======================
ConcurrentVersionsSystem
----------------------
* Added new attribute named "reallyQuiet" which will result in a "-Q" getting passed to cvs for the log command, instead of the default "-q". (CC-607) Suggested by Chris Nappin and Gisbert Amm.
CruiseControlConfig
----------------------
* Added the ability to use "global" properties in include.projects elements, e.g. <property environment="env" toupper="true" /> <include.projects file="config_${env.HOSTNAME}.xml" />. Patch by Andreas Mettlen.
CompositeBuilder
----------------------
* Fix validation error due to multiple calls to builder.validate() (CC-620). Reported by Tim Morrow
Darcs Source Control
----------------------
* New source control plugin for Darcs scm (CC-626). Contributed by Kim Pepper.
EmailPublisher
----------------------
* Validate that email addresses are legal (CC-601). Patch by Jerome Lacoste.
HtmlEmailPublisher
----------------------
* Expanded automatic search path for xsl and css files to work better with binary distribution (CC-566). Patch by Michael Kloss.
HttpFile
----------------------
* Fix bug where HttpFile didn't work with domain only (http://host.com) urls (CC-614). Patch by J. David Beutel
LockFileBootstrapper/LockFileListener
----------------------
* Fix bug where projects with multiple locks could leave dangling files (CC-568).
Log4jThreadGroup
----------------------
* Spelling correction: "uncaugth" changed to "uncaught". Pointed out by Martin Sweitzer.
Maven2Script
----------------------
* Fixed issue where passing more than one flag to Maven resulted in an error (CC-606). Patch by David Turanski.
ModificationSet
----------------------
* Fixed bug where ignoreFiles attribute of modificationset config element only considers the first file for each Modification (CC-612). Patch by David Jackman.
MKS
----------------------
* Fix bug where modifications were returned from all previous builds, not just the current build (CC-628). Patch by Min Li
NantBuilderTest
----------------------
* Fixed bug in testing when path to data file contained spaces (CC-304). Patch by John Lewis.
PhingBuilder
----------------------
* Add new plug-in for PHP build tool Phing (CC-613). Submitted by Hans Lellelid.
PluginRegistry
----------------------
* Remove deprecated method PluginRegistry.getDefaultProperties(String pluginName).
Project
----------------------
* Add "projectname" property to properties passed to Builder.build().
* Fixed issue introduced by CC-519 where the value of label passed to the build didn't match the value for the label displayed in the reporting application and email. Fix was to revert the patch for CC-519.
ProjectConfig
----------------------
* Fixed a bug where ProjectConfig.stop() was calling Project.start() instead of Project.stop(). The effect of this would be for projects that have been removed from config.xml to continue to build.
Pvcs
----------------------
* Fixed bug where extra double quotes were being added to the call to pcli (CC-604). Patches by Karsten Wintermann and Dave Kilroy.
SSCM
----------------------
* Fixed bug that caused SSCM to NOT find Surround SCM modifications if email field is empty (CC-631). Fix suggested by Richie Yan & Bob.
StartTeam
----------------------
* Fixed issue that deleted Starteam-files were always detected as Modifications from a 'Unknown'-User, when the Locale was not English (CC-455). Patch by Markus Grieder, reviewed by Benjamin Burgess.
UCM
----------------------
* Added support for multiple vobs (CC-597). Patch by Mark Holster.
XMLConfigManager
----------------------
* Check files included with the include.projects mechanism when deciding if configuration file needs to be reloaded. Part of (CC-266).
YahooPublisher
----------------------
* Publishing build results url to Yahoo IM (CC-382). See configxml.html documentation about required third-party libraries. Contributed by Markus M. May.
reporting
======================
build.xml
----------------------
* Allow user to override jmxport via -Dcruise.build.jmxport=xxxx on ant commad line, or override.properties (see CC-448). Root cruise build defaults to 8000, as before. Patch by Antek Baranski.
XmlServlet
----------------------
* Enhancement to enable Cruise to work with the cctray distributed as part of CruiseControl.net. Patch by Davie Moston.
Install cctray from http://sourceforge.net/project/showfiles.php?group_id=71179
Then run cctray, select setting from the tray icon, then add, add server, "Use Custom URL" with a URL of "http://YOUR_SERVER/cruisecontrol/xml", then select the project you want to monitor and hit OK.
XSLTag
----------------------
* silence "Warning: Running an XSLT 1.0 stylesheet with an XSLT 2.0 processor" when using Saxon as XSLT processor
scripting
======================
cruisecontrol.bat
----------------------
* Fixed bug with quoting arounnd JAVA_HOME, when no JAVA_HOME set (CC-605). Fixed suggested by Harlan Iverson.
contrib
======================
distributed
----------------------
* Fix thread leak in DistributedMasterBuilder under high load (CC-625). Reported and Tested by Michael Van Hoff
* Fix doc error regarding Unicast Lookup URL settings
* Fix scripts to actually use jini.logging settings. Add readme notes for LAN's with broken hostname resolution.
* Change BuildAgent to auto detect headless environment and run in headless mode.
* Deprecate 'module' attribute, use Project Name automatically.
* Add 'EntryOverrides' feature to add new 'entries' to specific running Agents.
mainAsWar
----------------------
* Add ability to set the rmi port from the "cruisecontrol-main" web application (CC-637). Patch by Rich Seddon
CruiseControl Release Notes - 2.6.1
general
======================
* Fix cruisecontrol.bat in binary release for JAVA_HOME that has spaces (CC-554)
* Output PID to cc.pid in cruisecontrol.sh to fix init.d usage (CC-581). Patch by Kevin Quigley.
* Binary distribution with embedded Jetty server now also uses Launcher (CC-586). Patch by Mike Gilbode.
* Add Serializable to all classes required for RMI clients (CC-582). Investigated by Frank Zoontjens.
contrib
======================
distributed
----------------------
* Updated to use Jini v2.1, rearranged tree, and added upgrade notes to README.html for mixed environments.
build loop
======================
AlienBrain
----------------------
* Add support for the property attribute
AlwaysBuild
----------------------
* Add support for property attribute
BuildStatus
----------------------
* Add support for the property attribute
ClearCase
----------------------
* Detect ClearCase UCM stream rebases as modifications (CC-464). Patch by Scott Coplin.
CompositeBuilder
----------------------
* Fix reported build time. Patch by Frederic Mockel.
* Changed the default element name from <builders> to <composite>
Compound
----------------------
* Add support for property attribute
CurrentBuildStatusPageListener
----------------------
* Add documentation for CurrentBuildStatusPageListener
* Fix validation messages when sourceFile invalid
default-plugins.properties
----------------------
* Change default element name for CompositeBuilder from "builders" to "composite".
ExecScript
----------------------
* Handle commands with spaces on Linux (CC-551). Patch by Frederic Mockel.
HttpFile
----------------------
* Add support for property attribute to bring it in line with the documentation (CC-590)
Main
----------------------
* Add logging of root exception when config file fails to parse on load.
MKS
----------------------
* Fix synchronization failure on Linux (CC-576).
OSEnvironment
----------------------
* Fix for Windows Server 2003 and Java 5 (CC-573). Patch by Nate Austin
P4
----------------------
* Display modification time using local timezone if correctForServerTime is true (CC-574). Patch by Anatol Pomozov
* Add support for property attribute
Project
----------------------
* Fix NPE when there are multiple build threads and config.xml is reloaded during a build.
PropertyFileLabelIncrementer
----------------------
* PropertyFileLabelIncrementer uses specified property file, not the previous log file. (CC-519) Patch by Chad Woolley and Joe Moore.
PVCS
----------------------
* Add support for property attribute
SocketPublisher
----------------------
* Send project name and fixed vs. successful status (CC-575). Patch by Daniel Lindner
Surround (SSCM)
----------------------
* Correct documentation to indicate support for property attribute.
SVN
----------------------
* Add checkExternals flag to check for changes in svn:externals. (CC-585). Patch by Chad Woolley.
TimeBuild
----------------------
* Add support for the property attribute
Veto
----------------------
* New SourceControl plug-in used to prevent a project from building when a dependency is out of date.
Maven2SnapshotDependency
----------------------
* Fix OutOfMemory exception in Maven2SnapshotDependency (CC-578). Patch by Anatol Pomozov
reporting application
======================
rss.jsp
----------------------
* Fixed NPE for projects without logs in their directory.
NavigationCountTag
----------------------
* Changed NavigationCountTag to extend CruiseControlTagSupport instead of CruiseControlBodyTagSupport to avoid error message that instances of BodyTag are not allowed to return EVAL_BODY_INCLUDE.
testdetails.xsl
----------------------
* Fixed failure and error links (CC-545). Patch by J. David Beutel.
CruiseControl Release Notes - 2.6
general
======================
* End of support for compiling/running Cruise with JDK 1.3. New earliest supported JDK is 1.4.x.
* Replace Xalan with Saxon to solve OutOfMemoryError problems.
* Overhaul handling of threads, streams and logging when executing external processes.
contrib
======================
distributed
----------------------
* Update distributed CC code for refactoring in core (CC-485). Patch by Dan Rollo
* Fix bug in distributed where empty results subdirectories cause exception (CC-458). Patch by Dan Rollo
* Fix bug where distributed InteractiveBuildUtility always fails to build (CC-459). Patch by Dan Rollo
* Pass CC_OPTS in cruisecontrol.sh for distributed CC. Patch by Dan Rollo.
* Fix bug in distributed where BuildAgent restart() and kill() never waited for build to finish (CC-517). Patch by Dan Rollo
mainAsWar
----------------------
* Allows the main build loop to run in a servlet container.
packager
----------------------
* packager: Based on the RpmPackager contributed earlier by Julian Simpson, but now works with rpm version 4 and also creates Debian packages. It is also done in such a way that building any other type of package should work. Contributed by Christoper Read and Julian Simpson.
* packager: fix user and group in logrotate script - Patch by Markus M. May
windowsInstaller
----------------------
* Fixes for windows installer (CC-505). Patch by Julian Simpson:
- displays README instead of RELEASENOTES
- now with Windows service
- backs up logs and artifacts to your Windows profile temp dir when removing
- cleans out install dir
build loop
======================
Accurev
----------------------
* Fix property attribute and remove propertyOnDelete since I don't see an easy way to know if a file has been deleted.
AllFusionHarvestCM511
----------------------
* AllFusion Harvest CM 5.1.1 source control implementation, registered as "harvest" in the default plugins. Submitted by Larry Liberto.
AntBuilder
----------------------
* Add optional attribute "keepgoing" to invoke ant with -keep-going flag. Submitted by Stephen George
* Can once again use optional tasks with internal version of ant (CC-400). Patch by Frederic Mockel
bootstrappers
----------------------
* Update all bootstrappers to throw CruiseControlExceptions on errors instead of log and continue (CC-449). Reported by Sylvain Benoist.
BuildQueue
----------------------
* Fix synchronization bug (CC-540). Patch by Benjamin Burgess
BuildStatus
----------------------
* Better error message when log directory doesn't exist (CC-487). Submitted by Sven Strohschein
ClearCase
----------------------
* Fix error logging (CC-450). Reported by Kevin Quigley.
CMSynergy
----------------------
* Use a four part project name for projects (CC-370). Reported by Antek Baranski. Patch by Robert J. Smith and Antek Baranski.
ConcurrentVersionSystem
----------------------
* Remove race condition on closing error stream.
* Make empty string in tag an alias for HEAD (CC-511). Fix by Benjamin Burgess
CompositeBuilder
----------------------
* Add CompositeBuilder to run a list of builders and have the results of the builds combined (CC-538). Submitted by Frederic Mockel
* CompositeBuilder.validate() should validate child builders. Reported by EJ Ciramella
cruisecontrol.bat
----------------------
* Was failing to execute java when JAVA_HOME wasn't set (CC-492).
* Was failing if there were spaces in JAVA_HOME (CC-554)
CruiseControlConfig
----------------------
* Allow properties inside of preconfigured template projects. Patch by Jerome Lacoste
* Allow non-default projects to be registered as plugins. Alternative project implementations need to implement ProjectInterface.
* Add include.projects tag as part of CC-266.
CruiseControlController
----------------------
* Prevent ConcurrentModificationException by only allowing a single thread to be parsing the config file.
default-plugins.properties
----------------------
* Add ClearCaseViewstrapper (CC-482). Reported by Andy Stevens
* Add ExecBootstrapper and CompositeBuilder (CC-538).
* Add RakeBuilder as <rake .../>
EmailPublisher
----------------------
* Add <ignore ..> child element (CC-489). Patch by Jarkko Viinamäki
* Fixed bug where using SSL but not specifying mailPort would result in a NullPointerException. Reported by Michael Clark
* Added validation for nested alert, always, failure, success and ignore elements.
ExecBootstrapper
----------------------
* Add ExecBootstrapper which executes a command (like the ExecBuilder) during the bootstrap process (CC-538). Submitted by Frederic Mockel
Launcher
----------------------
* Add Ant-style launcher (CC-268). Patch by Robert J. Smith.
* Fix NPE if cc.home property not set (CC-516). Patch by Dan Rollo.
LdapMapper
----------------------
* Support authentication (CC-453). Submitted by Lars Gehrken
LockFileListener
----------------------
* Fix problem where listener was incorrectly deleting the lockfile.
* Add documentation for lockfilebootstrapper and lockfilelistener (CC-507). Patch by Allan Wick.
MavenSnapshotDependency
----------------------
* Modifications to MavenSnapshotDependency (CC-484). Submitted by Jarkko Viinamäki
- made POM scanning namespace aware. Dependencies were not detected if project.xml had schema definition in the project element
- added support for "ejb-client" dependency type
- added echo for detected snapshot dependencies
- added support for build.properties or other similiar properties file which contains key=value tags to replace ${key} type strings in project.xml
* update startup scripts in binary release to use correct version of maven2 embedder lib - Reported by Valerie Maher
Maven2Builder
----------------------
* fix problem where a FATAL ERROR was not detected as an error.
* fix finding mvn.bat in Windows. Reported by Michael Mattox
* add support for <property> child elements
MKS
----------------------
* fix problem with spaces in project path (CC-558). Patch by Thomas Schüttel
ModificationSet
----------------------
* now calls validate() on all child source controls.
P4
----------------------
* Command to correct for server time wasn't using the optional values such as the port (CC-469). Reported by Terri Paik
* Fix problem where very short interval time (30 seconds) was causing system to run out of file handles. Fix by Jared Richardson
Project
----------------------
* Add requireModifications and forceOnly attributes (CC-501). Patch by Chris Erskine
* Avoid loop when forcing a build that has an exception in the bootstrapper (CC-556). Patch by Stefan Lützkendorf
PropertyLabelIncrementer
----------------------
* Add attribute "defaultlabel" which is returned when property file doesn't exist (CC-470).
PVCS
----------------------
* Add support for multiline comments (CC-440). Patch by Scott Heaberlin
RakeBuilder
----------------------
* Add builder to call Ruby Rake (CC-564). Submitted by Kirk Knoernschild
SCPPublisher
----------------------
* Add attribute "executableName" to specify alternative executable.
SourceControlProperties
----------------------
* Create delegate to fix problem where properties set by the source controls persisted across builds (CC-508).
StreamPumper
----------------------
* Log if consuming line fails (CC-199). Reported by Kaloyan Enimanev.
SVN
----------------------
* Reset modified property to null if no modifications. Patch by Paul Hammant
* Remove race condition on closing error stream.
* Surround dates with double quotes when on windows (CC-447). Patch by Marco Tedone.
UCM
----------------------
* Skip rmbranch and rmver events (CC-430). Patch by Olga Bondarchuk
VSS
----------------------
* Asterisks in comments no longer cause StringIndexOutOfBoundsException (CC-461). Reported by Omair-Inam Abdul-Matin
VssBootstrapper
----------------------
* VSSBoostrapper fix for intermitent "java.io.IOException: The handle is invalid" errors (CC-535).
reporting application
======================
buildresults.xsl
----------------------
* Comment out javadoc.xsl since the information is already in the errors and warnings section.
index.jsp
----------------------
* Fix invalid comment syntax in index.jsp (CC-486). Reported by Andy Stevens
* Use fully qualified hostname for JMX server (CC-362). Patch by Sven Strohschein
* Use cruisecontrol.jmxhost parameter if it is set in web.xml.
controlpanel.jsp
----------------------
* Use fully qualified hostname for JMX server (CC-362). Patch by Rajesh Patel
* Use cruisecontrol.jmxhost parameter if it is set in web.xml. Patch by Jared Richardson
FileServlet
----------------------
* Fix problem where urls in directory might have double slashes. Fix by Edward Kuns
* Added content length to HTTP response, this allows keep alive connections. Patch by Andreas Mandel
metrics.jsp
----------------------
* New charts calculated by evaluation an XPath expression on all build logs.
nant.xsl
----------------------
* Update to work with nested builds.
rss.jsp
----------------------
* Use RFC-822 format for dates (CC-473). Patch by Brian Egge
testdetails.xsl
----------------------
* Rewrite xsl to be more efficient. Submitted by Ivan Latysh
taglib
----------------------
* Taglib tries to read a system property named "false", which, depending on security policies, may be denied (CC-525). Based on patch by R. Lemos
CruiseControl Release Notes - 2.5
general
======================
* Included build.xml target to create executable windows installer, from contrib definition (CC-314). Submitted by Julian Simpson. Should make CruiseControl-VER.exe available as a distribution.
* Updated Xerces (2.8) and Xalan (2.7) jars to fix memory leak (CC-426)
contrib
======================
* WindowsInstaller definition using nsis (CC-314). Submitted by Julian Simpson.
* Update DistributedBuildMaster to support instance reuse (CC-434). Submitted by Dan Rollo
build loop
======================
* Cleaned up incorrect usages of static SimpleDateFormats (CC-422). Proposed by Scott Coplin.
* Fixed recently introduced bug where project would keep on building with its overriden target when invoked once from the JMX interface using buildWithTarget.
Builder
----------------------
* Warn when given invalid value for day attribute.
ClearCaseBaselinePublisher:
----------------------
* New publisher for use with ClearCase UCM (CC-414). Submitted by Kevin Lee.
CruiseControlConfig:
----------------------
* On first load attempt to run projects in the same order they appear in config file. Patch by Olek
CruiseControlControllerAgent:
----------------------
* Look for an existing MBeanServer before creating a new one. This will make it possible to manage CC through Java 5's JConsole (CC-417). Patch by Gavin Kinghall Were.
ExecutePublisher:
----------------------
* No longer asynchronous (CC-280). Patch by Michael Kloss
LDAPMapper:
----------------------
* Email mapper that uses an LDAP lookup to determine user email addresses (CC-413). Submitted by Esa Laine.
Maven2Builder:
----------------------
* Fix problem where Maven2 reports were not showing build details (CC-429). Contributions by Jean-Laurent de Morlhon and Roger Butenuth. Final patch from Dan Rollo.
Maven2SnapshotDependency:
----------------------
* New sourcecontrol (CC-438). Contributed by Dan Rollo with fixes by Jerome Lacoste.
PauseBuilder:
----------------------
* PauseBuilder is no longer a Builder.
ProjectConfig:
----------------------
* buildAfterFailed should default to true.
ProjectWrapper:
----------------------
* Fix problem where forcing a build while build is running will effectively kill the worker thread leading to all projects queued but not building (CC-431). Patch by John Lewis.
PVCS:
----------------------
* Handle archive file names that don't end in "-arc". Added property archiveFileSuffix. (CC-425)
Schedule:
----------------------
* Removed deprecated methods addBuilder and addPauseBuilder.
SCPPublisher:
----------------------
* Fixed bug where publisher always published the same log file.
* No longer asynchronous (CC-280). Patch by Michael Kloss
SourceControl (Plugin API):
----------------------
* getProperties() now returns a Map instead of a Hashtable
SfeeFrsPublisher:
----------------------
* remove setFile(File file) to avoid couldn't invoke setter problem (CC-433).
SVN:
----------------------
* Fix NPE when client has no read permissions to the changed file. Patch by Britt Piehler
UCM:
----------------------
* Add property attribute that gets set if modifications are found (CC-421). Patch by Scott Coplin.
reporting application
======================
* Fix for JMX collection view and paging (CC-394). Patch by Tim Shadel.
* Added web.xml parameter for cruisecontrol.jmxport, which can be overridden by the environment variable as documented in web.xml.
fittests.xsl
----------------------
* Display all fit results, not just the first one (CC-415). Patch by Randy Coulman.
CruiseControl Release Notes - 2.4.1
contrib
======================
* add option for XmlLoggerWithStatus to ignore certain targets (CC-259). Patch by Brad Clarke
* add cross-platform JavaServiceWrapper (CC-87). Submitted by Eric Pugh
build loop
======================
configxml.html:
----------------------
* Fix broken links to the puligin classes' javadoc
* cvs was renamed ConcurrentVersionsSystem
CruiseControlController:
----------------------
* Properly remove projects when appropriate on setConfigFile() (CC-408). Patch by Matt Albrecht
CruiseControlControllerJMXAdaptor:
----------------------
* Notify listeners on projects added/removed (CC-409). Patch by Matt Albrecht
ExecBuilder:
----------------------
* New plug-in for executing a specified command as the build action (CC-317). Submitted by Kevin Lee
HTMLEmailPublisher:
----------------------
* add option to pass XSLT parameters to the XSL stylesheets used.
JMX interface:
----------------------
* Sort arrays and collections by their index's numeric value (CC-232). Patch by Valdis Rigdon
Maven2Builder:
----------------------
* Add new builder for Maven2 (CC-363). Submitted by De Moor Yves. Tested, documented and patched by Dan Rollo.
Project:
----------------------
* Fix problem where we could have two events being pushed to the same listeners on different threads when the project is started. Patch by Frits Wallin
PropertyFileLabelIncrementer:
----------------------
* New plug-in that returns the label from a properties file (CC-242). Submitted by Eugene Kuleshov
WeblogPublisher:
----------------------
* New plug-in for publishing build results to a weblog (CC-102). Submitted by Lasse Koskela
reporting application
======================
documentation:
----------------------
* new page documenting the customization options: System properties, Context parameters, servlet init parameters and XSLT parameters.
error.jsp:
----------------------
* change call from (GenericServlet.)log(...) to application.log(...) for app servers who implement Servlet without extending GenericServlet, such as WebLogic 8.x. Patch by Carl Lindberg
index.jsp:
----------------------
* cleanup display of page, add banding, one line per project. Submitted by Kevin Lawrence. Previous index.jsp renamed to old_index.jsp.
* added rss feed for overall cruisecontrol project statuses (CC-331). Submitted by Arent-Jan Banck.
main.jsp:
----------------------
* add "charset=utf-8" to contentType (CC-176).
navigation.jsp:
----------------------
* use new NavigationCountTag to fix problem some J2EE systems had with the multiple instances of NavigationTag. Patch by Chris Erskine
old_index.jsp
----------------------
* Reverted column order to that parseable by the Firefox CruiseControl Monitor plugin.
CruiseControl Release Notes - 2.4
batch files:
----------------------
* Double quotes around %JAVA_HOME% arguments in classpaths, for JAVA_HOME values with spaces in the paths. (CC-371) Fix by Jeff Jensen
binary release:
----------------------
* cruisecontrol.bat no longer sets ANT_HOME (CC-348).
* cruisecontrol reporting application now started under root context, for example http://localhost:8080 will now show the reporting app. "cruisecontrol" context supported For backwards compatability, for example http://localhost:8080/cruisecontrol. Patch by Kent Spillner.
* switched from jakarta commons-math to a sample "connectfour" project in the cruisecontrol cvs repository.
* Added a work directory for Jetty to use (CC-257). Fix suggested by Paul Hammant.
* Defaulting jmxport to 8000 in the startup scripts (cruisecontrol.bat and cruisecontrol.sh), but at the end of the command line so that it can be easily overridden.
* Package the zip file with unix execute permission on the cruisecontrol.sh and apache-ant/bin/ant scripts
* Updated the bundled apache-ant from version 1.6.3 to 1.6.5
source release:
----------------------
* don't exclude the binaryrelease files from the source release. Patch by Larry Shatzer
contrib:
----------------------
* fix distributed/build.xml so that tests will pass out of the box. Patch by Dan Rollo
* updated distributed/README.html to indicate that downloading the JINI jars is no longer required, but jdk1.4+ is. Patch by Dan Rollo.
* Switch from downloading a separate jnlp.jar to using jre/javaws/javaws.jar. (CC-364) Patch by Dan Rollo.
* clarified module attribute description in contrib/distributed (CC-390). Patch by Dan Rollo.
* Allow configuration of BuildAgents to use a specific URL to find Lookup services (instead of using mulitcast discovery) (CC-392). Patch by Kirill Petrov.
release build.xml:
----------------------
* New targets "deploy-server" and "kill-server" for starting/killing the binary release on a testing port.
* Added "web" tests for the binary distribution. They are executed by the "webtest" target in release.xml.
* Exclude pre-built binaries from source distribution and rename zip to include "src" in the name (CC-336).
* Renamed from release.xml to build.xml so that it conforms to Ant standards.
build loop
======================
AccurevBootstrapper:
----------------------
* No longer extends AntBuilder, but delegates to an AntBuilder instance. AccurevBootstrapper previously could have been used as a builder and a bootstrapper, but this wasn't semantically correct. It also made it more difficult to look at the class signature and understand its responsibilities. Patch by Kent Spillner.
AntBootstrapper:
----------------------
* No longer extends AntBuilder, but delegates to an AntBuilder instance. AntBootstrapper previously could have been used as a builder and a bootstrapper, but this wasn't semantically correct. It also made it more difficult to look at the class signature and understand its responsibilities.
AntBuilder:
----------------------
* Fails with an explicit error message if the ant log is empty instead of a XML parse Error on line -1: Premature end of file. Patch by Jerome Lacoste.
* Warn that jvmargs are ignored when specifing anthome
AntPublisher:
----------------------
* No longer extends AntBuilder, but delegates to an AntBuilder instance. AntPublisher previously could have been used as a builder and a publisher, but this wasn't semantically correct. It also made it more difficult to look at the class signature and understand its responsibilities. Patch by Kent Spillner.
BuildQueue:
----------------------
* Catch and log and exceptions from listeners, such as when reparsing config file (CC-395).
* Rename Listener method from projectQueued() to buildRequested() and change notification from after queueing to before.
main/build.xml:
----------------------
* Allow build for jdk 1.3 no matter which jdk is being used. Patch by Brad Clarke.
ClearCase:
----------------------
* New 'all' attribute can be used to increase performance when checking the entire view. Patch by Rick Reimer.
* New plugins for ClearCase support (CC-326). Submitted by Kevin Lee
- UCM: sourcecontrol that monitors and reports in terms of UCM activities
- ClearCaseViewstrapper: bootstrapper for use with dynamic views
- FormattedLabelIncrementer: label incrementer that creates labels suitable for baselining
- ClearCaseAuditLogger: adds information from an audited build into the CC build log
configxml.html:
----------------------
* Included link to timebuild in modificationset documentation.
config.xml:
----------------------
* Allow preconfiguration of <log ..> element and sub-elements. Patch by Jerome Lacoste.
* Allow preconfiguration of project and subelements (CC-352). Patch by Jerome Lacoste.
ConcurrentVersionsSystem.java:
----------------------
* Fixed bug when module attribute is set to a true CVS module, not just a directory. Patch by Brad Clarke.
CurrentBuildStatusPageListner:
----------------------
* Added new listener that will take an input template and do variable substitution to create an output page. Submitted by John Lussmyer
CVS.java:
----------------------
* Deprecated CVS.java in favor of ConcurrentVersionsSystem.java to overcome issues with directory/filename conflicts, specifically with Eclipse IDE (CC-164). Note: CVS.java and other deprecated methods/classes are scheduled for deletion in the 3.0 release.
general:
----------------------
* Minor changes to make code jdk 1.3 compliant.
* Added fast-md5.jar to manifest for cruisecontrol.jar
* Deprecated the command-line argument named "port" in favor of "jmxport" to be more explicit.
* Javadoc, code, and test deprecation cleanup. Patch by Brad Clarke.
* New system property named "cruisecontrol.rmiport" set when -rmiport specified on the command line.
* Delete temp files created by tests (CC-344). Patch by Mark Doliner.
* Missing x10.jar origin in lib/readme.txt. Reported by Adrian Cho.
* Fixed project reloading so that changes to an existing project will be included when Cruise builds the next time. Paul Julius & Kent Spillner, pairing.
* When reparsing the config file, the new MD5 hash was not being updated, so once changed, the config file always looked new. Paul Julius & Kent Spillner, pairing.
JabberPublisher:
----------------------
* Support setting different "service". (CC-346) Patch by Ahti Kitsik.
JMX interface:
----------------------
* When setting the configuration contents via JMX, the contents are validated (CC-333). Patch by Allan Wick.
* Show build queue position for a Project on its JMX screen (CC-375). Patch by Tim Shadel.
LockFileBootstrapper/Listener:
----------------------
* Added a pair of plug-ins that coordinate such that multiple projects with the same lock file will not build simultaneously.
(Log)Manipulator:
----------------------
* Added a new class of plug-ins that can be nested within the log element to handle tasks in the log directory. Initial implementations are the DeleteManipulator (delete old logs) and the GZIPManipulator (gzip old logs). Contributed by Michael Kloss.
MergeLogger:
----------------------
* cleanly skip non existing log files and directories
MKS:
----------------------
* Support archive filenames with spaces (CC-376). Patch by Martin Aberle.
NavigationTag:
----------------------
* Remove support for log files timestamped without a second part
P4ChangelistLabelIncrementer:
----------------------
* New label incrementer for use with a Perforce changelist (CC-379). Patch by Matt Albrecht
P4:
----------------------
* Get the email address of users from Perforce (CC-381). Patch by John Lussmyer.
Project:
----------------------
* Remove methods to get/set config file from Project and corresponding jmx interface classes
* ModificationSet is no longer a required element; when missing builds must be forced.
* Fix a testcase failure on MacOS X. Reported by Michael Kloss.
* Build after failed was not getting set properly. Patch by Brad Clarke.
* Fix a bug where projects would hang if a build failed with unchecked exceptions or errors.
ProjectConfig:
----------------------
* Validates subelements by calling their "validate()" methods.
Schedule:
----------------------
* Fix getTimeToNextBuild to adjust for daylight savings time (CC-104).
* Fix getTimeToNextBuild to prevent StackOverflowError
* Validate now checks if all builders occur in pauses. Patch by Michael Kloss.
SfeeFrsPublisher:
----------------------
* A new publisher for uploading files to a SourceForge Enterprise Edition's File Release System.
SfeeTrackerPublisher:
----------------------
* A new publisher for creating a tracker artifact in a SourceForge Enterprise Edition project.
* Extracted XPathAwareChild and NamedXPathAwareChild to make usable by other plugins.
SfeeDocumentManagerPublisher:
----------------------
* A new publisher for creating a Document Manager entry in a SourceForge Enterprise Edition project.
* If a Document Manager entry already exists in the specified folder with the same name, then the document being published will be added as a new version.
StarTeam
----------------------
* Logging is unclear in a multi-threaded environment, so prepend 'url' string to all log messages. (CC-368) Patch by Benjamin Burgess
* Modifications reported with extra '/' character between file name and parent folder name (i.e. "AdviceAgent\implementation\build_config\/build.xml"), so if the folder name returned form the server ends with either '/' or '\' then remove it before setting in modification. (CC-368) Patch by Benjamin Burgess
* Modifications done by any user with name = "BuildMaster" are no longer ignored. (CC-368) Patch by Benjamin Burgess
* Deletions are reported as the deleter instead of the last editor. (CC-368) Patch by Benjamin Burgess
ThreadQueue
----------------------
* Fixes for incorrect methods (CC-389). Provided by Tarik Idris, reviewed by Kent Spillner.
* Fix a ConcurrentModificationException when retrieving busy and idle tasks. Reported by Larry Shatzer
VSSJournal:
----------------------
* handle dirs with same prefix (CC-307). Patch by Dan Rollo.
* propertyOnDelete now set in VSSJournal. (CC-366) Patch by Simon Brandhof
* configurable date/time format support for VSSJournal & fix ssDir if it ends with a '/'. (CC-365) Patch by Simon Brandhof
reporting jsp app
======================
build.xml:
----------------------
* Specify jdk 1.3 source and target. Patch by Brad Clarke
Configuration Editor:
----------------------
* Created a browser based configuration editor, included in the reporting application.
* Added comment that the configuration editor is ready for alpha-level testing. Kent Spillner and Paul Julius, pairing.
CruiseControlLogFileFilter:
----------------------
* Only accept files with at least 16 characters ('log' + date pattern + extension)
CruiseControlTagSupport:
----------------------
* Use commons logging instead of sysout (CC-337). Patch by ajbanck@informatica.com.
FileServlet:
----------------------
* Fix a bug with Last-Modified date format. Patch by Torsten Buerger
* Set response code of 404 when file/dir not found. Patch by Ralf Wiebicke
* Sort the artifact listing. Patch by Ralf Wiebicke
fittests.xsl:
----------------------
* show fitnesse tests on the build results page. Submitted by John Woodward
index.jsp:
----------------------
* Show status of projects (idle, publishing, etc.) on index page (CC-275). Patch by Jeff Jensen.
LogFile:
----------------------
* Extract code for accessing the XML log files into a new Logfile class. Donations from ArtifactsLinkTag, BuildInfo, FileServlet, NavigationTag and XSLTag. Patch by Hack Kampbjørn
* Serializable so that the Metrics tab in the reporting application will work. Patch by Dan Rollo.
LogFileServlet:
----------------------
* Extract the log file serving specific code from FileServlet into a new subclass
modifications.xsl:
----------------------
* Added a date/time field to the data displayed in the reporting application. (CC-338) Patch by ajbanck
* Insert <br/> in place of newline characters in checkin comments so that they display properly. (CC-218) Patch by Kent Spillner
* Add links to ClearQuest when used with new ClearCase plug-ins (part of CC-326). Patch by Kevin Lee
Reporting:
----------------------
* Added a "Run Build" button to the project status page.
* Added script to detect if we are framed/iframed in, as is the case with SFEE integration, to add the cruise stylesheet into those loaded by the parent page.
* Improved styling for test results. Patch by Jim Garacci
* Show the status text (build status file not found) in the navigation if there is no status file, fixes a regression introduced with CC-275. Reported by Al Wick
RSS:
----------------------
* Updated rss.jsp to fix issue introduced by changes to BuildInfo. (CC-372) Patch by Ludovic Maître
* Added a webtest that ensures functional rss.jsp, based on CC-372.
* Set publication date to US locale so that applications can parse the data. (CC-357) Patch by Martin Nyholm Jelle
* udpated main.jsp to fix RSS links in Safari (CC-385). Based on patch from Michael Kloss
TabSheet:
----------------------
* Extend the tabsheet to have more than one row of tabs (CC-247). Patch by Hack Kampbjørn
XSLTag:
----------------------
* Handle absolute path for logdir attribute (CC-341). Patch by Jerome Lacoste.
* Empty cache files left over from a failed transformation are not considered current and are regenerated. Patch by Hack Kampbjørn
* Use XSLT parameters to customize the XSL templates.
* Changed pmd.xsl to by default report all violations on the build results page. Old behaviour is available by setting xslt.pmd.warning.threshold=3 in web.xml
* New XSL template for linking ant's cvstagdiff task's output to ViewCVS. (CC-356) Based on patch from Tony Cook via the Wiki
* Fix a stream leak when looking up resources used in the XSL stylesheet.
* Added a XSLT parameter to hide CheckStyle warnings on the build results page. The default is to show errors and warnings.
CruiseControl Release Notes - 2.3.1
Binary Distribution
----------------------
* Ability to specify the execution directory for CruiseControl via command line option -cchome (CC-310). Patch by Björn Beskow.
* Adds JMX HttpAdapter port as system property for use by the reporting application (CC-310). Patch by Björn Beskow.
* Ability to add a logical name to the CruiseControl instance for use by the reporting application (CC-310). Patch by Björn Beskow.
build.xml
----------------------
* Use test.skip ant property to NOT execute tests (reporting and main). Patch by Jerome Lacoste.
* Split CruiseControl's version information into two components and made easy to override. Patch by Jerome Lacoste.
BuildInfo
----------------------
* Fix for threading issue (CC-330). Patch by Jerome Lacoste.
contrib/distributed:
----------------------
* Major update to distributed build support (CC-298). Patch by Dan Rollo.
CurrentBuildStatusListener
----------------------
* Moved formatting responsibility to the Reporting Application. Patch by Anil Arora, via Jerome Lacoste's moca build.
CruiseControlItem
----------------------
* Sort items by time and then by file name. Patch by Jerome Lacoste
* Fix test failure for people not in Pacific timezone.
cruisecontrol.bat/.sh
----------------------
* Introduce CC_OPTS to easily pass arguments to VM when starting CC. Patch by Arent-Jan Banck.
* Use the right xalan.jar (CC-198). Reported by Carlos Sanchez.
CruiseControlController:
----------------------
* Reload config file if included item is changed (CC-297).
DateUtil
----------------------
* Deprecated millTimeDiffernce in favor of refactored millTimeDifference. Patch by Jerome Lacoste.
Documentation
----------------------
* Enhanced "getting started" section to incorporate Binary Distribution documentation.
* Added overview page and architecture diagram. Patch by Jerome Lacoste
* Use more of the page width (CC-321). Patch by Jerome Lacoste
EmailPublisher
----------------------
* Fix for bug where committers that also appear in <always> elements are emailed twice. Patch by mathieu.champlon@masagroup.net, with cleanup by Jerome Lacoste.
* Add useSsl attribute (CC-277). Patch by Anatol Pomozov, Doc by Jerome Lacoste
FileServlet
----------------------
* Add last-modified header so httpfile source control can be used with reporting app. Patch by Sean Conner <sconner@mercury.com>, tweaked by Jerome Lacoste
* Allow directory browsing to work with containers that append the sessionid to the URI. Patch by Jerome Lacoste
Jar/War
----------------------
* Includes CruiseControl version number in the archive's manifest file.
JMX:
----------------------
* Add ability to get/set the config file via JMX (CC-220). Patch by Allan Wick
* CruiseControl version information included in server MBean. Patch by Jerome Lacoste.
Log
----------------------
* Can preconfigure Log element. Patch by Jerome Lacoste.
MavenBuilder:
----------------------
* Check for required files moved from validation time to "build" time, thereby allowing a bootstrapper to provide the files (CC-25).
* Adds a time attribute to the build node in the build cycle XML log for the maven builder to match ant's behavior and make the UI more consistent accross builders. Patch by Jerome Lacoste, review and fixed by Jamie Bisotti.
MKS
----------------------
* Improve debugging by throwing exception with path if project file isn't found.
NantBuilder
----------------------
* Adds a time attribute to the build node in the build cycle XML log for the maven builder to match ant's behavior and make the UI more consistent accross builders. Patch by Jerome Lacoste.
P4:
----------------------
* Fix problem where test would fail if Perforce was on the path. Patch by Arent-Jan Banck
PluginXMLHelper:
----------------------
* Can pre-configure plugin subelements, too (CC-299). Patch by Jerome Lacoste.
* Support properties in project name, properties element, comments in properties file and properties in comments file. Patch by Jerome Lacoste
* Can pre-configure dateformat. Patch by Jerome Lacoste.
* Don't fail if property is missing, just leave that property reference unchanged. Patch by Jerome Lacoste
release.xml
----------------------
* Ignoring quilt files when creating release. Patch by Jerome Lacoste.
Reporting Application
----------------------
* Reads a system property to determine the JMX Control Panel port, defaulting to 8000 (CC-310). Patch by Björn Beskow.
* Displays a logical name for the CruiseControl instance as set when using the binary distribution (CC-310). Patch by Björn Beskow.
* Clarify installation documentation, specifically around which entries need to be modified (related to CC-264). Patch by Jerome Lacoste.
* XML Log file now sent directly to the browser for rendering, with no more XSLT (CC-294). Patch by Jerome Lacoste.
Surround SCM (SSCM)
----------------------
* Handle modifications with no comment (CC-322). Patch by Jerome Lacoste
Tag Libraries
----------------------
* Ability to override the project directory. Patch by Anil Arora, via Jerome Lacoste's moca build.
* Ability to force the URL of a tab. Needed for (CC-294). Patch by Jerome Lacoste.
TimeBuild:
----------------------
* Fixed problem where an infinite loop could occur based on interaction with quiet period. Patch by Jerome Lacoste
CruiseControl Release Notes - 2.3
release format:
----------------------
* Add binary release that includes Jetty.
build loop
======================
Accurev:
----------------------
* Add Accurev source control and AccurevBootstrapper. Submitted by Jason Chown and Nicola Orru, patched by Jerome Lacoste
AlienBrain:
----------------------
* Add support for AlienBrain SCM. Submitted by Scott Jacobs
* Add AlienBrainBootstrapper. Submitted by Scott Jacobs
AlwaysBuilder:
----------------------
* Fixed builder to not cause an infinite loop when using a quietperiod of greater than 100 seconds. Patch by Lars Gehrken.
AntBuilder:
----------------------
* Added optional anthome attribute. Can be used in lieu of antscript to make config.xml more portable across environments and more intuitive (than antscript) for new CruiseControl users. Thanks to Paul Hammant for the idea.
AntPublisher:
----------------------
* Will now pass the property "thisbuildsuccessful" to the ant script.
contrib:
----------------------
* Add support for distributed building (CC-137). Submitted by Jeff Ramsdale, Patches by Dan Rollo
* Add RpmPackager for creating CruiseControl RPM (CC-154). Submitted by Julian Simpson.
CMSynergy:
----------------------
* Added options reconfigure, ignoreWorkarea, language, and country attributes (CC-179). Patch by Robert J. Smith
* Major overhaul of CMSynergy support (CC-217). Patch by Robert J. Smith
- added CMSynergySessionMonitor listener
- added CMSynergyBaselinePublisher
- added CMSynergyTaskPublisher
- added instance attribute to CMSynergy source control
* Use 'task' instead of 'query' to get modified objects. Patch by Mike Pettypiece
cruisecontrol.sh:
----------------------
* Execute java from JAVA_HOME. Patch by Martin Jaeger.
* Some jars not found (CC-274). Patch by Mykola Nikishov
CruiseControlController:
----------------------
* Reloads the config file if it has changed (CC-74). Contributions by Jerome Lacoste, Tangi Vass, and Jeffrey Fredrick
CurrentBuildStatusBootstrapper/Publisher:
----------------------
* Add javadoc deprecated flag and a warning when they are created to indicate they have been made obsolete by CurrentBuildStatusListener. Patch by Jerome Lacoste.
CurrentBuildStatusFTPListener:
----------------------
* Added ftp version of CurrentBuildStatusListener. Contributed by Jerome Lacoste
CVS:
----------------------
* Add module attribute so it can work with no local working copy (CC-149). Patch by Lars Gehrken
* Updated documentation and class comments to correctly reflect the required attributes after the module change (CC-207). Patch by Mark Doliner
* No longer using environment variable CVS_ROOT. Validation now requires one to either set localworkingcopy or cvsroot and module (CC-207). Patch by Mark Doliner
* Fixed getting cvs version number to avoid the NPE, and automatically use the old format in that case (CC-105). Patch by Jerome Lacoste.
* Fixed wrong timezone for the cvstimestamp property passed to builders. Reported by Peter Buckner
* Support non-branch tags (CC-165). Patch by corporate_gadfly@hotmail.com. Documentation and tests by Jerome Lacoste
CVSBootstrapper:
----------------------
* Add overwriteChanges attribute.
DefaultLabelIncrementer:
----------------------
* Fixed bug when using non-default label separator (CC-155). Patch by Jerome Lacoste
documentation:
----------------------
* Spelling corrections. Patch by Larry Shatzer.
EmailPublisher:
----------------------
* Now accepts <alert> elements to notify users of modifications in files matching a regexp (CC-120). Patch by Eric Spiegelberg
FTPPublisher:
----------------------
* Made setDeleteArtifacts take a boolean argument, instead of parsing a String as a boolean, for consistency with other plugins (CC-158).
This means that you MUST use "true" or "false" now in your config file for deleteArtifacts-attribute, and not "yes" or "no"!
HTMLEmailPublisher:
----------------------
* Now tries to determine the locations for xslDir and css automatically when they're not specified
* HTMLEmailPublisher fails to transform xml (CC-112)
* Set the default XSL filelist to header.xsl and buildresult.xsl like the reporting application.
JabberPublisher:
----------------------
* Altered to reuse a single persistent connection (CC-183). Patch by Jason Vinson
JMX:
----------------------
* Add ability to require username/password for JMX interface (CC-128). Patch by Glenn Brown
* Upgraded to MX4J 3.0.1
JMX Support:
----------------------
* Expose Project's BuildStartTime as JMX attribute (CC-92). Patch by Jerome Lacoste
MavenBuilder:
----------------------
* Require goal attribute. Fixes problem where builder would silently do nothing without one. Patch by Jerome Lacoste
MavenSnapshotDependency:
----------------------
* fix NPE when dependency lacks version tag. Patch by Josh W. Arnold
* MavenSnapshotDependency NPE when no deps listed (CC-248). Patch by Tim Shadel
* add default dependency type of jar (CC-252). Patch by Jerome Lacoste
MKS:
----------------------
* Overhaul of MKS source control. Submitted by Dominik Hirt
* Always use -S option on resync. Patch by Engebakken Geir
OnFailurePublisher & OnSuccessPublisher:
----------------------
* Add new publisher that simply wraps other publishers and invokes them only if the build was successful.
* OnFailure version added (& common ConditionalPublisher extracted) by Robert Smith
OSEnvironment
----------------------
* Fix problem on systems where "env" doesn't return list of '=' separated name/value pairs (CC-166). Patch by Jerome Lacoste
P4:
----------------------
* Use double quote only on Windows, single quote otherwise.
* Migrated to use CommandLine util class for correct execution across environments. Patch by Jason Parrott.
* Fixed parsing logic when file has more than 100 revisions. Patch by David Golombek.
* Add optional Perforce password (CC-208). Patch by J D Glanville
* Add correctForServerTime for when using across timezones. Patch by Patrick Conant
P4Bootstrapper:
----------------------
* Deprecated attributes path, p4Port, p4User, and p4Client in favor
of view, port, user, client to maintain consistency with P4 (SourceControl).
* Migrated to use CommandLine util class for correct execution across environments. Patch by Jason Parrott.
* Add optional Perforce password (CC-208). Patch by J D Glanville
ProjectXMLHelper:
----------------------
* Added support for Ant-style properties in the config file (CC-132). Patch by Robert Smith
PVCS:
----------------------
* use loginId. Patch by Jeremy Whitlock
RSSPublisher:
----------------------
* Submitted by Patrick Conant. Patched by Jerome Lacoste.
Schedule:
----------------------
* Support the 'day' property on multiple builders (CC-289).
SCPPublisher:
----------------------
* No longer remove first char from xml log file path, since it now causes errors. Patch by Dan Penhurst
* Added property to specify the source separator. Patch by Dan Penhurst.
Script & ScriptRunner
----------------------
* Refactor common "Script" logic out of AntBuilder, NantBuilder and MavenBuilder (CC-178). Patch by Eric Pugh
SelfConfiguringPlugin:
----------------------
* Add new SelfConfiguringPlugin interface. Submitted by Jeff Ramsdale
SocketPublisher:
----------------
* Simple publisher that writes "Success" or "Failure" to a socket. Written by Darren Cotteril.
SourceControl:
----------------
* Remove setProperty() and setPropertyOnDelete(). This unifies the handling for sourcecontrols that don't support the attribute. Patch by Jerome Lacoste
StarTeam:
----------------------
* Change default for preloadfileinformation to true (CC-281). Patch by Lee Marlow
StarTeamBootstrapper:
----------------------
* Prevent StarTeam from needing user interaction (CC-189). Patch by Lee Marlow
TimeBuild:
----------------------
* Add new source control that will trigger a build at a specified time. Submitted by Eric Pugh
* Add docs and add to default-plugins.properties. Patch by Jerome Lacoste
* Fix problem with firing at wrong time (CC-227). Patch by Mel Riffe, Patch refreshed by Jerome Lacoste
ValidationHelper:
----------------------
* Create helper class for plugins to use during validation. Submitted by Jerome Lacoste
VSS(Journal):
----------------------
* Create SimpleDateFormats with Locale.US to fix JUnit build failure on Chinese Windows systems (CC-153 & CC-156)
* Fix problem with invalid temp file names (CC-290).
reporting jsp app
======================
BuildInfo:
----------------------
* Added better exception message to make debugging easier (CC-49). Patch by Jerome Lacoste
* Handle files created when using EmptyLabelIncrementor (log20050624104539L.xml)
controlpanel.jsp:
----------------------
* Provide direct link to project jmx page (CC-204). Patch by Tim Shadel
FileServlet:
----------------------
* Automatically return welcome files (index.html, etc) when browsing directory (CC-221). Patch by Jerome Lacoste and Jelmer Kuperus
index.jsp:
----------------------
* Use rounded corners on the right of the page (CC-113). Patch by Mark Doliner
* Add summary line with percentage of passing/failing projects (CC-203). Patch by Tim Shadel
macker.xsl:
----------------------
* Add support for Macker in HTMLEmailPublisher and reporting/JSP app. Patch by Andrew Sadler
navigation.jsp:
----------------------
* Hide navigation drop down when it is empty CC-96. Based on patch by Jerome Lacoste
* Added an RSS feed to the reporting app (CC-117). Patch by Mark Doliner
TabSheetTag:
----------------------
* Make menu always visible (CC-239). Patch by Jerome Lacoste
testdetails.xsl:
----------------------
* Escape '<' and '>' in popup window (CC-22). Patch by Jerome Lacoste
TimeChartData:
----------------------
* Don't fail when two when there are two logs within the same minute.
XSLTag:
----------------------
* Strange characters in testdetails page (CC-167)
CruiseControl Release Notes - 2.2.1
AlwaysBuild:
----------------------
* Configurable username for reported Modification
AntBootstrapper:
----------------------
* Submitted by Robert Smith
AntBuilder:
----------------------
* Changed command to run internal ant to use the -lib switch and only include ant-launcher.jar on the classpath.
This should fix the error where optional tasks couldn't be found by Ant even though they where present on the classpath
* Added useQuiet attribute to call Ant using -quiet, which is mutually exclusive with useDebug
* Corrected documentation for uselogger and usedebug and added docs for usequiet
* Added saveLogDir attribute where a copy of the ant log will be saved. Patch by Jeremy Whitlock
AntBuilderTest:
----------------------
* Removed test for Ant 1.4 logfile containing invalid processing instruction, since it could fail the build with some XML Parsers.
Changed it to test a valid xml log file as produced by Ant versions later than 1.4.x
AntPublisher:
----------------------
* Submitted by Robert Smith
buildresults.xsl:
----------------------
* Added consolidated xsl to make transform more efficent (CC-115). Patch by Alban Peignier with updates by Hack Kampbjorn
BuildStatus:
----------------------
* Modifications reported for BuildStatus will now be clickable and default username will now be "cc-" followed by the project name. Patch by Peter Buckner
compile.xsl:
----------------------
* Add support for subant task. Patch by Yan-Fa Li
contrib:
----------------------
* Added build.xml for XmlLoggerWithStatus, minor change to readme. Patch by Brad Clarke
* CruiseTray: can change properties at runtime, refresh manually and make a config file to store settings. (And new icons!) (CC-140) Patch by Ali Eyertas
* Edit wrapper.template.conf for NtServiceWrapper to add javax.management.builder.initial property
* Added configurationGUI. Contributed by Allan Wick
CMSynergy:
----------------------
* Add support for CM Synergy as a sourcecontrol and bootstrapper. Patch by Robert Smith
cruisecontrol.sh:
----------------------
* Handle path conversion under cygwin. Patch by John Woodward
CurrentBuildStatus*:
----------------------
* Change all the CurrentBuildStatus plug-ins to create the directory if it doesn't exist. (CC-129/CC-133) Patch by Eric Pugh
CVS:
----------------------
* Will now work without a localworkingcopy. Patch by Jeff Ramsdale
CVSBootstrapper:
----------------------
* Add resetStickyTags attribute
documentation
----------------------
* Add gettingsstarted.html. Patch by Joe Schmetzer
errors.xsl:
----------------------
* Added errors.xsl to replace compile.xsl. Similar logic, but shows errors and warnings from all tasks.
FileServlet:
----------------------
* Added missing quotes around href attribute, which caused problems for filenames that contain spaces
FileSystem:
----------------------
* Configurable username for reported Modifications
HTMLEmailPublisher:
----------------------
* Add xslFileList attribute as a mechanism to customize the list of .xsl files used. Patch by Peter Buckner
HttpFile:
----------------------
* Configurable username for reported Modification
JabberPublisher:
----------------------
* Add 1 second sleep so multiple jabber publishers work. (CC-119) Patch by Fleur Kelpin
javadoc.xsl:
----------------------
* Improve formatting of Javadoc warnings. Patch by Dan Penhurst
JDOM support:
----------------------
* Upgraded from version b9 to version 1.0
JMX interface:
----------------------
* Fixed bug where pausing a project would keep all projects from building.
Log(Test):
----------------------
* Small patch (CC-121) for new JDOM version by Mark Doliner
manifest.mf:
----------------------
* Corrected Class-Path to refer to the correct jars (includes CC-99)
modifications.xsl:
----------------------
* Fixed matching wrong template for p4 modifications. Patch by Anil Arora
* Removed call to system-property, since it causes errors with JDK 1.5
ModificationSet:
----------------------
* Fix for possible NPE when using ignoreFiles
NantBuilder:
----------------------
* Submitted by Jeff Ramsdale; nant.xsl by Eric Pugh (CC-136)
navigation.jsp:
----------------------
* New combo box for project selection (including link to status page). Contribution by Gerd Zanker
reporting application:
----------------------
* Moved JSP's, WEB-INF and static content to dedicated subdirectory (CC-95)
* Xsl transformation error handling (CC-16) Patch by Hack Kampbjorn
P4 & P4Bootstrapper:
----------------------
* Quote the path/view so that you can have spaces in project name.
Plugin defaults:
----------------------
* You can now specify extra attributes on the <plugin> elements that will be used as defaults for plugin instances.
You can override each default when you actually use the plugin.
Project:
----------------------
* Catch Throwable during publishing, so errors don't propagate to build()
* Fire BuildResultEvent using log.wasBuildSuccessful() instead of the incorrect 'wasLastBuildSuccessful'. Patch by Michael Beauregard
PVCS:
----------------------
* add versionLabel attribute. Patch by Jeremy Whitlock
Reporting application:
----------------------
* Now supports GZipped logged files with names ending in .gz (CC-139). Patch by Hack Kampbjørn
XSLTag:
----------------------
* now extends CruiseControlTagSupport instead of CruiseControlBodyTagSupport (CC-109). Patch by Mark Doliner
* will now use the optional cacheRoot variable for the location of the cache directory. Patch by Bart Vanhaute
CruiseControl Release Notes - 2.2
Ant:
----------------------
* Upgraded internal Ant to 1.6.2.
All ant jars are packaged, to remain backwards compatible with config files that don't use the antscript attribute.
AntBuilder & MavenBuilder:
----------------------
* When using Windows, "cmd.exe /C" is no longer prepended to the command line to avoid problems with spaces.
This means you'll have to use 'ant.bat' or 'maven.bat' instead of just 'ant' or 'maven'!
* getCommandLineArgs now uses Commandline-class
AntBuilder:
----------------------
* No longer use UTF-8 to read Ant log files, but use default encoding. Patch by Mark Doliner
* Do not use read-ahead to skip broken processing instruction caused by old Ant versions, but use an XmlFilter
so SAXBuilder can build from a File using the right Stream/Reader and encoding. Patch by Hack Kampbjørn
* Setting debug to true now causes only '-debug' to be passed to ant, rather than '-debug -verbose' (which would enable only -verbose, effectively)
* Call org.apache.tools.ant.launch.Launcher instead of Main in absence of the antscript attribute
* Various code cleanups
ArtifactsPublisher
----------------------
* Added publishOnFailure attribute to control the behavior on a failed build. Idea by James Nichols
build.sh
----------------------
* Replaced check for cygwin with uname-based test. Patch by John Woodward
build.xml (jsp)
----------------------
* Reverted to using 'war' as the default target instead of 'test'.
* Removed references to "**/element/" (CC-57). Patch by Jerome Lacoste
* Build products now created only under target & dist (CC-81). Patch by Jerome Lacoste
* Now uses forkmode="perBatch" for junit (available since Ant 1.6.2)
* Default to not including xalan and xerces (CC-5).
build.xml (main)
----------------------
* Build products now created only under target & dist (CC-81). Patch by Jerome Lacoste
BuildQueue
----------------------
* Add support for multiple build threads (ThreadQueue). Patch by Jared Richardson
checkstyle (use in CC build)
----------------------
* Remove header check as per discussion of copyright.
ClearCaseBootstrapper
----------------------
* fixed /dev/nul to /dev/null (CC-76). Patch by Esa Laine
compile.xsl
----------------------
* Support ant-contrib's "compilewithwalls" task. Patch by Paul McLachlan
Contrib
----------------------
* A Windows system tray icon for monitoring a CruiseControl build process. Contributed by Ivan Moore.
* A NTServiceWrapper for running CruiseControl as an NT service. Contributed by Nick Chalko.
* XmlLoggerWithStatus, a replacement for Ant's XmlLogger that updates the build status file while building. Contributed by Igor Semenko.
CruiseControl
----------------------
* Now obeys to Checkstyle 3.4 rules HideUtilityClassConstructor and FinalClass (CC-56). Patch by Jerome Lacoste
* Removed support for -upgrade parameter to update CruiseControl 1.x config files.
CruiseControlControllerAgent
----------------------
* Uses new JMXConnectorServer instead of RmiAdapter because of MX4J upgrade. Patch by Mark Doliner
cruisecontrol-jsp12.tld
----------------------
* Fix id attribute typo for LinkTag. Patch by Gareth Reakes
CurrentBuildStatusBootstrapper & Publisher
----------------------
* Checks parent directory of file exists as part of validation rather than failing later.
CurrentBuildStatusListener
----------------------
* Listens for ProjectStateChangedEvents and the updates a file with the state and timestamp. Makes CurrentBuildStatusBootstrapper & Publisher obsolete.
CVS
----------------------
* Support the new CVS log format (from CVS 1.12.9) See CC-38 & CC-69. Patch by Tarun Reddy & Jerome Lacoste
EmailPublisher & friends
----------------------
* Uses new EmailMapperHelper to map addresses with EmailMappers (CC-2). Patch by Esa Laine
HTMLEmailPublisher
----------------------
* Now uses default logdir "logs/<projectname>" if none is specified (CC-64)
* Don't add <p> tag with single XSL file (CC-68). Patch by Gunnar Wagenknecht
index.jsp
----------------------
* added option to set auto-refresh on or off. Patch by Jerome Lacoste
* added columns for last successful build and last build label (CC-83). Patch by Lee Marlow
(Link)JabberPublisher
----------------------
* Added new JabberPublisher and subclass to report buildresults through Jabber (CC-63). Patch by Jonas Edgeworth
JMX Support
----------------------
* Upgraded to MX4J 2.0.1 (including support for JSR 160)
* Added the possibility to override the build target when forcing a build through the ProjectController MBean.
Listener
----------------------
* new plug-in type "Listener". Listeners registered with a Project will be notified of ProjectEvents.
Log
----------------------
* use directly a Stream instead of wrapping it in a Writer (CC-77). Patch by Hack Kampbjørn
LogTest
----------------------
* make test independent of compile time environment. Patch by Hack Kampbjørn
LoggerController
----------------------
* new JMX MBean to control a Logger's logging level. A controller for the root logger is registered at startup.
Main
----------------------
* Now obeys to Checkstyle 3.4 rules HideUtilityClassConstructor and FinalClass
* Added -debug to startup parameters to use DEBUG Level internally
* Parameters can now have default values when none are specified. This is used for -port (8000) and -rmiport (1099)
* Added note about starting JXM Server to usage and documented the new default values for parameters -port and -rmiport
MavenBuilder
----------------------
* Fix for CC-40 where download failures were treated as success. Patch by Tim Shadel
* Fix for CC-75 to report an error when a MavenException occurs. Patch by Tim Shadel
MavenSnapshotDependency
----------------------
* Add new SourceControl that will query Maven SNAPSHOT to determine if a build should proceed. Submitted by Tim Shadel
MergeLogger
----------------------
* You can now specify a filename pattern for filtering files to be merged (defaults to "*.xml"). Patch by Mark van Holsteijn
Modification
----------------------
* As part of fix for CC-65 (P4 source control not working) we are now using a new xml format for all source controls. Patch by Anil Arora
ModificationSet
----------------------
* You can now specify a list of filename patterns for excluding files from the reported Modifications. Patch by Peter Romianowski
P4
----------------------
* Fix for CC-65, Perforce support not working. Patch by Anil Arora
Project
----------------------
* Reset ProjectState to IDLE in case of an exception while building. Patch by Will Gwaltney
release.xml
----------------------
* Build and include binaries as part of release process.
SSCM & SSCMBootstrapper
----------------------
* New SourceControl and Bootstrapper for Surround SCM-support. Contribution by Matt Harp
SnapshotCM & SnapshotCMBootstrapper
-----------------------------------
* New SourceControl and Bootstrapper for SnapshotCM-support. Contribution by Patrick Conant
testdetails.xsl
----------------------
* patch for JS-escape template so whole string is escaped and line feeds are dealt with properly. Patch by Han Wang and Roy O. Wright
unittests.xsl
----------------------
* have failures and errors displayed in different colors. Patch by Mark Doliner
Upgrader
----------------------
* Removed this class, since noone needs support for upgrading 1.x config files anymore
X10Publisher
----------------------
* A new publisher to controlling an X10 electronic device based on the build completion status, i.e. turn a light on when the build breaks and then turn it off when the build is successful.
XSLTLogPublisher
----------------------
* use a JDOMSource instead of a StreamSource, use Stream instead of Reader. Patch by Hack Kampbjørn
website / documentation
----------------------
* Rework navigation for feedback, completeness and consistency. Convert navigation from images to text. Convert to semantic markup. Address inconsistency of configxml.html. Patch by Joe Schmetzer
* More documentation enhancements contributed by Joe Schmetzer. For more details, see http://sourceforge.net/mailarchive/forum.php?thread_id=5363380&forum_id=2202
* Expanded and clearer documentation for <cvs> contributed by Joe Schmetzer.
* An important note about multiple build loop required and some missing description for the jabber protocol contributed by Jerome Lacoste.
* Included readme.txt in lib-dirs with references to web sites and licenses (documented by Hack Kampbjørn)
CruiseControl Release Notes - 2.1.6
AlwaysBuild
----------------------
* New SourceControl that always returns a modification. Submitted by Eric Pugh
AntBuilder
----------------------
* Added more infomative exception when log file doesn't contain a build tag. Patch by Dave Glowacki
* Added check to ensure that log file exists before trying to get contents.
* Fixed getCommandLineArgs to handle EmptyLabelIncrementer
* Added timeout attribute. Patch by Igor Fedorenko
* Added two XMLFilters to remove empty <message>- and <task>-elements from the XML log file in getAntLogAsElement.
BuildInfoTag
----------------------
* Added a tag to obtain summary and metric data about builds from the log
files. This is used in the metris.jsp page.
ClearCase
----------------------
* use ISO-8859-1 enoding while parsing ClearCase outpout. Patch by Arent-Jan Banck
compile.xsl
----------------------
* Ignore empty lines. Patch by Brad Clarke (note: this is now obsolete for new logfiles but still useful for old ones)
Compound
----------------------
* New SourceControl implementation uses nested Trigger and Target sourcecontrols. The targets are only checked for changes if there is a change detected by a trigger. Submitted by Will Gwaltney
cruisecontrol.sh
----------------------
* Support relative sym links. Patch by Jerome Lacoste
CVS
----------------------
* Fixed a bug with not returning modfications when the tag attribute is used.
controlpanel.jsp
----------------------
* Replace link with iframe showing JMX interface. Patch by Archibald Bartleman
CruiseControlController
----------------------
* On a new project (no serialized project found) force a build. This is to aid setting up CruiseControl as you will not need to wait for a modification.
* Now parses plugin definitions defined directly under the <cruisecontrol> root-element in the config file.
These are defined for all projects, but can still be overridden per project.
distributables.xsl
----------------------
* Added info for the ejbjar and ear tasks. Patch by Joris Kuipers
EmailPublisher
----------------------
* Send build notification emails to all valid recipients and not to fail build even if some of the email addresses were rejected by SMTP rely. Patch Igor Fredorenko
FileServlet
----------------------
* write(stream) now uses buffered IO. Patch by Garrick Olson
FileSystem
----------------------
* check to see that specified folder exists. Patch by Eric Pugh
HTMLEmailBuilder
----------------------
* Delete temp files after they've been used. Patch by Joris Kuipers
HttpFile
----------------------
* New sourcecontrol that reports changes if a web page has been changed. Patch by Brad Clarke
index.jsp
----------------------
* Sort projects. Patch by Brad Clarke
JDOM support
----------------------
* Upgraded from version b7 to version b9
jmx
----------------------
* Now using MX4J instead of Sun's reference implementation. Patch by Michael Kloss
* Added RMI adapter. Patch by Michael Beauregard
Main
----------------------
* Display command-line options if "-?" is passed as an argument.
main.jsp
----------------------
* Added a metrics tab.
MergeLogger
----------------------
* Use XMLFilter to remove properties from JUnit results. This fixes removal for JUnit reports and uses less resources.
metrics.jsp
----------------------
* New Metrics tab. This uses the new <buildinfo> tag, and renders charts using
the cewolf tag libraries.
ModificationSet
----------------------
* Fixed bogus "A modification was detected in the future" message
* Now properly checks time of modficiations that are added as elements
NavigationTag
----------------------
* Dates for navigation links now formatted according to the locale of the user's browser.a
P4
----------------------
* Close Process-streams in collectChangelistSinceLastBuild to avoid "too many open files"-errors
PluginRegistry
----------------------
* getDefaultPluginRegistry() now reads default plugins from a properties-file.
* Changed the implementation to have one root registry which contains the default plugins plus plugins defined as root elements in the config file.
Each project will receive its own registry which delegates to its parent registry (the root) if it doesn't have its own definition for a plugin.
PluginXMLHelper
----------------------
* add support for nested elements via add(<Type>)
Project
----------------------
* Now fires BuildProgressEvents and BuildResultEvents. Patch by Michael Beauregard
* Includes a cvs friendly timestamp in the properties sent to Ant named cvstimestamp. Patch by Brad Clarke
* Include lastbuildsuccessful in properties sent to builders
* Checks for accidental rescheduling for Projects that run within a minute
PVCS
----------------------
* Added loginId attribute. Patch by David Cole
* Added back up date format to try in case output date includes seconds. Patch by David Cole
* Added additional parsing when project files includes project path. Patch by David Cole
StatusHelper
----------------------
* Build dates now formatted according to the locale of the user's browser.a
SVN
----------------------
* Revert to using date instead of guessing at revision. Patch by Etienne Studer
* Add to plugin registry. Patch by Gerd Zanker
* Add initial documentation in configxml.html and plugins.html. Patch by Gerd Zanker
* Updated method declarations for JDOM b9-compliancy
testdetails.xsl
----------------------
* Support testsuite elements that have been nested, such as in the output from junitreport. Patch by Joris Kuipers
VssBootstrapper
----------------------
* Fixed a bug where bootstrapper would hang if SS.exe put up a prompt.
web.xml
----------------------
* Added a welcome-file-list containing index.jsp; necessary for WebSphere (and maybe other appservers)
XSLTag.java
----------------------
* Changed serveCachedCopy to use Reader and char-array instead of InputStream and reading/writing char-by-char. Patch by Thai Ha
CruiseControl Release Notes - 2.1.5
ArtifactsPublisher
----------------------
* Add attribute 'subdirectory'. Patch by Garrick Olson
* Change copying of individual files to no longer use the path to the file before copying as part of the path after copying. Patch by Garrick Olson
BuildLogger
----------------------
* New interface to handle the Log subelements from the CruiseControl config. Implementers have the opportunity to manipulate the CruiseControl build log just before it gets written to disk.
BuildStatus
----------------------
* New SourceControl implementation. Used to trigger a build when another CruiseControl project has a successfuil build. Works by monitoring the log directory for the "target" project. - Patch by Garrick Olson
build.xml (jsp)
----------------------
* will build war w/out jars in WEB-INF/lib if property jdk1.4 is defined.
* removed files from war that shouldn't be included. Patch by Matt Albrecht
ClearCaseBootstrapper
----------------------
* Added ClearCaseBootstrapper to plug-in registry under the name "clearcasebootstrapper". - Patch by Esa Laine
ClearCase Sourcecontrol
----------------------
* Fixed bug with ClearCase version 2002.05.00 that hindered sending email. Patch by Ian Colledge and Esa Laine
* Fixed bug where comments with ~ or # were causing modifications to be lost
CruiseControlController
----------------------
* don't try and deserialize directories that have the same name as the project. Fix by Paul Spencer
CruiseControlTagSupport
----------------------
* minor change for compatibility with jdk 1.3 - Patch by Thai Thanh Ha
CVS
----------------------
* check for changes between lastBuild and checkTime, instead of all changes since lastBuild. Patch by Patrick Lisser
* use -N parameter to get added and removed files. Patch by Patrick Lisser
DefaultLabelIncrementer
----------------------
* added ability to set a default label - Patch by Garrick Olson
Email Publishers (LinkEmailPublisher and HTMLEmailPublisher)
----------------------
* failure subelements now contain an optional attribute "reportWhenFixed" to specify if the email address should be sent mail when the build is fixed.
* added emailaddressmapper attribute. Patch by Esa Laine
FileServlet
----------------------
* Use text/plain as default mime type instead of null. Fixes hang with Mozillia. Patch by Spencer Smith
FileSystem Sourcecontrol
----------------------
* Fixed bug where FS was reporting the wrong path for modifications. Patch by Randy Coulman.
FTP support
----------------------
* Added CurrentBuildStatusFTPBootstrapper and CurrentBuildStatusFTPPublisher. Submitted by Matt Albrecht
* Also added an FTPPublisher. (Submitted by Matt Albrecht)
index.jsp
----------------------
* Table of projects with status from last build. Adapted from a patch by Jared Richardson
JDOM support
----------------------
* Updated signatures for compatibility with JDOM beta-9. Patch by Alban Peignier
* Fix to ConcurrentModificationException in Updater when using JDOM beta-9. Patch by Matt Albrecht
JMX Interface
----------------------
* Added a halt operation on the CruiseControl process JMX interface. Patch from Matt Albrecht
* Renamed start operation to resume.
* Renamed stop operation to pause.
logfile.xsl
----------------------
* Changed the logfile.xsl to have an output method (some Xalan versions gave an error on this). Patch from Matt Albrecht
main.jsp & navigation.jsp
----------------------
* Fix for compatability with Tomcat 5.0. Patch from Robert Pearse
* Include sub-jsps instead of having all the content in main.jsp
MergeLogger
----------------------
* Added flag to control if properties are removed from JUnit results. Formerly they were always removed to reduce the size of the log file.
Modification Set
----------------------
* Changed to instruct CC to do a build if a modification occurs in the future. Patch by Geoff Krapf
* Calculate time to sleep when a modification is detected during the quiet period to be from "now" instead of when the check started. Patch by Patrick Lisser
Project
----------------------
* add descriptive toString so JMX view of CruiseControlManager shows status for each project - Patch by Matt Albrecht
* fixed to allow changing build interval from JMX interface. Project was reloading the original value from Schedule, overwriting any change a user had made in the JMX interface.
* Last Build and Last Good Build are now passed to the builders (cclastbuildtimestamp and cclastgoodbuildtimestamp respectively)
SametimeAnnouncementPublisher
----------------------
* New publisher implementation to publish build results to IBM/Lotus Sametime server. Contributed by Richard Lewis-Shell.
Schedule
----------------------
* Fixed a bug when there was more than a day between builds (like having only a weekly build).
StarTeam
----------------------
* remove use of NoExitSecurityManager. Makes StarTeam source control compatible with Halt command. Patch by Lee Marlow
StarTeamBootstrapper
----------------------
* added to plug-in registry. Patch by Lee Marlow
SVN
----------------------
* fix to use execute on Commandline object instead of just using getCommandline() - Patch by Etienne Studer
* updated to use new date format (Subversion 0.37 and later) Patch by Garrick Olson
* find and use correct head revision instead of always using "HEAD". Patch by Garrick Olson
TabSheetTag
----------------------
* changed to not use images for tabs. should make it easier to add new tabs.
XSLTLogPublisher
----------------------
* New publisher implementation to publish build results to an arbitrary output file. Obvious use is to generate web pages from the log, but could be another format as well. Contributed by David Cole
CruiseControl Release Notes - 2.1.4
AntBuilder
----------------------
* Added loggerClassName attribute to allow alternative ant listener/logger - Patch by Patrick Lisser
ArtifactsPublisher
----------------------
* Fixed a bug where a non-existant directory would result in a non-CruiseControl exception.
build.xml
----------------------
* Constrain checkstyle to only run against cruisecontrol code; ignore other packages.
* Build webapp by explicitly calling war target. No longer default target.
* Can now override deploy.dir property to control where cruisecontrol.war ends up - Patch by Patrick Lisser
HTMLEmailPublisher
----------------------
* xslFileNames now encapsulated to allow for easier overriding - Patch by Patrick Lisser
* Added checkstyle.xsl - Patch by Dan Rollo
index.jsp
----------------------
* Added missing closing tag for unordered list - Patch by Esa Laine
main.jsp
----------------------
* Added missing call to maven.xsl.
ModificationSet
----------------------
* Added requiremodification attribute. Useful for building even when no modifications are found.
Project
----------------------
* Fixed a bug where value of buildForced was not being reset if modifications were found.
* Changed publish(Element) so an exception in one publisher will no longer prevent others from being called.
Schedule
----------------------
* Fixed a bug where checkPauseBuilders would not return a value larger than one day.
* Fixed a bug where chained pauses where not respected, with builds happening after the end of the first pause and during the second.
* Changed schedule to ignore the value of interval when there are only time based builds. This should get rid of most of the "No Builder selected" messages.
* Fixed a bug where no builder was selected on a forced build if all the builders were time based.
* Fixed a bug where time builders set for midnight would build later in the day
* Fixed a bug where a schedule with only time builds would not select a builder on a forced build if the next scheduled build time was during a pause.
Subversion
----------------------
* Added Subversion and SubversionBootstrapper - Submitted by Etienne Studer
unittests.xsl
----------------------
* Now includes testsuite errors in total - Patch by Patrick Lisser
Vss
----------------------
* Fixed a bug where a label in a root directory was showing up as a modification.
CruiseControl Release Notes - 2.1.3
log4j.properties
----------------------
* Fixed bug where the month was being used in place of minutes.
* Now using abbreviation of month name rather than month number.
MavenBuilderTest
----------------------
* Fixed bug trying to chmod test file on unix. - Patch by Andy Nguyen
unittests.xsl & testdetails.xsl
----------------------
* Will now work with merged junitreport xml output in addition to individual xml result files. - Fixed by Jason Yip
CruiseControl Release Notes - 2.1.2
AntBuilder
----------------------
* Fixed a bug in isWindows() that was returning false negatives. This would prevent antScript from working on some Windows systems.
ArtifactsPublisher
----------------------
* Added to the default plugin registrya
build.sh
----------------------
* Fixed problem with eol characters preventing files from executing on unix systems
build.xml
----------------------
* Added ability to specify tests to run from command-line, such as "build test -Dtests=ProjectTest" - Patch by Michael Beauregard
CVSBootstrapper
----------------------
* Add -dP to update command
EmailPublisher
----------------------
* Added nested success element - Patch by Marco Faini
* Added failAsImportant attribute - Patch by Ian MacDonald
FileServlet
----------------------
* Fixed a bug, brower displaying html source code, by adding the mime-type to the response.
HtmlEmailPublisher
----------------------
* Fixed a bug where username & password were ignored
JMX
----------------------
* Now exposing Project status (read-only) in the jmx interface
log4j.properties
----------------------
* Added more information into the console log including the timestamp - Patch by Mark Richters
* Added a rotating file log - Patch by Mark Richters
Project
----------------------
* Fixed a bug causing NPE when using a serialized project file from releases prior to 2.1
* Added labelIncrementer classname to message when isValidLabel fails - Patch by Richard Lewis-Shell
ProjectXMLHelper
----------------------
* Fixed a bug where if the log element existed dir was a required attribute
Schedule
----------------------
* Set maximum value for interval to one year
StarTeam
----------------------
* Fixed a bug where an NPE was thrown when a user account no longer existed - Patch by kathyh@syntricity.com
StarTeamBootstrapper
----------------------
* StarTeamBootstrapper submitted by Lee Marlow
testdetails.xsl
----------------------
* Added testdetails.xsl to generate content for the Test Details tab - Patch by Antoine Bonavita
CruiseControl Release Notes - 2.1.1
main/build.xml
----------------------
* update version to 2.1
reporting/jsp/build.xml
----------------------
* Filter token for build artifacts was missing - Fixed by Jason Yip
cruisecontrol-jsp12.tld
----------------------
* Fixed closing tag-class, tei-class and body-content tags for ArtifactsLinkTag. - Found by Dan Rollo
Project
----------------------
* Fixed bug where a paused build would never resume.
unittests.xsl
----------------------
* Added classname for the failing unit test - Patch by Prakash Tirumalareddy
CruiseControl Release Notes - 2.1
ArtifactsPublisher
----------------------
* New functionality to allow for creation of a "build artifacts" directory. This directory can have artifacts published to it - things like jars that were built, documents that were published, etc. Then, these artifacts can be linked to from the CC webapp. - Submitted by Mike Rettig
AntBuilder
---------------------
* Added antWorkingDir attribute. - Patch by Brett Wooldridge
* Added support for multiple targets. (target="clean build") - Patch by Josh Knowles
* Added useDebug attribute. This replaces test of log4j setting to get debug level ant output. - Patch by Jeffrey Fredrick
* Save ant log if it can't be read. Handles case when ant log produces invalid XML. - Patch by Richard Burgess
* 'target' attribute optional; will run default target in build.xml
* 'buildfile' attribute options; defaults to build.xml
Builder (includes AntBuilder)
----------------------
* if 'multiple' and 'time' are unspecified will default to multiple="1"
buildresults.jsp
----------------------
* The list of builds is now limited to 10 hard links, with the rest being done via a drop-down list.
ClearCaseBootstrapper
----------------------
* ClearCaseBootstrapper - by Stefan Hedtfeld
CVS
---------------------
* CVS sets the revision number when building lists of Modifications for showing diffs in ViewCVS or cvsWeb - Patch contributed by Christopher Lenz.
* Bug fixes to make mapping email addresses from CVSROOT/users work - Patch by Jeffrey Fredrick
CVSBootstrapper
----------------------
* Added LocalWorkingCopy attribute - Patch by Jon Langlois
* Now supports updating directories, not just single files
DefaultLabelIncrementer & CVSLabelIncrementer
----------------------
* Added preBuildIncrementer attribute. - Patch by Brett Wooldridge
* Added separator attribute to DefaultLabelIncrementer. CVSLabelIncrementor is just the default with separator="-". - Patch by Jeffrey Fredrick
EmptyLabelIncrementer
----------------------
* Added EmptyLabelIncrementer - Submission by Josh Knowles
HTMLEmailPublisher
----------------------
* Added charset attribute.
JMX interface
----------------------
* Added support for multiple projects in one instance of CruiseControl
* Added ability to serialize the project via JMX, allowing the JMX interface to act as a serialized project editor. - Patch by Richard Lewis-Shell
LabelIncrementer
----------------------
* Added getDefaultLabel()
Main
----------------------
* Use current time if lastbuildtime isn't specified - Patch by Josh Knowles
MavenBuilder
---------------------
* New builder implementation, like AntBuilder but for Maven - by Florin Vancea.
ModificationSet
---------------------
* quietPeriod now optional; default value is 60 (one minutes)
* will complain if there isn't at least one nested sourcecontrol element
Multiple Classes
---------------------
* Added support to run multiple projects in one instance of CruiseControl. Each project is on its own schedule and only one project will build at a time. Multiple project supported in JMX and web reporting interfaces.
NavigationTag
----------------------
* Fixed bug to allow "L" in build label - Patch by Christopher Lenz
* Added "startingBuildNumber" and "finalBuildNumber" attributes, to allow for ranges of builds to be output; useful for, say, creating a drop-down list after the first 10 links.
* Now outputs the log file as a "logfile" variable.
Project
----------------------
* Project will create log directory if it doesn't exist. - Patch by Mark Richters
* Serialized file now uses .ser extension
* Will now get a default label from the LabelIncrementer if it doesn't already have one.
ProjectXMLHelper
----------------------
* ModificationSet is now pluggable. Defaults to the standard modification set, but a different implementation could be specified in your config.xml, so long as it extends ModificationSet. Thanks to Mike Royal, via Mike Mason.
* 'pause' and 'maven' are now registered by default
* Schedule is now pluggable.
* bootstrapper, log, and publishers are no longer required elements.
* can now set attributes on labelIncrementers (as opposed to just registering them). - Patch by Jeffrey Fredrick
PVCS
----------------------
* Fixed bug with UNC share paths - Patch by Dan Rollo
* Added pvcsbin attribute for when pvcs is not on the path - Patch by Dan Rollo
Schedule
----------------------
* Fixed a bug where a time builder wouldn't run if the time of the last build on the previous day was later than the time of the time builder. - Patch by Jeffrey Fredrick
* Fixed a bug where a time builder wouldn't run if the time was set to midnight. - Patch by Richard Lewis-Shell
* 'interval' now optional; defaults to 300 (five minutes)
* will complain if there isn't at least one nested builder element
StreamPumper & StreamConsumer
---------------------
* StreamConsumer implementations may now be registered with StreamPumpers to notified for each line "pumped".
VSS
----------------------
* Fixed issues with label entries, files added or deleted in root directory, branching, and sharing. - Patch by Matt Stave
XSLTag
----------------------
* Fixed a bug where using an unexpanded WAR file caused a NullPointerException.
* Added "xslRootContext" property, so that nested stylesheets know where the default directory is.
CruiseControl Release Notes - 2.0.2
JMX/PROJECT CONTROLLER
----------------------
* Added ability to force a rebuild via ProjectController (and effectivly JMX) Patch by Dominick Bellizzi. An implementation note. If project is in state "PAUSED" it won't force the build until you command "RESUME", but then it will emediatly start building.
PROJECT
----------------------
* Added ability to choose whether CruiseControl should continue to build after failure. Set in config via <project buildafterfailed="true/false">. Default is current behaviour, which is true. Patch by Dominick Bellizzi
JSP
----------------------
* XSL modified to render compile errors/warnings correctly on Netscape 4.7 - Patch by Sanjay Madhaven
EmailPublisher
----------------------
* Allow optional subject line prefix on emails for easier filtering - Patch by Peter Mei
* Added 'skipUsers' attribute to skip sending email to users who have checked in code - Patch by Jeffrey Fredrick
* Added optional 'returnName' attribute that pairs w/fromAddress - Patch by Gunnar Wagenknecht
Manifest
----------------------
* Added missing ant.jar, optional.jar, and xalan.jar manifest classpath entries - Bug found by Brett Watson
Ant
----------------------
* Ability to choose whether Ant runs XmlLogger as a Logger or a Listener - Patch by Keith Levy
P4
----------------------
* Correctly parse P4 changelist descriptions. Patch by Mike Roberts. Test by Tim Jones.
VSS
----------------------
* Fix parsing when label is in the entry. Patches by Jeffrey Fredrick.
* Improved logging messages. Patch by Jeffrey Fredrick.
* Fix so that timeFormat is used. Patch by hammett
ClearCase
----------------------
* Pass properties ${clearcaselastbuild} and ${clearcasenow} to Ant for use by clearcase Ant tasks - Patch by Jeffrey Fredrick
* Fixed exception that occured with sym. links - Patch by Gunnar Wagenknecht
HTMLEmailPublisher
----------------------
* Added to the default plugin registry as <htmlemail> - Patch by Alden Almagro.
* buildServletUrl no longer required parameter (no link if omited). - Patch by Jeffrey Fredrick
CVS & MKS
----------------------
* Fixed bug where parsing would stop if input stream wasn't ready. - Patch by Steven Vernon
CruiseControl Release Notes - 2.0.1
PVCS
----------------------
* Configurable date formats - Patch by Kalpesh Parmar
* Modification type support - Patch by Steven E. Newton
XMLLogHelper
----------------------
* Make sure that Perforce emails are parsed correctly
ClearCase
----------------------
* Tests pass on Solaris - Patch by Alden Almagro
CVS
----------------------
* Correct modifications when HEAD is specified as the branch - Patch by McClain Looney
* No more 'deleted' modifications when a file addition occurs on a branch - Patch by McClain Looney
EmailPublisher
----------------------
* Allow mail port to be set - Patch by Neale Swinnerton
Project
----------------------
* XML encoding is only used if explicitly specified in <log> - Patch by Alden Almagro
New Publishers
----------------------
* Execute Publisher - Patch by Oren Miller
* SCPPublisher - Patch by Oren Miller
lib
----------------------
* Upgraded to Ant 1.5.1
docs
----------------------
* Fixed broken links
JSP
----------------------
* Fixed 'null' navigation bug - Patch by Sanjay Madhaven
* Allow configuration via ServletContext or ServletConfig - Patch by Ed Howe
See more files for this project here