Skip to content
BJ Hargrave edited this page Apr 24, 2020 · 7 revisions

Bnd/Bndtools 5.0.1

  • This is a maintenance fix for Bnd/Bndtools 5.0.0.

Fixes since 5.0.0

  • #3726: Bnd finds 2 contracts in bundle that provides only 1 if -contract instruction is parameterized.
  • #3745: Fix JUnit 5.5 and later support.
  • #3762: Bnd resolve task emits unexportable version requirement.
  • #3780: Cannot change attributes of dependency configuration after it has been resolved.
  • #3810: Support a format string for the launcher location, this used to potentially contain a version.

Bndtools

  • Bndtools is built to run on Eclipse 2018-12 or later. So Bndtools 5.0 may not run on older versions of Eclipse.
  • Added a Bndtools Explorer view with a search bar. This can be used to show projects whose name matches the search bar value.

Bndtools m2e

  • Bndtools m2e is built to run on Eclipse m2e 1.10.0 (m2e version used in Eclipse 2018-12) or later. So Bndtools m2e 5.0 may not run on older versions of Eclipse or Eclipse m2e.

Bnd

  • New version_cleanup macro added.
  • Make it possible to emulate contracts when you don't have any contract on the classpath.
  • Allow the CDI container to process interfaces.
  • Providing the osgi.service capability for the @ServiceProvider annotation.
  • Added -resolve (beforelaunch|manual|auto) option for resolving: well as do an automatic update to latest version.
  • Embedded activators are now started in a started framework, in 4.3 they unfortunately got started in an inited framework.
  • New MapStream API for streaming operations on Maps or any object pair.
  • When using a standalone workspace, such as in the Bnd Maven plugins, -plugin properties are now copied from the bndrun file into the standalone workspace so that the bndrun file can configure Bnd repositories in the standalone workspace.
  • JUnit 5 support has been added via the new biz.aQute.tester.junit-platform project. To use JUnit 5 for OSGi JUnit testing, set the -tester property to biz.aQute.tester.junit-platform. This will also require the necessary JUnit 5 bundles and dependencies, such as org.opentest4j, to be configured into the -runbundles of the test framework. The recently released JUnit 5.6 jars are now OSGi ready.
  • Various fixes and improvements to Launchpad.
  • New -export-apiguardian instruction added to export packages having types annotated with @API from @API Guardian.

Bnd Command Line

  • Added bnd eclipse sync command. This copies the cnf/.settings to all projects
  • Added bnd mbr command that can provide update information to a MavenBndRepository plugin .mvn files as

Documentation

Bnd Maven Plugins

  • Improved EE inference computation.
  • Corrected resolution scope for bnd-process-test mojo.
  • Implicit repo, repos of maven dependencies not considered.

Bnd Gradle Plugins

  • The Bnd Gradle plugins now require a minimum of Gradle 5.1 for Java 8 to Java 12 and Gradle 6.0 for Java 13.
  • Use dependency's jars for compilation when java-library-plugin is applied. See #3642.
  • Replace use of deprecated Gradle methods such as ExternalDependency.setForce.

Backward compatibility

  • Bndtools is built to run on Eclipse 2018-12 or later. So Bndtools 5.0 may not run on older versions of Eclipse.
  • The Bnd Gradle plugins now require a minimum of Gradle 5.1 for Java 8 to Java 12 and Gradle 6.0 for Java 13. So the Bnd 5.0 Gradle plugins may no longer work on versions of Gradle less than 5.1.
  • The p2 update site for released versions of Bndtools has been changed to https://bndtools.jfrog.io/bndtools/update-latest. This p2 update site can be used to install Bndtools releases from the latest release as far back as version 4.2.0.

Known Issues

Clone this wiki locally