Versioning & Packages

testeur de plages SemVer

Choisissez l’écosystème avant de saisir sa contrainte, son chemin ou ses champs Cargo.

testeur de plages SemVer

Entrée

Versions candidates, une par ligne

Résultat

Saisissez des données pour commencer.

Le calcul reste dans ce navigateur ; aucun registre de paquets n’est interrogé.

Options

Composer : versions stables numériques, ^, ~, .*, comparaisons, AND/OR et traits d’union.

500 lignes et 65 536 caractères maximum ; aucun registre interrogé.

Saisissez des données pour commencer.

Un intervalle copié d’un README peut changer de sens d’un gestionnaire de paquets à l’autre. Ce testeur de plages SemVer vous demande d’abord de choisir Composer ou NuGet, puis compare uniquement les versions que vous avez saisies.

La contrainte de version Composer et la plage de versions NuGet ont des parseurs distincts. Le chemin de module Go reçoit deux diagnostics, tandis que la version de dépendance Cargo sert à construire une ligne TOML.

Pourquoi utiliser ce testeur de plages SemVer ?

Chaque résultat rappelle la grammaire réellement choisie.

Une borne nue n’est pas une égalité

Ce testeur de plages SemVer ne confond pas les contraintes Composer avec les intervalles NuGet. Dans NuGet, 1.0 est une borne inférieure ; [1.0] signifie exactement cette version.

Quatre parcours de règles distincts partent des entrées et aboutissent à des rapports séparés

Chemin et déclaration ont leur propre diagnostic

Go sépare validité lexicale et forme téléchargeable du domaine. Cargo fournit une ligne de dépendance TOML et signale si la version autorise une mise à jour compatible.

Deux contrôles du chemin Go voisinent avec une seule déclaration de dépendance Cargo

Trois détails à vérifier avant de copier

01

Choisir la grammaire en premier

Chaque mode conserve son brouillon. Une plage NuGet entre crochets ne passe jamais en silence dans le parseur Composer.

02

Lire le sens de la version nue

NuGet 1.0 signifie au moins 1.0. Cargo 1.0 autorise des mises à jour compatibles ; =1.0 indique une version exacte.

03

Attendre le rapport courant

Le calcul automatique attend 350 ms. Désactivez-le pour lancer avec Ctrl/Cmd+Enter ; un résultat périmé ne peut plus être copié ni téléchargé.

Quatre vérifications adaptées

Contraintes numériques Composer

Testez ^, ~, comparaisons, jokers, AND/OR et intervalles à trait d’union sur vos propres versions stables, avec les lignes invalides visibles.

Intervalles NuGet

Comparez bornes inclusives ou exclusives, bornes vides, préversions, valeur nue comme minimum et [x] comme égalité.

Chemins des modules Go

Contrôlez les éléments ASCII, les noms Windows réservés, le préfixe de domaine en minuscules et le suffixe /vN sans connexion.

Déclarations Cargo

Produisez une seule ligne TOML crates.io avec nom, exigence, features et default-features, puis copiez le fragment séparément du rapport JSON.

Ce que le contrôle local ne déduit pas

Composer : versions numériques stables
Branches dev, alias, @stability et candidats préversion sont refusés. minimum-stability et les données du dépôt sont nécessaires pour conclure sur une installation.
NuGet : pas de restauration
Les versions flottantes comme 1.* sont refusées. Être dans un intervalle ne prouve pas que restore choisira la version ni qu’elle existe dans une source.
Go : pas de résolution distante
Un chemin local valide peut ne pas avoir de domaine téléchargeable. Aucun DNS, proxy ni dépôt n’est interrogé.
Cargo : pas de fichier entier
Une seule dépendance crates.io est générée. git, path, workspace, plateformes, registres privés et réécriture complète de Cargo.toml restent hors champ.
Liste limitée et traçable
Au plus 500 lignes candidates non vides et 65 536 caractères. Les lignes erronées gardent leur numéro initial dans le rapport.

Questions sur le testeur de plages SemVer

Quelle différence entre ^ et ~ dans Composer ?

Dans Composer, ^1.2 et ~1.2 acceptent les versions avant 2.0, alors que ~1.2.3 s’arrête avant 1.3. Ce testeur de plages SemVer se limite ici aux versions numériques stables.

La plage NuGet [1.0,2.0) inclut-elle 2.0 ?

Non. Le crochet [ inclut 1.0, mais la parenthèse finale ) exclut la borne supérieure 2.0.

Pourquoi le chemin d'un module Go v2 se termine-t-il par /v2 ?

Go donne aux versions majeures incompatibles dès v2 un chemin de module distinct, généralement terminé par /v2. Cette page contrôle la forme, sans interroger le dépôt.

Que signifie une version sans opérateur dans Cargo.toml ?

Sans opérateur, Cargo applique une contrainte caret : 0.1.12 peut évoluer sous 0.2. Pour une version précise, écrivez =0.1.12.

Une version NuGet sans crochets est-elle une version exacte ?

Non. Une version NuGet nue comme 1.0 est une borne minimale inclusive. [1.0] demande une correspondance exacte.

Une question reste ouverte ?

Lancer le testeur de plages SemVer

Revenez au testeur de plages SemVer, choisissez l’écosystème et relisez le rapport courant avant de modifier votre projet.