-
-
Notifications
You must be signed in to change notification settings - Fork 304
Changes in 4.1.0
For Bndtools 4.1.0 changes, see https://github.com/bndtools/bndtools/wiki/Changes-in-4.1.0.
-
Macros
${removeall;list;list}and${retainall;list;list}are updated to work with empty args. -
Adds support for Bearer (OAuth2) authentication. If the
<server>configuration has only a password and no username, then Bearer authentication is in effect with the password used as the token.-connection-settings: server;id="https://*.server.com";password="oauth2token"will cause
Authorization: Bearer oauth2tokenrequest header to be sent to servers matching the glob
https://*.server.com.See https://github.github.com/maven-plugins/site-plugin/authentication.html for an example of a
<server>configuration for OAuth2. -
Baselining will no longer report version mismatches when either side of the baselining has a major version of 0. See https://semver.org/#spec-item-4.
-
The pattern support for globbing things like package names has been updated to support some regular expression features. This should be backwards compatible for most normal usages.
-
The new DS 1.4 annotations support is now implemented.
-
The type inferencing for DS annotations support has been completely rewritten using a new Java generic signature parsing API.
-
Internal plugin class loader in bnd now closes any open files within 5-10 seconds on Windows.
-
On Windows, you can override the default Java home directory with the HOME env variable. This one is now * supposed to expand macros recursively
-
CDI R7 annotation support in bnd
-
OSGiRepositoryhandles refreshing correctly now -
Accept Groovy test case method names with spaces.
-
Contracts are now default on for all packages
-
Added server certificate verification to the built in Http Client. That is, you can now set
<verify>true</verify>and<trust>relative-path-to-cert</trust>. -
Being able to set the
-compressionlevel to deflate or store, see https://bnd.bndtools.org/instructions/compression.html -
Options for an
-executableinstructions that can remove resources from the dependency JARs that are packaged in the über JAR. It is also possible to change their compression level. See https://bnd.bndtools.org/instructions/executable.html -
Support for Java 10 & 11
-
Maven Bnd Repository can now support resources that contain aggregate artifacts like ZIP files that contain bundles. See https://bnd.bndtools.org/plugins/maven.html
-
Bnd plugins can now also access any package exported by the framework when bnd runs on an OSGi Framework.
-
Added an
-includepackageinstruction that includes a package from the-buildpathbut does not generate any headers from it. Might be required when you need to override@Exportannotations. -
An OSGi sub system exporter
-
Returned Fixed Indexed Repository as a sub class of
OSGiRepositoryto not break builds. In this light also a more relaxed interpretation of Service-Component header -
Using Felix resolver 2.0
-
Support of Photon test folders
-
Launcher now uses reference: urls when possible, significantly minimizing memory consumption.
-
Protection against zip-slip attack
-
@ProviderTypecan now be added to the package to apply to all classes -
Added support for the PDE target platform in the
P2Repository -
Update of the Maven Bnd Repository that allows redeploy and more options on the put
- Additional possibilities for the bnd command line
- xref : provides cross reference information over a very large set of bundles
- repo : copy, sync, index commands
- com : see the communication settings and test them. Also see https://bnd.bndtools.org/instructions/connection-settings.html
- shell: opens a shell against the current workspace (the default workspace if not inside an existing workspace)
- graph: roots command
- bnd command line can now have a -d option to set default logging level to debug
- There is now finally, thanks to Jan Hendriks from Qivicon, some documentation for the oh so powerful -includeresource instruction. (And the accompanying -preprocessmatchers instruction.) See https://bnd.bndtools.org/instructions/includeresource.html
-
The Bnd maven plugins now support Maven property references using array subscripts such as
Bundle-License: ${project.licenses\\[0\\].name} -
bnd-baseline-maven-plugin now ignores projects with
pompackaging type. -
bnd-maven-plugin:
- seamlessly supports WARs (enabled with packaging type
war)- transparently handles
Bundle-ClassPathfollowingmaven-war-pluginheuristics for included lib jars
- transparently handles
- now explicitly supports only
jarandwarpackaging - optionally
includeClassesDir(a.k.a.${project.build.outputDirectory})
- seamlessly supports WARs (enabled with packaging type
- Tasks of type
TestOSGino longer add themselves as a dependency of thechecktask. This is to allow for multiple such tasks which should not be executed for thechecktask. - A new task type
Bndrunis added which can be used to run bndrun files.
- Tasks of type
TestOSGino longer add themselves as a dependency of thechecktask. This is to allow for multiple such tasks which should not be executed for thechecktask. So if you need your tasks of typeTestOSGito be dependencies ofcheck, you must modify thechecktask to add them as dependencies. - The pattern support for globbing things like package names has been updated to support some regular expression features. This should be backwards compatible for most normal usages but some characters may now require escaping. For example
[and]will need to be escaped as\\[and\\]since the[and]characters are now used for regular expression character classes. - The type inferencing for DS annotations support has been completely rewritten using a new Java generic signature parsing API. So it is possible that some corner cases may no longer be supported.
- The fix to verify the server certificate can generate an error if the trusted certificate is not found or invalid. This was not reported before. See the
bnd comcommand how to diagnose communication issues.