diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index 7824917b..b38f0d82 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -11,7 +11,7 @@ on: - '.idea/**' - 'assets/**' pull_request: - types: [opened, synchronize, reopened] + branches: [ develop ] paths-ignore: - '**.md' - '.config/**' diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties index e56bc180..4d624fa9 100644 --- a/.mvn/wrapper/maven-wrapper.properties +++ b/.mvn/wrapper/maven-wrapper.properties @@ -14,4 +14,4 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.8/apache-maven-3.9.8-bin.zip +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip diff --git a/CHANGELOG.md b/CHANGELOG.md index a1d2dc7b..7cab2fca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +# 2.2.0 + +* Fixed issue with not found migration script (for v2.X) +* Updated org.springframework.boot.version to v3.3.4 + # 2.1.0 * Implemented auto-id-generation for UUIDs. diff --git a/README.md b/README.md index a4b3fbb8..5cdd4105 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,8 @@ instructions** are in the documentation](https://xdev-software.github.io/spring- | ``1.0.3/1.0.4`` | ``17`` | ``3.2.3`` | ``1.2.0`` | | ``1.0.5-1.0.7`` | ``17`` | ``3.2.5`` | ``1.3.2`` | | ``1.0.8-1.0.10`` | ``17`` | ``3.3.1`` | ``1.3.2`` | -| ``>= 2.0.0`` | ``17`` | ``3.3.2`` | ``1.4.0`` | +| ``2.0.0-2.1.0`` | ``17`` | ``3.3.2`` | ``1.4.0`` | +| ``>= 2.2.0`` | ``17`` | ``3.3.4`` | ``1.4.0`` | ## Demo diff --git a/docs/antora.yml b/docs/antora.yml index fc9ac74e..1ff4aa82 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -1,14 +1,14 @@ name: ROOT title: Spring-Data-Eclipse-Store version: master -display_version: '2.1.0' +display_version: '2.2.0' start_page: index.adoc nav: - modules/ROOT/nav.adoc asciidoc: attributes: product-name: 'Spring-Data-Eclipse-Store' - display-version: '2.1.0' - maven-version: '2.1.0' + display-version: '2.2.0' + maven-version: '2.2.0' page-editable: false page-out-of-support: false diff --git a/pom.xml b/pom.xml index 250246f9..f2ef4282 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ software.xdev spring-data-eclipse-store-root - 2.2.1-SNAPSHOT + 2.2.0-SNAPSHOT pom @@ -45,12 +45,12 @@ org.apache.maven.plugins maven-checkstyle-plugin - 3.4.0 + 3.5.0 com.puppycrawl.tools checkstyle - 10.17.0 + 10.18.2 @@ -75,7 +75,7 @@ org.apache.maven.plugins maven-pmd-plugin - 3.24.0 + 3.25.0 true true @@ -93,12 +93,12 @@ net.sourceforge.pmd pmd-core - 7.4.0 + 7.6.0 net.sourceforge.pmd pmd-java - 7.4.0 + 7.6.0 @@ -110,7 +110,7 @@ org.apache.maven.plugins maven-jxr-plugin - 3.4.0 + 3.5.0 diff --git a/spring-data-eclipse-store-benchmark/pom.xml b/spring-data-eclipse-store-benchmark/pom.xml index 82f47594..97ec7288 100644 --- a/spring-data-eclipse-store-benchmark/pom.xml +++ b/spring-data-eclipse-store-benchmark/pom.xml @@ -5,7 +5,7 @@ software.xdev spring-data-eclipse-store-root - 2.2.1-SNAPSHOT + 2.2.0-SNAPSHOT spring-data-eclipse-store-benchmark @@ -25,7 +25,7 @@ UTF-8 UTF-8 - 3.3.2 + 3.3.4 1.37 diff --git a/spring-data-eclipse-store-demo/pom.xml b/spring-data-eclipse-store-demo/pom.xml index 9adf5eed..e88392f6 100644 --- a/spring-data-eclipse-store-demo/pom.xml +++ b/spring-data-eclipse-store-demo/pom.xml @@ -7,7 +7,7 @@ software.xdev spring-data-eclipse-store-root - 2.2.1-SNAPSHOT + 2.2.0-SNAPSHOT spring-data-eclipse-store-demo @@ -28,7 +28,7 @@ software.xdev.spring.data.eclipse.store.demo.complex.ComplexDemoApplication - 3.3.2 + 3.3.4 @@ -113,7 +113,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.3.1 + 3.5.0 --add-opens java.base/java.util=ALL-UNNAMED diff --git a/spring-data-eclipse-store-jpa/pom.xml b/spring-data-eclipse-store-jpa/pom.xml index fa71c7ef..6d07d4d4 100644 --- a/spring-data-eclipse-store-jpa/pom.xml +++ b/spring-data-eclipse-store-jpa/pom.xml @@ -7,7 +7,7 @@ software.xdev spring-data-eclipse-store-root - 2.2.1-SNAPSHOT + 2.2.0-SNAPSHOT spring-data-eclipse-store-jpa @@ -30,7 +30,7 @@ software.xdev.spring.data.eclipse.store.demo.complex.ComplexDemoApplication - 3.3.2 + 3.3.4 diff --git a/spring-data-eclipse-store/pom.xml b/spring-data-eclipse-store/pom.xml index 417cd4bb..4fda7ca9 100644 --- a/spring-data-eclipse-store/pom.xml +++ b/spring-data-eclipse-store/pom.xml @@ -51,7 +51,7 @@ UTF-8 - 3.3.2 + 3.3.4 1.4.0 1.4.0 @@ -239,7 +239,7 @@ org.apache.maven.plugins maven-project-info-reports-plugin - 3.6.2 + 3.7.0 @@ -247,7 +247,7 @@ com.mycila license-maven-plugin - 4.5 + 4.6 ${project.organization.url} @@ -288,7 +288,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.8.0 + 3.10.0 attach-javadocs @@ -306,7 +306,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.3.1 + 3.5.0 --add-exports java.base/jdk.internal.misc=ALL-UNNAMED @@ -357,7 +357,7 @@ org.apache.maven.plugins maven-gpg-plugin - 3.2.4 + 3.2.7 sign-artifacts @@ -400,12 +400,12 @@ org.apache.maven.plugins maven-checkstyle-plugin - 3.4.0 + 3.5.0 com.puppycrawl.tools checkstyle - 10.17.0 + 10.18.2 @@ -430,7 +430,7 @@ org.apache.maven.plugins maven-pmd-plugin - 3.24.0 + 3.25.0 true true @@ -447,12 +447,12 @@ net.sourceforge.pmd pmd-core - 7.4.0 + 7.6.0 net.sourceforge.pmd pmd-java - 7.4.0 + 7.6.0 @@ -464,7 +464,7 @@ org.apache.maven.plugins maven-jxr-plugin - 3.4.0 + 3.5.0 diff --git a/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/EclipseStoreMigrator.java b/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/EclipseStoreMigrator.java index 84b0533f..f37eaf5d 100644 --- a/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/EclipseStoreMigrator.java +++ b/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/EclipseStoreMigrator.java @@ -20,16 +20,19 @@ import org.eclipse.store.storage.embedded.types.EmbeddedStorageManager; import software.xdev.micromigration.eclipsestore.MigrationManager; -import software.xdev.micromigration.migrater.reflection.ReflectiveMigrater; +import software.xdev.micromigration.migrater.ExplicitMigrater; import software.xdev.micromigration.scripts.VersionAgnosticMigrationScript; import software.xdev.micromigration.version.MigrationVersion; import software.xdev.spring.data.eclipse.store.repository.root.VersionedRoot; -import software.xdev.spring.data.eclipse.store.repository.root.update.scripts.v2_0_0_InitalizeVersioning; +import software.xdev.spring.data.eclipse.store.repository.root.update.scripts.v2_0_0_InitializeVersioning; public final class EclipseStoreMigrator { - public static final Class FIRST_UPDATE_SCRIPT = v2_0_0_InitalizeVersioning.class; + public static final VersionAgnosticMigrationScript[] SCRIPTS = + new VersionAgnosticMigrationScript[]{ + new v2_0_0_InitializeVersioning() + }; private EclipseStoreMigrator() { @@ -37,16 +40,13 @@ private EclipseStoreMigrator() public static void migrate(final VersionedRoot versionedRoot, final EmbeddedStorageManager storageManager) { - final ReflectiveMigrater migrater = - new ReflectiveMigrater(FIRST_UPDATE_SCRIPT.getPackageName()); - new MigrationManager(versionedRoot, migrater, storageManager) - .migrate(versionedRoot); + final ExplicitMigrater migrater = new ExplicitMigrater(SCRIPTS); + new MigrationManager(versionedRoot, migrater, storageManager).migrate(versionedRoot); } public static MigrationVersion getLatestVersion() { - final ReflectiveMigrater migrater = - new ReflectiveMigrater(FIRST_UPDATE_SCRIPT.getPackageName()); + final ExplicitMigrater migrater = new ExplicitMigrater(SCRIPTS); final TreeSet> sortedScripts = migrater.getSortedScripts(); return sortedScripts.isEmpty() ? new MigrationVersion(0, 0, 0) : sortedScripts.last().getTargetVersion(); } diff --git a/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/LoggingUpdateScript.java b/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/LoggingUpdateScript.java index 934ddab1..71b03434 100644 --- a/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/LoggingUpdateScript.java +++ b/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/LoggingUpdateScript.java @@ -24,6 +24,10 @@ import software.xdev.spring.data.eclipse.store.repository.root.VersionedRoot; +/** + * All migration scripts must be added to + * {@link software.xdev.spring.data.eclipse.store.repository.EclipseStoreMigrator#SCRIPTS}! + */ public abstract class LoggingUpdateScript extends ReflectiveVersionMigrationScript { diff --git a/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/v2_0_0_InitalizeVersioning.java b/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/v2_0_0_InitializeVersioning.java similarity index 83% rename from spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/v2_0_0_InitalizeVersioning.java rename to spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/v2_0_0_InitializeVersioning.java index ec4d971c..7844a995 100644 --- a/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/v2_0_0_InitalizeVersioning.java +++ b/spring-data-eclipse-store/src/main/java/software/xdev/spring/data/eclipse/store/repository/root/update/scripts/v2_0_0_InitializeVersioning.java @@ -21,13 +21,21 @@ import software.xdev.micromigration.eclipsestore.MigrationEmbeddedStorageManager; import software.xdev.micromigration.scripts.Context; import software.xdev.spring.data.eclipse.store.repository.root.EntityData; +import software.xdev.spring.data.eclipse.store.repository.root.RootDataV2; import software.xdev.spring.data.eclipse.store.repository.root.VersionedRoot; +/** + * Copies elements from the old Root({@link software.xdev.spring.data.eclipse.store.repository.Root} to the newer + * version of Root({@link RootDataV2}). + *

+ * All migration scripts must be added to + * {@link software.xdev.spring.data.eclipse.store.repository.EclipseStoreMigrator#SCRIPTS}! + */ @SuppressWarnings("checkstyle:TypeName") -public class v2_0_0_InitalizeVersioning extends LoggingUpdateScript +public class v2_0_0_InitializeVersioning extends LoggingUpdateScript { - private static final Logger LOG = LoggerFactory.getLogger(v2_0_0_InitalizeVersioning.class); + private static final Logger LOG = LoggerFactory.getLogger(v2_0_0_InitializeVersioning.class); @Override public void loggedMigrate(final Context context)