Provided by: dpkg-dev_1.22.18ubuntu3_all bug

NAMN

       deb-version - Format på versionsnummer för Debianpaket

SYNOPS

       [epok:]uppströmsversion[-debianuppdatering]

BESKRIVNING

       Versionsnummer som används för Debians binär- och källkodspaket består av tre komponenter. De är:

       epok
           Ett  ensamt  (vanligtvis  litet)  heltalsvärde större än noll. Det kan uteslutas, i så fall antas det
           vara noll. Om det utesluts kan inte uppströmsversion innehålla kolontecken.

           Fältet är till för att rätta till fel i versionsnummer i tidigare versioner  av  paketet,  samt  attr
           hantera förändringar i paketets versionsnumreringssystem.

       uppströmsversion
           Detta  är  huvuddelen  av  versionsnumret.  Det  är  vanligtvis  versionsnumret  för  originalpaketet
           (”uppströmspaketet”) som .deb-filen skapats från, om ett sådant finns. Normalt  anges  det  på  samma
           form  som används av uppströmsförfattaren/författarna, men det kan behöva formateras om för att passa
           med pakethanterarens format och jämförelsefunktion.

           Hur pakethanteraren jämför versionsnummer när det  gäller  uppströmsversion  beskrivs  nedan.  Fältet
           uppströmsversion i versionsnumret kan inte utelämnas.

           Fältet uppströmsversion kan endast innehålla alfanumeriska tecken (”A-Za-z0-9”) och tecknen . + - : ~
           (punkt,  plus,  bindestreck,  kolon,  tilde)  och  bör inledas med en siffra. Om det inte finns någon
           debianuppdatering tillåts inte bindestreck och om det inte finns någon epok tillåts inte kolontecken.

       debianuppdatering
           Denna del av versionsnumret anger versionen för Debianpaketet som baserats på uppströmsversionen. Den
           kan endast innehålla alfanumeriska tecken samt tecknen + . ~ (plus,  punkt,  tilde)  och  jämförs  på
           samma sätt som uppströmsversion.

           Fältet är valfritt - om det inte anges så kan inte uppströmsversion innehålla något bindestreck. I så
           fall  anger  versionsnumret att en programvara skrivits specifikt för att göras till ett Debianpaket,
           och  att  det  då  endast  finns  en  ”debianisering”  av   det   och   att   därför   behövs   ingen
           uppdateringsinformation vid sidan av.

           Vanligtvis börjar debianuppdatering om på ”1” varje gång uppströmsversion ökas.

           Dpkg  delar  upp  versionsnumret  vid  det  sista  bindestrecket i strängen (om sådant finns) för att
           bestämma uppströmsversion och debianuppdatering. Om debianuppdatering saknas räknas det som  tidigare
           än  om  fältet  existerar  (men  notera  att  debianuppdatering  är  den  minst signifikanta delen av
           versionsnumret).

   Sorteringsalgoritm
       Pakethanteringssystemet   använder   samma   algoritm   för    att    jämföra    uppströmsversion-    och
       debianuppdatering-delarna:

       Strängarna jämförs från vänster till höger.

       Först  bestäms  de inledande delar av varje sträng som enbart består av tecken som inte är siffror. Dessa
       båda delar (av vilka den ena kan vara tom) jämförs lexikalt. Om en skillnad upptäcks returneras den.  Den
       lexikala   jämförelsen  jämför  ASCII-värden,  modifierad  så  att  alla  bokstäver  sorteras  före  alla
       icke-bokstäver och så att ett tilde sorteras före allt, även i slutet av  delsträngen.  Till  exempel  är
       följande delsträngar sorterade: ”~~”, ”~~a”, ”~”, tomma delsträngen, ”a”.

       Därefter bestäms de inledande delar av varje sträng som enbart består av siffror. De numeriska värdena av
       dessa delar jämförs och om en skillnad upptäcks i jämförelsen returneras den som resultat av jämförelsen.
       För  detta  ändamål  räknas  en  tom  sträng  (vilket  bara  kan  uppstå  i  slutet av den ena eller båda
       versionssträngarna som jämförs) som noll.

       Dessa båda steg (jämföra och ta bort inledande strängar med icke-siffror och siffror)  upprepas  till  en
       jämförelse upptäcks eller de båda strängarna tar slut.

       Observera att epokfältet är till för att kunna rätta till tidigare misstag i versionsnumreringen, och att
       hantera  situationer  där  versionsnumreringsmetoden ändras. Det är inte tänkt att hantera versionsnummer
       som innehåller strängar av bokstäver som pakethanteringssystemet inte kan  tolka  (till  exempel  ”ALPHA”
       eller ”Pre-”), eller dumma sorteringsordningar.

ANTECKNINGAR

       Tildetecknets och dess speciella sorteringsegenskaper introducerades i dpkg 1.10 och vissa delar av dpkg-
       byggskripten fick inte stöd för det förrän senare i 1.10.x-serien.

SE ÄVEN

       deb-control(5), deb(5), dpkg(1)

ÖVERSÄTTNING

       Peter Krefting och Daniel Nylander.

1.22.18                                            2025-04-28                                     deb-version(7)