¿Por qué los packages de la biblioteca debian tienen numbers en su nombre?

Estaba instalando algunas bibliotecas de dependencies usando apt y me preguntaba por qué algunos packages de biblioteca debian tienen número en sus nombres.

Por ejemplo:

  • libleveldb1 (mientras que el package de desarrollo es libleveldb-dev y el package debug es libleveldb-dbg )
  • librados2 (mientras no hay librados1 , el package de desarrollo es librados-dev y el package debug es librados2-dbg )

No parecen ser numbers de versión porque no hay versión 2 para librados . Simplemente no entiendo lo que son todos estos numbers?

Por lo general, la versión del package está más o less relacionada con la biblioteca ABI de la biblioteca y / o de la biblioteca subyacente. Así que algunos liberador cuidadoso prefijará su package con el número de versión principal de la biblioteca, así como un día, alguien puede instalar libleveldb1 y libleveldb2 junto al mismo server (y tener un progtwig que use cualquiera de las dos versiones sin problema).

-dev packages -dev y -dbg también suelen ser utilizados por los desarrolladores que saben lo que hacen, por lo que la eliminación del nombre de la versión adicional al final del package está bien. Al less, hasta que haya una versión 2 de liblevel que entonces llamará a los libleveldb1-dbg y libleveldb1-dev .

Los librados han existido en la versión 1 y la versión 2 ahora es la versión usual, vea el changelog en http://metadata.ftp-master.debian.org/changelogs//main/c/ceph/ceph_0.72.2-2_changelog para más información:

Rename librados1{,-dbg,-dev} packages to librados2{,-dbg,-dev} ones; conflict with and replace the former ones.

Por lo tanto, como conclusión, estas versiones son numbers de conveniencia que normalmente siguen el número de versión de biblioteca subyacente, pero ahora siempre.