@systemfsoftware/stryker-js-cli 3.0.1 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/CHANGELOG.md +102 -0
  2. package/dist/main.mjs +957 -834
  3. package/package.json +15 -15
package/CHANGELOG.md CHANGED
@@ -1,5 +1,107 @@
1
1
  # @systemfsoftware/stryker-js-cli
2
2
 
3
+ ## 3.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Asking for human output now produces some.
8
+
9
+ A run told to address a person wrote nothing at all to standard output: the
10
+ progress prose went to standard error, and the machine stream reporter — which
11
+ exists to feed the machine-readable channel — stayed selected even though no
12
+ such channel was open. Human runs now print the progress prose and the score
13
+ table where you would expect to read them, and the machine stream reporter is
14
+ selected only for the machine channel; any other reporter you configured, such
15
+ as `html` or `json`, still runs in both.
16
+
17
+ Colour follows the `NO_COLOR` convention: set it to any non-empty value and
18
+ neither descriptor receives an escape sequence. The machine channel is never
19
+ coloured.
20
+
21
+ Machine output is unchanged — standard output remains the newline-delimited
22
+ stream and nothing else, with the engine's log lines on standard error.
23
+
24
+ - A run's verdict now reaches the exit code, and an interrupted run reports the
25
+ signal that stopped it.
26
+
27
+ - A score below the breaking threshold printed the score, said it was too low,
28
+ and exited `0`, so a step that checked the status passed no matter how low the
29
+ score fell. A failing verdict now fails the command.
30
+ - A run stopped with `Ctrl-C` or `SIGTERM` reported the interruption and then
31
+ exited `1` anyway. The status is now `128 + n` for the signal that ended the
32
+ run — `130` for `SIGINT`, `143` for `SIGTERM`.
33
+ - Every mutant you can act on — survived, uncovered, timed out, errored — is
34
+ announced as it is found, not only in the closing summary.
35
+
36
+ ### Patch Changes
37
+
38
+ - `--help` reads the four defaults it quotes from the option schema, so a default
39
+ that changes can no longer leave the help text describing the old one.
40
+
41
+ - A failed run now says what failed.
42
+
43
+ Every stage failure previously reported an empty message, so a run that could
44
+ not start your test runner, could not read your config, or found no tests exited
45
+ non-zero and told you nothing. The reported error now names the failure and the
46
+ one beneath it, down to the fault that actually happened — including a failure
47
+ raised inside a worker process, whose description used to be replaced with a
48
+ fixed string before it reached you.
49
+
50
+ - Mutants are tested against your real test runner.
51
+
52
+ The command line interface supplied placeholder checker, reporter and test
53
+ runner implementations to its own run: the placeholder runner answered
54
+ `Survived` with zero tests for every mutant, so a run reported a mutation score
55
+ that had nothing to do with your tests, and no reporter output was produced. It
56
+ now supplies only the capabilities a host owns, and your configured plugins
57
+ provide the rest.
58
+
59
+ If you have a recorded score from an earlier release, discard it and measure
60
+ again.
61
+
62
+ - The shared helpers package is gone. Nothing installs it any more, and the
63
+ handful of helpers worth sharing now live in the plugin contract next to the
64
+ types they serve:
65
+
66
+ - `strykerReportBugUrl`, `normalizeFileName`, `propertyPath`, `errorToString`
67
+ and `isErrnoException` from `@systemfsoftware/stryker-js-plugin-api/core`
68
+ - `noopLogger` from `@systemfsoftware/stryker-js-plugin-api/logging`
69
+ - `testFilesProvided` from `@systemfsoftware/stryker-js-plugin-api/test-runner`
70
+
71
+ If you imported any of those, change the specifier. Everything else it exported
72
+ had no consumer and is removed: use `Predicate.isNotNullish` from Effect in place
73
+ of `notEmpty`, and `RegExp.escape` in place of `escapeRegExp`.
74
+
75
+ - These packages no longer install dependencies they never imported, so installing them pulls less into your tree.
76
+
77
+ `tslib` is gone from all six. The mutation runner additionally stops installing `lodash.groupby`, `semver` and `source-map`, and the command line interface stops installing `@effect/platform-node-shared`. Nothing exported changes.
78
+
79
+ - Published packages no longer carry build artifacts left over from earlier builds. One package was shipping about a megabyte of bundled test-runner internals this way.
80
+
81
+ - Updated dependencies:
82
+ - @systemfsoftware/stryker-js-mutation-report@2.0.0
83
+ - @systemfsoftware/stryker-js-mutation-run@5.0.0
84
+ - @systemfsoftware/stryker-js-plugin-api@3.0.0
85
+
86
+ ## 3.1.0
87
+
88
+ ### Minor Changes
89
+
90
+ - Plugins are discovered under this scope by default. The `plugins` option now
91
+ defaults to a glob over this scope instead of the original project's, so a
92
+ configuration that relied on the previous default while installing plugins from
93
+ the original project must now list those plugins explicitly. Discovery also no
94
+ longer fails when no matching scope directory is installed: it loads nothing and
95
+ warns.
96
+
97
+ The report's dependency section names the packages of this scope, and the
98
+ report's home link points at this project.
99
+
100
+ ### Patch Changes
101
+
102
+ - Updated dependencies:
103
+ - @systemfsoftware/stryker-js-util@0.2.0
104
+
3
105
  ## 3.0.1
4
106
 
5
107
  ### Patch Changes