Snyk CLI : présentation du versionnage sémantique et des canaux de publication
30 avril 2024
0 minutes de lectureNous sommes heureux d’annoncer l’adoption du versionnage sémantique et des canaux de publication dans Snyk CLI à partir de la version v.1.1291.0. Dans cet article, nous expliquons pourquoi nous apportons ces changements, quels problèmes ils résolvent pour nos clients et comment choisir de les adopter en fonction de vos besoins.
Quel problème cherchons-nous à résoudre, et pourquoi ?
Snyk CLI a été lancé sur le Web et présenté aux passionnés de sécurité le 2 octobre 2015, sous la forme de la version v0.0.0-pre-alpha. Au cours des huit dernières années, nous avons publié près de deux mille versions de Snyk CLI, dont plus de onze cents au cours des trois dernières années. Cela représente une version toutes les trente-deux heures et témoigne à la fois des besoins croissants de nos clients et du rythme auquel nous travaillons pour y répondre à l’échelle de l’entreprise. Face à une demande croissante, la complexité, la portée et l’impact de nos modifications rapides du code ont également augmenté.
D’un côté, publier rapidement des correctifs et des changements permet à chaque utilisateur de Snyk d’accéder à nos dernières fonctionnalités. De l’autre, nos études auprès de clients grands comptes ont montré que la fréquence des versions de Snyk CLI alourdissait les exigences de gouvernance et de conformité. En observant ces signaux récurrents, nous avons compris qu’un changement était nécessaire pour améliorer l’expérience de Snyk CLI, tant pour nos clients que pour les utilisateurs finaux, des développeurs aux équipes DevSecOps.
En tant que barrière de sécurité, Snyk CLI est un maillon essentiel de notre écosystème de développement et de celui de nos clients. Toute interruption de Snyk CLI perturbe directement les pipelines de build de nos clients, avec des conséquences sur leurs engagements commerciaux et l’expérience de leurs utilisateurs. Snyk mesure avec le plus grand sérieux la confiance que ses clients lui accordent. Nous estimons qu’un besoin reste insatisfait : pouvoir choisir un rythme soutenable.
C’est pourquoi nous apportons les changements suivants à Snyk CLI à partir de la version v.1291.0 :
Le versionnage sémantique des versions de Snyk CLI
Différents canaux permettant à nos clients de choisir en fonction de leurs préférences et de leurs besoins
Que signifient ces changements pour nos clients ?
Versions
Snyk CLI suit la notation en trois parties du versionnage sémantique, une norme du secteur, comme indiqué ci-dessous.
Pour un numéro de version MAJOR.MINOR.PATCH, incrémentez :
la version MAJOR en cas de changements [incompatibles]
la version MINOR en cas d’ajout de fonctionnalités rétrocompatibles
la version PATCH en cas de correction de bugs rétrocompatible
Des libellés supplémentaires sont ajoutés aux versions de CLI si nécessaire, conformément à la norme.
Dans le contexte de Snyk CLI, nous considérons qu’un changement est incompatible s’il risque de perturber les workflows automatisés et de provoquer des échecs dans votre environnement existant, par exemple dans vos intégrations CI/CD. Les changements incompatibles seront signalés par l’incrémentation de MAJOR et mentionnés dans les notes de version.
Voici quelques exemples de changements incompatibles :
Dépréciation ou modification de champs de sortie, de noms de champs ou de variables d’environnement
Introduction de changements de configuration obligatoires
Modification des codes d’erreur ou de sortie
Selon la nature et l’impact du problème, nous publierons parfois aussi des correctifs urgents, ce qui entraînera l’incrémentation de PATCH.
Canaux
Nous proposons différents canaux afin que nos clients puissent choisir celui qui correspond à leurs besoins et à leurs préférences.
Pour les clients, choisir un canal revient à choisir le niveau de stabilité et le rythme des modifications du code qu’ils souhaitent adopter :
previewLes versions « pre-release » sont déployées régulièrement, parfois plusieurs fois par jour, et incluent les dernières modifications.
Modèle de version :
v{MAJOR}.{MINOR}.{PATCH}-previewFréquence : variable
Disponibilité :
rcLes versions préliminaires « release candidate » sont déployées à des moments précis et contiennent une version de CLI qui devrait passer en version stable après des tests supplémentaires.
Modèle de version :
v{MAJOR}.{MINOR}.{PATCH}-rcFréquence : toutes les 8 semaines, 2 semaines avant une version stable (des correctifs urgents peuvent être publiés)
Disponibilité :
stableLes versions stables sont déployées à des moments précis, après avoir fait l’objet de tests supplémentaires et avoir été jugées stables.
Modèle de version :
v{MAJOR}.{MINOR}.{PATCH}Fréquence : toutes les 8 semaines (des correctifs urgents peuvent être publiés)
Disponibilité :
Snyk recommande de choisir le canal stable pour les raisons suivantes :
Une version stable est testée de manière approfondie pendant 8 semaines. Durant cette période, les équipes de développement de Snyk utilisent la CLI tout au long du cycle de vie du développement logiciel (SDLC).
Les notes de version qui l’accompagnent vous aident à choisir la version la mieux adaptée à vos besoins.
Toutefois, les clients qui souhaitent recevoir les modifications du code dès leur fusion peuvent choisir le canal preview. Veuillez noter que Snyk n’offre pas d’assistance pour ce canal et que des problèmes connus peuvent y être présents.
Conseil : les clients existants qui ont choisi le canal latest, désormais renommé, passeront automatiquement au canal stable. En coulisses, nous répliquons la dernière version stable afin de ne pas perturber les utilisateurs actuels. Toutefois, comme indiqué dans la section suivante, nous vous encourageons à passer aux nouveaux canaux de publication.
Choisir un canal depuis l’IDE
Veuillez choisir un canal de publication de CLI dans le menu déroulant illustré dans la capture d’écran ci-dessous. Vous pouvez passer d’un canal de publication à un autre, par exemple choisir release candidate (rc) pour recevoir un correctif urgent. Cette fonctionnalité est disponible dans l’IDE IntelliJ. Nous l’étendrons bientôt aux autres IDE pris en charge. Le canal par défaut de tous les IDE est stable.

Conclusion
Après près de deux mille versions, aider nos clients et les développeurs à livrer du code sécurisé reste une expérience gratifiante pour l’équipe Snyk. Nous continuons à faire évoluer Snyk CLI afin d’offrir une expérience développeur exceptionnelle et de permettre aux développeurs d’accomplir leur travail efficacement, à un rythme soutenable.
Si vous souhaitez nous faire part de vos commentaires ou participer à nos études utilisateurs, veuillez contacter notre équipe d’assistance, votre responsable de compte ou le chef de produit de Snyk CLI. Nous avons hâte de collaborer avec vous pour façonner l’avenir de Snyk CLI.



