Apache Buildr
Apache Buildr is a build system for Java-based applications, including support for Scala, Groovy and a growing number of JVM languages and tools.
We wanted something that's simple and intuitive to use, so we only need to tell it what to do, and it takes care of the rest. But also something we can easily extend for those one-off tasks, with a language that's a joy to use.
Ruby
* Fixed: Changed references to `https://repo1.maven.org/maven2` to use https where possible. * Change: Use the `zapwhite` gem to manage file whitespace within repository. * Fixed: Replace references to long removed `http://www.ibiblio.org/maven2/` repository with `https://repo1.maven.org/maven2`. * Fixed: Ensure pom files used in tests use https when referring to maven repositories. * Added: Add support for downloading external annotations and attaching them to IntelliJ IDEA module dependencies. * Added: Detect external annotations in the local project and add them to the generated IntelliJ IDEA module when generating. The default location is `src/main/annotations` but other locations can be specified by modifying the `project.iml.annotation_paths` property. * Fixed: Explicitly specify the `:sourcepath` parameter for javadoc tool. This enables additional parameters such as `-packagenames` and `-subpackages` to be passed to the underling tool. * Fixed: Stop generating poms with the parent POM `org.sonatype.oss:oss-parent:8`. The las update was a long time ago (i.e. 2012) and it is no longer maintained. It was also deprecated several years ago and is not guaranteed to work in modern Maven deployments.
* Fixed: The fix that allowed special characters in usernames and passwords was only partially applied in the `1.5.6` release. The complete fix that correctly decoded usernames and passwords before passing them to HTTP library is now been applied. * Change: GWT Addon: Added support for `:skip_merge_gwt_dependencies` parameter that makes it possible to avoid adding GWT dependencies to the project directly and thus the associated POM. This will be required to support GWT3.x and GWT2.x simultaneously as well as making it easier to manage dependencies in the POMs. * Change: Javadoc: If the user does not supply an explicit `:sourcepath` to the doc/javadoc tool then default the value to `project.compile.sources`. This will stop javadoc from scanning the classpath for `*.java` files which can cause issues with projects that include `sources` classifier artifacts on the classpath. This is particularly relevant for GWT based projects that include artifacts with source embedded in the artifacts. This change also made it possible to remove an ugly hack in the GWT addon that removed the gwt artifacts from the javadoc path. * Change: Drop deprecated Gem::Specification#has_rdoc= (no replacement) method. Submitted by Olle Jonsson. * Change: Use https protocol to access Gem metadata. Submitted by Olle Jonsson. * Change: Change RSpec shared_context usage to avoid warnings. Submitted by Olle Jonsson. * Change: Migrated source control to Apache GitBox which supports using either GitHub or GitBox as the master repository.
* Fixed: Ensure that the username and passwords declared for repositories are correctly url encoded for the upload repositories when converted to a URL. (i.e. Ensure `Buildr.repositories.release_to` and `Buildr.repositories.snapshot_to` settings can have usernames and passwords with special characters). * Added: Add support for allowing some dependencies to include transitive dependencies via the `pom.include_transitive_dependencies` configuration setting. * Added: Add support for adding dependencies to the pom via the `pom.additional_dependencies` configuration setting. These dependencies are `compile` scope and are in addition to any derived from the normal compile dependencies. * Fixed: GWT Addon: Use version `1.0.2` of the `com.google.jsinterop:jsinterop-annotations:jar` artifact when using GWT 2.8.2 to align with version shipped with GWT. * Fixed: Dependencies added as `pom.provided_dependencies` or `pom.runtime_dependencies` and not included as compile dependencies were incorrectly omitted from pom. * Fixed: Dependencies added as `pom.provided_dependencies` and `pom.runtime_dependencies` were being incorrectly duplicated within the pom dependencies section. Now provided dependency scope takes precedence over runtime scoped dependency. * Fixed: Dependencies added to POMs will specify the classifier unless it is the default value. * Added: Add the `project.pom.dependency_filter` configuration property that can be set to a proc. The proc accepts a dependency and returns a boolean that determines whether the dependency is included in the generated pom or not. * Fixed: POMs generated by Buildr use the parent pom `org.sonatype.oss:oss-parent:pom:7` but this generates a warning in the latest version of Maven. Modern versions of Maven would thus ignore transitive dependencies declared in the pom. The parent pom has now been upgraded to `org.sonatype.oss:oss-parent:pom:8` which will result in modern Maven correctly picking up transitive dependencies. * Change: JaCoCo Addon: Update JaCoCo version to 0.8.0 which in turns supports Java9. * Added: GWT Addon: Added support for `:gwtc_args` parameter to supply arbitrary parameters to the GWT compiler. * Added: Add support for sha512 digests to be generated for files during the upload. This is typically configured by adding `sha512` to the list of digests via a line such as: `repositories.release_to[:options] = {:digests => [:md5, :sha1, :sha512]}` * Fixed: The default upload tasks would often get a ReadTimeout when uploading using http to a remote server that did not have `KeepAlive` socket option enabled and the upload took more than 60 seconds (the default socket read timeout). Some commercial maven repositories could trigger this scenario during upload of even modest size artifacts. Default the read_timeout to 10 minutes when during upload to work address this issue.
* Fixed: The concatenation extension released as part of 1.5.4 changed the way zip archives were constructed so that entries for some intermediate directories were elided. For most consumers of zip files this had no impact but some tools require the entries during scanning. (i.e. Older versions of Jruby that loaded ruby scripts from within a jar). * Added: IDEA Extension: Added support for passing `:iml_name` parameter to `ipr.add_gwt_configuration`
* Added: Findbugs Addon: Upgrade to version 3.0.1 of findbugs. * Added: GPG Addon: Add boolean configuration setting `project.gpg` that can be set to false via `project.gpg = false` to avoid signing and uploading packages. This is useful when some projects are not intended for publishing. * Fixed: JaCoCo Addon: Projects that have jacoco disabled will no longer appear in the JaCoCo reports. * Change: JaCoCo Addon: Update JaCoCo version to 0.7.9. * Fixed: BUILDR-733 - Escape classpath entries in the pathing jar manifest. Submitted by Glenn Croes. * Fixed: Ensure that the pom is attached to the jar artifact with empty classifier rather than the last artifact of a type defined. Otherwise a project that defines multiple artifacts of the same type (i.e. `package(:jar)` and `package(:jar, :classifier => :gwt)`) could have the pom named after the package with the classifier rather than the package without a classifer. (i.e. the pom could be incorrectly defined as `mypackage-1.0.0-gwt.pom` rather than `mypackage-1.0.0.pom`). * Added: GWT Addon: Add support for GWT 2.8.2 release and make it the default version unless otherwise specified. * Added: GWT Addon: Added support for `:js_exports` boolean to enable "JsInteropExports". * Added: IDEA Extension: Added support for `:open_in_browser` boolean passed to `ipr.add_gwt_configuration` * Added: BUILDR-732 - Support bnd version 2.1.0 or more. Submitted By Eric Bruneton. * Added: Support to compiling Kotlin * Fixed: Remove section on development builds in the Contributing section. * Added: New way to concatenate file contents when merging several archives together. * Added: New way to transform file contents when merging several archives together. * Fixed: Removed .class files from being checked in. * Added: Support both Jetty 6 and Jetty 9 as addons. Added integration tests to cover their use.
* Change: Add support for gwt 2.8.1 to gwt addon. * Fixed: Avoid error "undefined local variable or method `pom'" when invoking the `JarTask` without it being registered through the `package` helper`. Reported by Dieter Vrancken.
* Change: Update TestNG version to 6.11. * Change: BUILDR-731 - Enhance Sonar addon to support configuration of the project version. Submitted by Ross Mahony. * Fixed: Fix pom generation to eliminate invalid `classifier` element from being added to POM.
* Change: In the 'buildr/git_auto_version' addon strip out any versions that start with a 'v' character as most projects on git repositories prefix version tags with a "v" to avoid collisions with any branchs named after the version which are typically without the "v" character. * Fixed: GWT Addon: The GWT project publishes invalid jars that can not be included on source path when the javadoc tool is executing. Work around this issue in GWT by removing them from the documentation class path. * Change: IDEA: Change the ordering of dependencies in the IDE module descriptor such that test dependencies are first to allow test dependencies to override/shadow compile dependencies. * Fixed: IDEA: Correctly configure the IDE module if the language level differs from the root project language level. * Change: Add css2gss task to gwt addon to support conveting from deprecated css syntax to modern gss syntax. * Change: Add support for gwt 2.8.0 to gwt addon. * Change: Remove orderedhash gem. * Change: Update jruby-openssl to 0.9.17 * Change: Move hoe to the development dependencies * Fixed: BUILDR-728 Snapshots metadata incorrectly created * Fixed: BUILDR-718 Deprecate SVN repository - remove links to SVN * Change: BUILDR-724 Use scalamain to call scala projects * Change: BUILDR-719 Change User-Agent when uploading artifacts * Change: Set the OPEN_IN_BROWSER to false when building idea launch targets via add_glassfish_remote_configuration. * Change: BUILDR-709 Integrate `buildr/custom_pom` into core and just make it the default pom generated. * Fixed: BUILDR-563 protobuf addon including source directories to protoc breaks build
* Change: Update RJB to 1.5.4 * Change: Update rubyzip to 1.2.0 * Change: Update hoe to 3.15.0 * Change: Update net-ssh to 3.1.1 * Change: Update json_pure to 1.8.3 * Change: Update diff-lcs to 1.2.5 * Change: Update xml-simple to 1.1.5 * Change: Update jekyll to 3.1.3 * Change: Update rdoc to 4.2.2 * Change: Update ecj to 4.5.1 * Change: Added jekyll-textile-converter 0.1.0 to generate the site. * Change: Move to default on Scala 2.11. * Change: Remove Buildr::Project#on_define, deprecated in 1.3 * Change: Remove JavaWrapper, deprecated in 1.3 * Change: Remove JUnit::REQUIRES, deprecated in 1.3.3 * Change: Remove TestNG::REQUIRES, deprecated in 1.3.3 * Change: Remove Buildr::Ant::REQUIRES, deprecated in version 1.3.3 * Change: Remove Buildr::CompileTask#classpath, deprecated in version 1.3 * Change: Remove Buildr::TestTask responding to :using with .using('foo','bar'), deprecated in version 1.3 * Change: Remove addon/buildr/cobertura.rb, deprecated since 1.3.4 * Change: Remove addon/buildr/emma.rb, deprecated since 1.3.4 * Change: Remove support for Rakefile/rakefile, deprecated. * Change: Remove project#target, project#reports, deprecated. * Change: Remove JBehave::REQUIRES, deprecated. * Change: Remove JMock::REQUIRES, deprecated. * Change: Remove ScalaCheck::REQUIRES, deprecated. * Change: Change Eclipse Scala project natures from ch.epfl.lamp.sdt.core.scalanature to org.scala-ide.sdt.core.scalanature * Change: Fix the custom Google search widget on the website. * Change: BUILDR-722 Remove links and image of the buildr book from the website. * Added: Travis badge to README.rdoc * Added: Added Rubygems badges to README.rdoc * Added: BUILDR-577 Allow remote repo to be added with http basic auth support. Submitted by Michael Guymon. * Added: BUILDR-523 Issue a warning when Java.classpath is modified after Java.load has happened * Added: BUILDR-594 Added support for changing the verification mode of SSL certificates * Added: BUILDR-595 Added support to providing custom SSL certificates * Added: BUILDR-572 Allow to upload unique version (timestamp based) snapshot artifacts to a repository. Submitted by Brice Figureau. * Fixed: BUILDR-207 remove 'Skipping tests' messages * Added: BUILDR-703 release: allow THIS_VERSION to be defined in another file * Fixed: BUILDR-674 Artifacts with bundle extension cannot be downloaded by Buildr * Fixed: BUILDR-565 resources are not included in the war if defined after package call * Fixed: BUILDR-621 ZipTask creates zip file with entries not sorted by path causing very slow unzipping. * Fixed: BUILDR-695 transitive doesn't support ${project.parent.version} in POM. * Fixed: BUILDR-653 Using Eclipse compiler (ECJ) * Fixed: BUILDR-476 Buildr doesn't respect company repository manager * Fixed: BUILDR-454 Definition-level parent-child references-by-name fail in 1.4.0 but not in 1.3.5. Submitted by Rhett Sutphin. * Fixed: BUILDR-620 resources.filter should not run on non-text files * Fixed: BUILDR-489 Java + Scala joint compiler fails if default encoding and source file encoding are not same and special characters have been used in source code * Fixed: BUILDR-486 Buildr-generated poms should include dependencies * Fixed: BUILDR-723 JavaTestFilter is unable to parse paths containing %2F * Change: Update the custom_pom addon to generate poms with exclusions section that excludes all transitive dependencies. This is required as buildr dependencies are not transitive while Maven's dependencies are transitive by default. * Change: Remove the BND aqute maven repository, as it was decomissioned. Use Maven Central instead.
* Change: BUILDR-712 Update jruby-openssl dependency version or support a range of versions * Change: Update gwt addon to add the GWT artifacts to project dependencies as specs rather than files. * Change: Support the project.root_project utility method to retrieve the top level project.
* Added: Support the :no_invoke parameter being passed to Buildr.project() and Buildr.projects() to avoid attempting to call invoke when retrieving the projects. * Added: Add `exclude_paths` setting to pmd addon to allow paths to be explicitly excluded. * Fixed: Update jDepend addon to ensure target directories are invoked prior to attempting to analyze directories. * Added: Add jdepend.additional_project_names configuration to jDepend addon to ease merging in the source paths from multiple projects into one jDepend task. * Added: Add findbugs.additional_project_names configuration to Findbugs addon to ease merging in the source paths from multiple projects into one Findbugs task. * Added: Add checkstyle.additional_project_names configuration to Checkstyle addon to ease merging in the source paths from multiple projects into one Checkstyle task. * Added: Add pmd.additional_project_names configuration to PMD addon to ease merging in the source paths from multiple projects into one PMD task. * Fixed: In the PMD addon, check that the source directory exists before adding to sources directories to include. * Fixed: BUILDR-709 - Fix "Exception in jacoco.rb [TypeError : can't convert Array into String]". Submitted By Ross Mahony. * Added: Define the 'activate_jruby_facet' addon that activates the jruby facet in generated IDEA project modules. * Change: Update the Intellij IDEA plugin to support marking directories as generated. * Change: Update the Intellij IDEA plugin to correctly identify project paths as resource directories. * Change: Update the default GWT version used in the GWT addon to the latest release 2.7.0. * Fixed: Fix GWT addon to explicitly add gwt-dev artifact to gwt compile path now that the bug that allowed unintended sharing has been fixed. * Fixed: Fix bug in IDEA module generation that resulted in dependencies in IDEA module using shared references to compile dependencies. * Change: Update the checkstyle addon to use checkstyle 6.12.1.
* Change: BUILDR-706 - Update the checkstyle addon use checkstyle 6.6. Submitted by Dieter Vrancken. * Fixed: Fix Buildr.rspec_present? so that it works under jruby 1.6.7.2 * Change: BUILDR-705 - Avoid attempting to load rspec classes unless Buildr.rspec_present? returns true. Reported By rbpandey. * Fixed: Remove debug output left in ipr.sql_dialect_mappings.
* Change: BUILDR-704 - Updated the Sonar addon to support the latest version of SonarQube Runner. Submitted by Ross Mahony. * Added: Add support for ipr.add_glassfish_remote_configuration method that generates a remote glassfish configuration in IntelliJ IDEA project files. * Added: Add support for iml.prefix and ipr.prefix settings that prefix the generated IntelliJ IDEA project and module files. * Change: Update the buildr gemspec so that rspec is no longer a required dependency. This enables end-users to use a different version of rspec and buildr in the same project. The rspec version MUST be be compatible with the version used by Buildr if rspec features are used from within Buildr. Buildr also issues a warning if the `check` method is called and rspec has not been loaded. The warning includes directions on how to resolve the issue. Submitted by r6p. * Fixed: A long standing bug existed such that if tests failed to compile, and the option Buildr.options.test is set to :all then the compilation error would not result in a failed build. As many people set the Buildr.options.test to :all in their continuous delivery/integration tools, this has caused some problems. This has been fixed by ensuring all the problems associated with the resolving the prerequisites are not caught when Buildr.options.test is set to :all. * Change: Update checkstyle to 6.1.1. Submitted by neher. * Fixed: Avoid empty dependency issue in gwt addon if the attempting to gwt compile a project that has no src/main/java. * Fixed: Support dependencies in the gwt addon that are other local projects rather that artifacts, without forcing a compilation of dependency when parsing buildfile. * Added: Support configuration of sql dialect mapping in IDEA generated project files through methods on the ipr extension ipr.mssql_dialect_mapping, ipr.postgres_dialect_mapping and ipr.sql_dialect_mappings * Added: Support specification of the target project to which the gwt compilation artifacts are added as an asset, by using :target_project option.
* Change: Upgrade atoulme-Antwrap to 0.7.5 to remove deprecation warnings in modern JRuby. Suggested by Pepijn Van Eeckhoudt. * Change: Update the gwt addon to add the validation dependencies required for GWT compiles without requiring that the user specify the dependency. * Change: Update ipr.add_gwt_configuration method to support GWT 2.7 configuration parameters and IDEA 14 parameters. * Change: Upgrade jacoco to 0.7.2. Submitted by neher. * Change: Update checkstyle addon to use Checkstyle 6.0. * Added: Updated the gwt addon to support the upcoming GWT 2.7.x release. * Change: Enhance ipr.add_glassfish_configuration to support the ability to define the version of GlassFish in uses. Change the default to 4.1.0 as that is the latest supported variant. * Fixed: Change the name of the GlassFish install in ipr.add_glassfish_configuration to use the same convention that IDEA uses by default. i.e. Name the installation "GlassFish 4.1.0" rather than "Glassfish 4.1.0". * Change: Change the default version of the jdk in IDEA project files to 1.7. * Change: Change the default version of the IDEA project files created to the current release version 13. To revert to the older versions specify ipr.version = '12' in your buildfile. * Added: Enhance the IdeaFile class to easily support mixing in of custom components from either the filesystem or from an artifact. * Change: Update rjb to version 1.5.1. * Added: Update checkstyle addon to support downloading checkstyle checks as an artifact. * Added: Update checkstyle addon to supply checkstyle.config.dir property. * Added: Update pmd addon to support downloading rule files as an artifact. * Change: Update pmd addon to use pmd version 5.1.3. * Fixed: BUILDR-702 - Retain Unix permission flags when merging zip files into another zip or tar archive. Submitted by Pepijn Van Eeckhoudt.
* Fixed : BUILDR-688 - Disregard package-info.java files when determining if the Javac compiler should be run or not. Submitted by Pepijn Van Eeckhoudt. * Fixed : Work around bug/feature of jruby 1.7.13 that caches Gem::Version objects based on constructor parameters that causes issues with Buildr as we mutate the version objects through monkey patching. * Change: Upgrade rjb dependency to 1.4.9. * Change: BUILDR-701 - Update to JUnit 4.11. Submitted by Jean-Philippe Caruana. * Added: Support the 'report_level' property on findbugs addon. * Change: Update the findbugs addon to use the 3.0.0 version of Findbugs. * Change: Update the findbugs addon to use the built-in findbugs stylesheet to generate the html report. * Fixed: Ensure that the 'source_paths' and 'extra_dependencies' properties in the findbugs addon does not contain arrays or nils. * Fixed: Ensure that the 'single_intermediate_layout' addon removes the top level target and reports directories during 'clean' phase. * Added: Enhance idea project generation of ejb facet by looking for ejb descriptors in location compatible with ejb-jars. * Fixed: Ensure that the 'source_paths' property in the pmd addon does not contain arrays or nils.
* Fixed: BUILDR-700 - Ensure SNAPSHOT artifacts, constructed using the download(artifact('group:artifact:jar:1-SNAPSHOT') => 'http://example.com/...') construct will correctly download the artifacts from configured URL. * Fixed: BUILDR-700 - Fix bug where buildr was truncating SNAPSHOT files that had not changed since last update check and HTTP was returning "HTTP Not Modified" status. * Fixed: Fix bug introduced in 1.4.18 version of custom_pom addon where poms are created for artifacts that have a classifier.
* Fixed: BUILDR-699 - Update the custom_pom addon to avoid failure when used with zip packages. * Fixed: BUILDR-694 - "buildr upload" fails: wrong number of arguments in progress bar read() in Ruby 2.1.0. Submitted By Mark Reibert. * Change: Remove support for uploads to RubyForge.org with gem dependencies as the site no longer exists. * Change: BUILDR-664 - Update Checkstyle addon so that extra_dependencies is the project dependencies by default. Move the checkstyle dependencies to the start of the classpath to avoid problems running checkstyle. Submitted by Dieter Vrancken. * Fixed: BUILDR-698 - Correct "Lines of code" example in documentation. Submitted By: Trejkaz. * Added: Add ipr.add_glassfish_configuration method for defining a local glassfish configuration within IDEA. * Added: Add ipr.add_ruby_script_configuration method for defining a ruby configuration within IDEA. * Added: Add ipr.add_java_configuration method for defining a java configuration within IDEA. * Change: Include additional rules in default pmd rule set: 'finalizers' and 'braces'. * Change: Upgrade the version of PMD in use to 5.1.1. * Change: Supply a default xsl file for generating the jdepend report. * Fixed: Fix the naming of css_lint addon file so it is made available as an addon.
* Added: Add the add_default_testng_configuration method to help IDEA project creation. Improves test coverage across 'default' configurations. * Fixed: Fix a bug where 'default' configurations in IDEA projects were being incorrectly created. * Fixed: Fix the vcs detection in IDEA addon for 1.8.6 (!) versions of ruby by reordering blocks. * Change: Supply a default xsl file for generating the checkstyle report. * Added: Add csslint tasks css_lint:xml and css_lint:html that support source code analysis of CSS files. * Added: Add scss_lint tasks scss_lint:xml and scss_lint:html that support source code analysis of SCSS files. * Added: Import 'buildr/custom_pom' addon to make it easier to build POMs for projects publishing to Maven Central. * Added: Add flag to allow non portable extensions in wsgen addon. * Fixed: Avoid nil dereference bug in GWT addon when running GWT in a project that has no source directory.
* Added: Add the ability to generate a html report when using the jacoco addon. Extracted from the ode project. * Fixed: Remove the projectname.ids file when rebuilding the idea project file avoiding conflict with idea. * Fixed: Avoid passing duplicate -keep parameters to wsimport from wsgen addon. * Change: Improved the error handling when generating java from wsdl in the wsgen addon. * Change: Upgraded the Checkstyle plugin to use checkstyle 5.7 that improves Java 7 compatibility. * Added: Add support for configuration of the schema-pattern, table-pattern and default-schemas settings in idea's data source definitions. * Change: Upgraded the PMD plugin to use pmd 5.0.5 which for Java 7 compatibility. * Change: Derive the version of GWT in gwt addon from supplied dependencies. * Fixed: Include the compiled classes on path for GWT addon to ensure the GWT compiler can load annotations. * Change: Derive the GWT version from build settings if not explicitly specified by GWT addon. * Change: Support prefixing the version generated by the gwt_auto_version addon with the environment variable "VERSION_PREFIX". * Fixed: Support overriding the GWT version used by the GWT addon. * Fixed: Fix problem when the :dependencies option was not passed to the GWT addon. * Fixed: Avoid crash in GPG addon if unable to create a pom for an artifact. * Fixed: Correct location of Git mirror in the README. Submitted by Marcos Sainz.
* Change: Update to TestNG 6.8.7. * Change: Updated the 'test_jar' package type to have a classifier of 'tests' and thus match maven conventions. Reported by Chris Bozic. * Fixed: BUILDR-689 - Ensure that war file includes generated assets rather than the "source" assets that may have been filtered. * Fixed: BUILDR-689 - Define assets task before the project is defined to avoid "undefined method `project='" if the project attempts to generate into the same directory. * Added: BUILDR-679 - Support uploading to a snapshot repository defined by repositories.snapshot_to if the artifact is a snapshot. Submitted by Tammo van Lessen. * Change: Update the jaxb_xjc addon to add output directory to generated IDEA project files. * Change: Update the default output directory used in the jaxb_xjc addon to use Maven conventions. * Fixed: Bug in IdeaProject.partition_dependencies resulted in projects being rebuilt if artifacts were added to the project with dependencies on the current project. * Fixed: BUILDR-605 - Ensure package task invokes included paths. * Fixed: BUILDR-609 - compile.from should accept Task argument.
* Change: Remove highline dependency. * Fixed: BUILDR-682 - Fix the documentation for releasing using your own versioning scheme. Submitted by Jean-Philippe Caruana. * Fixed: BUILDR-681 - Stop empty projects creating target/webapp. * Change: Add dependency from generated jws client source directory to the source wsdl in the wsgen addon. * Fixed: Fixed regression in gwt addon due to "pathing_jar" functionality in Java::Commands.java. * Change: Support disabling the new "pathing_jar" functionality in Java::Commands.java utility method. Required for tools that introspect the classpath. * Change: Update wsgen addon to generate source into a directory hierarchy based on maven conventions. * Fixed: Fixed regression using transitive dependencies due to presence of :scope option in Artifacts.to_hash. * Fixed: Fixed bug in GWT addon that required that the user supply the :dependencies option. * Fixed: Fixed bug in Intellij project file generation when adding a web facet.
* Fixed: BUILDR-439 - Fix java command under windows when supplied with extremely long classpath. Submitted By Tammo van Lessen. * Fixed: BUILDR-394 - Fix release task with standalone distribution. Submitted By Tammo van Lessen. * Added: BUILDR-678 - Improve support for gpg signing artifacts using a single method. * Fixed: BUILDR-677 - GPG addon hangs when .asc files are still in target. Submitted By Tammo van Lessen. * Added: Initial support for data source creation in Intellij IDEA project files. * Fixed: BUILDR-676 - Rework Java::Command:java so that it does not reject the :dir option. Reported by John Roth. * Added: Auto-detect jpa provider in Intellij IDEA facet generation if persistence.xml file is present and provider not specified. * Added: Auto-detect jruby version in Intellij IDEA facet generation if .ruby-version file is present. * Added: Improve support for auto-detection of ejb and web descriptors within Intellij IDEA project generation. * Change: Default to setting the "User-Agent" header to "Buildr-VERSION" when accessing http resources. Maven Central rejects requests without a User-Agent string. * Change: Change default scope of dependencies to 'compile'. Submitted by Ingo Schmidt. * Change: BUILDR-675 - Set Cache-Control to 'no-cache' when downloading artifacts. Submitted by Félix Enrique Llorente Pastora. * Added: Initial support for simple integration of an asset pipeline. See "Compiling Assets" section in the manual. * Fixed: BUILDR-673 - Fix the option handling of the MultiTest test framework to behave as documented. Only the framework specific options are passed to the test. Submitted by John Roth. * Added: BUILDR-672 - Persist the properties field in the checkstyle addon so that they can be modified by the user. Submitted by Wim C. * Fixed: Make the package_as_* methods public so that the methods are detected in Ruby >= 2.0.0 via the respond_to? method. * Change: Updated dependency versions; - rspec-expectations (2.14.3) - rspec-mocks (2.14.3) - rspec-core (2.14.5) - rspec (2.14.1) - minitar (0.5.4) - ci_reporter (1.8.4) - xml-simple (1.1.2) - rjb (1.4.8) - diff-lcs (1.2.4) - builder (3.2.2) - net-ssh (2.7.0) - net-sftp (2.1.2) - hoe (3.7.1) - json_pure (1.8.0) - highline (1.6.19) * Fixed: BUILDR-668 - Specify File::FNM_EXTGLOB for include globs where needed in Ruby >= 2.0.0. Reported by Yavor Nikolov. * Fixed: Ensure generation of buildfiles from eclipse projects will finds .project files in Ruby >= 2.0.0. * Fixed: Patch Rake::FileList in Ruby >= 2.0.0 to match dot files if a .* pattern is supplied as in earlier versions of ruby. * Fixed: Make Archive-related operations (e.g. zip.merge) deterministic using OrderedHash. * Change: Update to TestNG 6.8.5.
* Added: BUILDR-648 Add new package(:test_jar) packaging type. Submitted by Mike Pettypiece. * Fixed: BUILDR-666 ZipFile.open modifies file regardless of usage. Reported by Pepijn Van Eeckhoudt, fix by Alex Boisvert. * Change: Moved to using TravisCI to test the Linux variants. * Added: Make the location of the wsdl in generated source configurable in the wsgen addon. * Added: When generating the GWT facet for Intellij IDEA modules, use the gwt-dev maven artifact dependency if present as the SDK, falling back to the existing behaviour if not possible. * Added: Improved support for auto-detection of VCS dirs when creating IDEA projects. * Added: Added support for SuperDevMode in gwt addon and upgraded to GWT 2.5.1 by default. * Change: BUILDR-664 Update Checkstyle addon so that extra_dependencies is empty by default. Submitted by Dieter Vrancken. * Fixed: BUILDR-663 require 'buildr' fails for Ruby 2.0.0. * Fixed: BUILDR-665 Java artifacts in build.yaml breaking ArchiveTask. Submitted by Antonio Pérez Barrero. * Fixed: BUILDR-662 reported time is much shorter than actual
* Fixed: Multiple tests in TestNG 6.x versions were being incorrectly passed to the command line application.
* Added: Support a single intermediate directory for each project hierarchy through an addon 'buildr/single_intermediate_layout'. * Fixed: BUILDR-660 possible build issue when using build.yaml and tasks/*.rake (Félix Enrique Llorente Pastora) * Added: Support the :dir option in the Java::Commands.java method. * Fixed: Scala 2.10 support - compiler now uses additional/separate jars introduced in 2.10 such as scala-reflect.jar and scala-actor.jar * Added: Add an addon for NSIS. * Change: BUILDR-612 - Support the TestNG 6.x versions and default to 6.8. * Added: BUILDR-599 - Support the passing of arguments to testng test runner. * Fixed: Observer the per-project source version when generating IDEA module files. * Change: Sort the components in IDEA project files in the same order the idea sorts them. * Fixed: Findbugs addon correctly handles String dependencies (vs task dependencies) * Fixed: Checkstyle addon correctly handles String dependencies (vs task dependencies) * Added: Created an addon 'buildr/wsgen' for generating wsdls from java and java from wsdls using the underlying wsgen tool. * Change: Defer the expansion of generated poms by wrapping the generation in a Proc. * Change: Rework Artifact.content(value) method to accept a Proc that will be called before the artifact is written rather than requiring a string. * Added: Create a 'buildr/gpg' addon that signs and uploads signatures when uploading artifacts. Inspired by a similar extension in the Apache ODE project by Tammo van Lessen. * Change: Updated dependency versions; - jruby-openssl (0.8.2) - atoulme-Antwrap (0.7.4) * Change: Require 'bundler/setup' as part of buildr startup to ensure that buildr always runs with up to date dependencies if a Gemfile is present. * Added: Add FrameworkDetectionExcludesConfiguration facet to Idea project file creation by default. * Fixed: In the IntelliJ extension, defer the materialization of the default_components until expansion time to avoid loss of sub- components added after an add_component call. * Fixed: BUILDR-633 - Remove hardcoded shebang lines in all-in-one release. * Added: Create a simple extension that modifies the project layout to place generated files at the top level.
* Fixed: Fixed the interaction with the FileUtils classes. The last release introduced a non-deterministic bug that sometimes caused logging preferences to be ignored and the install method to be inadvertently overwritten.
Apache Buildr PMC