-
-
Notifications
You must be signed in to change notification settings - Fork 302
Changes in 5.2.0
BJ Hargrave edited this page Dec 15, 2020
·
13 revisions
- Added an Insert sub-menu Context menu in the Bnd Editor Source page editor. It allows the user to select a plugin from a menu and that is then inserted in the bnd file. There are also sub-menus for inserting an instruction example, a macro or a header.
- Quick fix improvements:
- Will no longer suggest adding a bundle to the build/test path if the expanded class can already be found on the build/test path.
- More useful suggestions in a variety of additional situations.
- Long running resolve jobs can now be cancelled.
- Upon cancellation, a log will be available that can be useful for debugging why the resolve is taking so long.
- Workspace templates can now be parameterized (like project templates).
- UI display of results from
biz.aQute.tester.junit-platformnow properly supports tests running in parallel.
- Fixed dependency management resolving.
- More safely refreshed target directory to avoid build loops.
- Added support for OSGi R8
Referencedannotation. - Added new Memoize implementation which only memoizes once a Predicate has accepted the underlying Supplier's value.
- Added unmodifiable List, Set, and Map implementations which work on Java 8 so we can enjoy the equivalent of the Java 9 Map.of, Set.of, and List.of style support.
- Macros now can parse parameters that are macros but whose expansion contains semicolons. These needed to be escaped. Each parameter is now parsed without expansion and then expanded separately.
- Fix sort macro support to handle empty lists.
- New
biz.aQute.bnd.antartifact to hold Bnd Ant tasks. This artifact depends on thebiz.aQute.bndlibandantartifacts. - Java 15 class file support added.
- Bnd will now import
java.*packages if the bundle either requires Java 11, or later, or imports theorg.osgi.frameworkpackage at a version >= 1.9. The importing ofjava.*packages can be disabled with the instruction-noimportjava: true. - DS support for factory components is improved. For factory components, we now emit an
osgi.servicecapability forComponentFactorywith thecomponent.factoryattribute set. We no longer emit anosgi.servicecapability for any service which can be provided by an instance of the factory component. For references toComponentFactory, we now emit anosgi.servicerequirement forComponentFactoryonly if thetargetelement of theReferenceannotation is specified. Thefilterdirective of the emittedosgi.servicerequirement forComponentFactorywill include the target filter expression. - Fixed handling of
-namesectioninstruction to properly create Name sections in the generated manifest. -
biz.aQute.tester.junit-platformimprovements:- Support for pluggable test listeners - services registered under the
TestExecutionListenerinterface will be invoked during test execution. - Support for filtering tests using
tester.nameswhile in continuous mode. - Support for changing the
tester.namesfilter dynamically and re-running tests interactively via the Gogo shell.
- Support for pluggable test listeners - services registered under the
- Added a possibility to specify the test case to run with:
bnd test [options] --tests <testclass[:method]...> - New
classpathcommand to compute the effective compile or test compile classpath of a Bnd project. This can be useful when you need the classpath for an external tool.
- Various minor documentation fixes and improvments.
- Add documentation for several of the Bnd repository plugins.
- The
BaselineIgnoreannotation is documented.
- The Bnd Maven plugins require a minimum of Maven 3.1.1.
- Warn if
Test-Casesmanifest header is empty when building test jars. - Add
releaseversionsconfiguration option to bnd-baseline-maven-plugin. If thereleaseversionsconfiguration option is set totrue, then, when searching for a baseline version using a version range, non-release versions likealpha,beta,milestone, andrcare not considered. - If the maven project property
project.build.outputTimestampis set, thenbnd-maven-pluginautomatically configures the Bnd instructions for reproducible builds if the instructions are not otherwise set. - Improved
-runeeinference. We now look at the following items in order:-
releaseelement inmaven-compiler-pluginconfiguration -
maven.compiler.releaseproject property -
targetelement inmaven-compiler-pluginconfiguration -
maven.compiler.targetproject property -
java.versionproject property -
java.versionsystem property
-
- Fixed a problem where the Bnd maven plugins required a version of Maven > 3.1.1 which is the specified minimum version. The Bnd maven plugins now explicitly declare a prerequisite on Maven 3.1.1 as the minimum Maven version.
- The Bnd Gradle plugins require a minimum of Gradle 5.1 for Java 8 to Java 12, Gradle 6.0 for Java 13, Gradle 6.3 for Java 14, and Gradle 6.7 for Java 15.
- The
archiveClassifierproperty of the Bundle task is used in the generatedBundle-SymbolicNamevalue. - The
bndproperty of the Bundle task can now acceptProvider<? extends CharSequence>arguments which provides much more flexible configuration as the actual instruction are computed at task execution time.
- 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 no longer work on versions of Gradle less than 5.1.
-
Windows 10 users: Windows 10 Defender significantly slows down Eclipse, reason being Windows 10 Defender scanning the JAR files. The problem has been reported to Microsoft here. Until then, a workaround to this problem is to add Eclipse root directory to Windows 10 Defender’s exclusion list, detailed steps are shared here.
Note: This is not just an Eclipse issue on Windows 10.
See also Bnd Tips for Windows users.
Latest Releases
all versions
- 7.2.1 | 7.2.0
- 7.1.0 | 7.0.0
- 6.4.1 | 6.4.0 | 6.3.1 | 6.3.0
- 6.2.0 | 6.1.0 | 6.0.0
- 5.3.0 | 5.2.0 | 5.1.2 | 5.1.1
- 5.1.0 | 5.0.1 | 5.0.0
- 4.3.1 | 4.3.0 | 4.2.1 | 4.2.0
- 4.1.0 | 4.0.0
- 3.5.0 | 3.4.0 | 3.3.0 | 3.2.0
- 2.2.0
Gradle
- Plugin
- Build Customizations
- Builder & java-library
- Non-Workspace builds
- PluginManagement
- Using Kotlin
- Kotlin DSL jar config
- AntTasks
- Baselining [beta]
- Blurry Form Text on High-Resolution Displays
- Bnd toolchain parity table
- bnddistribute
- Buildpath Versions
- Conflict with M2E PDE Connector
- Eclipse Logging with Logback
- Hackathon June 2012
- Install bnd on the command line
- Is there a mailing list for bnd
- Launching Framework
- Multi-project build order
- Multi-release JAR support design discussion
- Plans wrt to enRoute
- Reading Eclipse project preferences in bnd
- Release Process
- Requirements for New Repository API
- Windows Locked Files
- WIP ideas ‐ bnd 8.0.0 breaking changes
- XML Attributes on Annotations
- [ant] Loading and Expanding Shared Headers or Properties