This is an automated email from the ASF dual-hosted git repository.

paulk pushed a commit to branch GROOVY_4_0_X
in repository https://gitbox.apache.org/repos/asf/groovy.git

commit 2308f459a6ddb8b7caeb370ac7704f83a1a556a0
Author: Paul King <[email protected]>
AuthorDate: Tue Apr 15 10:42:21 2025 +1000

    partial sync with Groovy 5
---
 .../groovy/gradle/GroovyLibraryExtension.groovy    | 58 +++++++++++-----------
 1 file changed, 30 insertions(+), 28 deletions(-)

diff --git 
a/build-logic/src/main/groovy/org/apache/groovy/gradle/GroovyLibraryExtension.groovy
 
b/build-logic/src/main/groovy/org/apache/groovy/gradle/GroovyLibraryExtension.groovy
index d134882796..456784658e 100644
--- 
a/build-logic/src/main/groovy/org/apache/groovy/gradle/GroovyLibraryExtension.groovy
+++ 
b/build-logic/src/main/groovy/org/apache/groovy/gradle/GroovyLibraryExtension.groovy
@@ -20,6 +20,7 @@ package org.apache.groovy.gradle
 
 import groovy.transform.CompileStatic
 import org.gradle.api.Action
+import org.gradle.api.Project
 import org.gradle.api.Task
 import org.gradle.api.artifacts.Configuration
 import org.gradle.api.artifacts.ConfigurationContainer
@@ -60,20 +61,20 @@ class GroovyLibraryExtension {
     final JavaPluginExtension javaPluginExtension
     final SoftwareComponentContainer components
     final ConfigurationContainer configurations
-    final TaskContainer tasks
+    private final String projectName
     final ProjectLayout layout
+    final TaskContainer tasks
 
     @Inject
     GroovyLibraryExtension(ObjectFactory factory,
-                           ProjectLayout layout,
                            SharedConfiguration sharedConfiguration,
                            JavaPluginExtension javaPluginExtension,
                            SoftwareComponentContainer components,
                            ConfigurationContainer configurations,
+                           Project project, ProjectLayout layout,
                            TaskContainer tasks
     ) {
         this.objects = factory
-        this.layout = layout
         this.sharedConfiguration = sharedConfiguration
         this.includeInGroovyAll = factory.property(Boolean).convention(true)
         this.grooid = factory.property(Boolean).convention(false)
@@ -82,6 +83,8 @@ class GroovyLibraryExtension {
         this.javaPluginExtension = javaPluginExtension
         this.components = components
         this.configurations = configurations
+        this.projectName = project.name
+        this.layout = layout
         this.tasks = tasks
     }
 
@@ -125,9 +128,9 @@ class GroovyLibraryExtension {
             it.createManifest = false
             it.includedResources = resources
             it.outputFile.set(layout.buildDirectory.file(
-                    tasks.named('jar', Jar).map { jar ->
-                        
"libs/${jar.archiveBaseName.get()}-${jar.archiveVersion.get()}-grooid.jar"
-                    }
+                tasks.named('jar', Jar).map { jar ->
+                    
"libs/${jar.archiveBaseName.get()}-${jar.archiveVersion.get()}-grooid.jar"
+                }
             ))
         }
         def androidRuntime = configurations.create("androidRuntimeElements") { 
Configuration it ->
@@ -192,7 +195,7 @@ class GroovyLibraryExtension {
     void configureManifest(Manifest manifest, List<String> exclusions) {
         manifest.from(createBaseManifest()) { ManifestMergeSpec spec ->
             spec.eachEntry { ManifestMergeDetails details ->
-                if (exclusions.any { it == details.key }) {
+                if (exclusions.contains(details.getKey())) {
                     details.exclude()
                 }
             }
@@ -201,24 +204,23 @@ class GroovyLibraryExtension {
 
     private Manifest createBaseManifest() {
         def groovyBundleVersion = sharedConfiguration.groovyBundleVersion.get()
-        javaPluginExtension.manifest { Manifest mn ->
-            mn.attributes(
-                    'Extension-Name': 'groovy',
-                    'Specification-Title': 'Groovy: a powerful, multi-faceted 
language for the JVM',
-                    'Specification-Version': groovyBundleVersion,
-                    'Specification-Vendor': 'The Apache Software Foundation',
-                    'Implementation-Title': 'Groovy: a powerful, multi-faceted 
language for the JVM',
-                    'Implementation-Version': groovyBundleVersion,
-                    'Implementation-Vendor': 'The Apache Software Foundation',
-                    'Bundle-ManifestVersion': '2',
-                    'Bundle-Description': 'Groovy Runtime',
-                    'Bundle-Version': groovyBundleVersion,
-                    'Bundle-Vendor': 'The Apache Software Foundation',
-                    'Bundle-ClassPath': '.',
-                    'Eclipse-BuddyPolicy': 'dependent',
-                    'DynamicImport-Package': '*')
+        javaPluginExtension.manifest {
+            attributes(
+                'Bundle-ManifestVersion': '2',
+                'Bundle-Description'    : 'Groovy Runtime',
+                'Bundle-Vendor'         : 'The Apache Software Foundation',
+                'Bundle-Version'        : groovyBundleVersion,
+                'Bundle-License'        : 'Apache-2.0',
+                'DynamicImport-Package' : '*',
+                'Eclipse-BuddyPolicy'   : 'dependent',
+                'Specification-Title'   : 'Groovy: a powerful, multi-faceted 
language for the JVM',
+                'Specification-Vendor'  : 'The Apache Software Foundation',
+                'Specification-Version' : groovyBundleVersion,
+                'Implementation-Title'  : 'Groovy: a powerful, multi-faceted 
language for the JVM',
+                'Implementation-Vendor' : 'The Apache Software Foundation',
+                'Implementation-Version': groovyBundleVersion
+            )
         }
-
     }
 
     class ModuleDescriptorSpec {
@@ -226,11 +228,11 @@ class GroovyLibraryExtension {
         String staticExtensionClasses = ''
 
         private void build() {
-            def moduleDescriptor = tasks.register("moduleDescriptor", 
WriteExtensionDescriptorTask) {
-                it.extensionClasses = extensionClasses
-                it.staticExtensionClasses = staticExtensionClasses
+            def moduleDescriptor = tasks.register('moduleDescriptor', 
WriteExtensionDescriptorTask) { t ->
+                t.extensionClasses = extensionClasses
+                t.staticExtensionClasses = staticExtensionClasses
             }
-            tasks.named("processResources") { Task t ->
+            tasks.named('processResources') { Task t ->
                 t.dependsOn(moduleDescriptor)
             }
         }

Reply via email to