close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#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 Víctor de Buen Remiro)

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 Víctor de Buen Remiro

Description: modified (diff)

comment:2 Changed 14 years ago by Víctor de Buen Remiro

Resolution: wontfix
Status: newclosed

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.


comment:3 Changed 14 years ago by Víctor de Buen Remiro

(In [3307]) Fixes #1125
Fixes #1126
Refs #1127
Local repository depends on new member TolPackage::_.version

Note: See TracTickets for help on using tickets.