@neralabs/rerail-pack-react 0.1.4 → 0.1.5

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
@@ -29,13 +29,16 @@ The pack follows the [pack structure and validation contract](../../docs/pack-fo
29
29
  | `licenses/<project>/` | The upstream licence and `UPSTREAM.md`, listing every copied file and extracted case |
30
30
  | `candidates/` | Ports still being evaluated, scored but never shipped: the code-rule documents (`rules/`, written by `build.mjs` from `specs.mjs`, except the hand-written `react-no-array-index-key.json`); `probes/` holds the hand-labelled React fact probes |
31
31
 
32
- Re-recording runs offline against the pinned tools (eslint 9.39.5, @typescript-eslint/parser 8.70.1, typescript
33
- 5.9.3) and the plugins' upstream checkouts, installed under `.rerail/tools/react`, with the corpus checkout under
34
- `.rerail/corpora/react`:
32
+ Re-recording is a maintainer deriving the pack's test data from its pins and archiving it
33
+ ([CONTRIBUTING.md](../../CONTRIBUTING.md#pack-test-data)); it is never committed. The recipe
34
+ (`scripts/pack-data/recipes/react.ts`) runs each plugin's `generate.mjs` against the pinned tools (eslint 9.39.5,
35
+ @typescript-eslint/parser 8.70.1, typescript 5.9.3), the plugins' upstream checkouts and the corpus. The fixtures
36
+ Rerail wrote (`UPSTREAM.md`) are authored: a change to them goes in your pull request with `git add -f`.
35
37
 
36
38
  ```sh
37
- node upstream/eslint-plugin-react/generate.mjs [--tools <dir>] [--corpora <dir>] [--no-corpora]
38
- node upstream/eslint-plugin-react-hooks/generate.mjs [--tools <dir>] [--corpora <dir>] [--no-corpora]
39
+ npm run fixtures:derive -- --pack react # both plugins
40
+ npm run fixtures:derive -- --pack react --tool eslint-plugin-react-hooks # one
41
+ npm run fixtures:push -- --pack react --tool eslint-plugin-react-hooks # on your own branch: archive it and rewrite its test-data.lock
39
42
  ```
40
43
 
41
44
  Rewriting the rule documents and `conformance.json` after editing `candidates/specs.mjs`, then scoring one rule with
@@ -2534,8 +2534,8 @@ Paths are relative to the pack directory, `packs/react/`. `<file> valid[i]` / `i
2534
2534
  | `upstream/eslint-plugin-react/fixtures/void-dom-elements-no-children/f87a7db315a4.tsx` | `tests/lib/rules/void-dom-elements-no-children.js` | derived |
2535
2535
 
2536
2536
  > `recording.json` is a port readiness recording, and no file of this pack, so it is recorded here rather than in the
2537
- > table above: the tool-pack's `recording.lock` names it and a GitHub release holds the bytes (docs/port-readiness.md).
2538
- > It carries excerpts of this upstream's tests (`tests/lib/rules/*.js`: the `code` of each RuleTester case),
2539
- > redistributed under the licence above, together with Rerail's Apache-2.0; the LICENSE beside this file is this
2540
- > upstream's own, at the pinned commit.
2537
+ > table above: the tool-pack's `recording.lock` names it by its sha256, and the bytes are an object in S3, not a file in
2538
+ > git (docs/port-readiness.md). It carries excerpts of this upstream's tests (`tests/lib/rules/*.js`: the `code` of each
2539
+ > RuleTester case), redistributed under the licence above, together with Rerail's Apache-2.0; `LICENSE` beside this file
2540
+ > is this upstream's own, at the pinned commit.
2541
2541
 
@@ -462,8 +462,9 @@ Paths are relative to the pack directory, `packs/react/`. `<file> valid[i]` / `i
462
462
  | `upstream/eslint-plugin-react-hooks/fixtures/ESLintRulesOfHooks-test/fa4449ccccf7.js` | `packages/eslint-plugin-react-hooks/__tests__/ESLintRulesOfHooks-test.js` | derived |
463
463
 
464
464
  > `recording.json` is a port readiness recording, and no file of this pack, so it is recorded here rather than in the
465
- > table above: the tool-pack's `recording.lock` names it and a GitHub release holds the bytes (docs/port-readiness.md).
466
- > It carries excerpts of this upstream's tests (`packages/eslint-plugin-react-hooks/__tests__/ESLint*-test.js`: the
467
- > `code` of each RuleTester case), redistributed under the licence above, together with Rerail's Apache-2.0; the LICENSE
468
- > beside this file is this upstream's own, at the pinned commit.
465
+ > table above: the tool-pack's `recording.lock` names it by its sha256, and the bytes are an object in S3, not a file in
466
+ > git (docs/port-readiness.md). It carries excerpts of this upstream's tests
467
+ > (`packages/eslint-plugin-react-hooks/__tests__/ESLint*-test.js`: the `code` of each RuleTester case), redistributed
468
+ > under the licence above, together with Rerail's Apache-2.0; `LICENSE` beside this file is this upstream's own, at the
469
+ > pinned commit.
469
470
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neralabs/rerail-pack-react",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "description": "Rerail rule pack: eslint-plugin-react and eslint-plugin-react-hooks rules ported to Rerail code rules.",
5
5
  "license": "Apache-2.0 AND MIT",
6
6
  "repository": {