new in Pulse 2.7
The latest release of Pulse, version 2.7, is now available! Pulse 2.7 contains a raft of new features, optimisations and compatibility updates. A summary of the most notable changes can be found below.
agent storage management
New agent storage management options make it easier to manage agent pools and avoid spurious build failures. Available disk space is now reported as part of agent status. Administrators can choose to enable a threshold to prevent builds from running on agents with low disk space.
An agent cleanup action has also been added giving administrators a one-click solution to free up space on constrained agents.
configuration performance improvements
Optimisation work on the configuration system has continued in this release. Recent tuning should make configuration changes much snappier for many large installations, particularly those with many custom projects (projects configured with XML in the web UI).
log performance improvements
Another area under the performance microscope is live output logging. Some builds produce a lot of output, and in earlier Pulse versions the handling of this data was inefficient in both time and space. We've fine-tuned this code to reduce both the memory footprint and CPU overhead of processing build output.
In extreme cases users can choose to omit live logging for specific projects, but this should rarely be required.
xcode command updates
Pulse has included support for Xcode since very early versions, predating the iOS SDK. This support had become somewhat dated by the rapid iteration of Xcode and related tools in recent years. Thus we've refreshed the Xcode command to include explicit support for workspaces and schemes, and improved the default feature detection in the related post-processor.
These changes include a new clang output post-processor plugin which can also be used independently of Xcode if desired.
xctest report post-processor
Related to the above, we've also introduced a new post-processor plugin for XCTest, the new default test framework in Xcode. Up until Xcode 6 the output of XCTest was compatible with the old OCUnit framework, making a new plugin unnecessary. Now the formats have diverged we've created an independent post-processor specifically for the new framework.
manual trigger improvements
Pulse 2.6 introduced a new "manual" trigger type, and in 2.7 we've continued to refine it. For example, it is now possible to manually fire other trigger types such as cron and SCM triggers. This is useful for one-off testing using the configuration of those triggers. Build reasons now also report the name of the trigger in the manual firing case.
new service support
Support for running as a service has improved on all platforms. On Windows we now use Apache Commons Daemon which supports 64-bit JVMs and includes a simple management UI. On Linux we've added integration options for both systemd and upstart. See the new Running As A Service page for details.
- scm updates: for Subversion 1.8 and git 2.x, plus improved partial clone support.
- improved dependency revision handling: for dependencies that span multiple SCMs.
- post-build hooks on agents: optionally run these hooks on an agent used in the build.
- convenient cancel links: queued/running builds can be cancelled from more screens.
- large custom properties: large properties are shown in a text area for easier editing.
- checkout to subdirectory: a new option for bootstrapping.
Dozens more small features, enhancements, and fixes make 2.7 a compelling upgrade. Check the full release notes for more details!
try it out
You can download and try Pulse 2.7 free today. Be sure to let us know how you go: we love feedback!