jssm 5.143.3 → 5.143.4

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/README.md CHANGED
@@ -18,10 +18,10 @@ Please edit the file it's derived from, instead: `./src/md/readme_base.md`
18
18
 
19
19
 
20
20
 
21
- * Generated for version 5.143.3 at 6/11/2026, 7:22:05 PM
21
+ * Generated for version 5.143.4 at 6/11/2026, 7:30:27 PM
22
22
 
23
23
  -->
24
- # jssm 5.143.3
24
+ # jssm 5.143.4
25
25
 
26
26
  [**Try the live editor**](https://stonecypher.github.io/jssm-viz-demo/graph_explorer.html) ·
27
27
  [Documentation](https://stonecypher.github.io/jssm/docs/) ·
@@ -281,7 +281,7 @@ That decision shows up everywhere downstream:
281
281
  or run `npm run benny` against your own machine.
282
282
 
283
283
  - **More thoroughly tested than any other JavaScript state-machine
284
- library.** 6,726 tests at 100.0% line coverage
284
+ library.** 6,727 tests at 100.0% line coverage
285
285
  ([report](https://coveralls.io/github/StoneCypher/jssm)), plus
286
286
  fuzz testing via `fast-check`, with parser test data across ten natural
287
287
  languages and Emoji.
@@ -414,9 +414,9 @@ If your contribution is missing here, please open an issue.
414
414
 
415
415
  <br/>
416
416
 
417
- ***6,726 tests***, run 58,800 times.
417
+ ***6,727 tests***, run 58,801 times.
418
418
 
419
- - 6,200 specs with 100.0% coverage
419
+ - 6,201 specs with 100.0% coverage
420
420
  - 526 fuzz tests with 3.3% coverage
421
421
  - 5,780 TypeScript lines - 1.2 tests per line, 10.2 generated tests per line
422
422
 
@@ -22143,7 +22143,13 @@ function compile(tree) {
22143
22143
  const dup = repeat_props[0][0];
22144
22144
  throw new JssmError(undefined, `Cannot repeat property definitions. Saw ${JSON.stringify(repeat_props)}`, { source_location: nth_matching_loc(tree, (n) => n.key === 'property_definition' && n.name === dup, 2) });
22145
22145
  }
22146
- const assembled_transitions = [].concat(...results['transition']);
22146
+ // The accumulator is already flat (#700's per-rule push spreads one level)
22147
+ // and function-local, so it is used directly. The previous
22148
+ // `[].concat(...results['transition'])` both copied it for nothing and
22149
+ // capped machines near 65k transition statements: spreading into an
22150
+ // argument list is bounded by the engine's maximum argument count, so e.g.
22151
+ // dense-300 (89,700 edges) threw RangeError inside the compiler. #703
22152
+ const assembled_transitions = results['transition'];
22147
22153
  const result_cfg = {
22148
22154
  start_states: results.start_states.length ? results.start_states : [assembled_transitions[0].from],
22149
22155
  end_states: results.end_states,
@@ -22669,7 +22675,7 @@ var constants = /*#__PURE__*/Object.freeze({
22669
22675
  * Useful for runtime diagnostics and for embedding in serialized machine
22670
22676
  * snapshots so that deserializers can detect version-skew.
22671
22677
  */
22672
- const version = "5.143.3";
22678
+ const version = "5.143.4";
22673
22679
 
22674
22680
  // whargarbl lots of these return arrays could/should be sets
22675
22681
  const { state_name_chars, state_name_first_chars, action_label_chars } = constants;
package/dist/cdn/viz.js CHANGED
@@ -22168,7 +22168,13 @@ function compile(tree) {
22168
22168
  const dup = repeat_props[0][0];
22169
22169
  throw new JssmError(undefined, `Cannot repeat property definitions. Saw ${JSON.stringify(repeat_props)}`, { source_location: nth_matching_loc(tree, (n) => n.key === 'property_definition' && n.name === dup, 2) });
22170
22170
  }
22171
- const assembled_transitions = [].concat(...results['transition']);
22171
+ // The accumulator is already flat (#700's per-rule push spreads one level)
22172
+ // and function-local, so it is used directly. The previous
22173
+ // `[].concat(...results['transition'])` both copied it for nothing and
22174
+ // capped machines near 65k transition statements: spreading into an
22175
+ // argument list is bounded by the engine's maximum argument count, so e.g.
22176
+ // dense-300 (89,700 edges) threw RangeError inside the compiler. #703
22177
+ const assembled_transitions = results['transition'];
22172
22178
  const result_cfg = {
22173
22179
  start_states: results.start_states.length ? results.start_states : [assembled_transitions[0].from],
22174
22180
  end_states: results.end_states,
@@ -22694,7 +22700,7 @@ var constants = /*#__PURE__*/Object.freeze({
22694
22700
  * Useful for runtime diagnostics and for embedding in serialized machine
22695
22701
  * snapshots so that deserializers can detect version-skew.
22696
22702
  */
22697
- const version = "5.143.3";
22703
+ const version = "5.143.4";
22698
22704
 
22699
22705
  // whargarbl lots of these return arrays could/should be sets
22700
22706
  const { state_name_chars, state_name_first_chars, action_label_chars } = constants;