Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package javapackages-tools for openSUSE:Factory checked in at 2026-05-13 20:58:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/javapackages-tools (Old) and /work/SRC/openSUSE:Factory/.javapackages-tools.new.1966 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "javapackages-tools" Wed May 13 20:58:54 2026 rev:49 rq:1352812 version:6.5.1 Changes: -------- --- /work/SRC/openSUSE:Factory/javapackages-tools/javapackages-tools.changes 2025-09-29 16:32:46.759805713 +0200 +++ /work/SRC/openSUSE:Factory/.javapackages-tools.new.1966/javapackages-tools.changes 2026-05-13 20:59:00.280315924 +0200 @@ -1,0 +2,20 @@ +Tue May 12 16:07:20 UTC 2026 - Fridrich Strba <[email protected]> + +- Upgrade to upstream version 6.5.1 + * Changes + Bump actions/setup-python from 5 to 6 + Bump actions/checkout from 4 to 6 + Bump codecov/codecov-action from 4.6.0 to 5.5.2 + Remove Codecov call from GitHub CI workflow + Remove unused and outdated Vagrantfile + Java launcher script improvements + Add jpackage_script manpage + Implement feature contitionals + Fix installation of jpackage_script.7 manpage +- Modified patch: + * python-optional.patch + * suse-use-libdir.patch + + rediff +- Make the gradle and ivy support configurable + +------------------------------------------------------------------- @@ -203,5 +222,0 @@ - -------------------------------------------------------------------- -Wed Nov 9 08:50:08 UTC 2022 - Fridrich Strba <[email protected]> - -- Reflect the removal of gradle from repositories Old: ---- 6.4.1.tar.gz New: ---- 6.5.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ javapackages-tools.spec ++++++ --- /var/tmp/diff_new_pack.5flM2i/_old 2026-05-13 20:59:01.108350064 +0200 +++ /var/tmp/diff_new_pack.5flM2i/_new 2026-05-13 20:59:01.112350229 +0200 @@ -1,7 +1,7 @@ # # spec file for package javapackages-tools # -# Copyright (c) 2025 SUSE LLC +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,13 +24,15 @@ %bcond_with python %endif %if %{with python} +%bcond_with gradle +%bcond_without ivy %{?!python_module:%define python_module() python3-%{**}} %define skip_python2 1 Name: javapackages-tools-%{flavor} %else Name: javapackages-tools %endif -Version: 6.4.1 +Version: 6.5.1 Release: 0 Summary: Macros and scripts for Java packaging support License: BSD-3-Clause @@ -54,8 +56,8 @@ %if %{with python} BuildRequires: javapackages-filesystem %else -Requires: javapackages-filesystem = %{version}-%{release} Requires: findutils +Requires: javapackages-filesystem = %{version}-%{release} %endif # Used on too many places Provides: jpackage-utils = %{version} @@ -89,6 +91,16 @@ install their content. %if %{with python} +%package -n javapackages-gradle +Summary: Local mode for Gradle (files) +Group: Development/Languages/Java +Requires: javapackages-local = %{version} +Requires: javapackages-tools = %{version} + +%description -n javapackages-gradle +This package contains files needed by local mode for Gradle, which +allows artifact resolution using XMvn resolver. + %package -n javapackages-ivy Summary: Local mode for Apache Ivy (files) Group: Development/Languages/Java @@ -146,10 +158,22 @@ %build %configure \ +%if %{with gradle} + --with-gradle \ +%else + --without-gradle \ +%endif +%if %{with ivy} + --with-ivy \ +%else + --without-ivy \ +%endif %if %{with python} - --pyinterpreter=%{_bindir}/python3 + --pyinterpreter=%{_bindir}/python3 \ + --with-generators %else - --pyinterpreter=%{nil} + --pyinterpreter=%{nil} \ + --without-generators %endif ./build %if %{with python} @@ -195,9 +219,7 @@ %{_mandir}/man1/find-jar.1 %{_datadir}/maven-metadata/javapackages-metadata.xml %{_datadir}/xmvn/configuration.xml -%{_bindir}/gradle-local -%{_datadir}/gradle-local -%{_mandir}/man7/gradle_build.7 +%{_mandir}/man7/jpackage_script.7 " for i in $files; do rm -rf %{buildroot}/$i @@ -237,8 +259,15 @@ %files -n javapackages-local -f files-common -f files-compat -f files-generators %dir %{_datadir}/java-utils +%if %{with gradle} +%files -n javapackages-gradle -f files-gradle +%dir %{_datadir}/gradle-local +%endif + +%if %{with ivy} %files -n javapackages-ivy -f files-ivy %dir %{_sysconfdir}/ant.d +%endif %files %{python_files javapackages} %license LICENSE ++++++ 6.4.1.tar.gz -> 6.5.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/javapackages-6.4.1/.github/workflows/ci.yml new/javapackages-6.5.1/.github/workflows/ci.yml --- old/javapackages-6.4.1/.github/workflows/ci.yml 2025-07-04 15:26:05.000000000 +0200 +++ new/javapackages-6.5.1/.github/workflows/ci.yml 2026-02-19 16:26:31.000000000 +0100 @@ -26,16 +26,14 @@ runs-on: ubuntu-24.04 steps: - name: Checkout git repository - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: '3.10' - name: Install required Python packages - run: pip install -r requirements.txt -r test-requirements.txt codecov + run: pip install -r requirements.txt -r test-requirements.txt - name: Run configure script run: ./configure - name: Run check script run: ./check - - name: Upload coverage report to Codecov - uses: codecov/[email protected] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/javapackages-6.4.1/VERSION new/javapackages-6.5.1/VERSION --- old/javapackages-6.4.1/VERSION 2025-07-04 15:26:05.000000000 +0200 +++ new/javapackages-6.5.1/VERSION 2026-02-19 16:26:31.000000000 +0100 @@ -1 +1 @@ -6.4.1 +6.5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/javapackages-6.4.1/Vagrantfile new/javapackages-6.5.1/Vagrantfile --- old/javapackages-6.4.1/Vagrantfile 2025-07-04 15:26:05.000000000 +0200 +++ new/javapackages-6.5.1/Vagrantfile 1970-01-01 01:00:00.000000000 +0100 @@ -1,26 +0,0 @@ -# -*- mode: ruby -*- -# vi: set ft=ruby : - -$script = <<SCRIPT -dnf update -y -dnf install -y \ - rpm-build \ - make \ - asciidoc \ - dia \ - which \ - xmlto \ - python{,3} \ - python{,3}-lxml \ - python{,3}-coverage \ - python{,3}-pytest \ - python{,3}-pytest-cov \ -SCRIPT - -Vagrant.configure(2) do |config| - config.vm.box = "fedora-25" - config.vm.box_url = "https://download.fedoraproject.org/pub/fedora/linux/releases/25/CloudImages/x86_64/images/Fedora-Cloud-Base-Vagrant-25-1.3.x86_64.vagrant-libvirt.box" - config.vm.provision :shell, inline: $script - # workaround for intentionally broken symlinks in test suite: https://github.com/mitchellh/vagrant/issues/5471 - config.vm.synced_folder ".", "/vagrant", type: "rsync", rsync__args: ["--verbose", "--archive", "--delete", "-z"] -end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/javapackages-6.4.1/configure new/javapackages-6.5.1/configure --- old/javapackages-6.4.1/configure 2025-07-04 15:26:05.000000000 +0200 +++ new/javapackages-6.5.1/configure 2026-02-19 16:26:31.000000000 +0100 @@ -70,6 +70,23 @@ eval $(for _; do echo "$_"; done | sed -n 's/^--\('"$vars_re"'\)=\(.*\)$/\1="\2"/;T;p') +conds=" +ivy +gradle +generators +" + +for _ in $conds; do + eval "with_$_=true" +done + +conds_re=$(echo $conds | sed 's/ /\\|/g') +condvars_re=with_$(echo $conds | sed 's/ /\\|with_/g') + +eval $(for _; do echo "$_"; done | + sed -n 's/^--without-\('"$conds_re"'\)$/with_\1=false/;T;p') + + eval $(for _; do echo "$_"; done | sed -n 's/^--jvm=\([^=]*\)=\(.*\)$/jvms="${jvms}\1=\2 "/;T;p') @@ -90,5 +107,5 @@ eval $(sed -n 's/^%_\('"$vars_re"'\)\ *\(.*\)$/\1="\2"/;T;s/%{_\(.*}\)/${\1/;p' macros.d/macros.javapackages-filesystem) -set | sed -n 's/^\('"$vars_re"'\)=/&/;T;p' >config.status +set | sed -n 's/^\('"$vars_re\\|$condvars_re"'\)=/&/;T;p' >config.status echo "jvms=\"${jvms}\"" >>config.status diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/javapackages-6.4.1/install new/javapackages-6.5.1/install --- old/javapackages-6.4.1/install 2025-07-04 15:26:05.000000000 +0200 +++ new/javapackages-6.5.1/install 2026-02-19 16:26:31.000000000 +0100 @@ -136,6 +136,7 @@ inst_data target/rebuild-jar-repository.1 "${mandir}/man1" inst_data target/shade-jar.1 "${mandir}/man1" inst_data target/find-jar.1 "${mandir}/man1" +inst_data man/jpackage_script.7 "${mandir}/man7" inst_data configs/configuration.xml "${m2home}" @@ -202,41 +203,42 @@ inst_data target/macros.javapackages-compat "${rpmmacrodir}" -exec >files-generators +if $with_generators; then + exec >files-generators -dir "${rpmconfigdir}/fileattrs" + dir "${rpmconfigdir}/fileattrs" -inst_exec target/maven.prov "${rpmconfigdir}" maven.prov -inst_exec target/maven.req "${rpmconfigdir}" maven.req -inst_exec target/osgi.prov "${rpmconfigdir}" osgi.prov -inst_exec target/osgi.req "${rpmconfigdir}" osgi.req -inst_exec target/javadoc.req "${rpmconfigdir}" javadoc.req - -inst_data target/maven.attr "${rpmconfigdir}/fileattrs" maven.attr -inst_data target/osgi.attr "${rpmconfigdir}/fileattrs" osgi.attr -inst_data target/javadoc.attr "${rpmconfigdir}/fileattrs" javadoc.attr - -inst_config etc/javapackages-config.json "${javaconfdir}" + inst_exec target/maven.prov "${rpmconfigdir}" maven.prov + inst_exec target/maven.req "${rpmconfigdir}" maven.req + inst_exec target/osgi.prov "${rpmconfigdir}" osgi.prov + inst_exec target/osgi.req "${rpmconfigdir}" osgi.req + inst_exec target/javadoc.req "${rpmconfigdir}" javadoc.req + + inst_data target/maven.attr "${rpmconfigdir}/fileattrs" maven.attr + inst_data target/osgi.attr "${rpmconfigdir}/fileattrs" osgi.attr + inst_data target/javadoc.attr "${rpmconfigdir}/fileattrs" javadoc.attr + inst_config etc/javapackages-config.json "${javaconfdir}" +fi exec >files-maven # Nothing -exec >files-ivy - -dir "${sysconfdir}/ivy" - -inst_data configs/ivy-local-classpath "${sysconfdir}/ant.d" -inst_data configs/ivysettings.xml "${sysconfdir}/ivy" - - -exec >files-gradle +if $with_ivy; then + exec >files-ivy + dir "${sysconfdir}/ivy" + inst_data configs/ivy-local-classpath "${sysconfdir}/ant.d" + inst_data configs/ivysettings.xml "${sysconfdir}/ivy" +fi -inst_exec target/gradle-local "${bindir}" -inst_data gradle/init.gradle "${datadir}/gradle-local" -inst_data target/gradle_build.7 "${mandir}/man7" +if $with_gradle; then + exec >files-gradle + inst_exec target/gradle-local "${bindir}" + inst_data gradle/init.gradle "${datadir}/gradle-local" + inst_data target/gradle_build.7 "${mandir}/man7" +fi exec >files-python (cd ./python && "${pyinterpreter}" setup.py install -O1 --skip-build --prefix "${prefix}" --root "${DEST}") >&2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/javapackages-6.4.1/macros.d/macros.jpackage new/javapackages-6.5.1/macros.d/macros.jpackage --- old/javapackages-6.4.1/macros.d/macros.jpackage 2025-07-04 15:26:05.000000000 +0200 +++ new/javapackages-6.5.1/macros.d/macros.jpackage 2026-02-19 16:26:31.000000000 +0100 @@ -27,29 +27,33 @@ # %3 options # %4 jars (separated by ':') # %5 the name of script you wish to create +# [-h] +# do not set default JAVA_HOME +# [-c <config file name>] +# name of the configuration file # -%jpackage_script() \ +%jpackage_script(c:h) \ install -d -m 755 %{buildroot}%{_bindir} \ cat > %{buildroot}%{_bindir}/%5 << EOF \ #!/bin/bash\ #\ -# %{name} script\ +# %5 script\ # JPackage Project <http://www.jpackage.org/>\ -%{?java_home:\ +%{!-h:%{?java_home:\ # Set default JAVA_HOME\ JAVA_HOME="\\${JAVA_HOME:-%{java_home}}"\ -}\ +}}\ # Source functions library\ . @{javadir}-utils/java-functions\ \ # Source system prefs\ -if [ -f %{_sysconfdir}/java/%{name}.conf ] ; then\ - . %{_sysconfdir}/java/%{name}.conf\ +if [ -f %{_sysconfdir}/java/%{-c*}%{!-c:%{name}}.conf ] ; then\ + . %{_sysconfdir}/java/%{-c*}%{!-c:%{name}}.conf\ fi\ \ # Source user prefs\ -if [ -f \\$HOME/.%{name}rc ] ; then\ - . \\$HOME/.%{name}rc\ +if [ -f \\$HOME/.%{-c*}%{!-c:%{name}}rc ] ; then\ + . \\$HOME/.%{-c*}%{!-c:%{name}}rc\ fi\ \ # Configuration\ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/javapackages-6.4.1/man/jpackage_script.7 new/javapackages-6.5.1/man/jpackage_script.7 --- old/javapackages-6.4.1/man/jpackage_script.7 1970-01-01 01:00:00.000000000 +0100 +++ new/javapackages-6.5.1/man/jpackage_script.7 2026-02-19 16:26:31.000000000 +0100 @@ -0,0 +1,105 @@ +.Dd February 18, 2026 +.Dt JPACKAGE_SCRIPT 7 +.Os +.Sh NAME +.Nm jpackage_script +.Nd generate a shell launcher script for a Java application in an RPM build +.Sh SYNOPSIS +.Nm \&%jpackage_script +.Op Fl h +.Op Fl c Ar config_file +.Ar main_class +.Ar flags +.Ar options +.Ar jars +.Ar script_name +.Sh DESCRIPTION +The +.Nm +RPM macro creates a shell launcher script that prepares the runtime +environment and then invokes a Java application. +It is typically invoked during the +.Cm %install +phase of an RPM build. +The script is written to +.Pa %{buildroot}%{_bindir}/ Ns Ar script_name . +.Pp +The generated script uses helper functions from +.Pa %{javadir}-utils/java-functions +to construct the classpath, process flags and options, and execute the JVM. +It also reads optional configuration files to allow system-wide and per-user +customization. +.Pp +If the RPM macro +.Nm \&%{java_home} +is defined at build time, the generated script hardcodes its value as the +default +.Ev JAVA_HOME . +If +.Nm \&%{java_home} +is not defined, the generated script locates the +.Cm java +executable using the user's +.Ev PATH . +Users can override the selected Java runtime by setting +.Ev JAVA_HOME +in their environment. +.Pp +When the +.Fl h +option is specified, the macro does not embed any default +.Ev JAVA_HOME +setting in the generated script, leaving runtime selection entirely to the +user environment. +.Sh OPTIONS +.Bl -tag -width Ds +.It Fl h +Do not set a default value for +.Ev JAVA_HOME +in the generated script. +The script will rely on the user's environment or lookup via +.Ev PATH . +.It Fl c Ar config_file +Specify the name of the configuration file sourced by the generated script +instead of the default +.Pa %{_sysconfdir}/java/%{name}.conf . +.El +.Sh ARGUMENTS +.Bl -tag -width Ds +.It Ar main_class +Fully qualified name of the Java main class to execute. +.It Ar flags +Whitespace-separated JVM flags to apply by default. +.It Ar options +Whitespace-separated application options to apply by default. +.It Ar jars +A colon-separated list of JAR names. +Each element is processed with +.Cm build-classpath +to produce the runtime classpath. +.It Ar script_name +Name of the launcher script to create in +.Pa %{_bindir} . +.El +.Sh FILES +.Bl -tag -width Ds +.It Pa %{javadir}-utils/java-functions +Helper functions used by the generated launcher script. +.It Pa %{_sysconfdir}/java/%{name}.conf +Default system-wide configuration sourced by the generated script. +.It Pa $HOME/.%{name}rc +Optional per-user configuration sourced by the generated script. +.El +.Sh EXAMPLES +Generate the +.Nm msv +launcher with the main class +.Dq msv.textui.Driver +and a classpath assembled from multiple libraries: +.Dl %jpackage_script msv.textui.Driver \(dq\(dq \(dq\(dq msv-msv:msv-xsdlib:relaxngDatatype:isorelax msv +.Sh SEE ALSO +.Xr build-classpath 1 , +.Xr rpm-macros 7 , +.Xr rpm 8 +.Sh AUTHORS +.An Mikolaj Izdebski Aq Mt [email protected] ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.5flM2i/_old 2026-05-13 20:59:02.104391132 +0200 +++ /var/tmp/diff_new_pack.5flM2i/_new 2026-05-13 20:59:02.116391627 +0200 @@ -1,6 +1,6 @@ -mtime: 1759056437 -commit: 73b55c85ca1515b500dbeb05921ab0087c14863147a200ed5e839edc1309950d -url: https://src.opensuse.org/java-packages/javapackages-tools.git -revision: 73b55c85ca1515b500dbeb05921ab0087c14863147a200ed5e839edc1309950d +mtime: 1778605894 +commit: 128512590c60404509d7858f0ea1d16414477d8ad9021b5ba90f9e51801cbb45 +url: https://src.opensuse.org/java-packages/javapackages-tools +revision: 128512590c60404509d7858f0ea1d16414477d8ad9021b5ba90f9e51801cbb45 projectscmsync: https://src.opensuse.org/java-packages/_ObsPrj ++++++ build.specials.obscpio ++++++ ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2026-05-12 19:11:34.000000000 +0200 @@ -0,0 +1 @@ +.osc ++++++ python-optional.patch ++++++ --- /var/tmp/diff_new_pack.5flM2i/_old 2026-05-13 20:59:02.404403502 +0200 +++ /var/tmp/diff_new_pack.5flM2i/_new 2026-05-13 20:59:02.408403667 +0200 @@ -8,7 +8,7 @@ -(cd ./python && "${pyinterpreter}" setup.py build) --- a/configure +++ b/configure -@@ -85,7 +85,6 @@ test -z "${rpmconfigdir}" && rpmconfigdir="${prefix}/lib/rpm" +@@ -104,7 +104,6 @@ test -z "${rpmconfigdir}" && rpmconfigdir="${prefix}/lib/rpm" test -z "${rpmmacrodir}" && rpmmacrodir="${rpmconfigdir}/macros.d" test -z "${m2home}" && m2home="${datadir}/xmvn" @@ -18,10 +18,10 @@ eval $(sed -n 's/^%_\('"$vars_re"'\)\ *\(.*\)$/\1="\2"/;T;s/%{_\(.*}\)/${\1/;p' macros.d/macros.javapackages-filesystem) --- a/install +++ b/install -@@ -237,8 +237,3 @@ exec >files-gradle - inst_exec target/gradle-local "${bindir}" - inst_data gradle/init.gradle "${datadir}/gradle-local" - inst_data target/gradle_build.7 "${mandir}/man7" +@@ -239,8 +239,3 @@ if $with_gradle; then + inst_data gradle/init.gradle "${datadir}/gradle-local" + inst_data target/gradle_build.7 "${mandir}/man7" + fi - -exec >files-python -(cd ./python && "${pyinterpreter}" setup.py install -O1 --skip-build --prefix "${prefix}" --root "${DEST}") >&2 ++++++ suse-use-libdir.patch ++++++ --- /var/tmp/diff_new_pack.5flM2i/_old 2026-05-13 20:59:02.436404821 +0200 +++ /var/tmp/diff_new_pack.5flM2i/_new 2026-05-13 20:59:02.444405151 +0200 @@ -8,7 +8,7 @@ m2home -@@ -81,6 +82,7 @@ test -z "${mandir}" && mandir="${datadir}/man" +@@ -98,6 +99,7 @@ test -z "${mandir}" && mandir="${datadir}/man" test -z "${rundir}" && rundir="${localstatedir}/run" test -z "${sysconfdir}" && sysconfdir="${prefix}/etc" test -z "${root_sysconfdir}" && root_sysconfdir="${prefix}/etc"
