Skip to content

Releases: stryker-mutator/stryker4s

Stryker4s v0.11.0

03 Feb 13:53
5bbe91e
Compare
Choose a tag to compare

Welcome to Stryker4s 0.11.0! The big feature in this release is a new kind of mutator: regular expressions (#699)! We're using the awesome Weapon regeX library to mutate regular expressions. If you're curious how this works, take a look at the demo page.

One other noteworthy change is in #696. To reduce maintenance and external dependencies in Stryker4s, the dashboard reporter will no longer work on JDK 10 or lower. If you are using the dashboard reporter on Java 10 or lower, Stryker4s will not upload your report and throw an exception. You won't run into this restriction when not using the dashboard reporter or if you are running Stryker4s on a recent JDK.

🚀 Features

🐛 Bugfixes

🧰 Maintenance

💥 Breaking change

Stryker4s v0.10.1

04 Jan 12:10
e84032b
Compare
Choose a tag to compare

🚀 Features

🐛 Bugfixes

🧰 Maintenance

📖 Documentation

Stryker4s v0.10.0

18 Dec 22:37
68ce385
Compare
Choose a tag to compare

Stryker4s is a mutation testing framework. It tests your tests by temporarily inserting small bugs, or mutants, into your production code. Your tests are run for each mutant. If your tests fail then the mutant is killed. If your tests passed, the mutant survived. The higher the percentage of mutants killed, the more effective your tests are. See the website for more information.

We are excited to release Stryker4s v0.10.0. If you haven't been following along, this is a big one! The sbt testrunner has been completely reworked to be a lot faster. So much faster I am not even sure how to put it into words! For perspective, running Stryker4s on itself took around 40 minutes on 0.9.2. On 0.10.0 it takes just a little over 2 minutes! This massive improvement is possible due to the new testrunner (#492), which is able to run your tests in rapid-fire without restarting any processes. We believe the Stryker4s sbt plugin is now fast enough for daily use, and probably even faster than some mutation testing frameworks in other languages! If performance has been keeping you from trying Stryker4s be sure to give it a try and let us know your results Slack.

Another big feature and performance boost since 0.10.0-RC3 is that coverage analysis is now supported (#666). Tests will now be skipped and reported as NoCoverage if no test hits that mutant. It also adds support for detecting 'static' mutants which has been an issue since the 0.10.0-RC releases.

Note that due to these changes it is very likely that your mutation score will be a little different than it was in 0.9.2!

Next up on the roadmap is further speed improvements by only running tests that a specific mutant covers, adding concurrent testrunners, and bringing these awesome speed improvements to the Maven plugin.

🚀 Features

🧰 Maintenance

📖 Documentation

  • docs(configuration): fancify the configuration docs (#642) @nicojs
  • docs(sidebar): add custom sidebar (#640) @nicojs

Stryker4s v0.10.0-RC3

03 Nov 17:08
653d2b8
Compare
Choose a tag to compare
Stryker4s v0.10.0-RC3 Pre-release
Pre-release

This is the third (and hopefully final) pre-release of Stryker4s 0.10.0. The next release should be the final one and will include code coverage (for sbt). There are some bugfixes in this release, but the biggest one you'll notice is the change in logging backend (#623). Stryker4s now uses only whatever logging implementation the build tool requires. What this means is logging might look slightly different, and Stryker4s will now no longer have a core dependency on slf4j 🙌. Setting the log-level still works the same way.

We also support the fresh-out-of-the-oven Scala 3.0.0-M1 🔥!

🚀 Features

🐛 Bugfixes

🧰 Maintenance

📖 Documentation

Stryker4s v0.10.0-RC2

23 Sep 10:52
a6ce753
Compare
Choose a tag to compare
Stryker4s v0.10.0-RC2 Pre-release
Pre-release

This is the second pre-release of Stryker4s 0.10.0 featuring the new sbt testrunner. See the previous release for more information about the new testrunner.

In this release a couple of new features were added to give more control over the testrunner via your stryker4s.conf. The biggest one is the new timeout-runner which fully supports timeouts based on the initial test-run duration (#573). You can now also restart the testrunner every n runs if you want to (#582) or go back to the old legacy sbt testrunner (#578).

🧾 Known issues

  • 'Static' mutants (a val in an object) are always reported as survived.

🚀 Features

🐛 Bugfixes

🧰 Maintenance

Stryker4s v0.10.0-RC1

11 Sep 08:44
0c6f893
Compare
Choose a tag to compare
Stryker4s v0.10.0-RC1 Pre-release
Pre-release

This is a pre-release version of Stryker4s. The biggest change is the new testrunner for sbt (#492) which boasts major performance improvements for the sbt plugin compared to the old testrunner. Running it on Stryker4s speeds up a mutation run from 40 minutes to less than 3 🏃‍♀️⏱! Please test it out and give feedback in Slack or create a new issue if you run into anything! All Scala versions from 2.11 to Dotty 0.27 are supported. The next release of Stryker4s will likely have this testrunner as a configurable 'experimental' testrunner.

🧾 Known issues

  • 'Static' mutants (a val in an object) are always reported as survived.

🚀 Features

🧰 Maintenance

Stryker4s v0.9.2

01 Sep 09:36
f1ac6e2
Compare
Choose a tag to compare

🚀 Features

  • Propagate active profiles from Maven plugin configuration to stryker runs (#550) @jozic

🐛 Bugfixes

🧰 Maintenance

Stryker4s v0.9.1

01 Jul 12:40
b50b156
Compare
Choose a tag to compare

🚀 Features

🐛 Bugfixes

  • Handle NaN mutation score in report correctly (#529) @hugo-vrijswijk
  • Report sbt Error TestResult correctly as failed instead of error (#528) @hugo-vrijswijk
    • Note: This might slightly change your mutation score

🧰 Maintenance

Stryker4s v0.9.0

01 Jul 12:40
9e99192
Compare
Choose a tag to compare

🚀 Features

🐛 Bugfixes

🧰 Maintenance

Stryker4s v0.8.1

30 May 14:50
1a18670
Compare
Choose a tag to compare

Note: The release done on May 30th had an error where not all artifacts were published. Namely, stryker4s-core_2.12 and stryker4s-command-runner_2.12 were missing. This has been fixed and the artifacts should now be available.

🐛 Bugfixes