@systemfsoftware/stryker-js-mutation-run 1.2.5 → 3.0.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.
- package/CHANGELOG.md +149 -0
- package/dist/index.mjs +1 -1
- package/package.json +9 -9
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# @systemfsoftware/stryker-js-mutation-run
|
|
2
|
+
|
|
3
|
+
## 3.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- Timeout options now take the values they document. `timeoutFactor`, `timeoutMS` and
|
|
8
|
+
`dryRunTimeoutMinutes` arrived unset whenever a configuration left them out, so the
|
|
9
|
+
initial test run was given a budget of one millisecond and every run ended with "Initial
|
|
10
|
+
test run timed out" before testing anything. A run that leaves them out now gets the
|
|
11
|
+
documented 1.5, 5000 and 5
|
|
12
|
+
|
|
13
|
+
Configuration is validated against the same declaration that supplies the defaults, so a
|
|
14
|
+
default can no longer go missing while the option that documents it stays listed. Invalid
|
|
15
|
+
configurations still report every offending option in one pass, and options contributed
|
|
16
|
+
by plugins are still accepted
|
|
17
|
+
|
|
18
|
+
`dashboard` and `eventReporter` are no longer accepted. The reporters they configured
|
|
19
|
+
were already removed, and the two names were already rejected on sight, so a
|
|
20
|
+
configuration setting either has been failing; they are now absent from the option set
|
|
21
|
+
as well. Remove them from your configuration — to publish a report, write the `json` or
|
|
22
|
+
`html` report and publish it yourself
|
|
23
|
+
|
|
24
|
+
One fewer package is installed alongside these
|
|
25
|
+
|
|
26
|
+
### Minor Changes
|
|
27
|
+
|
|
28
|
+
- The base mutation preset selects at the make boundary.
|
|
29
|
+
|
|
30
|
+
The preset carries both ignorers (`effect-schema-declarations`, `workflow-make-boundary`) and
|
|
31
|
+
`disableBail: true`, so killer recording is structural for every inheriting config. The sandwich
|
|
32
|
+
packages (daemon-spec, stryker-js-cli, omp-claude-compat) widen `mutate` to all non-test source
|
|
33
|
+
at explicit 100/100/100 thresholds — the ignorer is the selector, so membership is forced by the
|
|
34
|
+
brand rather than chosen by a path list. Library packages' mutate arrays are byte-identical.
|
|
35
|
+
|
|
36
|
+
- cut over to effect v4 (4.0.0-rc.108): public surface derives from effect types; peers flip effect ^3→^4
|
|
37
|
+
|
|
38
|
+
### Patch Changes
|
|
39
|
+
|
|
40
|
+
- Array types are spelled one way. `Array<T>` and `ReadonlyArray<T>` in emitted
|
|
41
|
+
declarations become `T[]` and `readonly T[]`, which the type checker cannot tell
|
|
42
|
+
apart: no exported type changes, only how it is written.
|
|
43
|
+
|
|
44
|
+
- New version is published through npm trusted publishing, so it carries a provenance attestation you can verify.
|
|
45
|
+
|
|
46
|
+
- Config inheritance no longer depends on which module resolver serves the process.
|
|
47
|
+
|
|
48
|
+
A config that extends a package specifier is resolved relative to the directory of the config file that declared it, and the same chain now produces the same merged options whichever resolver is in play. Previously the outcome could differ between environments for the same files.
|
|
49
|
+
|
|
50
|
+
Error reporting is unchanged: an inheritance cycle, an `extends` that is not a string, and a parent that cannot be resolved or read each surface the same configuration error as before, naming the same file.
|
|
51
|
+
|
|
52
|
+
- Mutation runs no longer fail during the initial test run when a call argument
|
|
53
|
+
carries an optional member set to `undefined`, a class instance, or a date. The
|
|
54
|
+
worker protocol now carries the value a caller passes and sends across the wire
|
|
55
|
+
whatever the wire can represent, rather than refusing the call. A method that
|
|
56
|
+
returns nothing still reports no value, and a reply a process cannot read is still
|
|
57
|
+
reported as a failure of that child rather than raised as an unhandled error.
|
|
58
|
+
|
|
59
|
+
- Each of these packages now has a README, so its registry page says what the package is, how
|
|
60
|
+
to install it, and what to import or register — previously the page was blank. The lint
|
|
61
|
+
plugins show the configuration line that enables what they recommend.
|
|
62
|
+
|
|
63
|
+
`@systemfsoftware/stryker-js-mutation-report` also carries its licence text
|
|
64
|
+
|
|
65
|
+
- These packages no longer ship their development files. Sources, tests and build, lint and
|
|
66
|
+
test configuration were all included, which broke consumers in one specific way: oxlint
|
|
67
|
+
discovers configuration by walking directories, finds the published `oxlint.config.ts` under
|
|
68
|
+
`node_modules`, and stops with "Stripping types is currently unsupported for files under
|
|
69
|
+
node_modules" before linting anything.
|
|
70
|
+
|
|
71
|
+
The installed package now contains the compiled output, the runtime schema files it reads,
|
|
72
|
+
and the usual manifest, README and licence
|
|
73
|
+
|
|
74
|
+
- Updated dependencies:
|
|
75
|
+
- @systemfsoftware/stryker-js-plugin-api@2.0.0
|
|
76
|
+
|
|
77
|
+
## 2.0.0
|
|
78
|
+
|
|
79
|
+
### Major Changes
|
|
80
|
+
|
|
81
|
+
- Timeout options now take the values they document. `timeoutFactor`, `timeoutMS` and
|
|
82
|
+
`dryRunTimeoutMinutes` arrived unset whenever a configuration left them out, so the
|
|
83
|
+
initial test run was given a budget of one millisecond and every run ended with "Initial
|
|
84
|
+
test run timed out" before testing anything. A run that leaves them out now gets the
|
|
85
|
+
documented 1.5, 5000 and 5
|
|
86
|
+
|
|
87
|
+
Configuration is validated against the same declaration that supplies the defaults, so a
|
|
88
|
+
default can no longer go missing while the option that documents it stays listed. Invalid
|
|
89
|
+
configurations still report every offending option in one pass, and options contributed
|
|
90
|
+
by plugins are still accepted
|
|
91
|
+
|
|
92
|
+
`dashboard` and `eventReporter` are no longer accepted. The reporters they configured
|
|
93
|
+
were already removed, and the two names were already rejected on sight, so a
|
|
94
|
+
configuration setting either has been failing; they are now absent from the option set
|
|
95
|
+
as well. Remove them from your configuration — to publish a report, write the `json` or
|
|
96
|
+
`html` report and publish it yourself
|
|
97
|
+
|
|
98
|
+
One fewer package is installed alongside these
|
|
99
|
+
|
|
100
|
+
### Minor Changes
|
|
101
|
+
|
|
102
|
+
- The base mutation preset selects at the make boundary.
|
|
103
|
+
|
|
104
|
+
The preset carries both ignorers (`effect-schema-declarations`, `workflow-make-boundary`) and
|
|
105
|
+
`disableBail: true`, so killer recording is structural for every inheriting config. The sandwich
|
|
106
|
+
packages (daemon-spec, stryker-js-cli, omp-claude-compat) widen `mutate` to all non-test source
|
|
107
|
+
at explicit 100/100/100 thresholds — the ignorer is the selector, so membership is forced by the
|
|
108
|
+
brand rather than chosen by a path list. Library packages' mutate arrays are byte-identical.
|
|
109
|
+
|
|
110
|
+
- cut over to effect v4 (4.0.0-rc.108): public surface derives from effect types; peers flip effect ^3→^4
|
|
111
|
+
|
|
112
|
+
### Patch Changes
|
|
113
|
+
|
|
114
|
+
- Array types are spelled one way. `Array<T>` and `ReadonlyArray<T>` in emitted
|
|
115
|
+
declarations become `T[]` and `readonly T[]`, which the type checker cannot tell
|
|
116
|
+
apart: no exported type changes, only how it is written.
|
|
117
|
+
|
|
118
|
+
- New version is published through npm trusted publishing, so it carries a provenance attestation you can verify.
|
|
119
|
+
|
|
120
|
+
- Config inheritance no longer depends on which module resolver serves the process.
|
|
121
|
+
|
|
122
|
+
A config that extends a package specifier is resolved relative to the directory of the config file that declared it, and the same chain now produces the same merged options whichever resolver is in play. Previously the outcome could differ between environments for the same files.
|
|
123
|
+
|
|
124
|
+
Error reporting is unchanged: an inheritance cycle, an `extends` that is not a string, and a parent that cannot be resolved or read each surface the same configuration error as before, naming the same file.
|
|
125
|
+
|
|
126
|
+
- Mutation runs no longer fail during the initial test run when a call argument
|
|
127
|
+
carries an optional member set to `undefined`, a class instance, or a date. The
|
|
128
|
+
worker protocol now carries the value a caller passes and sends across the wire
|
|
129
|
+
whatever the wire can represent, rather than refusing the call. A method that
|
|
130
|
+
returns nothing still reports no value, and a reply a process cannot read is still
|
|
131
|
+
reported as a failure of that child rather than raised as an unhandled error.
|
|
132
|
+
|
|
133
|
+
- Each of these packages now has a README, so its registry page says what the package is, how
|
|
134
|
+
to install it, and what to import or register — previously the page was blank. The lint
|
|
135
|
+
plugins show the configuration line that enables what they recommend.
|
|
136
|
+
|
|
137
|
+
`@systemfsoftware/stryker-js-mutation-report` also carries its licence text
|
|
138
|
+
|
|
139
|
+
- These packages no longer ship their development files. Sources, tests and build, lint and
|
|
140
|
+
test configuration were all included, which broke consumers in one specific way: oxlint
|
|
141
|
+
discovers configuration by walking directories, finds the published `oxlint.config.ts` under
|
|
142
|
+
`node_modules`, and stops with "Stripping types is currently unsupported for files under
|
|
143
|
+
node_modules" before linting anything.
|
|
144
|
+
|
|
145
|
+
The installed package now contains the compiled output, the runtime schema files it reads,
|
|
146
|
+
and the usual manifest, README and licence
|
|
147
|
+
|
|
148
|
+
- Updated dependencies:
|
|
149
|
+
- @systemfsoftware/stryker-js-plugin-api@1.0.0
|
package/dist/index.mjs
CHANGED
|
@@ -284,7 +284,7 @@ var MultiPreprocessor = class {
|
|
|
284
284
|
}
|
|
285
285
|
};
|
|
286
286
|
//#endregion
|
|
287
|
-
//#region
|
|
287
|
+
//#region ../../../../../node_modules/.pnpm/@jsr+std__jsonc@1.0.2/node_modules/@jsr/std__jsonc/parse.js
|
|
288
288
|
/**
|
|
289
289
|
* Converts a JSON with Comments (JSONC) string into an object.
|
|
290
290
|
*
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@systemfsoftware/stryker-js-mutation-run",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/systemfsoftware/systemfsoftware.git",
|
|
7
|
-
"directory": "packages/stryker-js/mutation-run"
|
|
7
|
+
"directory": "packages/testing/mutation/stryker-js/mutation-run"
|
|
8
8
|
},
|
|
9
|
-
"homepage": "https://github.com/systemfsoftware/systemfsoftware/tree/main/packages/stryker-js/mutation-run#readme",
|
|
9
|
+
"homepage": "https://github.com/systemfsoftware/systemfsoftware/tree/main/packages/testing/mutation/stryker-js/mutation-run#readme",
|
|
10
10
|
"bugs": "https://github.com/systemfsoftware/systemfsoftware/issues",
|
|
11
11
|
"description": "A source-code fork of @stryker-mutator/core",
|
|
12
12
|
"type": "module",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"tree-kill": "~1.2.2",
|
|
55
55
|
"tslib": "~2.8.0",
|
|
56
56
|
"typed-inject": "~5.0.0",
|
|
57
|
-
"@systemfsoftware/stryker-js-plugin-api": "^0.
|
|
57
|
+
"@systemfsoftware/stryker-js-plugin-api": "^2.0.0"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"effect": "4.0.0-rc.108"
|
|
@@ -75,11 +75,11 @@
|
|
|
75
75
|
"tsdown": "^0.22.14",
|
|
76
76
|
"typescript": "^7",
|
|
77
77
|
"vitest": "^4.1.10",
|
|
78
|
-
"@systemfsoftware/
|
|
79
|
-
"@systemfsoftware/
|
|
80
|
-
"@systemfsoftware/
|
|
81
|
-
"@systemfsoftware/
|
|
82
|
-
"@systemfsoftware/
|
|
78
|
+
"@systemfsoftware/stryker-js-vitest-runner": "^0.1.2",
|
|
79
|
+
"@systemfsoftware/effect-gherkin-spec": "^2.0.0",
|
|
80
|
+
"@systemfsoftware/vitest-config": "^0.1.0",
|
|
81
|
+
"@systemfsoftware/tsconfig": "^1.3.3",
|
|
82
|
+
"@systemfsoftware/oxlint-config": "^0.1.0"
|
|
83
83
|
},
|
|
84
84
|
"engines": {
|
|
85
85
|
"node": ">=20.0.0"
|