diff --git a/build/reports/problems/problems-report.html b/build/reports/problems/problems-report.html new file mode 100644 index 0000000000..1a94b5c73c --- /dev/null +++ b/build/reports/problems/problems-report.html @@ -0,0 +1,663 @@ + + + + + + + + + + + + + Gradle Configuration Cache + + + +
+ +
+ Loading... +
+ + + + + + diff --git a/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/AbstractBndrun.java b/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/AbstractBndrun.java index 8834181abf..3f98ec8c7e 100644 --- a/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/AbstractBndrun.java +++ b/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/AbstractBndrun.java @@ -289,7 +289,10 @@ public AbstractBndrun() { } else { bundles(mainSourceSet.getRuntimeClasspath()); bundles(artifacts); - properties.convention(Maps.of("project", "__convention__")); + // For Gradle 9 compatibility, we no longer provide Project/Task access by default. + // Users must explicitly set needed properties to use them in bnd instructions. + // See: https://github.com/bndtools/bnd/tree/master/gradle-plugins#gradle-configuration-cache-support + properties.convention(Collections.emptyMap()); } } @@ -342,8 +345,6 @@ public void bndrunAction() throws Exception { if (workspace.isEmpty()) { Properties gradleProperties = new BeanProperties(runWorkspace.getProperties()); gradleProperties.putAll(unwrap(getProperties())); - gradleProperties.computeIfPresent("project", (k, v) -> "__convention__".equals(v) ? getProject() : v); - gradleProperties.putIfAbsent("task", this); run.setParent(new Processor(runWorkspace, gradleProperties, false)); run.clear(); run.forceRefresh(); // setBase must be called after forceRefresh diff --git a/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/BundleTaskExtension.java b/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/BundleTaskExtension.java index e299d4a894..e0e68f2b92 100644 --- a/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/BundleTaskExtension.java +++ b/gradle-plugins/biz.aQute.bnd.gradle/src/main/java/aQute/bnd/gradle/BundleTaskExtension.java @@ -211,8 +211,11 @@ public BundleTaskExtension(org.gradle.api.tasks.bundling.Jar task) { SourceSet mainSourceSet = sourceSets(project).getByName(SourceSet.MAIN_SOURCE_SET_NAME); setSourceSet(mainSourceSet); classpath(jarLibraryElements(task, mainSourceSet.getCompileClasspathConfigurationName())); + // For Gradle 9 compatibility, we no longer provide Project/Task access by default. + // Users must explicitly set needed properties to use them in bnd instructions. + // See: https://github.com/bndtools/bnd/tree/master/gradle-plugins#gradle-configuration-cache-support properties = objects.mapProperty(String.class, Object.class) - .convention(Maps.of("project", "__convention__")); + .convention(Collections.emptyMap()); defaultBundleSymbolicName = task.getArchiveBaseName() .zip(task.getArchiveClassifier(), (baseName, classifier) -> classifier.isEmpty() ? baseName : baseName + "-" + classifier); defaultBundleVersion = task.getArchiveVersion() @@ -403,9 +406,6 @@ public void execute(Task t) { // create Builder Properties gradleProperties = new BeanProperties(); gradleProperties.putAll(unwrap(getProperties())); - gradleProperties.computeIfPresent("project", - (k, v) -> "__convention__".equals(v) ? getTask().getProject() : v); - gradleProperties.putIfAbsent("task", getTask()); try (Builder builder = new Builder(new Processor(gradleProperties, false))) { // load bnd properties File temporaryBndFile = File.createTempFile("bnd", ".bnd", getTask().getTemporaryDir());