XMT (XStream Migration Tool) is a library to migrate XStream serialized XML when the associated Java class evolves. XStream is a popular library to serialize a Java object to XML and back again, and XMT enables a smooth migration of this XML with the help of dom4j when you change the class definition of the Java object.
QuickBuild 1.0.1 - Build automation and management server
PMEase announces the release of QuickBuild 1.0, the professional version of the open source build server, Luntbuild. Besides being a decent build automation and continuous integration server, it puts extra emphasis on build management. Some feature highlights:
1. Powerful but easy to use interface. QuickBuild's web interface has been greatly improved compared to Luntbuild. You are able to control behavior of QuickBuild through OGNL expression. Typical OGNL expressions are predefined, and you only need to choose proper expression from a context sensitive menu.
2. Builds are set up through configurations which are organized hierarchically. Child configurations are able to inherit settings from parent, and can selectively override some of them. This way, large number of build configurations can be managed very easily. For example, you define a department configuration holding common objects accross the department, and create project configurations under that department node. For each project, you can define different branches, and for each branch, you can continue to define nightly, continuous integration, or release configurations.
3. True build promotions. Not just moving builds between different categories. With this feature, builds flow across different parties in your team without extra management effort. For instance, you can promote a tested QA build into release configuration. Promoted build will automatically take next release number, and the promotion process will label the version control system with that release number also.
4. Powerful remote and multi-platform build ability. You are able to set up your build configuration so that it can utilize CPU cycle of several build machines to speed up the build process, or you can set up build on different platforms and collect them into master build machine to form one package. You need not to worry about copying files between different machines, by declaring proper artifacts dependency, QuickBuild will copy them for you.
5. Powerful build dependency handling. You are able to make a project depends on other projects even they are in different machines. As a result of dependency resolving, build orders of dependent projects are determined, and artifacts are copied bwteen different projects (even between different machines) to satisfy the dependency.
6. Seamlessly integration with Maven. Build versions managed in QuickBuild are able to be fed into Maven, and artifacts published to Maven repository are accessible from QuickBuild's web interface.
7. Fully customizable build process gives the flexibility to define your own build steps, and determine their order and concurrence.
8. Rich set of REST API allows you operate on almost every type of object in QuickBuild programmatically. Through this API, it is possible to integrate QuickBuild with other applications in your organization.