[Git][java-team/takari-polyglot-maven][master] 12 commits: d/control: build with headless version of the jdk

Jérôme Charaoui (@lavamind) gitlab at salsa.debian.org
Tue Oct 24 01:43:31 BST 2023



Jérôme Charaoui pushed to branch master at Debian Java Maintainers / takari-polyglot-maven


Commits:
bfdad9ef by Jérôme Charaoui at 2023-10-23T10:23:04-04:00
d/control: build with headless version of the jdk

- - - - -
5971b287 by Jérôme Charaoui at 2023-10-23T13:33:27-04:00
d/control: move Conflicts field to binary package

This field is not recognized as a Build-Dep field...

- - - - -
318c2109 by Jérôme Charaoui at 2023-10-23T13:34:16-04:00
build polyglot-ruby extension

- - - - -
495f2950 by Jérôme Charaoui at 2023-10-23T15:59:55-04:00
d/patches: disable polyglot-ruby tests

- - - - -
fbe8bde7 by Jérôme Charaoui at 2023-10-23T16:00:00-04:00
d/patches: polyglot-ruby's scripts need stdlib

- - - - -
20ab974b by Jérôme Charaoui at 2023-10-23T16:03:18-04:00
d/control: add myself to Uploaders

- - - - -
38d7382d by Jérôme Charaoui at 2023-10-23T16:05:40-04:00
d/control: run wrap-and-sort -bastk

- - - - -
e4839fe2 by Jérôme Charaoui at 2023-10-23T16:05:41-04:00
d/control: remove dropped -doc from Suggests

- - - - -
bf78989b by Jérôme Charaoui at 2023-10-23T16:24:21-04:00
d/control: split binary package per extension

- - - - -
5babf3a0 by Jérôme Charaoui at 2023-10-23T16:25:53-04:00
override javalib-but-no-public-jars lintian warning

- - - - -
cb48e27e by Jérôme Charaoui at 2023-10-23T16:28:37-04:00
d/control: add multi-arch hints

- - - - -
a109f28d by Jérôme Charaoui at 2023-10-23T16:29:24-04:00
Update changelog for 0.4.11-2 release

- - - - -


12 changed files:

- + debian/README.source
- debian/changelog
- debian/control
- debian/libtakari-polyglot-maven-java.poms
- + debian/libtakari-polyglot-maven-plugin-java.lintian-overrides
- debian/maven.ignoreRules
- debian/maven.rules
- + debian/patches/add-stdlib-path.patch
- + debian/patches/disable-failing-ruby-tests.patch
- debian/patches/fix_packaging.patch
- debian/patches/series
- debian/rules


Changes:

=====================================
debian/README.source
=====================================
@@ -0,0 +1,15 @@
+Note about maven-tools
+======================
+
+The Ruby gem maven-tools is required for polyglot-ruby's parser to function. It
+must be embedded in the JAR file, otherwise the jruby interpreter is unable to
+find it.
+
+Although maven-tools depends on virtus, which has its own set of dependencies,
+it was found that the parser works fine by itself, and the dependencies are not
+actually required at runtime.
+
+This seems to be true for building JRuby, but it may not be for other projects,
+packages or uses of polyglot-ruby. If an issue comes with because the
+maven-tools dependencies are unsatisfied, then this should be fixed by embedded
+these into the JAR file as well.


=====================================
debian/changelog
=====================================
@@ -1,3 +1,18 @@
+takari-polyglot-maven (0.4.11-2) unstable; urgency=medium
+
+  * build polyglot-ruby extension
+  * d/control:
+    + split binary package per extension
+    + build with headless version of the jdk
+    + add multi-arch hints
+    + add myself to Uploaders
+    - remove dropped -doc from Suggests
+  * d/patches:
+    + disable polyglot-ruby tests
+    + polyglot-ruby's scripts need stdlib
+
+ -- Jérôme Charaoui <jerome at riseup.net>  Mon, 23 Oct 2023 15:53:06 -0400
+
 takari-polyglot-maven (0.4.11-1) unstable; urgency=medium
 
   * New upstream version 0.4.11


=====================================
debian/control
=====================================
@@ -4,17 +4,18 @@ Priority: optional
 Maintainer: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
 Uploaders:
  Sudip Mukherjee <sudipm.mukherjee at gmail.com>,
- tony mancill <tmancill at debian.org>
+ tony mancill <tmancill at debian.org>,
+ Jérôme Charaoui <jerome at riseup.net>,
 Build-Depends:
  debhelper-compat (= 13),
- default-jdk,
+ default-jdk-headless,
  groovy,
- junit4,
+ jruby (>= 9.3.9.0),
  libcommons-logging-java,
+ libjruby-maven-plugin-java,
  libplexus-component-metadata-java,
- maven-debian-helper
-Conflicts:
- libpolyglot-maven-java
+ maven-debian-helper,
+ ruby-maven-tools,
 Standards-Version: 4.6.2
 Rules-Requires-Root: no
 Vcs-Git: https://salsa.debian.org/java-team/takari-polyglot-maven.git
@@ -23,8 +24,54 @@ Homepage: https://github.com/takari/polyglot-maven
 
 Package: libtakari-polyglot-maven-java
 Architecture: all
-Depends: ${misc:Depends}, ${maven:Depends}
-Suggests: ${maven:OptionalDepends}, libtakari-polyglot-maven-java-doc
-Description: modules to enable Maven usage in others JVM languages
+Multi-Arch: foreign
+Conflicts:
+ libpolyglot-maven-java,
+Depends:
+ libcommons-logging-java (>= 1.2),
+ libplexus-utils2-java (>= 2.x),
+ ${misc:Depends},
+Description: modules to enable Maven usage in others JVM languages - common extension
+ Polyglot for Maven is a set of extensions for Maven 3.3.1+ that allows
+ the POM model to be written in dialects other than XML.
+ .
+ This package contains the polyglot-common extension.
+
+Package: libtakari-polyglot-groovy-java
+Architecture: all
+Multi-Arch: foreign
+Depends:
+ groovy,
+ libtakari-polyglot-maven-java,
+ ${misc:Depends},
+Description: modules to enable Maven usage in others JVM languages - groovy extension
+ Polyglot for Maven is a set of extensions for Maven 3.3.1+ that allows
+ the POM model to be written in dialects other than XML.
+ .
+ This package contains the polyglot-groovy extension.
+
+Package: libtakari-polyglot-maven-plugin-java
+Architecture: all
+Multi-Arch: foreign
+Depends:
+ libtakari-polyglot-maven-java,
+ ${misc:Depends},
+Description: modules to enable Maven usage in others JVM languages - maven plugin
+ Polyglot for Maven is a set of extensions for Maven 3.3.1+ that allows
+ the POM model to be written in dialects other than XML.
+ .
+ This package contains the polyglot maven plugin.
+
+Package: libtakari-polyglot-ruby-java
+Architecture: all
+Multi-Arch: foreign
+Depends:
+ jruby,
+ libtakari-polyglot-maven-java,
+ libtakari-polyglot-maven-plugin-java,
+ ${misc:Depends},
+Description: modules to enable Maven usage in others JVM languages - ruby extension
  Polyglot for Maven is a set of extensions for Maven 3.3.1+ that allows
  the POM model to be written in dialects other than XML.
+ .
+ This package contains the polyglot-ruby extension.


=====================================
debian/libtakari-polyglot-maven-java.poms
=====================================
@@ -25,16 +25,16 @@
 #   --site-xml=<location>: Optional, the location for site.xml if it needs to be installed.
 #     Empty by default. [mh_install]
 #
-pom.xml --no-parent --has-package-version
-polyglot-common/pom.xml --has-package-version --java-lib
+pom.xml --no-parent --has-package-version --package=libtakari-polyglot-maven-java
+polyglot-common/pom.xml --has-package-version --package=libtakari-polyglot-maven-java
 polyglot-atom/pom.xml --ignore
-polyglot-ruby/pom.xml --ignore
+polyglot-ruby/pom.xml --has-package-version --package=libtakari-polyglot-ruby-java
 polyglot-scala/pom.xml --ignore
-polyglot-groovy/pom.xml --has-package-version --java-lib
+polyglot-groovy/pom.xml --has-package-version --package=libtakari-polyglot-groovy-java
 polyglot-yaml/pom.xml --ignore
 polyglot-clojure/pom.xml --ignore
 polyglot-xml/pom.xml --ignore
 polyglot-java/pom.xml --ignore
 polyglot-kotlin/pom.xml --ignore
-polyglot-maven-plugin/pom.xml --ignore
+polyglot-maven-plugin/pom.xml --has-package-version --package=libtakari-polyglot-maven-plugin-java
 polyglot-translate-plugin/pom.xml --ignore


=====================================
debian/libtakari-polyglot-maven-plugin-java.lintian-overrides
=====================================
@@ -0,0 +1,2 @@
+# Jars for Maven plugins are only deployed in /usr/share/maven-repo
+javalib-but-no-public-jars


=====================================
debian/maven.ignoreRules
=====================================
@@ -1,15 +1,17 @@
 
+io.takari.maven.plugins takari-lifecycle-plugin * * * *
 io.takari.polyglot polyglot-atom jar * * *
 io.takari.polyglot polyglot-clojure jar * * *
 io.takari.polyglot polyglot-java jar * * *
 io.takari.polyglot polyglot-kotlin jar * * *
-io.takari.polyglot polyglot-maven-plugin takari-maven-plugin * * *
-io.takari.polyglot polyglot-ruby jar * * *
 io.takari.polyglot polyglot-scala jar * * *
 io.takari.polyglot polyglot-translate-plugin takari-maven-plugin * * *
 io.takari.polyglot polyglot-xml jar * * *
 io.takari.polyglot polyglot-yaml jar * * *
 org.apache.maven.plugins maven-enforcer-plugin * * * *
 org.apache.maven.plugins maven-release-plugin * * * *
+org.apache.maven.plugins maven-invoker-plugin * * * *
 org.codehaus.groovy groovy-eclipse-batch * * * *
 org.codehaus.groovy groovy-eclipse-compiler * * * *
+org.jruby.maven mavengem-wagon * * * *
+rubygems * * * *


=====================================
debian/maven.rules
=====================================
@@ -1,6 +1,7 @@
 
 io.takari.polyglot polyglot-common jar s/.*/debian/ * *
 io.takari.polyglot polyglot-groovy jar s/.*/debian/ * *
+io.takari.polyglot polyglot-maven-plugin * * * *
 io.takari.polyglot polyglot pom s/.*/debian/ * *
 junit junit jar s/4\..*/4.x/ * *
 org.codehaus.plexus plexus-utils jar s/.*/2.x/ * *


=====================================
debian/patches/add-stdlib-path.patch
=====================================
@@ -0,0 +1,27 @@
+Description: Add JRuby stdlib path to ScriptingContainer load path
+Author: Jérôme Charaoui <jerome at riseup.net>
+Date: Mon, 23 Oct 2023 15:44:00 -0400
+
+This puts Debian's JRuby stdlib path onto the ScriptingContainer's load path.
+
+Forwarded: not-needed
+Index: takari-polyglot-maven/polyglot-ruby/src/main/java/org/sonatype/maven/polyglot/ruby/RubyParser.java
+===================================================================
+--- takari-polyglot-maven.orig/polyglot-ruby/src/main/java/org/sonatype/maven/polyglot/ruby/RubyParser.java	2023-10-23 15:40:17.956416283 -0400
++++ takari-polyglot-maven/polyglot-ruby/src/main/java/org/sonatype/maven/polyglot/ruby/RubyParser.java	2023-10-23 15:40:46.396555368 -0400
+@@ -12,6 +12,7 @@
+ import java.io.IOException;
+ import java.io.InputStream;
+ import java.util.Map;
++import java.util.Arrays;
+ 
+ import org.apache.maven.model.Model;
+ import org.jruby.embed.IsolatedScriptingContainer;
+@@ -39,6 +40,7 @@
+     {
+         this.executeManager = executeManager;
+         this.jruby = new IsolatedScriptingContainer();
++        this.jruby.setLoadPaths(Arrays.asList("/usr/share/jruby/lib/ruby/stdlib"));
+         this.parser = jruby.runScriptlet( PathType.CLASSPATH, "parser.rb" );
+         this.factory = new RubyExecuteTaskFactory( jruby );
+     }


=====================================
debian/patches/disable-failing-ruby-tests.patch
=====================================
@@ -0,0 +1,27 @@
+Description: Disable polyglot-ruby tests
+Author: Jérôme Charaoui <jerome at riseup.net>
+Date: Mon, 23 Oct 2023 15:36:39 -0400
+
+This disables polyglot-ruby tests because they require the spec directory from
+the maven-tools gem and its not available from the binary package.
+
+Forwarded: not-needed
+Index: takari-polyglot-maven/polyglot-ruby/pom.xml
+===================================================================
+--- takari-polyglot-maven.orig/polyglot-ruby/pom.xml	2023-10-23 15:56:20.850000377 -0400
++++ takari-polyglot-maven/polyglot-ruby/pom.xml	2023-10-23 15:56:56.414216595 -0400
+@@ -180,6 +180,14 @@
+             </configuration>
+           </plugin>
+ 
++		  <plugin>
++			<groupId>org.apache.maven.plugins</groupId>
++			<artifactId>maven-surefire-plugin</artifactId>
++			<configuration>
++                <skipTests>true</skipTests>
++			</configuration>
++		  </plugin>
++
+         </plugins>
+       </build>
+ 


=====================================
debian/patches/fix_packaging.patch
=====================================
@@ -5,8 +5,10 @@ Forwarded: not-needed
 
 ---
 
---- takari-polyglot-maven-0.4.5.orig/polyglot-common/pom.xml
-+++ takari-polyglot-maven-0.4.5/polyglot-common/pom.xml
+Index: takari-polyglot-maven/polyglot-common/pom.xml
+===================================================================
+--- takari-polyglot-maven.orig/polyglot-common/pom.xml	2023-10-23 11:28:59.281239093 -0400
++++ takari-polyglot-maven/polyglot-common/pom.xml	2023-10-23 11:28:59.277239076 -0400
 @@ -14,7 +14,7 @@
    </parent>
  
@@ -16,8 +18,10 @@ Forwarded: not-needed
    <name>Polyglot :: Common</name>
  
    <build>
---- takari-polyglot-maven-0.4.5.orig/polyglot-groovy/pom.xml
-+++ takari-polyglot-maven-0.4.5/polyglot-groovy/pom.xml
+Index: takari-polyglot-maven/polyglot-groovy/pom.xml
+===================================================================
+--- takari-polyglot-maven.orig/polyglot-groovy/pom.xml	2023-10-23 11:28:59.281239093 -0400
++++ takari-polyglot-maven/polyglot-groovy/pom.xml	2023-10-23 11:28:59.277239076 -0400
 @@ -14,7 +14,7 @@
    </parent>
  
@@ -37,3 +41,29 @@ Forwarded: not-needed
          <dependencies>
            <dependency>
              <groupId>org.codehaus.groovy</groupId>
+Index: takari-polyglot-maven/polyglot-ruby/pom.xml
+===================================================================
+--- takari-polyglot-maven.orig/polyglot-ruby/pom.xml	2023-10-21 11:12:02.127551892 -0400
++++ takari-polyglot-maven/polyglot-ruby/pom.xml	2023-10-23 11:29:30.461377460 -0400
+@@ -19,7 +19,7 @@
+   </parent>
+ 
+   <artifactId>polyglot-ruby</artifactId>
+-  <packaging>takari-jar</packaging>
++  <packaging>jar</packaging>
+   <name>Polyglot :: Ruby</name>
+ 
+   <dependencies>
+Index: takari-polyglot-maven/polyglot-maven-plugin/pom.xml
+===================================================================
+--- takari-polyglot-maven.orig/polyglot-maven-plugin/pom.xml	2023-10-23 11:30:06.000000000 -0400
++++ takari-polyglot-maven/polyglot-maven-plugin/pom.xml	2023-10-23 11:30:31.805649676 -0400
+@@ -15,7 +15,7 @@
+ 
+   <artifactId>polyglot-maven-plugin</artifactId>
+   <name>Polyglot :: Maven Plugin</name>
+-  <packaging>takari-maven-plugin</packaging>
++  <packaging>maven-plugin</packaging>
+ 
+   <dependencies>
+     <dependency>


=====================================
debian/patches/series
=====================================
@@ -1 +1,3 @@
 fix_packaging.patch
+add-stdlib-path.patch
+disable-failing-ruby-tests.patch


=====================================
debian/rules
=====================================
@@ -2,3 +2,8 @@
 
 %:
 	dh $@
+
+execute_before_dh_auto_build:
+	# embed maven-tools into polyglot-ruby jar
+	mkdir -p polyglot-ruby/target/classes
+	cp -a /usr/share/rubygems-integration/all/gems/maven-tools-*/lib/* polyglot-ruby/target/classes



View it on GitLab: https://salsa.debian.org/java-team/takari-polyglot-maven/-/compare/6e14fc3d49ae51386b5e831da9a8253e0e2d07d6...a109f28da31609cb7fb3b348152fe1d034c69f81

-- 
View it on GitLab: https://salsa.debian.org/java-team/takari-polyglot-maven/-/compare/6e14fc3d49ae51386b5e831da9a8253e0e2d07d6...a109f28da31609cb7fb3b348152fe1d034c69f81
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-java-commits/attachments/20231024/587b8272/attachment.htm>


More information about the pkg-java-commits mailing list