how to determine the dependency versions before packaging and submitting to hackage

i plan to submit a package to hackage. i run it on my machine with a cabal file which has for all dependencies "any" (except for base, where it says >=4.0 -- see previous discussion on haskell-cafe). i am not certain, if my code runs agains any version, but i fear it is too restrictive to say >= "current version", which could exclude too much? testing against all previous versions of the packages seems complicated and very time consuming. what is the advice in this case? thank you andrew

Have a look at the Package Versioning Policy:
http://haskell.org/haskellwiki/Package_versioning_policy
On Sun, Oct 11, 2009 at 11:41 AM, Andrew U. Frank
i am not certain, if my code runs agains any version, but i fear it is too restrictive to say >= "current version", which could exclude too much? testing against all previous versions of the packages seems complicated and very time consuming.
If you assume that the packages you depend on follow the PVP then you can specify a range of versions which should have a stable API. For instance, if you depend on a package A and you build it on you system with A-1.0.2 then you can specify "A >= 1.0.2 && < 1.1". You know it to work with A-1.0.2 and from the PVP you can assume that A's API will not change until A-1.1. The question is which packages follow the PVP. Regards, Roel

Andrew U. Frank wrote:
i plan to submit a package to hackage. i run it on my machine with a cabal file which has for all dependencies "any" (except for base, where it says >=4.0 -- see previous discussion on haskell-cafe). i am not certain, if my code runs agains any version, but i fear it is too restrictive to say >= "current version", which could exclude too much? testing against all previous versions of the packages seems complicated and very time consuming.
what is the advice in this case?
I usually take a conservative approach, I only put in requirements that I can verify myself. However, I make sure to include all tests and if someone reports that it works with looser requirements then I'm happy to adjust it. /M -- Magnus Therning (OpenPGP: 0xAB4DFBA4) magnus@therning.org Jabber: magnus@therning.org http://therning.org/magnus identi.ca|twitter: magthe
participants (3)
-
Andrew U. Frank
-
Magnus Therning
-
Roel van Dijk