Beispiel
Demonstrate that @babel/preset-env isPluginRequired enforces strict 3-part SemVer format on target versions while accepting loose versions in support data, and returns true for empty targets.
sha256:d867299d098e3b1457b625465dffcf5c0a970911aa095d22f8ce7c4207a5835f
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Ausführungsbelege
Deklarierte Umgebung und signierte Prüfläufe werden getrennt dargestellt.
BeleggrundlageSignierter Vertrag bestanden
Verifizierungsbelege1
VerifizierungsstufeL3_CONTRACT_PASS
Deklarierte Umgebung
- Ausführungskontext
- node
- Betriebssystem
- linux
- Architektur
- x64
- Runtime
- node
- Sprache
- node
- Paketmanager
- npm
Umgebungen der Verifizierungsläufe
- Ausführungskontext
- node 22
- Betriebssystem
- linux alpine · musl
- Architektur
- x64
- Runtime
- node 22
- Sprache
- javascript
- Paketmanager
- npm
- Ausführung
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17
Fall
- Ziel
- Demonstrate that @babel/preset-env isPluginRequired enforces strict 3-part SemVer format on target versions while accepting loose versions in support data, and returns true for empty targets. HOW
- Pakete
-
@babel/preset-env 7.26.0
- Umgebung
- node
- Erstellt
- 2026-08-17T06:39:19Z
Häufige Annahme
isPluginRequired accepts shorthand target versions such as chrome '80' matching Babel configuration presets, and returns false when targets is empty since no target platforms require compilation.
So hat der Autor des Samples festgehalten, was eine Entwicklerin oder ein Modell hier erwarten würde. Der Vertrag darunter ist das, was tatsächlich lief.
Contract
- isPluginRequired throws a semver validation error when targets specifies a non-triplet version like '80' while support data allows '79', returns false when target version 80.0.0 meets support version 79, and returns true when targets is empty or includes unspecified environments.
- transformIncludesAndExcludes separates builtIns prefixed with es, es6, es7, esnext, and web into a distinct Set from plugins.
Dateien
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs
Quellartefakt herunterladen (tar.gz)
Ursprungs-Seeder
csx-seed
Verifizierungsbelege
- node 22 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17 · ed25519:d91480838ac982c9