En la sección dependencias de un archivo de Cabal:dependencias del paquete hackage y bibliotecas preparadas para el futuro
Build-Depends: base >= 3 && < 5, transformers >= 0.2.0
debería hacer algo así como
Build-Depends: base >= 3 && < 5, transformers >= 0.2.0 && < 0.3.0
(poner límites superiores en las versiones de los paquetes que dependo en)
¿o no?
voy a utilizar un ejemplo real: mi paquete "Lista" en la Hackage (transformador Lista mónada y la clase)
- Si no pongo el límite - mi paquete puede romperse por un cambio en " transformadores "
- Si pongo el límite - un usuario que usa" transformadores "pero está usando una versión más nueva de él no podrá usar
lift
y conListT
porque es solo una instancia de estas clases de transformadores-0.2 .x
Supongo que las aplicaciones siempre deben poner límites superiores para que nunca se rompan, por lo que esta pregunta solo se trata de bibliotecas:
¿Usaré el límite de versión superior en dependencias o no?
Agregué un resumen rápido de la política mencionada a su respuesta. Espero que no te importe, pero si lo haces, siéntete libre de cambiar/reformular/revertirlo. – yairchu