Tenemos una aplicación web que empaquetamos en un RPM. Tenemos un problema con el campo de versión del RPM.¿Cómo compara yum las versiones?
Digamos que hemos instalado nuestra rpm: foo-2.1.0.007
007 es nuestro número de compilación.
Ahora cuando intentamos instalar un rpm más nuevo, foo-2.1.0.010, yum dice "No hay nada que actualizar".
Cuando he rehice los RPM, pero quitado los ceros iniciales, el problema se resolvió:
foo-2.1.0.7
foo-2.1.0.10
Según this link cada segmento de la versión se compara como un número entero, pero la práctica muestra lo contrario.
Entonces mi pregunta es: ¿Cuál es el algoritmo de comparación de versiones para RPM y por qué los ceros a la izquierda interfieren?
No tengo idea de cómo, pero ahora todo funciona como se esperaba, lo que significa que 010 está instalado encima de 007. Weird –
Gracias, me permitió descubrir que RPM realmente piensa que 0.901 es más nuevo que 0.92 pero no 0.920. Obviamente, compara números enteros punteados en lugar de números decimales. – theory