Skip to content

Commit

Permalink
Add jboss-transaction-api to javax-transaction-api (#134)
Browse files Browse the repository at this point in the history
Resolves #130

Co-authored-by: Jendrik Johannes <[email protected]>
Co-authored-by: Louis Jacoment <[email protected]>
  • Loading branch information
3 people authored May 17, 2024
1 parent c764cce commit a795278
Show file tree
Hide file tree
Showing 7 changed files with 35 additions and 2 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

## Version 2.1
* [New Rule] [#125](https://github.com/gradlex-org/jvm-dependency-conflict-resolution/issues/125) mysql:mysql-connector-java / com.mysql:mysql-connector-j (Thanks [Eduardo Acosta Miguens](https://github.com/eduacostam)!)
* [Adjusted Rule] [#130](https://github.com/gradlex-org/jvm-dependency-conflict-resolution/issues/130) javax-transaction-api rule now also covers jboss-transaction-api artifacts

## Version 2.0
* [New] [97](https://github.com/gradlex-org/jvm-dependency-conflict-resolution/issues/97) Unified DSL for conflict resolution, logging and metadata patching
Expand Down
3 changes: 3 additions & 0 deletions samples/sample-all-deactivated/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,9 @@ dependencies {
implementation("org.hibernate.javax.persistence:hibernate-jpa-2.2-api:1.0.0.Beta2")
implementation("org.javassist:javassist:3.29.1-GA")
implementation("org.jboss.resteasy:jaxrs-api:3.0.1.Final")
implementation("org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:1.0.1.Final")
implementation("org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.1.1.Final")
implementation("org.jboss.spec.javax.transaction:jboss-transaction-api_1.3_spec:2.0.0.Final")
implementation("org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_1.1_spec:1.0.1.Final")
implementation("org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.0_spec:1.0.1.Final")
implementation("org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.1_spec:2.0.2.Final")
Expand Down
3 changes: 3 additions & 0 deletions samples/sample-all-deactivated/build.out
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,9 @@ compileClasspath - Compile classpath for source set 'main'.
+--- org.hibernate.javax.persistence:hibernate-jpa-2.2-api:1.0.0.Beta2 FAILED
+--- org.javassist:javassist:3.29.1-GA FAILED
+--- org.jboss.resteasy:jaxrs-api:3.0.1.Final FAILED
+--- org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:1.0.1.Final FAILED
+--- org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.1.1.Final FAILED
+--- org.jboss.spec.javax.transaction:jboss-transaction-api_1.3_spec:2.0.0.Final FAILED
+--- org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_1.1_spec:1.0.1.Final FAILED
+--- org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.0_spec:1.0.1.Final FAILED
+--- org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.1_spec:2.0.2.Final FAILED
Expand Down
5 changes: 5 additions & 0 deletions samples/sample-all/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,7 @@ dependencies {
implementation("org.hibernate.javax.persistence:hibernate-jpa-2.2-api:1.0.0.Beta2")
implementation("org.javassist:javassist:3.29.1-GA")
implementation("org.jboss.resteasy:jaxrs-api:2.0.0.GA")
implementation("org.jboss.spec.javax.transaction:jboss-transaction-api_1.3_spec:2.0.0.Final")
implementation("org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_1.1_spec:1.0.1.Final")
implementation("org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.0_spec:1.0.1.Final")
implementation("org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.1_spec:2.0.2.Final")
Expand Down Expand Up @@ -255,6 +256,8 @@ dependencies {
// implementation("org.slf4j:slf4j-jdk14:2.0.12")
// implementation("org.slf4j:slf4j-log4j12:2.0.12")
// implementation("com.mchange:mchange-commons-java:0.3.0")
// implementation("org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:1.0.1.Final")
// implementation("org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec:1.1.1.Final")
}

jvmDependencyConflicts {
Expand All @@ -263,6 +266,7 @@ jvmDependencyConflicts {
}
conflictResolution {
select(CapabilityDefinition.JAVAX_ACTIVATION_API, "javax.activation:javax.activation-api")
select(CapabilityDefinition.JAVAX_TRANSACTION_API, "javax.transaction:javax.transaction-api")
select(CapabilityDefinition.JAKARTA_SERVLET_API, "jakarta.servlet:jakarta.servlet-api")
select(CapabilityDefinition.JAVAX_SERVLET_API, "javax.servlet:javax.servlet-api")
select(CapabilityDefinition.BOUNCYCASTLE_BCTSP, "org.bouncycastle:bctsp-jdk15on")
Expand All @@ -274,4 +278,5 @@ tasks.detectCollisions {
collisionFilter.exclude("org/bouncycastle/**")
collisionFilter.exclude("javax/xml/namespace/QName.class")
collisionFilter.exclude("com/sun/activation/registries/*")
collisionFilter.exclude("javax/transaction/*")
}
1 change: 1 addition & 0 deletions samples/sample-all/build.out
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,7 @@ compileClasspath - Compile classpath for source set 'main'.
+--- org.hibernate.javax.persistence:hibernate-jpa-2.2-api:1.0.0.Beta2 -> javax.persistence:javax.persistence-api:2.2
+--- org.javassist:javassist:3.29.1-GA
+--- org.jboss.resteasy:jaxrs-api:2.0.0.GA -> javax.ws.rs:javax.ws.rs-api:2.1.1
+--- org.jboss.spec.javax.transaction:jboss-transaction-api_1.3_spec:2.0.0.Final -> javax.transaction:javax.transaction-api:1.3
+--- org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_1.1_spec:1.0.1.Final -> javax.ws.rs:javax.ws.rs-api:2.1.1
+--- org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.0_spec:1.0.1.Final -> javax.ws.rs:javax.ws.rs-api:2.1.1
+--- org.jboss.spec.javax.ws.rs:jboss-jaxrs-api_2.1_spec:2.0.2.Final -> javax.ws.rs:javax.ws.rs-api:2.1.1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -412,7 +412,10 @@ public enum CapabilityDefinition {
JAVAX_TRANSACTION_API(HIGHEST_VERSION, JavaxTransactionApiRule.class,
"javax.transaction:jta",
"javax.transaction:javax.transaction-api",
"jakarta.transaction:jakarta.transaction-api"
"jakarta.transaction:jakarta.transaction-api",
"org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec",
"org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec",
"org.jboss.spec.javax.transaction:jboss-transaction-api_1.3_spec"
),
JAVAX_VALIDATION_API(HIGHEST_VERSION, JavaxValidationApiRule.class,
"javax.validation:validation-api",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,23 @@ public JavaxTransactionApiRule(CapabilityDefinition rule) {

@Override
protected boolean shouldApply(ModuleVersionIdentifier id) {
return VersionNumber.parse(id.getVersion()).compareTo(VersionNumber.parse(FIRST_JAKARTA_VERSION)) < 0;
return VersionNumber.parse(getVersion(id)).compareTo(VersionNumber.parse(FIRST_JAKARTA_VERSION)) < 0;
}

@Override
protected String getVersion(ModuleVersionIdentifier id) {
String name = id.getName();
String moduleVersion = id.getVersion();

if (name.contains("jboss-transaction-api_")) {
return transactionApiVersionForJbossName(name);
}

return moduleVersion;
}

private static String transactionApiVersionForJbossName(String name) {
int index = "jboss-transaction-api_".length();
return name.substring(index, index + 3) + ".0";
}
}

0 comments on commit a795278

Please sign in to comment.