-
-
Notifications
You must be signed in to change notification settings - Fork 305
Changes in 7.0.0
Peter Kriens edited this page Oct 9, 2023
·
12 revisions
See the Release section of the README for where to find Bnd/Bndtools.
This is a breaking release because we moved the code base to Java 17.
- Bndtools now requires Eclipse 4.25 (2022-09) or later.
- Bndtools m2e now requires Eclipse m2e 2.0.5 or later.
- Significant update of Resolution View. Shows multi release jars now
- MojoExecutionExceptions prevented when using the bndtools m2e plugin and maven-jar-plugin 3.x.
- Removes Require-Capability for osgi.service AnyService
- Updated to require Java 17 or later.
- Supports Multi release JARs
- MavenBndRepository
- Staging repository
- Additional files in a release
- Removed pack2000 support
- Support macros in the @Header annotation
- TBD
- TBD
- Updated to require Java 17 or later.
-
bnd-generate-maven-plugin
adds a mojo for goalgenerate-test
. The poorly named goalbnd-generate
has been renamedgenerate
.
- Updated to use Gradle 7.3 as the minimum supported Gradle version.
- Updated to require Java 17 or later when running Gradle.
- All Bnd artifacts are built to run on Java 17 or later.
- Bndtools is built to run on Eclipse 4.25 (2022-09) or later. So Bndtools may not run on older versions of Eclipse.
- Bndtools m2e is built to run on Eclipse m2e 2.0.5 or later. So Bndtools m2e may not run on older versions of Eclipse m2e.
- The Bnd Maven plugins require a minimum of Maven 3.8.1.
- The
bnd-generate-maven-plugin
's poorly named goalbnd-generate
has been renamedgenerate
- The Bnd Gradle plugins require a minimum of Gradle 7.3.
- The Bnd Gradle plugins and tasks underwent an update for 7.0. A number of previously deprecated conventions have been removed.
-
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.
Amit Kumar Mondal (1):
Removed unnecessary usages of compiler options
BJ Hargrave (71):
Revert "build(deps): Bump maven-deploy-plugin from 2.8.2 to 3.0.0 in /maven"
io: Use try-with-resources to close Closeable input arguments
test: Add retrying to bnd tests
gradle: Escape path to original bndrun file
maven: Fix warnings from maven-plugin-plugin
maven: Move resolver earlier in reactor
maven: Fix bnd-run-maven-plugin bndrun file selection
maven: Support resolving bndrun files to an output folder
docs: Add 6.4.0 docs
Update gradlew to 7.6
gradle: Update tests for Java 19
maven: Update tests for Java 19
ci: Update CI test build to JDK 19
build: Remove unused maven-dependency-plugin from build
deps: Update integration test use of maven-dependency-plugin
bndlib: update package version for version 7.0.0
build: Update baseline version for build to 6.4.0
settings: Generate larger key size
ci: Remove Java 8 and Java 11 from the CI builds
gradle: Update dependencies to Java 17 and Gradle 7.3
maven: Update dependencies to Java 17
build: Use standard group names for tasks
maven: Organize imports for RunMojo
gradle: Update test projects for Java 17
build: Update eclipse metadata for gradle and maven projects
java17: Replace use of deprecated methods with the replacement
java17: Suppress warnings for security removal deprecations
warnings: Add Deprecated annotation to avoid warnings
test: Avoid java package imports for some tests
java17: Update build to target JDK 17
java17: Update README to state Java 17 requirement
gradle: Remove deprecated bundlesOnly parameter from Export task
build: Remove deprecated items for Bnd 7.0
cleanups: Source cleanups for Java 17
pom: The cwd is not a valid base for locating parent poms
maven: Refactor build for maven 4
docs: Fix links to maven plugin content
Update dependabot config for maven-plugins folder
deps: Update OSGi dependencies for Eclipse 4.25
tester: Set context class loader to bundle's class loader
deps: Update Eclipse dependency to 4.25
maven: Clean up IT tests for generate plugin
gradle: Fix some warnings from intellij
maven: Fix some warnings from intellij
mavenversion: Pickup fixes from Maven 3.8.7
build: Update maven version to 3.8.7
command: Ignore our own interruption
tests: Avoid newly deprecated assertj method
deps: Update assertj-core to 3.24.1
repo: Provide bsn+version in FileSetRepository.toString
maven: Improve Glob use in bnd-testing-maven-plugin
workspace: Use Stream.dropWhile/takeWhile instead DropWhile/TakeWhile
mapstream: Add mapMulti support
Use nanoTime for elapsed time measurement
classloader: Update class loader classes to register as parallel
tests: Update to use https URLs
tests: Use canonical maven central URL
classfile: Properly handle unnamed MethodParameter
ds: Make sure that AnyService is not present in any service reqs
gradle: Avoid using task ext properties in configuration cache testing
gradle: Avoid 2 tasks referencing resolve2 bndrun file
build: Update to gradle 8.1.1
ci: use Java 20 instead of Java 19
build: Update maven wrapper to 3.2.0
build: Update maven to 3.9.3
build: Quiet gradle 8.2 warning about test classpath
gradle: Avoid use of conventions in gradle < 8.0
build: Update build script for Gradle 8.2
gradle: Update tests for gradle 8.2 deprecations
lib: Add CompositeClassLoader class
tester: Use CompositeClassLoader for TCCL when loading tests
Christoph Läubrich (1):
Add an example to verify maven multi-release jar build with maven
Christoph Rueger (1):
Add section about target-dir
Fr Jeremy Krieg (1):
[tester] Minimise scope of TCCL switch
Guillaume Nodet (1):
Upgrade to plexus-build-api 1.1.0
Hannes Wellmann (1):
Resolve artifact's finalName immediately before BndMaven*Plugin exec.
Jerome Prinet (4):
Apply Runtime classpath normalization and sort the Bundles input
Sort collection
Fix documentation
Reduce visibility of getBundlesSorted()
Jérôme Prinet (1):
Apply consistent file sort
Jörg Kubitz (1):
Update README.md
Jürgen Albert (6):
temp workspace was created in the wrong location
fixed missing build and testpath for bnd maven generator project
Splits the Mojo in one for generate-sources and generate-test-sources
Replaces deprecated interfaces in BndTargetLocation
fixes error in TargetPlatform, when a non OSGi Jar is included
Adds support for extra staging repository
Konrad Windszus (1):
Allow to configure base via coordinates (and CLI argument)
Mark Hoffmann (2):
Avoid adding JDK jrt-fs.jar to the module-path (-p) of the JDT launcher
Fixes #5752
Peter Kriens (100):
#5462 Limit the Launcher to set startlevels to only the bundles in scope
Update LauncherTest.java
Update StartLevelRuntimeHandler.java
Update LauncherTest.java
Fix error in checkout in 6.4.0
Launcher check
#5407 Decision to include project bin directory
#5060 No automatic build when build.bnd changes
review BJ
Update after Fr. Krieg's request
#5530 @Header did not support macros
Better doc for if to handle confusion when condition macro is not set
Fixes #5516. Generates a warning if -runframework is set but not -runfw
5555 Package default version faq. Fixed #5555
Documentation for jpms
Set flag to not update default version
Covenience methods & cleanup
Added class file major version support to EE
Added ManifestPlugin and shared Ordering
Copy an Analyzer
Added an addDeltaJar method to add a set of new resources to an existing analyzer which are then incrementally added to the different parameters like referred, contained, etc. This is the idea behind -conditionalpackage made available from the outside
A JPMSModule class
Adapted existing JPMS plugins & Jar to use the JPMSModule so we have a single place of truth.
Test cases for the previous changes
doc
Default properties were not set in the analyzer. The analyzer therefore ignore multi release jars. The analyzer is now fixed up with the default properties __versiondefaults__ is not set, will never overwrite though
Used wrong path for the manifest in the versions directories. Used META-INF/MANIFEST.MF but must be OSGI-INF/MANIFEST.MF.
Renamed plugin, fixed typo
Rearranged code It was noted by laeubi that * it always generated a module-info.class for a release version * the requirements were always additive for subsequent releases
Fixes NPE in classloading If a class was not found it reverted to OSGi but not in a very good way, this could cause NPEs. This patch removes the NPE possibility and actually now searches all bundles that import or require the bndlib. This should probably make the Auxiliary extension superfluous that is used in Eclipse/bndtools.
Java Imports & Empty header - The java imports are now always done except when the used framework is < 1.9 (before R7). The EE version is now ignored. - The version used to come from the _imports_. However, that does not make sense, so I've changed it to the classpathExports version of the framework package. This is in almost all cases the floor of the import range. By using the export, we can make the decision that we use an old framework in any bundle that has the framework package on the class path and not only in bundles that import the framework. (Surprised this was not a problem?) - The MRJ will now set the Input-Package to Require-Capability to an empty string since the spec is rather strange imho. The RFC is a tiny bit clearer but this case should be made more explicit.
Cleaned up bnd annotations - Component is removed now after it has been deprecated for a long time - Cardinality & Resolution have been changed to String. This will prevent warnings when the annotations are not on the buildpath - Changed the use of the older annotations inside bnd to the OSGi versions
Removed use of SecurityManager - Added a BndSystm.exit method that could be overridden - this was added to the aQute.bnd.tester - Adapted the applicable code to call BndSystem.exit - Changed the test code to override the exit
Update README.md
Update readme (to lazy to make separate PR and the original was awful)
Fixed warning due to split package, now export it from the original
Update README.md
Renamed
Updated code to parse supporting resources
Enum matches by toString When given an enum, the normal parsing for its name fails, try comparing to the toString()
Support OSGi versions in bnd versions bnd developed a version & version range before OSGi had one. We could replace them but the bnd are slightly more useful.
EE handling
Supporting Resource
Multi release JAR indexing
Resolve changes
Multi Release Testing
Last minute screw ups
cleanup
Do not overwrite source info for packages This is from #5130. This fix does not overwrite the internal source info for a package when it has already been set. Fixes #5130
Backward compatibility for the resource filtering To make the MRJ scenario work, we needed synthetic resource. However, for some reason I do not get, we filtered them out before the resolver saw them. The filtering was moved to the final stage when we filter the bundles. However, this means that there are theoretical situations where people need the old behavior. Release 7 is a major release so we can break but it is clearly not nice to have a backup
Version handling
Remove synthetic resources from the view
Updated Pack200 class to handle the absence of the command. The command was deprecated in later VMs
Remove space from version before cleanup
Created a remove function to remove clauses regardless of multi marker
Updated supporting resources to allow runtime retrieval of the structure
Update of the resolution view
Boolean logic is hard :-(
Strange SWT dispose problem. This seems not to be introduced by the recent change but might be an interaction with Eclipse. I noticed this in the last version also. It looks like a helper object is used to detect that anSWT object is not disposed properly. It looks like the Icons class was not properly using the caching map for one method. Now properly cached.
Revert "Upgrade to plexus-build-api 1.1.0"
Update ci-build.sh
Update ci-publish.sh
P2 Repositories lost synthetic resources for MRJs
Update ci-build.sh
Update ci-publish.sh
wip
Fix for releasing extra files with maven
An extra CR on windows failed the length test, changed to content test
Moved all the comm options for maven to the action files
Oops
Use classifier instead of 'class' and archive instead of 'extra'
Slow bundle dialog\n Typing in the filter box did a slow update. This PR uses a (copy of) the FilteredTree\n that is supposed to be much faster. Now also supports wildcards a la globbing
Link to original FilteredTree for clarity
Update link to forked file
Update github.htm
Update github.htm
5673 Merged properties for standalone. Fixes #5673
Contribution to icons
Update to ResolutionView to also resolve against Java VM
The new gradle cannot find Java 8 on the build system. Changed to use 17. Seems to be used for launching.
Attempting to fix the build for the absence of Java 8
Attempting to fix the build for the absence of Java 8
Cleaned up the home directory and added a BND_HOME env var
Oops, this got an NPE on windows
--- Signed-off-by: Peter Kriens <Peter.Kriens@aQute.biz>
Maven release archive option
Setting the base in Processor.use(...) was too much
When no package-info.java is present, the error was only reported on the project. This will report it on the manifest
Fixes #5740
Oops, forgot size
When base is set but artifact not found, failOnMissing will be applied
Timeout when there are no test cases
Added convenience methods to Tag
Minor changes
P2 Exporter
1.8
1.8
merge failed
Use JUnit 5
build: Build Release 7.0.0.RC1
Scott Lewis (13):
Fix for issue #5239
Improve handling of template defaults
Initial commit for issue-5632. Introduces service wizard support
Small generalization of ServiceTemplateLoaderJob
Comments fix
Small refactoring, simplification of error handling
Small improvements in error handling
Added NewBndTemplateBasedServiceWizard class to support service templates
User interface improvements
Comment fix
Fix variable naming
Fix for UI bug
Updated Java OSGi Service wizard to use service.png for icon
Sean Bright (1):
prefs: Remove extraneous parenthesis.
Tim Ward (4):
[m2e] Avoid runtime errors due to API changes between 1.x and 2.x
[m2e] Avoid runtime errors due to API changes between 1.x and 2.x
[m2e] Ensure a linkable method exists in M2E 2.x
Add tests for default java import behaviours
Tom Tresansky (1):
gradle: Use an ArtifactView for jar library elements selection
Wouter Born (2):
Fix maven plugins link in README.md
Index only JAR artifacts in IndexerMojo
dependabot[bot] (128):
build(deps): Bump github/codeql-action from 2.1.31 to 2.1.32
build(deps): Bump ruby/setup-ruby from 1.121.0 to 1.123.0
build(deps): Bump github/codeql-action from 2.1.32 to 2.1.33
build(deps): Bump maven-install-plugin from 3.0.1 to 3.1.0 in /maven
build(deps): Bump actions/setup-java from 3.6.0 to 3.7.0
build(deps): Bump github/codeql-action from 2.1.33 to 2.1.35
build(deps): Bump ruby/setup-ruby from 1.123.0 to 1.126.0
build(deps): Bump actions/setup-java
build(deps): Bump ruby/setup-ruby from 1.126.0 to 1.127.0
build(deps): Bump nokogiri from 1.13.9 to 1.13.10 in /docs
build(deps): Bump github/codeql-action from 2.1.35 to 2.1.36
build(deps): Bump actions/setup-java from 3.8.0 to 3.9.0
build(deps): Bump github/codeql-action from 2.1.36 to 2.1.37
build(deps): Bump actions/checkout from 3.1.0 to 3.2.0
build(deps): Bump maven-invoker-plugin in /maven-plugins
build(deps): Bump actions/stale from 6.0.1 to 7.0.0
build(deps): Bump ruby/setup-ruby from 1.127.0 to 1.128.0
build(deps): Bump ruby/setup-ruby from 1.128.0 to 1.131.0
build(deps): Bump ruby/setup-ruby from 1.131.0 to 1.133.0
build(deps): Bump actions/download-artifact from 3.0.1 to 3.0.2
build(deps): Bump actions/checkout from 3.2.0 to 3.3.0
build(deps): Bump ruby/setup-ruby from 1.133.0 to 1.133.1
build(deps): Bump actions/upload-artifact from 3.1.1 to 3.1.2
build(deps): Bump ruby/setup-ruby from 1.133.1 to 1.133.2
build(deps): Bump junit-jupiter from 5.9.1 to 5.9.2 in
build(deps): Bump github/codeql-action from 2.1.37 to 2.1.38
build(deps): Bump step-security/harden-runner from 2.0.0 to 2.1.0
build(deps): Bump maven-plugin-plugin in /maven-plugins
build(deps): Bump maven-plugin-annotations in /maven-plugins
build(deps-dev): Bump assertj-core
build(deps): Bump github/codeql-action from 2.1.38 to 2.1.39
build(deps): Bump ruby/setup-ruby from 1.133.2 to 1.134.0
build(deps): Bump commonmarker from 0.23.6 to 0.23.7 in /docs
build(deps): Bump webrick from 1.7.0 to 1.8.1 in /docs
build(deps): Bump github/codeql-action from 2.1.39 to 2.2.1
build(deps): Bump activesupport from 6.0.5.1 to 6.0.6.1 in /docs
build(deps-dev): Bump github-pages from 227 to 228 in /docs
build(deps): Bump ruby/setup-ruby from 1.134.0 to 1.135.0
build(deps): Bump github/codeql-action from 2.2.1 to 2.2.2
build(deps): Bump actions/setup-java from 3.9.0 to 3.10.0
build(deps): Bump maven-deploy-plugin in /maven-plugins
build(deps): Bump github/codeql-action from 2.2.2 to 2.2.4
build(deps): Bump ruby/setup-ruby from 1.135.0 to 1.137.2
build(deps): Bump ruby/setup-ruby from 1.137.2 to 1.138.0
build(deps): Bump maven-invoker-plugin in /maven-plugins
build(deps): Bump maven-javadoc-plugin in /maven-plugins
build(deps): Bump gradle/wrapper-validation-action from 1.0.5 to 1.0.6
build(deps): Bump gradle/gradle-build-action from 2.3.3 to 2.4.0
build(deps): Bump step-security/harden-runner from 2.1.0 to 2.2.0
build(deps): Bump github/codeql-action from 2.2.4 to 2.2.5
build(deps): Bump ruby/setup-ruby from 1.138.0 to 1.139.0
build(deps): Bump maven-compiler-plugin in /maven-plugins
build(deps): Bump maven-plugin-annotations in /maven-plugins
build(deps): Bump maven-plugin-plugin in /maven-plugins
build(deps): Bump ruby/setup-ruby from 1.139.0 to 1.141.0
build(deps): Bump ruby/setup-ruby from 1.141.0 to 1.143.0
build(deps): Bump ruby/setup-ruby from 1.143.0 to 1.144.0
build(deps): Bump github/codeql-action from 2.2.5 to 2.2.6
build(deps): Bump step-security/harden-runner from 2.2.0 to 2.2.1
build(deps): Bump maven-surefire-plugin in /maven-plugins
build(deps): Bump github/codeql-action from 2.2.6 to 2.2.7
build(deps): Bump actions/checkout from 3.3.0 to 3.4.0
build(deps): Bump activesupport from 7.0.4.2 to 7.0.4.3 in /docs
build(deps): Bump ruby/setup-ruby from 1.144.0 to 1.144.1
build(deps): Bump ruby/setup-ruby from 1.144.1 to 1.144.2
build(deps): Bump flatten-maven-plugin in /maven-plugins
build(deps): Bump actions/stale from 7.0.0 to 8.0.0
build(deps): Bump github/codeql-action from 2.2.7 to 2.2.8
build(deps): Bump actions/checkout from 3.4.0 to 3.5.0
build(deps): Bump maven-deploy-plugin in /maven-plugins
build(deps): Bump maven-install-plugin in /maven-plugins
build(deps): Bump maven-resources-plugin in /maven-plugins
build(deps): Bump actions/setup-java from 3.10.0 to 3.11.0
build(deps): Bump github/codeql-action from 2.2.8 to 2.2.9
build(deps): Bump flatten-maven-plugin in /maven-plugins
build(deps): Bump maven-invoker-plugin in /maven-plugins
build(deps): Bump ruby/setup-ruby from 1.144.2 to 1.145.0
build(deps): Bump step-security/harden-runner from 2.2.1 to 2.3.0
build(deps): Bump ruby/setup-ruby from 1.145.0 to 1.146.0
build(deps): Bump github/codeql-action from 2.2.9 to 2.2.10
build(deps): Bump github/codeql-action from 2.2.10 to 2.2.11
build(deps): Bump commonmarker from 0.23.8 to 0.23.9 in /docs
build(deps): Bump nokogiri from 1.14.1 to 1.14.3 in /docs
build(deps): Bump gradle/gradle-build-action from 2.4.0 to 2.4.1
build(deps): Bump github/codeql-action from 2.2.11 to 2.2.12
build(deps): Bump actions/checkout from 3.5.0 to 3.5.2
build(deps): Bump github/codeql-action from 2.2.12 to 2.3.0
build(deps): Bump maven-plugin-plugin in /maven-plugins
build(deps): Bump maven-plugin-annotations in /maven-plugins
build(deps): Bump ruby/setup-ruby from 1.146.0 to 1.147.0
build(deps): Bump junit-bom from 5.9.2 to 5.9.3 in /maven-plugins
build(deps): Bump github/codeql-action from 2.3.0 to 2.3.3
build(deps): Bump step-security/harden-runner from 2.3.0 to 2.4.0
build(deps): Bump gradle/gradle-build-action from 2.4.1 to 2.4.2
build(deps): Bump maven-surefire-plugin in /maven-plugins
build(deps): Bump flatten-maven-plugin in /maven-plugins
build(deps): Bump ruby/setup-ruby from 1.147.0 to 1.149.0
build(deps): Bump maven-plugin-annotations in /maven-plugins
build(deps): Bump maven-plugin-plugin in /maven-plugins
build(deps): Bump ruby/setup-ruby from 1.149.0 to 1.150.0
build(deps): Bump maven-source-plugin in /maven-plugins
build(deps): Bump github/codeql-action from 2.3.3 to 2.3.4
build(deps): Bump github/codeql-action from 2.3.4 to 2.3.5
build(deps): Bump github/codeql-action from 2.3.5 to 2.3.6
build(deps): Bump maven-surefire-plugin in /maven-plugins
build(deps): Bump ruby/setup-ruby from 1.150.0 to 1.151.0
build(deps): Bump github/codeql-action from 2.3.6 to 2.13.4
build(deps): Bump actions/checkout from 3.5.2 to 3.5.3
build(deps): Bump ruby/setup-ruby from 1.151.0 to 1.152.0
build(deps): Bump maven-invoker-plugin in /maven-plugins
build(deps): Bump step-security/harden-runner from 2.4.0 to 2.4.1
build(deps): Bump gradle/gradle-build-action from 2.4.2 to 2.6.0
build(deps): Bump gradle/gradle-build-action from 2.6.0 to 2.6.1
build(deps): Bump org.junit.jupiter:junit-jupiter in /gradle-plugins
build(deps): Bump org.junit.jupiter:junit-jupiter in /gradle-plugins
build(deps): Bump actions/setup-java from 3.11.0 to 3.12.0
build(deps): Bump step-security/harden-runner from 2.4.1 to 2.5.0
build(deps): Bump gradle/gradle-build-action from 2.6.1 to 2.7.0
build(deps): Bump org.junit:junit-bom in /maven-plugins
build(deps-dev): Bump commonmarker from 0.23.9 to 0.23.10 in /docs
build(deps): Bump step-security/harden-runner from 2.5.0 to 2.5.1
build(deps): Bump org.apache.maven:maven-core
build(deps): Bump gradle/gradle-build-action from 2.7.0 to 2.7.1
build(deps-dev): Bump activesupport from 7.0.4.3 to 7.0.7.2 in /docs
build(deps): Bump actions/checkout from 3.5.3 to 3.6.0
build(deps): Bump gradle/gradle-build-action from 2.7.1 to 2.8.0
build(deps): Bump actions/checkout from 3.6.0 to 4.0.0
build(deps): Bump actions/upload-artifact from 3.1.2 to 3.1.3
scottslewis (5):
Removed Bundle-Version from serviceTemplate bnd.bnd
Removed meta-data from bnd.bnd.
Minor cleanup
Undid previous generalization. Don't want to expose BundleContext
Enhanced P2 Repo Refresh Action label to include P2Index.url