New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XmlUnit 2.6.1 is not compatible with AssertJ-Core 3.9.1 #135

Closed
mindhaq opened this Issue Aug 20, 2018 · 9 comments

Comments

Projects
None yet
4 participants
@mindhaq

mindhaq commented Aug 20, 2018

The AssertJ dependency for XmlUnit 2.6.1 is on 2.9.0. Latest version is 3.9.11. Using a later version explicitly is not working, because AssertJ introduced a binary incompatibility in 3.9.1 - which leads to NoSuchMethodError.

See joel-costigliola/assertj-core#1194

This is probably fixable simply by upgrading to the latest version of AssertJ.

@bodewig

This comment has been minimized.

Show comment
Hide comment
@bodewig

bodewig Aug 20, 2018

Member

From what I understand AssertJ 3.x requires Java8 at runtime. I think @krystiankaluzny chose 2.9.0 as he wanted to stick with the Java7 (given that XMLUnit Core is supposed to work with Java6).

Member

bodewig commented Aug 20, 2018

From what I understand AssertJ 3.x requires Java8 at runtime. I think @krystiankaluzny chose 2.9.0 as he wanted to stick with the Java7 (given that XMLUnit Core is supposed to work with Java6).

@krystiankaluzny

This comment has been minimized.

Show comment
Hide comment
@krystiankaluzny

krystiankaluzny Aug 20, 2018

Member

@mindhaq upgrading AssertJ will fix the binary incompatibility problem but it also break Java 7 compatibility.
To handle both I'm thinking about another solution eg direct call ObjectAssert.

Member

krystiankaluzny commented Aug 20, 2018

@mindhaq upgrading AssertJ will fix the binary incompatibility problem but it also break Java 7 compatibility.
To handle both I'm thinking about another solution eg direct call ObjectAssert.

@bodewig bodewig added this to the 2.6.2 milestone Aug 21, 2018

bodewig added a commit that referenced this issue Aug 21, 2018

@mindhaq

This comment has been minimized.

Show comment
Hide comment
@mindhaq

mindhaq Aug 22, 2018

Compatibility would really be nice. As of right now, XmlUnit requires a manual downgrade of AssertJ when using the latest version of Spring Boot.

mindhaq commented Aug 22, 2018

Compatibility would really be nice. As of right now, XmlUnit requires a manual downgrade of AssertJ when using the latest version of Spring Boot.

@bodewig

This comment has been minimized.

Show comment
Hide comment
@bodewig

bodewig Aug 22, 2018

Member

I've just published a 2.6.2-SNAPSHOT to

<repository>
  <id>snapshots-repo</id>
  <url>https://oss.sonatype.org/content/repositories/snapshots</url>
  <releases><enabled>false</enabled></releases>
  <snapshots><enabled>true</enabled></snapshots>
</repository>

This is supposed to work without the downgrade.

Member

bodewig commented Aug 22, 2018

I've just published a 2.6.2-SNAPSHOT to

<repository>
  <id>snapshots-repo</id>
  <url>https://oss.sonatype.org/content/repositories/snapshots</url>
  <releases><enabled>false</enabled></releases>
  <snapshots><enabled>true</enabled></snapshots>
</repository>

This is supposed to work without the downgrade.

krystiankaluzny added a commit that referenced this issue Aug 22, 2018

@krystiankaluzny

This comment has been minimized.

Show comment
Hide comment
@krystiankaluzny

krystiankaluzny Aug 22, 2018

Member

I also notice that in assertj-core 3.11.0 binary incompatibility was introduced too.
AbstractCharSequenceAssert<?, String> assertThat(String actual) was changed to AbstractStringAssert<?> assertThat(String actual)

To prevent similar issues I change all invocation of org.assertj.core.api.Assertions.assertThat to direct creation of assertion classes.

Member

krystiankaluzny commented Aug 22, 2018

I also notice that in assertj-core 3.11.0 binary incompatibility was introduced too.
AbstractCharSequenceAssert<?, String> assertThat(String actual) was changed to AbstractStringAssert<?> assertThat(String actual)

To prevent similar issues I change all invocation of org.assertj.core.api.Assertions.assertThat to direct creation of assertion classes.

@bodewig

This comment has been minimized.

Show comment
Hide comment
@bodewig

bodewig Aug 22, 2018

Member

I'm just publishing a new 2.6.2-SNAPSHOT.

Member

bodewig commented Aug 22, 2018

I'm just publishing a new 2.6.2-SNAPSHOT.

@PascalSchumacher

This comment has been minimized.

Show comment
Hide comment
@PascalSchumacher

PascalSchumacher Aug 27, 2018

Contributor

I can confirm that the latest 2.6.2-SNAPSHOT works with assertj-core 3.9.1, 3.10.0 and 3.11.0.

Thank you for fixing this! 👍

A release with this fix would be great.

Contributor

PascalSchumacher commented Aug 27, 2018

I can confirm that the latest 2.6.2-SNAPSHOT works with assertj-core 3.9.1, 3.10.0 and 3.11.0.

Thank you for fixing this! 👍

A release with this fix would be great.

@bodewig

This comment has been minimized.

Show comment
Hide comment
@bodewig

bodewig Aug 27, 2018

Member

2.6.2 is on its way to Maven Central

Member

bodewig commented Aug 27, 2018

2.6.2 is on its way to Maven Central

@PascalSchumacher

This comment has been minimized.

Show comment
Hide comment
@PascalSchumacher

PascalSchumacher Aug 27, 2018

Contributor

Thank you very much! 😃

Contributor

PascalSchumacher commented Aug 27, 2018

Thank you very much! 😃

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment