Wklej range, porównaj wersje paczki i sprawdź znormalizowany zestaw comparatorów przed zmianą package.json. Worker działa lokalnie, nie pobiera metadanych npm i jawnie pokazuje prerelease behavior.
Semver ranges wyglądają krótko, ale decydują o oknie upgrade'u, ekspozycji na prerelease i bezpieczeństwie 0.x. Ten playground zamienia ranges na comparator sets, min/max satisfying versions i macierz wersji widoczną w review.
Interaktywne uruchomienie w przeglądarce ewaluuje zakres przez paczkę npm semver w workerze. Strona nie pobiera metadanych paczek, nie odpytuje registry.npmjs.org i nie zapisuje wklejonych list wersji.
Wybierz preset albo wklej range i candidate versions. Przełącz loose parsing lub includePrerelease, żeby odwzorować politykę review.
Pokazuje typowy domyślny zakres npm: dopuszcza kompatybilne wydania 1.x od 1.2.3, ale zatrzymuje się przed 2.0.0.
>=1.2.3 <2.0.0-01.2.2 NO MATCH 1.2.3 MATCH 1.3.0 MATCH 1.9.9 MATCH 2.0.0-beta.1 NO MATCH 2.0.0 NO MATCH import { maxSatisfying, satisfies, validRange } from 'semver';
const range = "^1.2.3";
const versions = [
"1.2.2",
"1.2.3",
"1.3.0",
"1.9.9",
"2.0.0",
"2.0.0-beta.1"
];
const options = {};
const normalizedRange = validRange(range, options);
const matching = versions.filter((version) => satisfies(version, range, options));
const latestAllowed = maxSatisfying(versions, range, options);
console.log({ normalizedRange, matching, latestAllowed });Caret zwykle otwiera szersze kompatybilne okno niż tilde. Dla bibliotek z dobrą kompatybilnością to może być korzystne. Dla kruchych integracji węższy tilde lane bywa łatwiejszy do review.
Caret range poniżej 1.0.0 nie zachowuje się jak stabilny major range. ^0.2.3 zatrzymuje się przed 0.3.0, a ^0.0.3 akceptuje tylko patch-compatible releases.
Prerelease versions są wykluczone, chyba że ta sama wersja bazowa uczestniczy w range albo includePrerelease jest włączone. To chroni przed przypadkową adopcją beta podczas zwykłych upgrade'ów.
Użyj ich, gdy polityka zależności łączy się z formatowaniem dat, opcjami TypeScript compiler albo review kontraktów schema.