From 607ea1d3247446d90fd76eab02ca6bdebbc81790 Mon Sep 17 00:00:00 2001 From: Matteo Franci Date: Sat, 11 Jan 2025 23:01:50 +0100 Subject: [PATCH] Fix native support for Apache FreeMarker #278 (#279) --- CHANGELOG.md | 7 +++++++ fj-doc-freemarker/pom.xml | 9 ++++++++- .../java/doc/project/facade/FlavourContext.java | 4 ++++ .../fugerit/java/doc/project/facade/VenusContext.java | 2 ++ .../config/template/flavour/quarkus-3/pom.ftl | 10 ++++++---- .../org/fugerit/java/doc/project/facade/TestInit.java | 7 +++++++ fj-doc-mod-opencsv/pom.xml | 2 +- fj-doc-native-quarkus/pom.xml | 6 ------ 8 files changed, 35 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 048912b2d..141cae154 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Fixed + +- Fix native support for Apache FreeMarker +- subfolder for native embedded configuration file +- freemarker-version 2.3.34 +- quarkus-version set to 3.17.6 across al the modules + ## [8.11.8] - 2025-01-10 ### Changed diff --git a/fj-doc-freemarker/pom.xml b/fj-doc-freemarker/pom.xml index 2810de2b2..aa3e8f18e 100644 --- a/fj-doc-freemarker/pom.xml +++ b/fj-doc-freemarker/pom.xml @@ -22,7 +22,8 @@ - 2.3.34 + 2.3.34 + 1.0.0 @@ -79,6 +80,12 @@ ${freemarker-version} + + org.fugerit.java + freemarker-native + ${freemarker-native-version} + + org.fugerit.java fj-core diff --git a/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/FlavourContext.java b/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/FlavourContext.java index 4195bd630..06a8f3fbe 100644 --- a/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/FlavourContext.java +++ b/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/FlavourContext.java @@ -66,4 +66,8 @@ public String getResourcePathFmConfigXml() { return VenusContext.toResourcePathFmConfigXml( this.getArtifactId() ); } + public boolean isFreeMarkerNativeAvailable() { + return VersionCheck.isMajorThan( this.getVersion(), VenusContext.VERSION_NA_FREEMARKER_NATIVE ); + } + } diff --git a/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/VenusContext.java b/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/VenusContext.java index ff25a29c5..0afdf04e2 100644 --- a/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/VenusContext.java +++ b/fj-doc-maven-plugin/src/main/java/org/fugerit/java/doc/project/facade/VenusContext.java @@ -37,6 +37,8 @@ public static String toResourcePathFmConfigXml( String artifactId ) { public static final String VERSION_NA_FULL_PROCESS = "8.6.2"; + public static final String VERSION_NA_FREEMARKER_NATIVE = "8.11.8"; + @Getter private File projectDir; diff --git a/fj-doc-maven-plugin/src/main/resources/config/template/flavour/quarkus-3/pom.ftl b/fj-doc-maven-plugin/src/main/resources/config/template/flavour/quarkus-3/pom.ftl index 914ee6887..7cc069f1a 100644 --- a/fj-doc-maven-plugin/src/main/resources/config/template/flavour/quarkus-3/pom.ftl +++ b/fj-doc-maven-plugin/src/main/resources/config/template/flavour/quarkus-3/pom.ftl @@ -15,7 +15,7 @@ ${context.flavourVersion} true 3.3.1 - 1.1.0 + 1.0.0 @@ -52,12 +52,14 @@ quarkus-arc <#if context.modules?seq_contains("fj-doc-freemarker")> + <#if !context.freeMarkerNativeAvailable > - io.quarkiverse.freemarker - quarkus-freemarker - ${r"${quarkus-freemarker-version}"} + io.fugerit.java + freemarker-natice + ${r"${freemarker-native-version}"} + io.quarkus quarkus-junit5 diff --git a/fj-doc-maven-plugin/src/test/java/test/org/fugerit/java/doc/project/facade/TestInit.java b/fj-doc-maven-plugin/src/test/java/test/org/fugerit/java/doc/project/facade/TestInit.java index b52ad2319..bc16c11bd 100644 --- a/fj-doc-maven-plugin/src/test/java/test/org/fugerit/java/doc/project/facade/TestInit.java +++ b/fj-doc-maven-plugin/src/test/java/test/org/fugerit/java/doc/project/facade/TestInit.java @@ -9,6 +9,7 @@ import org.fugerit.java.doc.project.facade.FlavourContext; import org.fugerit.java.doc.project.facade.FlavourFacade; import org.fugerit.java.doc.project.facade.ModuleFacade; +import org.fugerit.java.doc.project.facade.VenusContext; import org.junit.Assert; import org.junit.Test; @@ -18,6 +19,8 @@ @Slf4j public class TestInit { + private static final String FREEMARKER_NATIVE_AVAILABLE = "8.11.9"; + private String getVersion() { return "8.10.5"; } @@ -81,6 +84,10 @@ public void testFlavourContext() { context.setFlavourVersion( "test" ); FlavourFacade.checkFlavourVersion( context, FlavourFacade.FLAVOUR_QUARKUS_2 ); Assert.assertEquals( "test", context.getFlavourVersion() ); + context.setVersion( VenusContext.VERSION_NA_FREEMARKER_NATIVE ); + Assert.assertFalse( context.isFreeMarkerNativeAvailable() ); + context.setVersion( FREEMARKER_NATIVE_AVAILABLE ); + Assert.assertTrue( context.isFreeMarkerNativeAvailable() ); } } diff --git a/fj-doc-mod-opencsv/pom.xml b/fj-doc-mod-opencsv/pom.xml index 3d4cbc0d0..92a266c08 100644 --- a/fj-doc-mod-opencsv/pom.xml +++ b/fj-doc-mod-opencsv/pom.xml @@ -11,7 +11,7 @@ fj-doc-mod-opencsv - Renderer for CSV using OpenCSV + Fugerit Venus Doc Module. Contains doc handler for CSV format (based on com.opencsv:opencsv). diff --git a/fj-doc-native-quarkus/pom.xml b/fj-doc-native-quarkus/pom.xml index fd1f3ee57..d7fd71b22 100644 --- a/fj-doc-native-quarkus/pom.xml +++ b/fj-doc-native-quarkus/pom.xml @@ -14,7 +14,6 @@ 17 3.5.2 - 1.1.0 ${quarkus-version} true UTF-8 @@ -55,11 +54,6 @@ io.quarkus quarkus-arc - - io.quarkiverse.freemarker - quarkus-freemarker - ${quarkus-freemarker-version} - io.quarkus quarkus-junit5