Shared publicly  - 
 
I've set up Travis CI to build and test zoom-cache, as they are now supporting #haskell. It found one broken dependency in my cabal file, and I've uploaded a zoom-cache-1.2.1.2 to hackage as a result. Thanks Travis CI!

Some gotchas:

1. you need to set up an install stanza in your .travis.yml file to explicitly "cabal update", or else no dependencies will be found.

2. you need to explicitly install any build tools that your project, its tests or its dependencies may need. For zoom-cache, this involved "cabal install c2hs test-framework-quickcheck2", as iteratee-compress uses c2hs and zoom-cache uses test-framework

3. you need to add $HOME/.cabal/bin to the $PATH used for "cabal install", else your new tools (c2hs in this case) won't be found.

In the end, all you need to do is log in at travis-ci.org using your github auth, select the repos to test, and upload a .travis.yml file like https://github.com/kfish/zoom-cache/blob/master/.travis.yml
5
4
Manuel Chakravarty's profile photoJason Dagit's profile photoLennart Kolmodin's profile photoStefan Wehr's profile photo
4 comments
 
Also: as far as cabal is concerned, 0.5 < 0.5.0.
 
Very cool! Do you get a fresh environment each time? Or is the build box reused between builds? Would be interesting if the environment is reused and you get dependency problems in on your CI box :)

It might also be a good idea to use cabal install --only-dependencies instead of specifying the exact packages, if you ever would change the .cabal file and forget to update your .travis.yml file.
 
+Lennart Kolmodin you get a fresh environment for each build, so nothing is reused from previous builds.

The vm images used for each language are remade every week or so.
Add a comment...