diff --git a/bom/application/pom.xml b/bom/application/pom.xml
index 7a234a367bfa9..785d9f94eeaff 100644
--- a/bom/application/pom.xml
+++ b/bom/application/pom.xml
@@ -163,8 +163,8 @@
10.17.0
3.0.3
- 4.27.0
- 4.24.0
+ 4.29.1
+ 4.28.0
2.2
6.0.0
4.11.1
diff --git a/extensions/liquibase-mongodb/deployment/pom.xml b/extensions/liquibase-mongodb/deployment/pom.xml
index a969686fade27..654a71d06606a 100644
--- a/extensions/liquibase-mongodb/deployment/pom.xml
+++ b/extensions/liquibase-mongodb/deployment/pom.xml
@@ -16,6 +16,12 @@
io.quarkus
quarkus-liquibase-mongodb
+
+
+ org.liquibase
+ liquibase-commercial
+
+
io.quarkus
diff --git a/extensions/liquibase-mongodb/deployment/src/main/java/io/quarkus/liquibase/mongodb/deployment/LiquibaseMongodbProcessor.java b/extensions/liquibase-mongodb/deployment/src/main/java/io/quarkus/liquibase/mongodb/deployment/LiquibaseMongodbProcessor.java
index a9676ef068e01..cb070ce870ee0 100644
--- a/extensions/liquibase-mongodb/deployment/src/main/java/io/quarkus/liquibase/mongodb/deployment/LiquibaseMongodbProcessor.java
+++ b/extensions/liquibase-mongodb/deployment/src/main/java/io/quarkus/liquibase/mongodb/deployment/LiquibaseMongodbProcessor.java
@@ -125,6 +125,7 @@ void nativeImageConfiguration(
liquibase.command.CommandFactory.class.getName(),
liquibase.database.LiquibaseTableNamesFactory.class.getName(),
liquibase.configuration.ConfiguredValueModifierFactory.class.getName(),
+ liquibase.changelog.FastCheckService.class.getName(),
// deprecated, but still used by liquibase.nosql.lockservice.AbstractNoSqlLockService
liquibase.configuration.GlobalConfiguration.class.getName())
.constructors().build());
diff --git a/extensions/liquibase-mongodb/runtime/pom.xml b/extensions/liquibase-mongodb/runtime/pom.xml
index 9e932f0198299..be6f8d1e0aa2e 100644
--- a/extensions/liquibase-mongodb/runtime/pom.xml
+++ b/extensions/liquibase-mongodb/runtime/pom.xml
@@ -36,6 +36,12 @@
org.liquibase.ext
liquibase-mongodb
+
+
+ org.liquibase
+ liquibase-commercial
+
+
org.graalvm.sdk
diff --git a/extensions/liquibase-mongodb/runtime/src/main/java/io/quarkus/liquibase/mongodb/runtime/graal/SubstituteStringUtil.java b/extensions/liquibase-mongodb/runtime/src/main/java/io/quarkus/liquibase/mongodb/runtime/graal/SubstituteStringUtil.java
deleted file mode 100644
index 29bb32d1001e1..0000000000000
--- a/extensions/liquibase-mongodb/runtime/src/main/java/io/quarkus/liquibase/mongodb/runtime/graal/SubstituteStringUtil.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package io.quarkus.liquibase.mongodb.runtime.graal;
-
-import java.security.SecureRandom;
-
-import com.oracle.svm.core.annotate.Alias;
-import com.oracle.svm.core.annotate.InjectAccessors;
-import com.oracle.svm.core.annotate.TargetClass;
-
-@TargetClass(className = "liquibase.util.StringUtil")
-final class SubstituteStringUtil {
-
- @Alias
- @InjectAccessors(SecureRandomAccessors.class)
- private static SecureRandom rnd;
-
- public static final class SecureRandomAccessors {
-
- private static volatile SecureRandom volatileRandom;
-
- public static SecureRandom get() {
- SecureRandom localVolatileRandom = volatileRandom;
- if (localVolatileRandom == null) {
- synchronized (SecureRandomAccessors.class) {
- localVolatileRandom = volatileRandom;
- if (localVolatileRandom == null) {
- volatileRandom = localVolatileRandom = new SecureRandom();
- }
- }
- }
- return localVolatileRandom;
- }
-
- public static void set(SecureRandom rnd) {
- throw new IllegalStateException("The setter for liquibase.util.StringUtil#rnd shouldn't be called.");
- }
- }
-}
diff --git a/extensions/liquibase/deployment/src/main/java/io/quarkus/liquibase/deployment/LiquibaseProcessor.java b/extensions/liquibase/deployment/src/main/java/io/quarkus/liquibase/deployment/LiquibaseProcessor.java
index 8fbe86380c4cf..29c6bdb104346 100644
--- a/extensions/liquibase/deployment/src/main/java/io/quarkus/liquibase/deployment/LiquibaseProcessor.java
+++ b/extensions/liquibase/deployment/src/main/java/io/quarkus/liquibase/deployment/LiquibaseProcessor.java
@@ -138,7 +138,8 @@ void nativeImageConfiguration(
reflective.produce(ReflectiveClassBuildItem.builder(
liquibase.command.CommandFactory.class.getName(),
liquibase.database.LiquibaseTableNamesFactory.class.getName(),
- liquibase.configuration.ConfiguredValueModifierFactory.class.getName())
+ liquibase.configuration.ConfiguredValueModifierFactory.class.getName(),
+ liquibase.changelog.FastCheckService.class.getName())
.constructors().build());
reflective.produce(ReflectiveClassBuildItem.builder(
diff --git a/extensions/liquibase/runtime/src/main/java/io/quarkus/liquibase/runtime/graal/SubstituteStringUtil.java b/extensions/liquibase/runtime/src/main/java/io/quarkus/liquibase/runtime/graal/SubstituteStringUtil.java
deleted file mode 100644
index d4f28a00e8464..0000000000000
--- a/extensions/liquibase/runtime/src/main/java/io/quarkus/liquibase/runtime/graal/SubstituteStringUtil.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package io.quarkus.liquibase.runtime.graal;
-
-import java.security.SecureRandom;
-
-import com.oracle.svm.core.annotate.Alias;
-import com.oracle.svm.core.annotate.InjectAccessors;
-import com.oracle.svm.core.annotate.TargetClass;
-
-@TargetClass(className = "liquibase.util.StringUtil")
-final class SubstituteStringUtil {
-
- @Alias
- @InjectAccessors(SecureRandomAccessors.class)
- private static SecureRandom rnd;
-
- public static final class SecureRandomAccessors {
-
- private static volatile SecureRandom volatileRandom;
-
- public static SecureRandom get() {
- SecureRandom localVolatileRandom = volatileRandom;
- if (localVolatileRandom == null) {
- synchronized (SecureRandomAccessors.class) {
- localVolatileRandom = volatileRandom;
- if (localVolatileRandom == null) {
- volatileRandom = localVolatileRandom = new SecureRandom();
- }
- }
- }
- return localVolatileRandom;
- }
-
- public static void set(SecureRandom rnd) {
- throw new IllegalStateException("The setter for liquibase.util.StringUtil#rnd shouldn't be called.");
- }
- }
-}