Skip to content
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

Refactorings that may break plugin compatibility #923

Merged
merged 5 commits into from
Aug 27, 2021

Conversation

hcoles
Copy link
Owner

@hcoles hcoles commented Aug 16, 2021

No description provided.

Henry Coles added 5 commits August 13, 2021 09:07
MethodName has existed for several years, but has not acquired any
behaviour. It results in method chains accessing the underlying string
and provides only marginal benefit at best.

Removing it will break some third party plugins. Version number should
reflect this on release.
since mutating static initializer code is no longer supported, and
detection of static initialisers has been concentrated into an
interceptor, poison status is no longer required.
Concentrates tracking of finally blocks into single interceptor,
removing the need to pass a boolean flag around.

Check that we are handling a duplicate mutant (and not just similar
mutants on the same line) is made slighly more lenient by including
the mutator description when checking equality.
@szpak
Copy link
Contributor

szpak commented Aug 16, 2021

It ran it with the functional tests in gradle-pitest-plugin and it all passed (except non-related hcoles/pitest-plugins#2 and hcoles/pitest-plugins#4). Just writing this comment, I realized that you were writing about the other PIT plugins :).

@hcoles
Copy link
Owner Author

hcoles commented Aug 17, 2021

Thanks @szpak you've done a lot more checking than I've done.

The idea here was to clean up and simplify a few things that have been bugging me for a while that requires changes to classes used in various interfaces. The boundary of where the plugin api starts and ends isn't very well defined, but it is possible that the changes will break something somewhere so will come with a version bump to 1.7.0. Fortunately there aren't that many plugins out there.

Since the version is going to be bumped I may make some other breaking changes in the 1.7.0 release that might affect the gradle plugin. Only thing that comes to mind at the moment is stripping out some of the defunct parameters, but it is possible there might be other changes.

@hcoles hcoles merged commit 6996a97 into master Aug 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants