supercov 0.0.39 → 0.0.41

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
@@ -154,6 +154,7 @@ Supercov uses exact per-test attribution where an adapter is available. For othe
154
154
  | `node:test` | Exact per test |
155
155
  | AVA and Mocha | Aggregate structural coverage |
156
156
  | Cargo's standard libtest runner | Exact test and attempt identity |
157
+ | rustdoc doctests | Exact per doctest |
157
158
  | cargo-nextest | Exact test, attempt, retry, and binary identity |
158
159
  | RSpec | Exact example and before/example/after phase identity |
159
160
  | Minitest and test-unit | Exact test and setup/test/teardown identity |
@@ -110,10 +110,23 @@ whatever was still buffered.
110
110
  | Runner | Attribution | Current requirement |
111
111
  | --- | --- | --- |
112
112
  | Cargo's standard libtest runner | Exact test and attempt identity | Rust 1.95; run with `npx supercov -- cargo test` |
113
+ | rustdoc doctests | Exact doctest identity; every doctest runs in a process of its own | Rust 1.95; part of `npx supercov -- cargo test` |
113
114
  | cargo-nextest | Exact test, attempt, retry, and binary identity | cargo-nextest 0.9.138 or 0.9.140 |
114
115
 
115
116
  Supercov preserves Cargo's test selection, scheduling, fail-fast behavior,
116
- environment, and exit status. Use the repository's normal flags after the
117
+ environment, and exit status. Doctests are measured like any other test:
118
+ Supercov stands in for rustdoc during `cargo test --doc`, runs each doctest
119
+ in its own process, and attributes what it executed to that doctest by name.
120
+ With nextest, Supercov is nextest's target runner, so nextest's own
121
+ scheduling, retries and output stay as they are and each attempt is recorded
122
+ separately. The measured source is what rustc compiles: every crate root and
123
+ the modules it reaches through `mod` declarations, `#[path]` attributes and
124
+ literal `include!` calls; a `.rs` file nothing declares as a module, such as
125
+ one embedded with `include_str!`, is left untouched. Statements, functions,
126
+ `if`/`while`/match-guard decisions with their conditions (let chains
127
+ included), match arms, `&&` and `||`, `for` and `while` loops and the `?`
128
+ operator each take a probe; const contexts and macro expansions stay in the
129
+ denominator behind an explicit limitation. Use the repository's normal flags after the
117
130
  wrapped command:
118
131
 
119
132
  ```sh
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "supercov",
3
- "version": "0.0.39",
3
+ "version": "0.0.41",
4
4
  "description": "Zero-edit, runner-aware coverage completeness for JavaScript, TypeScript, Rust, Python, and Ruby test suites",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -62,8 +62,9 @@
62
62
  "benchmark:check": "cargo build --release -p supercov && node scripts/rust-transform-benchmark.mjs",
63
63
  "benchmark:python-monitoring": "cargo build -p supercov && node scripts/python-monitoring-benchmark.mjs",
64
64
  "check": "cargo fmt --all -- --check && cargo clippy --workspace --all-targets -- -D warnings && npm run test && npm run test:runtime && npm run test:rust-assets && node scripts/package-preflight.mjs && node scripts/verify-binstall-metadata.mjs --offline",
65
- "release:check": "npm run check && npm run test:engine && npm run test:fixture && npm run test:watchdog && npm run test:engine-contract && npm run test:agent && npm run test:child-attribution && npm run test:host-loader && npm run test:python-monitoring && npm run test:ruby-coverage && npm run test:rust-public-cargo && npm run test:packed-npx && npm run test:clang-mcdc && npm run benchmark:check",
65
+ "release:check": "cargo clean && node scripts/sweep-target.mjs && npm run check && npm run test:engine && npm run test:fixture && npm run test:watchdog && npm run test:engine-contract && npm run test:agent && npm run test:child-attribution && npm run test:host-loader && npm run test:python-monitoring && npm run test:ruby-coverage && npm run test:rust-public-cargo && npm run test:packed-npx && npm run test:clang-mcdc && npm run benchmark:check",
66
66
  "release:bump": "node scripts/bump-version.mjs",
67
+ "sweep": "node scripts/sweep-target.mjs",
67
68
  "prepack": "node scripts/package-preflight.mjs",
68
69
  "prepublishOnly": "npm run release:check",
69
70
  "test:child-attribution": "cargo build -p supercov && node scripts/rust-child-attribution-integration.mjs",
@@ -73,14 +74,14 @@
73
74
  "test:rust-public-cargo": "cargo build -p supercov && node scripts/rust-public-cargo-integration.mjs"
74
75
  },
75
76
  "optionalDependencies": {
76
- "@supercov/cli-darwin-arm64": "0.0.39",
77
- "@supercov/cli-darwin-x64": "0.0.39",
78
- "@supercov/cli-linux-arm64-gnu": "0.0.39",
79
- "@supercov/cli-linux-arm64-musl": "0.0.39",
80
- "@supercov/cli-linux-x64-gnu": "0.0.39",
81
- "@supercov/cli-linux-x64-musl": "0.0.39",
82
- "@supercov/cli-win32-arm64": "0.0.39",
83
- "@supercov/cli-win32-x64": "0.0.39"
77
+ "@supercov/cli-darwin-arm64": "0.0.41",
78
+ "@supercov/cli-darwin-x64": "0.0.41",
79
+ "@supercov/cli-linux-arm64-gnu": "0.0.41",
80
+ "@supercov/cli-linux-arm64-musl": "0.0.41",
81
+ "@supercov/cli-linux-x64-gnu": "0.0.41",
82
+ "@supercov/cli-linux-x64-musl": "0.0.41",
83
+ "@supercov/cli-win32-arm64": "0.0.41",
84
+ "@supercov/cli-win32-x64": "0.0.41"
84
85
  },
85
86
  "peerDependencies": {
86
87
  "@playwright/test": ">=1.55.0",