Hackage at Baltimore

After the ICFP 2010 conference proper had come to a close, I came along for some Haskell-related revelry in Baltimore, from Thursday evening (Sept 30) to Sunday night (Oct 3). My paper-reading queue is chock full, and my wallet less so. Anyway, I had a good time and met some amazing people. I was there for a good reason, though.

I gave a talk at the Haskell Implementors’ Workshop about Hackage, which you can find at http://vimeo.com/15464003. It’s 35 minutes in total.

The presentation part is a straightforward overview. Open discussion starts at about 16:30. You can get the slides here [PDF].

I hope it gives you a better idea of where Hackage is going. During the weekend, I had some great discussions about Hackage, and comparing functional languages, and finance (of all things). Even better, there was actual solid planning. On Sunday, Duncan Coutts and I materialized a plan for switching over to the new Hackage. It’s up online at the Hackage trac wiki, and the current revision looks something like this:

Throughout all this there will be testing for backups and performance. The starred items are the significant ones that’ll be announced. They look like “use it with cabal-install!”, “use it as you please unofficially!”, and “use it as you please officially!”. If you’d like to learn more about some of the ideas behind hackage-server, the architecture document is a good starting point, as well as past blog posts and the features themselves.

Like this:

One Comment

I noticed that you listed one of my packages, network-info, as unmirrorable. Feel free to contact me and I’ll be happy to do what I can to fix it up.

There’s definitely something weird going on because Hackage lists it as an executable when actually it’s a library. It does have an executable called ‘test-network-info’, but that is only built if the the flag ‘test’ is set to true.

It’s also not a normal situation because of the fact that the test executable depends on the library (for obvious reasons) and they’re both in the same cabal file. This configuration has only been supported since cabal 1.8.0.4.

Hopefully the developments being done for cabal test will make this kind of thing easier.