Sync from SUSE:SLFO:Main modello revision cf60e1434d10aa15323776e37ddf5e0c

This commit is contained in:
Adrian Schröter 2024-05-31 14:53:14 +02:00
parent fffd3ea58d
commit d348e8fccf
12 changed files with 2248 additions and 312 deletions

View File

@ -0,0 +1,85 @@
From cc800846da128d795c69142d4ae0c33c0677e943 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
Date: Sat, 13 Apr 2024 15:14:24 +0200
Subject: [PATCH 1/3] Fix ModelloCli after moving from Plexus to JSR330
---
.../java/org/codehaus/modello/Modello.java | 26 ++++++++++++++-----
.../java/org/codehaus/modello/ModelloCli.java | 3 +--
2 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/modello-core/src/main/java/org/codehaus/modello/Modello.java b/modello-core/src/main/java/org/codehaus/modello/Modello.java
index 00fb7114..0572fce6 100644
--- a/modello-core/src/main/java/org/codehaus/modello/Modello.java
+++ b/modello-core/src/main/java/org/codehaus/modello/Modello.java
@@ -22,8 +22,6 @@ package org.codehaus.modello;
* SOFTWARE.
*/
-import javax.inject.Inject;
-
import java.io.Reader;
import java.io.Writer;
import java.util.Map;
@@ -31,17 +29,33 @@ import java.util.Map;
import org.codehaus.modello.core.ModelloCore;
import org.codehaus.modello.model.Model;
import org.codehaus.modello.model.ModelValidationException;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
+import org.codehaus.plexus.PlexusConstants;
+import org.codehaus.plexus.PlexusContainer;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
*/
public class Modello {
- private final ModelloCore core;
+ private PlexusContainer container;
+
+ private ModelloCore core;
+
+ public Modello() throws ModelloException {
+ try {
+ ContainerConfiguration configuration = new DefaultContainerConfiguration();
+ configuration.setAutoWiring(true);
+ configuration.setClassPathScanning(PlexusConstants.SCANNING_INDEX);
+
+ container = new DefaultPlexusContainer(configuration);
- @Inject
- public Modello(ModelloCore core) {
- this.core = core;
+ core = (ModelloCore) container.lookup(ModelloCore.ROLE);
+ } catch (Exception ex) {
+ throw new ModelloException("Error while starting plexus.", ex);
+ }
}
public void generate(Reader modelReader, String outputType, Map<String, Object> parameters)
diff --git a/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java b/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java
index 1b4cd974..a75e4011 100644
--- a/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java
+++ b/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java
@@ -26,7 +26,6 @@ import java.io.File;
import java.util.HashMap;
import java.util.Map;
-import org.codehaus.plexus.DefaultPlexusContainer;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.xml.XmlStreamReader;
@@ -41,7 +40,7 @@ public class ModelloCli {
private static Map<String, Object> parameters;
public static void main(String[] args) throws Exception {
- Modello modello = new DefaultPlexusContainer().lookup(Modello.class);
+ Modello modello = new Modello();
parseArgumentsFromCommandLine(args);
--
2.44.0

View File

@ -1,184 +0,0 @@
From f892c4e5906fcacaec99a146a2a36dd4ca5d5166 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Sun, 27 Aug 2023 07:49:01 +0200
Subject: [PATCH] Revert "Switch to codehaus plexus-build-api 1.2.0 (#345)"
This reverts commit c689155598257f225963b9332f57fe72dfd78753.
---
modello-core/pom.xml | 2 +-
.../codehaus/modello/plugin/AbstractModelloGenerator.java | 2 +-
modello-maven-plugin/pom.xml | 2 +-
.../modello/maven/AbstractModelloGeneratorMojo.java | 2 +-
.../codehaus/modello/maven/ModelloConvertersMojoTest.java | 8 +-------
.../org/codehaus/modello/maven/ModelloJavaMojoTest.java | 8 +-------
modello-plugins/modello-plugin-java/pom.xml | 2 +-
.../codehaus/modello/AbstractModelloGeneratorTest.java | 6 ------
pom.xml | 4 ++--
9 files changed, 9 insertions(+), 27 deletions(-)
diff --git a/modello-core/pom.xml b/modello-core/pom.xml
index 636c03fe..7f9adf39 100644
--- a/modello-core/pom.xml
+++ b/modello-core/pom.xml
@@ -13,7 +13,7 @@
<dependencies>
<dependency>
- <groupId>org.codehaus.plexus</groupId>
+ <groupId>org.sonatype.plexus</groupId>
<artifactId>plexus-build-api</artifactId>
</dependency>
<dependency>
diff --git a/modello-core/src/main/java/org/codehaus/modello/plugin/AbstractModelloGenerator.java b/modello-core/src/main/java/org/codehaus/modello/plugin/AbstractModelloGenerator.java
index bb59b439..334e16e8 100644
--- a/modello-core/src/main/java/org/codehaus/modello/plugin/AbstractModelloGenerator.java
+++ b/modello-core/src/main/java/org/codehaus/modello/plugin/AbstractModelloGenerator.java
@@ -43,7 +43,6 @@ import org.codehaus.modello.model.ModelField;
import org.codehaus.modello.model.Version;
import org.codehaus.plexus.PlexusConstants;
import org.codehaus.plexus.PlexusContainer;
-import org.codehaus.plexus.build.BuildContext;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
import org.codehaus.plexus.context.Context;
import org.codehaus.plexus.context.ContextException;
@@ -51,6 +50,7 @@ import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.io.CachingWriter;
+import org.sonatype.plexus.build.incremental.BuildContext;
/**
* @author <a href="mailto:jason@modello.org">Jason van Zyl</a>
diff --git a/modello-maven-plugin/pom.xml b/modello-maven-plugin/pom.xml
index 3687fb05..57227449 100644
--- a/modello-maven-plugin/pom.xml
+++ b/modello-maven-plugin/pom.xml
@@ -121,7 +121,7 @@
<artifactId>modello-plugin-velocity</artifactId>
</dependency>
<dependency>
- <groupId>org.codehaus.plexus</groupId>
+ <groupId>org.sonatype.plexus</groupId>
<artifactId>plexus-build-api</artifactId>
</dependency>
</dependencies>
diff --git a/modello-maven-plugin/src/main/java/org/codehaus/modello/maven/AbstractModelloGeneratorMojo.java b/modello-maven-plugin/src/main/java/org/codehaus/modello/maven/AbstractModelloGeneratorMojo.java
index 762b5784..51b75a12 100644
--- a/modello-maven-plugin/src/main/java/org/codehaus/modello/maven/AbstractModelloGeneratorMojo.java
+++ b/modello-maven-plugin/src/main/java/org/codehaus/modello/maven/AbstractModelloGeneratorMojo.java
@@ -41,8 +41,8 @@ import org.codehaus.modello.ModelloParameterConstants;
import org.codehaus.modello.core.ModelloCore;
import org.codehaus.modello.model.Model;
import org.codehaus.modello.model.ModelValidationException;
-import org.codehaus.plexus.build.BuildContext;
import org.codehaus.plexus.util.StringUtils;
+import org.sonatype.plexus.build.incremental.BuildContext;
/**
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
diff --git a/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloConvertersMojoTest.java b/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloConvertersMojoTest.java
index 779f178d..23f466d3 100644
--- a/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloConvertersMojoTest.java
+++ b/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloConvertersMojoTest.java
@@ -26,10 +26,9 @@ import java.io.File;
import java.util.Arrays;
import org.codehaus.modello.core.ModelloCore;
-import org.codehaus.plexus.ContainerConfiguration;
import org.codehaus.plexus.PlexusTestCase;
-import org.codehaus.plexus.build.BuildContext;
import org.codehaus.plexus.util.FileUtils;
+import org.sonatype.plexus.build.incremental.BuildContext;
/**
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
@@ -99,9 +98,4 @@ public class ModelloConvertersMojoTest extends PlexusTestCase {
assertFalse("The generated java file doesn't exist: '" + javaFile.getAbsolutePath() + "'.", javaFile.exists());
}
-
- @Override
- protected void customizeContainerConfiguration(ContainerConfiguration containerConfiguration) {
- containerConfiguration.setClassPathScanning("cache");
- }
}
diff --git a/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloJavaMojoTest.java b/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloJavaMojoTest.java
index f15b4031..bb5bb7cf 100644
--- a/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloJavaMojoTest.java
+++ b/modello-maven-plugin/src/test/java/org/codehaus/modello/maven/ModelloJavaMojoTest.java
@@ -26,10 +26,9 @@ import java.io.File;
import java.util.Arrays;
import org.codehaus.modello.core.ModelloCore;
-import org.codehaus.plexus.ContainerConfiguration;
import org.codehaus.plexus.PlexusTestCase;
-import org.codehaus.plexus.build.BuildContext;
import org.codehaus.plexus.util.FileUtils;
+import org.sonatype.plexus.build.incremental.BuildContext;
/**
* @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
@@ -97,9 +96,4 @@ public class ModelloJavaMojoTest extends PlexusTestCase {
assertFalse(
"The generated java file shouldn't exist: '" + javaFile.getAbsolutePath() + "'.", javaFile.exists());
}
-
- @Override
- protected void customizeContainerConfiguration(ContainerConfiguration containerConfiguration) {
- containerConfiguration.setClassPathScanning("cache");
- }
}
diff --git a/modello-plugins/modello-plugin-java/pom.xml b/modello-plugins/modello-plugin-java/pom.xml
index ea94c3c6..6ba7c01f 100644
--- a/modello-plugins/modello-plugin-java/pom.xml
+++ b/modello-plugins/modello-plugin-java/pom.xml
@@ -17,7 +17,7 @@
<artifactId>plexus-utils</artifactId>
</dependency>
<dependency>
- <groupId>org.codehaus.plexus</groupId>
+ <groupId>org.sonatype.plexus</groupId>
<artifactId>plexus-build-api</artifactId>
</dependency>
diff --git a/modello-test/src/main/java/org/codehaus/modello/AbstractModelloGeneratorTest.java b/modello-test/src/main/java/org/codehaus/modello/AbstractModelloGeneratorTest.java
index f46cece1..e71231fb 100644
--- a/modello-test/src/main/java/org/codehaus/modello/AbstractModelloGeneratorTest.java
+++ b/modello-test/src/main/java/org/codehaus/modello/AbstractModelloGeneratorTest.java
@@ -32,7 +32,6 @@ import java.io.Reader;
import java.util.Optional;
import java.util.Properties;
-import org.codehaus.plexus.ContainerConfiguration;
import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.ReaderFactory;
@@ -108,9 +107,4 @@ public abstract class AbstractModelloGeneratorTest extends PlexusTestCase {
new File(getOutputDirectory(), generatedXsdName));
return saxParser;
}
-
- @Override
- protected void customizeContainerConfiguration(ContainerConfiguration containerConfiguration) {
- containerConfiguration.setClassPathScanning("cache");
- }
}
diff --git a/pom.xml b/pom.xml
index 88f8ed6f..9a4ac6df 100644
--- a/pom.xml
+++ b/pom.xml
@@ -347,9 +347,9 @@
<version>4.0.0</version>
</dependency>
<dependency>
- <groupId>org.codehaus.plexus</groupId>
+ <groupId>org.sonatype.plexus</groupId>
<artifactId>plexus-build-api</artifactId>
- <version>1.2.0</version>
+ <version>0.0.7</version>
</dependency>
<dependency>
<groupId>junit</groupId>
--
2.41.0

View File

@ -0,0 +1,50 @@
From 8e04db4d5602a985ef4c5fa72cb862e9b4d6daf4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
Date: Fri, 12 Apr 2024 09:37:47 +0200
Subject: [PATCH 2/3] Add support for domAsXpp3 and fail if the old Java5
parameter is used
---
.../java/org/codehaus/modello/ModelloCli.java | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java b/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java
index a75e4011..db40052c 100644
--- a/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java
+++ b/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java
@@ -106,11 +106,24 @@ public class ModelloCli {
System.exit(1);
}
+ if (StringUtils.equalsIgnoreCase(javaSource, "true") || StringUtils.equalsIgnoreCase(javaSource, "false")) {
+ // The old useJava5 parameter at this position
+ System.err.println("Missing required parameter: Java Source (replacing the old \"Use Java5\" parameter)");
+
+ usage();
+
+ System.exit(1);
+ }
+
parameters.put(ModelloParameterConstants.OUTPUT_JAVA_SOURCE, javaSource);
if (args.length > 6) {
parameters.put(ModelloParameterConstants.ENCODING, args[6]);
}
+
+ if (args.length > 7) {
+ parameters.put(ModelloParameterConstants.DOM_AS_XPP3, args[7]);
+ }
}
// ----------------------------------------------------------------------
@@ -119,6 +132,6 @@ public class ModelloCli {
private static void usage() {
System.err.println("Usage: modello <model> <outputType> <output directory> <modelVersion> <packageWithVersion>"
- + "<javaSource> [<encoding>]");
+ + " <javaSource> [<encoding> [<domAsXpp3>]]");
}
}
--
2.44.0

1849
0003-Fix-Snakeyaml.patch Normal file

File diff suppressed because it is too large Load Diff

BIN
modello-2.1.2-source-release.zip (Stored with Git LFS)

Binary file not shown.

BIN
modello-2.4.0-source-release.zip (Stored with Git LFS) Normal file

Binary file not shown.

BIN
modello-build.tar.xz (Stored with Git LFS)

Binary file not shown.

View File

@ -1,35 +0,0 @@
--- modello-2.1.2/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java 2023-09-04 23:38:10.194571922 +0200
+++ modello-2.1.2/modello-core/src/main/java/org/codehaus/modello/ModelloCli.java 2023-09-05 12:10:26.198361088 +0200
@@ -105,11 +105,24 @@
System.exit(1);
}
+ if ( StringUtils.equalsIgnoreCase( javaSource, "true" ) || StringUtils.equalsIgnoreCase( javaSource, "false" ) ) {
+ // The old useJava5 parameter at this position
+ System.err.println( "Missing required parameter: Java Source (replacing the old \"Use Java5\" parameter)" );
+
+ usage();
+
+ System.exit( 1 );
+ }
+
parameters.setProperty(ModelloParameterConstants.OUTPUT_JAVA_SOURCE, javaSource);
if (args.length > 6) {
parameters.setProperty(ModelloParameterConstants.ENCODING, args[6]);
}
+
+ if ( args.length > 7 ) {
+ parameters.setProperty( ModelloParameterConstants.DOM_AS_XPP3, args[7] );
+ }
}
// ----------------------------------------------------------------------
@@ -118,6 +131,6 @@
private static void usage() {
System.err.println("Usage: modello <model> <outputType> <output directory> <modelVersion> <packageWithVersion>"
- + "<javaSource> [<encoding>]");
+ + " <javaSource> [<encoding> [<domAsXpp3>]]" );
}
}

View File

@ -1,3 +1,90 @@
-------------------------------------------------------------------
Thu May 16 05:23:46 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Package both relevant licenses
-------------------------------------------------------------------
Sat May 4 12:02:36 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Upgrade to upstream version 2.4.0
* New features and improvements
+ Keep license structure
+ Support addition of license header to generated files
+ Make generated code - Java 8 based by default
+ threadsafety
* Bug Fixes
+ Revert snakeyaml to 1.33 (as 2.x is not fully compatible with
1.x). This change is reverted and SnakeYaml fixed by the
0003-Fix-Snakeyaml.patch
- Modified patches:
* 0001-Fix-ModelloCli-after-moving-from-Plexus-to-JSR330.patch
* 0002-Add-support-for-domAsXpp3-and-fail-if-the-old-Java5-.patch
* 0003-Fix-Snakeyaml.patch
+ rediff to changed context
-------------------------------------------------------------------
Fri May 3 16:50:54 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Added patch:
* 0003-Fix-Snakeyaml.patch
+ patch to fix the modello-plugin-snakeyaml with SnakeYaml 2.2
+ https://github.com/codehaus-plexus/modello/pull/439
-------------------------------------------------------------------
Wed May 1 12:22:05 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Build against the new codehaus plexus build api 1.2.0
- Removed patch:
* 0003-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch
+ not needed any more
-------------------------------------------------------------------
Tue Apr 16 13:04:04 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Build all modello plugins
-------------------------------------------------------------------
Sun Apr 14 06:13:08 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Upgrade to upstrem version 2.3.0
* Changes of version 2.3.0
+ Kill off dead Plexus
+ Fix for #366
* Changes of version 2.2.0
+ Parse javadoc tags in xdoc generator (only @since is supported
atm)
+ Use generic in Xpp3Reader for JDK 5+
+ Get rid of usage deprecated Reader/WriterFactory
+ Make spotless plugin work with Java 21
+ Support java source property being discovered as 1.x
+ Fix thread safety issues by not using singletons for
generators
+ Improve discovering javaSource based on maven.compiler
properties, default as 8
+ Switch Plexus Annotation to JSR-330
+ Make spotless plugin work with Java 21
- Modified patches:
* 0001-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch
-> 0003-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch
* modello-cli-domasxpp3.patch ->
0002-Add-support-for-domAsXpp3-and-fail-if-the-old-Java5-.patch
+ rediff to changed context
- Added patch:
* 0001-Fix-ModelloCli-after-moving-from-Plexus-to-JSR330.patch
+ Fix for https://github.com/codehaus-plexus/modello/issues/434
submitted upstream
-------------------------------------------------------------------
Tue Apr 2 17:32:17 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Add dependency on plexus-xml where relevant
* this will be needed for smooth upgrade to plexus-utils 4.0.0
-------------------------------------------------------------------
Wed Feb 21 22:14:06 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Use %patch -P N instead of deprecated %patchN.
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Sep 6 14:43:46 UTC 2023 - Fridrich Strba <fstrba@suse.com> Wed Sep 6 14:43:46 UTC 2023 - Fridrich Strba <fstrba@suse.com>

View File

@ -1,7 +1,7 @@
# #
# spec file # spec file for package modello-maven-plugin
# #
# Copyright (c) 2023 SUSE LLC # Copyright (c) 2024 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -19,7 +19,7 @@
%global parent modello %global parent modello
%global subname maven-plugin %global subname maven-plugin
Name: %{parent}-%{subname} Name: %{parent}-%{subname}
Version: 2.1.2 Version: 2.4.0
Release: 0 Release: 0
Summary: Modello Maven Plugin Summary: Modello Maven Plugin
License: Apache-2.0 AND MIT License: Apache-2.0 AND MIT
@ -27,8 +27,9 @@ Group: Development/Libraries/Java
URL: https://codehaus-plexus.github.io/modello/modello-maven-plugin URL: https://codehaus-plexus.github.io/modello/modello-maven-plugin
Source0: https://repo1.maven.org/maven2/org/codehaus/%{parent}/%{parent}/%{version}/%{parent}-%{version}-source-release.zip Source0: https://repo1.maven.org/maven2/org/codehaus/%{parent}/%{parent}/%{version}/%{parent}-%{version}-source-release.zip
Source1: https://www.apache.org/licenses/LICENSE-2.0.txt Source1: https://www.apache.org/licenses/LICENSE-2.0.txt
Patch0: modello-cli-domasxpp3.patch Patch0: 0001-Fix-ModelloCli-after-moving-from-Plexus-to-JSR330.patch
Patch1: 0001-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch Patch1: 0002-Add-support-for-domAsXpp3-and-fail-if-the-old-Java5-.patch
Patch2: 0003-Fix-Snakeyaml.patch
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: maven-local BuildRequires: maven-local
BuildRequires: unzip BuildRequires: unzip
@ -40,17 +41,20 @@ BuildRequires: mvn(org.apache.maven:maven-plugin-api)
BuildRequires: mvn(org.codehaus.modello:modello-core) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-core) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-converters) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-converters) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-dom4j) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-dom4j) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-jackson) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-java) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-java) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-jdom) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-jdom) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-jsonschema) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-sax) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-sax) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-snakeyaml) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-stax) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-stax) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-velocity) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-xdoc) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-xdoc) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-xpp3) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-xpp3) = %{version}
BuildRequires: mvn(org.codehaus.modello:modello-plugin-xsd) = %{version} BuildRequires: mvn(org.codehaus.modello:modello-plugin-xsd) = %{version}
BuildRequires: mvn(org.codehaus.plexus:plexus-component-metadata) BuildRequires: mvn(org.codehaus.plexus:plexus-build-api)
BuildRequires: mvn(org.codehaus.plexus:plexus-utils) BuildRequires: mvn(org.codehaus.plexus:plexus-utils)
BuildRequires: mvn(org.codehaus.plexus:plexus:pom:) BuildRequires: mvn(org.codehaus.plexus:plexus:pom:)
BuildRequires: mvn(org.sonatype.plexus:plexus-build-api)
#!BuildRequires: maven-compiler-plugin-bootstrap #!BuildRequires: maven-compiler-plugin-bootstrap
#!BuildRequires: maven-jar-plugin-bootstrap #!BuildRequires: maven-jar-plugin-bootstrap
#!BuildRequires: maven-javadoc-plugin-bootstrap #!BuildRequires: maven-javadoc-plugin-bootstrap
@ -79,47 +83,40 @@ API documentation for %{name}.
%prep %prep
%setup -q -n %{parent}-%{version} %setup -q -n %{parent}-%{version}
%patch0 -p1 %patch -P 0 -p1
%patch1 -p1 %patch -P 1 -p1
cp -p %{SOURCE1} LICENSE %patch -P 2 -p1
cp -p %{SOURCE1} .
%pom_remove_plugin :maven-site-plugin %pom_remove_plugin :maven-site-plugin
%pom_remove_plugin :maven-enforcer-plugin %pom_remove_plugin :maven-enforcer-plugin
%pom_remove_plugin :sisu-maven-plugin
%pom_remove_dep :plexus-xml modello-core
%pom_remove_dep :sisu-guice modello-core %pom_remove_dep :sisu-guice modello-core
%pom_add_dep com.google.inject:guice modello-core %pom_add_dep com.google.inject:guice modello-core
%pom_change_dep -r :velocity-engine-core :velocity
%pom_remove_dep :jackson-bom %pom_remove_dep :jackson-bom
%pom_disable_module modello-plugin-jackson modello-plugins
%pom_disable_module modello-plugin-jsonschema modello-plugins
%pom_disable_module modello-plugin-snakeyaml modello-plugins
%pom_disable_module modello-plugin-velocity modello-plugins
%pom_remove_dep :modello-plugin-jackson modello-maven-plugin
%pom_remove_dep :modello-plugin-jsonschema modello-maven-plugin
%pom_remove_dep :modello-plugin-snakeyaml modello-maven-plugin
%pom_remove_dep :modello-plugin-velocity modello-maven-plugin
rm -f modello-maven-plugin/src/main/java/org/codehaus/modello/maven/ModelloVelocityMojo.java
%pom_disable_module modello-test
%build %build
pushd %{name} pushd %{name}
%{mvn_file} :{*} %{parent}/@1
%{mvn_build} -f -- -Dsource=8 %{mvn_build} -f -- -Dsource=8
popd popd
%install %install
pushd %{name} pushd %{name}
%mvn_install %mvn_install
popd popd
%fdupes -s %{buildroot}%{_javadocdir} %fdupes -s %{buildroot}%{_javadocdir}
%files -f %{name}/.mfiles %files -f %{name}/.mfiles
%license LICENSE %license LICENSE.txt LICENSE-2.0.txt
%files javadoc -f %{name}/.mfiles-javadoc %files javadoc -f %{name}/.mfiles-javadoc
%license LICENSE %license LICENSE.txt LICENSE-2.0.txt
%changelog %changelog

View File

@ -1,3 +1,90 @@
-------------------------------------------------------------------
Thu May 16 05:23:46 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Package both relevant licenses
-------------------------------------------------------------------
Sat May 4 12:02:36 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Upgrade to upstream version 2.4.0
* New features and improvements
+ Keep license structure
+ Support addition of license header to generated files
+ Make generated code - Java 8 based by default
+ threadsafety
* Bug Fixes
+ Revert snakeyaml to 1.33 (as 2.x is not fully compatible with
1.x). This change is reverted and SnakeYaml fixed by the
0003-Fix-Snakeyaml.patch
- Modified patches:
* 0001-Fix-ModelloCli-after-moving-from-Plexus-to-JSR330.patch
* 0002-Add-support-for-domAsXpp3-and-fail-if-the-old-Java5-.patch
* 0003-Fix-Snakeyaml.patch
+ rediff to changed context
-------------------------------------------------------------------
Fri May 3 16:50:54 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Added patch:
* 0003-Fix-Snakeyaml.patch
+ patch to fix the modello-plugin-snakeyaml with SnakeYaml 2.2
+ https://github.com/codehaus-plexus/modello/pull/439
-------------------------------------------------------------------
Wed May 1 12:22:05 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Build against the new codehaus plexus build api 1.2.0
- Removed patch:
* 0003-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch
+ not needed any more
-------------------------------------------------------------------
Tue Apr 16 13:04:04 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Build all modello plugins
-------------------------------------------------------------------
Sun Apr 14 06:13:08 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Upgrade to upstream version 2.3.0
* Changes of version 2.3.0
+ Kill off dead Plexus
+ Fix for #366
* Changes of version 2.2.0
+ Parse javadoc tags in xdoc generator (only @since is supported
atm)
+ Use generic in Xpp3Reader for JDK 5+
+ Get rid of usage deprecated Reader/WriterFactory
+ Make spotless plugin work with Java 21
+ Support java source property being discovered as 1.x
+ Fix thread safety issues by not using singletons for
generators
+ Improve discovering javaSource based on maven.compiler
properties, default as 8
+ Switch Plexus Annotation to JSR-330
+ Make spotless plugin work with Java 21
- Modified patches:
* 0001-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch
-> 0003-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch
* modello-cli-domasxpp3.patch ->
0002-Add-support-for-domAsXpp3-and-fail-if-the-old-Java5-.patch
+ rediff to changed context
- Added patch:
* 0001-Fix-ModelloCli-after-moving-from-Plexus-to-JSR330.patch
+ Fix for https://github.com/codehaus-plexus/modello/issues/434
submitted upstream
-------------------------------------------------------------------
Tue Apr 2 17:32:12 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Add dependency on plexus-xml where relevant
* this will be needed for smooth upgrade to plexus-utils 4.0.0
-------------------------------------------------------------------
Wed Feb 21 22:14:06 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Use %patch -P N instead of deprecated %patchN.
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Sep 11 16:10:44 UTC 2023 - Fridrich Strba <fstrba@suse.com> Mon Sep 11 16:10:44 UTC 2023 - Fridrich Strba <fstrba@suse.com>

View File

@ -1,7 +1,7 @@
# #
# spec file for package modello # spec file for package modello
# #
# Copyright (c) 2023 SUSE LLC # Copyright (c) 2024 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -17,7 +17,7 @@
Name: modello Name: modello
Version: 2.1.2 Version: 2.4.0
Release: 0 Release: 0
Summary: Modello Data Model toolkit Summary: Modello Data Model toolkit
License: Apache-2.0 AND MIT License: Apache-2.0 AND MIT
@ -26,34 +26,46 @@ URL: https://codehaus-plexus.github.io/modello
Source0: https://repo1.maven.org/maven2/org/codehaus/%{name}/%{name}/%{version}/%{name}-%{version}-source-release.zip Source0: https://repo1.maven.org/maven2/org/codehaus/%{name}/%{name}/%{version}/%{name}-%{version}-source-release.zip
Source1: https://www.apache.org/licenses/LICENSE-2.0.txt Source1: https://www.apache.org/licenses/LICENSE-2.0.txt
Source100: %{name}-build.tar.xz Source100: %{name}-build.tar.xz
Patch0: modello-cli-domasxpp3.patch Patch0: 0001-Fix-ModelloCli-after-moving-from-Plexus-to-JSR330.patch
Patch1: 0001-Revert-Switch-to-codehaus-plexus-build-api-1.2.0-345.patch Patch1: 0002-Add-support-for-domAsXpp3-and-fail-if-the-old-Java5-.patch
Patch2: 0003-Fix-Snakeyaml.patch
BuildRequires: ant BuildRequires: ant
BuildRequires: aopalliance
BuildRequires: atinject BuildRequires: atinject
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: google-guice
BuildRequires: guava BuildRequires: guava
BuildRequires: jackson-core
BuildRequires: javadoc-parser
BuildRequires: javapackages-local >= 6 BuildRequires: javapackages-local >= 6
BuildRequires: jsoup BuildRequires: jsoup
BuildRequires: plexus-build-api BuildRequires: junit
BuildRequires: plexus-classworlds BuildRequires: plexus-build-api >= 1.0
BuildRequires: plexus-containers-component-annotations BuildRequires: plexus-compiler
BuildRequires: plexus-metadata-generator
BuildRequires: plexus-utils BuildRequires: plexus-utils
BuildRequires: plexus-xml
BuildRequires: sisu-inject
BuildRequires: sisu-plexus BuildRequires: sisu-plexus
BuildRequires: slf4j
BuildRequires: snakeyaml
BuildRequires: unzip BuildRequires: unzip
BuildRequires: velocity
Requires: aopalliance Requires: aopalliance
Requires: atinject Requires: atinject
Requires: google-guice Requires: google-guice
Requires: guava Requires: guava
Requires: jackson-core
Requires: javadoc-parser
Requires: javapackages-tools Requires: javapackages-tools
Requires: plexus-build-api Requires: plexus-build-api
Requires: plexus-build-api0
Requires: plexus-classworlds Requires: plexus-classworlds
Requires: plexus-containers-component-annotations Requires: plexus-containers-component-annotations
Requires: plexus-utils Requires: plexus-utils
Requires: plexus-xml
Requires: sisu-inject Requires: sisu-inject
Requires: sisu-plexus Requires: sisu-plexus
Requires: slf4j
Requires: snakeyaml
Requires: velocity
BuildArch: noarch BuildArch: noarch
%description %description
@ -65,6 +77,16 @@ architecture, various types of code and descriptors can be generated
from the single model, including Java POJOs, XML from the single model, including Java POJOs, XML
marshallers/unmarshallers, XSD and documentation. marshallers/unmarshallers, XSD and documentation.
%package test
Summary: Modello Test Package
Group: Development/Libraries/Java
Requires: %{name} = %{version}
%description test
Modello Test Package contains the basis to create Modello generator
unit-tests, including sample models and xml files to test every
feature for every plugin.
%package javadoc %package javadoc
Summary: Javadoc for %{name} Summary: Javadoc for %{name}
Group: Development/Libraries/Java Group: Development/Libraries/Java
@ -74,52 +96,41 @@ API documentation for %{name}.
%prep %prep
%setup -q -a100 %setup -q -a100
%patch0 -p1 %patch -P 0 -p1
%patch1 -p1 %patch -P 1 -p1
cp -p %{SOURCE1} LICENSE %patch -P 2 -p1
cp -p %{SOURCE1} .
%pom_remove_plugin :maven-site-plugin %pom_remove_plugin :maven-site-plugin
%pom_remove_plugin :maven-enforcer-plugin %pom_remove_plugin :maven-enforcer-plugin
%pom_remove_dep :plexus-xml modello-core
%pom_remove_dep :sisu-guice modello-core %pom_remove_dep :sisu-guice modello-core
%pom_add_dep com.google.inject:guice modello-core %pom_add_dep com.google.inject:guice modello-core
# This builds correctly with the older velocity 1.x and avoids build cycles
%pom_change_dep -r :velocity-engine-core :velocity
%pom_remove_dep :jackson-bom %pom_remove_dep :jackson-bom
%pom_disable_module modello-plugin-jackson modello-plugins
%pom_disable_module modello-plugin-jsonschema modello-plugins
%pom_disable_module modello-plugin-snakeyaml modello-plugins
%pom_disable_module modello-plugin-velocity modello-plugins
%pom_remove_dep :modello-plugin-jackson modello-maven-plugin
%pom_remove_dep :modello-plugin-jsonschema modello-maven-plugin
%pom_remove_dep :modello-plugin-snakeyaml modello-maven-plugin
%pom_remove_dep :modello-plugin-velocity modello-maven-plugin
rm -f modello-maven-plugin/src/main/java/org/codehaus/modello/maven/ModelloVelocityMojo.java
%pom_disable_module modello-test
%build %build
mkdir -p lib mkdir -p lib
build-jar-repository -s lib \ build-jar-repository -s lib \
aopalliance \
atinject \ atinject \
commons-cli \
guava/guava \ guava/guava \
guice/google-guice \ jackson-core \
jdom2/jdom2 \ javadoc-parser \
jsoup \ jsoup \
objectweb-asm/asm \ junit \
org.eclipse.sisu.inject \ org.eclipse.sisu.inject \
org.eclipse.sisu.plexus \ org.eclipse.sisu.plexus \
plexus/classworlds \
plexus/cli \ plexus/cli \
plexus-compiler \
plexus/plexus-build-api \ plexus/plexus-build-api \
plexus/utils \ plexus/utils \
plexus-containers/plexus-component-annotations \ plexus/xml \
plexus-metadata-generator \ slf4j/api \
qdox snakeyaml \
velocity
%{ant} \ %{ant} \
-Dtest.skip=true \ -Dtest.skip=true \
@ -128,37 +139,23 @@ build-jar-repository -s lib \
%install %install
# jars # jars
install -dm 0755 %{buildroot}%{_javadir}/%{name} install -dm 0755 %{buildroot}%{_javadir}/%{name}
for i in core; do
install -pm 0644 %{name}-${i}/target/%{name}-${i}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}-${i}.jar
done
for i in converters dom4j java jdom sax stax xdoc xml xpp3 xsd; do
install -pm 0644 %{name}-plugins/%{name}-plugin-${i}/target/%{name}-plugin-${i}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}-plugin-${i}.jar
done
# poms # poms
install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name} install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
for i in core; do
%{mvn_install_pom} %{name}-${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}-${i}.pom
%add_maven_depmap %{name}/%{name}-${i}.pom %{name}/%{name}-${i}.jar
done
for i in converters dom4j java jdom sax stax xdoc xml xpp3 xsd; do
%{mvn_install_pom} %{name}-plugins/%{name}-plugin-${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}-plugin-${i}.pom
%add_maven_depmap %{name}/%{name}-plugin-${i}.pom %{name}/%{name}-plugin-${i}.jar
done
# javadoc # javadoc
install -dm 0755 %{buildroot}%{_javadocdir}/%{name} install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
for i in core; do for i in core test; do
install -pm 0644 %{name}-${i}/target/%{name}-${i}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}-${i}.jar
%{mvn_install_pom} %{name}-${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}-${i}.pom
%add_maven_depmap %{name}/%{name}-${i}.pom %{name}/%{name}-${i}.jar -f ${i}
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}/%{name}-${i} install -dm 0755 %{buildroot}%{_javadocdir}/%{name}/%{name}-${i}
cp -pr %{name}-${i}/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/%{name}-${i}/ cp -pr %{name}-${i}/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/%{name}-${i}/
done done
for i in converters dom4j java jdom sax stax xdoc xml xpp3 xsd; do for i in converters dom4j java jdom sax stax xdoc xml xpp3 xsd jackson jsonschema snakeyaml velocity; do
install -pm 0644 %{name}-plugins/%{name}-plugin-${i}/target/%{name}-plugin-${i}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}-plugin-${i}.jar
%{mvn_install_pom} %{name}-plugins/%{name}-plugin-${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}-plugin-${i}.pom
%add_maven_depmap %{name}/%{name}-plugin-${i}.pom %{name}/%{name}-plugin-${i}.jar
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}/%{name}-plugin-${i} install -dm 0755 %{buildroot}%{_javadocdir}/%{name}/%{name}-plugin-${i}
cp -pr %{name}-plugins/%{name}-plugin-${i}/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/%{name}-plugin-${i}/ cp -pr %{name}-plugins/%{name}-plugin-${i}/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/%{name}-plugin-${i}/
done done
@ -166,14 +163,17 @@ done
%fdupes -s %{buildroot}%{_javadocdir} %fdupes -s %{buildroot}%{_javadocdir}
# script # script
%jpackage_script org.codehaus.modello.ModelloCli "" "" modello:org.eclipse.sisu.plexus:org.eclipse.sisu.inject:google-guice:aopalliance:atinject:plexus-containers/plexus-component-annotations:plexus/classworlds:plexus/utils:plexus/plexus-build-api:guava %{name} true %jpackage_script org.codehaus.modello.ModelloCli "" "" modello:aopalliance:atinject:google-guice:guava:jackson-core:javadoc-parser:plexus/plexus-build-api:plexus/plexus-build-api0:plexus/classworlds:plexus-containers/plexus-component-annotations:plexus/utils:plexus/xml:org.eclipse.sisu.inject:org.eclipse.sisu.plexus:slf4j/api:slf4j/simple:snakeyaml:velocity %{name} true
%files -f .mfiles %files -f .mfiles -f .mfiles-core
%license LICENSE %license LICENSE.txt LICENSE-2.0.txt
%{_bindir}/* %{_bindir}/*
%files test -f .mfiles-test
%license LICENSE.txt LICENSE-2.0.txt
%files javadoc %files javadoc
%license LICENSE %license LICENSE.txt LICENSE-2.0.txt
%{_javadocdir}/%{name} %{_javadocdir}/%{name}
%changelog %changelog