Situatie
Ai văzut probabil prin diverse proiecte versiuni precum v1.2.3, 2.0.0-beta, 0.9.7 și te-ai întrebat: ce înseamnă toate aceste numere? De ce unele versiuni sar direct de la 1.4.2 la 2.0.0?
Răspunsul este Versionarea Semantică (SemVer) – un sistem standardizat de etichetare a versiunilor software, care îți spune ce s-a schimbat în cod doar uitându-te la versiune. Este un instrument vital pentru menținerea compatibilității între module și pentru comunicarea clară cu utilizatorii unui pachet, API sau aplicație.
Solutie
Pasi de urmat
Ce este Semantic Versioning?
Versionarea semantică este un standard (vezi semver.org) care definește versiunile în formatul:
MAJOR.MINOR.PATCH:
-
MAJOR: versiune principală – modificări care rup compatibilitatea (breaking changes)
-
MINOR: versiune secundară – funcționalitate nouă, compatibilă cu versiunile anterioare
-
PATCH: versiune de întreținere – corecturi de buguri, fără funcționalitate nouă
Exemplu:
-
2.3.5 înseamnă:
-
a doua versiune majoră,
-
a treia versiune minoră (adică a primit 3 seturi de funcționalități noi față de 2.0.0)
-
al cincilea patch de bugfixuri.
-
De ce este importantă versionarea semantică?
1. Previne accidente
Dacă un pachet axios@1.3.2 urmează semver, știi că actualizarea la 1.3.4 e sigură — doar bugfixuri. Dar 2.0.0 ar putea rupe codul tău.
2. Ajută la automatizare
Tooluri precum npm, pip, composer, maven folosesc semver pentru a gestiona actualizările:
^1.2.3 înseamnă „acceptă orice versiune >=1.2.3 dar <2.0.0”.
3. Îmbunătățește colaborarea în echipă
Toată echipa înțelege imediat cât de riscant e un upgrade.
4. Claritate pentru consumatori
Dacă oferi un API public sau o librărie, versiunea comunică clar ce e nou, ce s-a schimbat, ce s-ar putea rupe.
Leave A Comment?