Compare commits

...
Sign in to create a new pull request.

33 commits

Author SHA1 Message Date
Mikolaj Izdebski
125a3b187a Add commons-lang3 to generator classpath 2025-10-11 07:54:07 +02:00
Jiri Vanek
54f85ef060 Rebuilt for java-25-openjdk as preffered jdk
https://fedoraproject.org/wiki/Changes/Java25AndNoMoreSystemJdk
Note, that since f43, you should be always explicit on what jdk to use.
This commit should do exactly that.
2025-07-28 19:27:07 +02:00
Fedora Release Engineering
60c97b059a Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 20:58:11 +00:00
Mikolaj Izdebski
4272209974 Non-bootstrap build
[skip changelog]
2025-07-12 08:39:17 +02:00
Mikolaj Izdebski
0e6dd6c319 Bootstrap build
[skip changelog]
2025-07-12 08:20:46 +02:00
Mikolaj Izdebski
a28861a0ad Update to upstream version 2.1.1
- Build with OpenJDK 25
2025-07-12 07:12:12 +02:00
Mikolaj Izdebski
9a2e45ccf0 Update to upstream version 2.1.0
- Convert from archful to purely noarch package
2025-07-08 14:07:34 +02:00
Mikolaj Izdebski
1b3ed3c6de Disable verbose debug output by default
Resolves: rhbz#2375157
2025-06-30 08:16:47 +02:00
Mikolaj Izdebski
2463f2c031 Switch javapackages test plan to f43 ref 2025-05-22 13:35:32 +02:00
Mikolaj Izdebski
4abfa3b884 Switch to javapackages tests from CentOS Stream GitLab 2025-03-26 08:43:19 +01:00
Mikolaj Izdebski
85ce062775 Remove javadoc subpackage 2025-03-03 12:54:17 +01:00
Mikolaj Izdebski
801c01c57c Declare javadoc package as noarch 2025-02-16 18:10:19 +01:00
Fedora Release Engineering
84ce4416cc Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-19 16:05:38 +00:00
Mikolaj Izdebski
ee68217f4d Explicitly declare javadoc subpackage
[skip changelog]
2024-12-30 18:06:35 +01:00
Mikolaj Izdebski
1260687595 Sort dependencies
[skip changelog]
2024-12-30 17:01:09 +01:00
Mikolaj Izdebski
9c0a6c2467 Unify spec style with the rest of Java/Maven packages
[skip changelog]
2024-12-30 16:01:19 +01:00
Mikolaj Izdebski
2ff85c80a5 Update javapackages test plan to f42 2024-11-29 08:28:39 +01:00
Mikolaj Izdebski
30cb6c705a Update to upstream version 2.0.2 2024-11-29 07:05:50 +01:00
Mikolaj Izdebski
9ae37848ed Update to upstream version 2.0.1
- Resolves: rhbz#2316917
- Resolves: rhbz#2316708
2024-10-07 11:24:03 +02:00
Mikolaj Izdebski
c81ac04925 Don't assert presence of required test packages 2024-09-27 18:28:53 +02:00
Mikolaj Izdebski
89aaad00d8 Update to upstream version 2.0.0
- Resolves: rhbz#2315222
2024-09-27 16:03:07 +02:00
Mikolaj Izdebski
2e49a7fa4d Add commons-io to classpath 2024-09-05 12:41:30 +02:00
Mikolaj Izdebski
313ebc9879 Remove unused empty conditional 2024-08-27 17:19:28 +02:00
Mikolaj Izdebski
f842ac2c33 Update to upstream version 1.2.3
- Resolves: rhbz#2307788
2024-08-25 10:33:39 +02:00
Mikolaj Izdebski
729142b7c1 Convert to %autorelease and %autochangelog 2024-08-23 00:45:50 +02:00
Mikolaj Izdebski
963ad05254 Switch to non-numdered patches 2024-08-22 22:13:19 +02:00
Mikolaj Izdebski
fd6100822a Switch from %setup to %autosetup 2024-08-20 16:33:57 +02:00
Mikolaj Izdebski
6ab4089984 Switch javapackages tests to f41 branch 2024-07-31 20:53:30 +02:00
Fedora Release Engineering
8cc2612462 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-20 10:17:07 +00:00
Mikolaj Izdebski
23ea3055ae Update smoke test summary 2024-07-02 10:43:33 +02:00
Mikolaj Izdebski
b334139808 Switch to a newer %patch syntax 2024-05-31 05:43:58 +02:00
Software Management Team
cc4e5037ee Eliminate use of obsolete %patchN syntax (#2283636) 2024-05-30 12:46:50 +02:00
Mikolaj Izdebski
367e9c80c5 Switch to Java 21 for runtime 2024-02-22 05:34:02 +01:00
12 changed files with 225 additions and 97 deletions

6
.gitignore vendored
View file

@ -3,3 +3,9 @@
/xmvn-generator-1.2.0.tar.gz
/xmvn-generator-1.2.1.tar.gz
/xmvn-generator-1.2.2.tar.gz
/xmvn-generator-1.2.3.tar.gz
/xmvn-generator-2.0.0.tar.gz
/xmvn-generator-2.0.1.tar.gz
/xmvn-generator-2.0.2.tar.gz
/xmvn-generator-2.1.0.tar.gz
/xmvn-generator-2.1.1.tar.zst

View file

@ -0,0 +1,24 @@
From 6cd6f63c9745a2872ec42a55c3b5d96c16a632cb Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Sat, 11 Oct 2025 07:51:25 +0200
Subject: [PATCH] Add commons-lang3 to generator classpath
---
src/main/conf/xmvn-generator.conf | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/main/conf/xmvn-generator.conf b/src/main/conf/xmvn-generator.conf
index 4e72124..af77f8b 100644
--- a/src/main/conf/xmvn-generator.conf
+++ b/src/main/conf/xmvn-generator.conf
@@ -3,6 +3,7 @@ import io.kojan.dola.rpm from Realm:bsx-api
load /usr/share/java/objectweb-asm/asm.jar
load /usr/share/java/commons-compress.jar
load /usr/share/java/commons-io.jar
+load /usr/share/java/commons-lang3.jar
load /usr/share/java/xmvn/xmvn-api.jar
load /usr/share/java/xmvn/xmvn-core.jar
load /usr/share/java/maven/maven-model.jar
--
2.51.0

View file

@ -0,0 +1,25 @@
From 3333e26db4405a4606e2223f74c5b23d9b473c1a Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Mon, 30 Jun 2025 07:46:58 +0200
Subject: [PATCH 1/2] Disable verbose debug output by default
Resolves: rhbz#2375157
---
src/main/rpm/macros.xmvngen | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/rpm/macros.xmvngen b/src/main/rpm/macros.xmvngen
index 5623fb2..b29156e 100644
--- a/src/main/rpm/macros.xmvngen
+++ b/src/main/rpm/macros.xmvngen
@@ -1,6 +1,6 @@
# Debug enable flag.
# Setting this to non-empty value enables debugging output.
-%__xmvngen_debug 1
+%__xmvngen_debug %nil
# Path to JVM library (libjvm.so). Java 21 or newer is required.
%__xmvngen_libjvm %{_jvmdir}/jre-21-openjdk/lib/server/libjvm.so
--
2.49.0

View file

@ -1,39 +0,0 @@
From ab348efccc347d192f582bd926ffa048f33d615c Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Wed, 30 Aug 2023 15:53:26 +0200
Subject: [PATCH] Enable JPMS provides and JAR transformer
---
src/main/rpm/macros.xmvngen | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/main/rpm/macros.xmvngen b/src/main/rpm/macros.xmvngen
index 4ff3f22..ca1e3bb 100644
--- a/src/main/rpm/macros.xmvngen
+++ b/src/main/rpm/macros.xmvngen
@@ -1,6 +1,6 @@
# Debug enable flag.
# Setting this to non-empty value enables debugging output.
-%__xmvngen_debug %{nil}
+%__xmvngen_debug 1
# Path to JVM library (libjvm.so). Java 17 or newer is required.
%__xmvngen_libjvm %{_jvmdir}/jre-17-openjdk/lib/server/libjvm.so
@@ -15,7 +15,7 @@
# generator factories (classes implementing GeneratorFactory interface).
# Available hook factories are:
# * org.fedoraproject.xmvn.generator.jpms.JPMSGeneratorFactory
-%__xmvngen_provides_generators %{nil}
+%__xmvngen_provides_generators org.fedoraproject.xmvn.generator.jpms.JPMSGeneratorFactory
%__xmvngen_requires_generators %{nil}
# Specify which post-install hooks should be ran.
@@ -23,4 +23,4 @@
# hook factories (classes implementing HookFactory interface).
# Available hook factories are:
# * org.fedoraproject.xmvn.generator.transformer.TransformerHookFactory
-%__xmvngen_post_install_hooks %{nil}
+%__xmvngen_post_install_hooks org.fedoraproject.xmvn.generator.transformer.TransformerHookFactory
--
2.41.0

View file

@ -0,0 +1,111 @@
From 35624a1e5972e4ddb8fefbcaa82ee6921ddd89b3 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Mon, 30 Jun 2025 08:13:20 +0200
Subject: [PATCH 2/2] Suppress non-fatal stack traces unless debugging is
enabled
Resolves: rhbz#2375157
---
.../fedoraproject/xmvn/generator/jpms/JPMSGenerator.java | 4 +++-
.../xmvn/generator/jpscript/JPackageScriptGenerator.java | 3 ++-
.../org/fedoraproject/xmvn/generator/logging/Logger.java | 6 ++++++
.../fedoraproject/xmvn/generator/maven/MavenGenerator.java | 2 +-
.../xmvn/generator/transformer/TransformerHook.java | 6 ++++--
5 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/src/main/java/org/fedoraproject/xmvn/generator/jpms/JPMSGenerator.java b/src/main/java/org/fedoraproject/xmvn/generator/jpms/JPMSGenerator.java
index 6e5ec53..5808273 100644
--- a/src/main/java/org/fedoraproject/xmvn/generator/jpms/JPMSGenerator.java
+++ b/src/main/java/org/fedoraproject/xmvn/generator/jpms/JPMSGenerator.java
@@ -29,6 +29,7 @@ import java.util.stream.Stream;
import org.fedoraproject.xmvn.generator.BuildContext;
import org.fedoraproject.xmvn.generator.Collector;
import org.fedoraproject.xmvn.generator.Generator;
+import org.fedoraproject.xmvn.generator.logging.Logger;
class JPMSGenerator implements Generator {
private final BuildContext context;
@@ -75,7 +76,8 @@ class JPMSGenerator implements Generator {
}
}
} catch (IOException e) {
- e.printStackTrace();
+ // Continue despite exception
+ Logger.debug(e);
}
}
} catch (IOException e) {
diff --git a/src/main/java/org/fedoraproject/xmvn/generator/jpscript/JPackageScriptGenerator.java b/src/main/java/org/fedoraproject/xmvn/generator/jpscript/JPackageScriptGenerator.java
index dbcb537..cf81e43 100644
--- a/src/main/java/org/fedoraproject/xmvn/generator/jpscript/JPackageScriptGenerator.java
+++ b/src/main/java/org/fedoraproject/xmvn/generator/jpscript/JPackageScriptGenerator.java
@@ -24,6 +24,7 @@ import java.util.stream.Stream;
import org.fedoraproject.xmvn.generator.BuildContext;
import org.fedoraproject.xmvn.generator.Collector;
import org.fedoraproject.xmvn.generator.Generator;
+import org.fedoraproject.xmvn.generator.logging.Logger;
class JPackageScriptGenerator implements Generator {
private final BuildContext context;
@@ -51,7 +52,7 @@ class JPackageScriptGenerator implements Generator {
}
} catch (MalformedInputException e) {
// Continue despite exception
- e.printStackTrace();
+ Logger.debug(e);
} catch (IOException e) {
throw new UncheckedIOException(e);
}
diff --git a/src/main/java/org/fedoraproject/xmvn/generator/logging/Logger.java b/src/main/java/org/fedoraproject/xmvn/generator/logging/Logger.java
index 3aee1aa..55d189c 100644
--- a/src/main/java/org/fedoraproject/xmvn/generator/logging/Logger.java
+++ b/src/main/java/org/fedoraproject/xmvn/generator/logging/Logger.java
@@ -71,4 +71,10 @@ public class Logger {
BOX_BOTTOM_LEFT + repeat(BOX_BORDER_HORIZONTAL, BOX_WIDTH - 2) + BOX_BOTTOM_RIGHT);
flush();
}
+
+ public static void debug(Throwable t) {
+ if (debugEnabled) {
+ t.printStackTrace();
+ }
+ }
}
diff --git a/src/main/java/org/fedoraproject/xmvn/generator/maven/MavenGenerator.java b/src/main/java/org/fedoraproject/xmvn/generator/maven/MavenGenerator.java
index 69c5a46..ae63d1b 100644
--- a/src/main/java/org/fedoraproject/xmvn/generator/maven/MavenGenerator.java
+++ b/src/main/java/org/fedoraproject/xmvn/generator/maven/MavenGenerator.java
@@ -295,8 +295,8 @@ class MavenGenerator implements Generator {
try (StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw)) {
sw.append("Unable to generate POM dependencies: ");
- e.printStackTrace(pw);
Logger.debug(sw.toString());
+ Logger.debug(e);
} catch (IOException e1) {
throw new UncheckedIOException(e1);
}
diff --git a/src/main/java/org/fedoraproject/xmvn/generator/transformer/TransformerHook.java b/src/main/java/org/fedoraproject/xmvn/generator/transformer/TransformerHook.java
index 5914be4..436c59c 100644
--- a/src/main/java/org/fedoraproject/xmvn/generator/transformer/TransformerHook.java
+++ b/src/main/java/org/fedoraproject/xmvn/generator/transformer/TransformerHook.java
@@ -64,12 +64,14 @@ class TransformerHook implements Hook {
try {
jarTransformer.transformJar(filePath);
} catch (IOException e) {
- e.printStackTrace();
+ // Continue despite exception
+ Logger.debug(e);
}
}
}
} catch (IOException e) {
- e.printStackTrace();
+ // Continue despite exception
+ Logger.debug(e);
}
}
--
2.49.0

35
changelog Normal file
View file

@ -0,0 +1,35 @@
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri May 31 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.2-4
- Switch to a newer patch macro syntax
* Thu Feb 22 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.2-3
- Switch to Java 21 for runtime
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Dec 11 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.2-1
- Update to upstream version 1.2.2
* Wed Aug 30 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.1-4
- Enable JPMS provides and JAR transformation in ELN
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Mar 17 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.1-2
- Enable javadoc package
* Mon Mar 13 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.1-1
- Update to upstream version 1.2.1
* Fri Mar 10 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.0-1
- Update to upstream version 1.2.0
* Mon Mar 06 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.1.0-1
- Update to upstream version 1.1.0
* Mon Mar 06 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.0.0-1
- Initial packaging

View file

@ -1,7 +1,7 @@
summary: Run javapackages-specific tests
discover:
how: fmf
url: https://src.fedoraproject.org/tests/javapackages
ref: f40
url: https://gitlab.com/redhat/centos-stream/tests/javapackages.git
ref: f43
execute:
how: tmt

View file

@ -1,4 +1,4 @@
summary: Run smoke tests
summary: Basic smoke test
discover:
how: fmf
execute:

View file

@ -1 +1 @@
SHA512 (xmvn-generator-1.2.2.tar.gz) = 7d4a71ed8847456d70df6357864ffd877bf36ffb843138f3ba0e932ee24957dcefe35c0f1bf2f2b7693ec927a58d0dc55e66edbcd15f6741d1149bf1799d4de1
SHA512 (xmvn-generator-2.1.1.tar.zst) = b3d0950fddd25bd9bc998c6b62b4a4784d36a00e06f2c2764cfb8a04ecd7397e771c925b7b0b0cb116664aeeae250e8fb9049a14b564392ae7d861cc4b40e0bd

View file

@ -4,4 +4,4 @@ description: |
require:
- rpm-build
- javapackages-local
- java-17-openjdk-devel
- java-21-openjdk-devel

View file

@ -6,9 +6,6 @@ rlJournalStart
rlPhaseStartSetup
rlAssertRpm xmvn-generator
rlAssertRpm javapackages-local
rlAssertRpm rpm-build
rlAssertRpm java-17-openjdk-devel
rlPhaseEnd
rlPhaseStartTest

View file

@ -1,51 +1,43 @@
%global debug_package %{nil}
%bcond_with bootstrap
%bcond bootstrap 0
Name: xmvn-generator
Version: 1.2.2
Release: 2%{?dist}
Version: 2.1.1
Release: %autorelease
Summary: RPM dependency generator for Java
License: Apache-2.0
URL: https://github.com/fedora-java/xmvn-generator
ExclusiveArch: %{java_arches}
BuildArch: noarch
ExclusiveArch: %{java_arches} noarch
Source0: https://github.com/fedora-java/xmvn-generator/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source: https://github.com/fedora-java/xmvn-generator/releases/download/%{version}/xmvn-generator-%{version}.tar.zst
Patch0: 0001-Enable-JPMS-provides-and-JAR-transformer.patch
# https://github.com/fedora-java/xmvn-generator/pull/37
Patch: 0001-Add-commons-lang3-to-generator-classpath.patch
BuildRequires: gcc
BuildRequires: rpm-devel
%if %{with bootstrap}
BuildRequires: javapackages-bootstrap
%else
BuildRequires: maven-local
BuildRequires: maven-local-openjdk25
BuildRequires: mvn(io.kojan:dola-bsx-api)
BuildRequires: mvn(org.apache.commons:commons-compress)
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
BuildRequires: mvn(org.easymock:easymock)
BuildRequires: mvn(org.junit.jupiter:junit-jupiter)
BuildRequires: mvn(org.ow2.asm:asm)
%endif
Requires: rpm-build
Requires: lujavrite
Requires: java-17-openjdk-headless
Requires: dola-bsx
# TODO Remove in Fedora 46
Obsoletes: %{name}-javadoc < 2.0.2-9
%description
XMvn Generator is a dependency generator for RPM Package Manager
written in Java and Lua, that uses LuJavRite library to call Java code
from Lua.
%{?javadoc_package}
written in Java and Lua.
%prep
%setup -q
%if !0%{?fedora}
%patch0 -p1
%endif
%autosetup -p1 -C
%mvn_file : %{name}
%build
%mvn_build
%mvn_build -j -- -P\!quality
%install
%mvn_install
@ -53,39 +45,16 @@ install -D -p -m 644 src/main/lua/xmvn-generator.lua %{buildroot}%{_rpmluadir}/x
install -D -p -m 644 src/main/rpm/macros.xmvngen %{buildroot}%{_rpmmacrodir}/macros.xmvngen
install -D -p -m 644 src/main/rpm/macros.xmvngenhook %{buildroot}%{_sysconfdir}/rpm/macros.xmvngenhook
install -D -p -m 644 src/main/rpm/xmvngen.attr %{buildroot}%{_fileattrsdir}/xmvngen.attr
install -D -p -m 644 src/main/conf/xmvn-generator.conf %{buildroot}%{_javaconfdir}/dola/classworlds/90-xmvn-generator.conf
%files -f .mfiles
%{_rpmluadir}/*
%{_rpmmacrodir}/*
%{_fileattrsdir}/*
%{_sysconfdir}/rpm/*
%{_javaconfdir}/dola/classworlds/90-xmvn-generator.conf
%license LICENSE NOTICE
%doc README.md
%changelog
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Dec 11 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.2-1
- Update to upstream version 1.2.2
* Wed Aug 30 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.1-4
- Enable JPMS provides and JAR transformation in ELN
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Mar 17 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.1-2
- Enable javadoc package
* Mon Mar 13 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.1-1
- Update to upstream version 1.2.1
* Fri Mar 10 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.2.0-1
- Update to upstream version 1.2.0
* Mon Mar 06 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.1.0-1
- Update to upstream version 1.1.0
* Mon Mar 06 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.0.0-1
- Initial packaging
%autochangelog