weld / weld-testing

Set of test framework extensions (JUnit 4, JUnit 5, Spock) to enhance the testing of CDI components via Weld. Supports Weld 5.
http://weld.cdi-spec.org/
Apache License 2.0
102 stars 30 forks source link

Bump org.junit.platform:junit-platform-testkit from 1.8.2 to 1.10.2 #184

Closed dependabot[bot] closed 8 months ago

dependabot[bot] commented 8 months ago

Bumps org.junit.platform:junit-platform-testkit from 1.8.2 to 1.10.2.

Commits


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
manovotn commented 8 months ago

@dependabot rebase

manovotn commented 8 months ago

@Vampire as the spock module author, would you please mind looking into this dep update issue? If I am looking at it correctly, this is only used in Spock module via the EmbeddedSpecRunnerWrapper and I frankly don't recall why we needed that and what was the issue :)

Vampire commented 8 months ago

The EmbeddedSpecRunnerWrapper is just a work-around for some Groovy quirk I didn't grasp otherwise. The point is the EmbeddedSpecRunner that is coming with Spock and is used in the tests of the Spock module. The EmbeddedSpecRunner uses some JUnit Platform TestKit classes, but as 98.7 % of the users should not need to use the EmbeddedSpecRunner, it is not included as a normal dependency. So if you want to use the EmbeddedSpecRunner, you need to provide that dependency and in a version that is compatible.

Previously it was Spock 2.1-groovy-3.0 which uses JUnit Platform 1.8.1, so JUnit Platform Testkit also was 1.8.1. You now upgraded to Spock 2.3-groovy-3.0 which uses JUnit Platform 1.9.0, so you should probably also use JUnit Platform Testkit 1.9.0, with that the tests work perfectly fine. But this PR is trying to update it to 1.10.2 and it seems there was some breaking change in that version.

I think you should configure Dependabot to always bump Spock and Testkit together and then care for the correct version being used. And if Dependabot cannot be configured like that, switch to Renovate. If you insist on using such a bot, at least Renovate is the better choice. :-)

manovotn commented 8 months ago

The EmbeddedSpecRunnerWrapper is just a work-around for some Groovy quirk I didn't grasp otherwise. The point is the EmbeddedSpecRunner that is coming with Spock and is used in the tests of the Spock module. The EmbeddedSpecRunner uses some JUnit Platform TestKit classes, but as 98.7 % of the users should not need to use the EmbeddedSpecRunner, it is not included as a normal dependency. So if you want to use the EmbeddedSpecRunner, you need to provide that dependency and in a version that is compatible.

Previously it was Spock 2.1-groovy-3.0 which uses JUnit Platform 1.8.1, so JUnit Platform Testkit also was 1.8.1. You now upgraded to Spock 2.3-groovy-3.0 which uses JUnit Platform 1.9.0, so you should probably also use JUnit Platform Testkit 1.9.0, with that the tests work perfectly fine. But this PR is trying to update it to 1.10.2 and it seems there was some breaking change in that version.

Ah, I see, that makes sense. Thank you! I'll change it to 1.9.0 and add a comment.

I think you should configure Dependabot to always bump Spock and Testkit together and then care for the correct version being used. And if Dependabot cannot be configured like that, switch to Renovate. If you insist on using such a bot, at least Renovate is the better choice. :-)

I added dependabot as there was nothing so far and having some tracking of dep updates is useful (so long as it doesn't spam too often). I think dependabot has some "upgrade together" notion but that wouldn't really help here as you wouldn't know what JUnit Platform to link to the Spock version. But I might easily be missing some options, I for sure don't have a black belt in dependabot-fu :)