#1127 closed defect (wontfix)
Chequeo del rango de versiones compatibles con un paquete
Reported by: | Víctor de Buen Remiro | Owned by: | Víctor de Buen Remiro |
---|---|---|---|
Priority: | highest | Milestone: | TOL Packages |
Component: | Various | Version: | head |
Severity: | blocker | Keywords: | |
Cc: |
Description (last modified by )
Cuando un desarrollador publica una versión de un paquete ha de especificar en la propia definición TOL cuál es la versión mínima de TOL con la que es compatible con la versión del paquete.
Ocasionalmente también deberá especificar la versión máxima con la que es compatible, aunque eso es algo que sucede a toro pasado, por lo que hay que hacerlo constar modificando directamente el campo package_f_contents.te_max_tol_version
en la base de datos del repositorio.
Cuando el paquete requiere a su vez de otros paquetes lo que sucede es que la versión mínima de TOL con la que el paquete será compatible debería ser mayor o igual la máxima de entre las mínimas de sus paquetes requeridos directa o indirectamente. Análogamente, la versión máxima compatible debería ser menor o igual que la mínima de entre las máximas de sus requerimientos.
Sin embargo no siempre se cumplen estas restricciones de coherencia pues es algo tedioso de comprobar manualmente.
Es necesario por lo tanto crear un proceso que chequee estos campos de forma descendente en la base de datos e informe al desarrollador de cuáles son las versiones mínima y máxima coherentes con los requerimientos de un paquete.
Lo ideal es que salte un mensaje de error cuando se intenta publicar un paquete con información de compatibilidad incoherente.
Change History (3)
comment:1 Changed 14 years ago by
Description: | modified (diff) |
---|
comment:2 Changed 14 years ago by
Resolution: | → wontfix |
---|---|
Status: | new → closed |
En realidad las restricciones de coherencia planteadas no son tales.
Lo que ocurre realmente en realidad durante la publicación de un paquete es que se toma, para cada paquete requerido, la última versión disponible localmente en la máquina desde la que se publica un paquete.
Es decir, lo único que se asegura es que con la versión especificada de cada paquete requerido todo está funcionando como es debido, o al menos en la medida en que los tests de calidad puedan asegurarlo.
Pero nada impide que otras versiones anteriores o posteriores puedan funcionar sin problemas, por lo que es perfectamente posible, aunque no asegurable que una versión de TOL sea compatible con un paquete aunque no lo sea con las versiones especificadas como dependencias.