
The web interface to HackageDB (the repository of releases of Haskell packages) is still fairly crude, and much is yet to be added, but the basic functionality is working: http://hackage.haskell.org/packages/archive/pkg-list.html We now need more early adopters to add their packages and otherwise try it out. All comments welcome.

http://hackage.haskell.org/packages/archive/pkg-list.html
We now need more early adopters to add their packages and otherwise try it out. All comments welcome.
How do I specify what category(ies) a package should inhabit? I can see that the cabal Category: field would be a likely candidate, but not all packages in the database have that in their .cabal files, so I'm wondering if there's some other mechanism that I haven't found yet. There's nothing on the upload page. Alistair

On Wed, Jan 31, 2007 at 09:41:27AM +0000, Alistair Bayley wrote:
http://hackage.haskell.org/packages/archive/pkg-list.html
We now need more early adopters to add their packages and otherwise try it out. All comments welcome.
How do I specify what category(ies) a package should inhabit? I can see that the cabal Category: field would be a likely candidate, but not all packages in the database have that in their .cabal files, so I'm wondering if there's some other mechanism that I haven't found yet. There's nothing on the upload page.
Yes, it's the Category field. It can also contain more than one category, separated by commas. There is no agreed list of category names yet. (If you omit the Category field, there's a kludge using the top levels of the part of the module hierarchy that you've used.)

Yes, it's the Category field. It can also contain more than one category, separated by commas. There is no agreed list of category names yet. (If you omit the Category field, there's a kludge using the top levels of the part of the module hierarchy that you've used.)
Ahhh. Is it possible to remedy some of the unclassified packages? I would have put Alex and Happy under Parsing, lambdabot under Network, Haddock under Development, etc. What happens if you introduce a new Category in an uploaded .cabal file? Is it automatically added to the existing categories? Alistair

alistair:
Yes, it's the Category field. It can also contain more than one category, separated by commas. There is no agreed list of category names yet. (If you omit the Category field, there's a kludge using the top levels of the part of the module hierarchy that you've used.)
Ahhh. Is it possible to remedy some of the unclassified packages? I would have put Alex and Happy under Parsing, lambdabot under Network, Haddock under Development, etc.
What happens if you introduce a new Category in an uploaded .cabal file? Is it automatically added to the existing categories?
I think so, see 'Safe'. Can we prevent that? -- Don

What happens if you introduce a new Category in an uploaded .cabal file? Is it automatically added to the existing categories?
I think so, see 'Safe'.
Confusion here. I see no Category in Safe-0.1.cabal.
Can we prevent that?
Might be better to allow users (an administrative subset, maybe?) to edit the categories attached to each package. So, they're inferred when uploaded for the frist time, but after that are user maintained. For example, should Web be a separate Category from Network. If so, shouldn't HTTP also be present under Web? And so on... Alistair

On Wed, Jan 31, 2007 at 10:09:18AM +0000, Alistair Bayley wrote:
Ahhh. Is it possible to remedy some of the unclassified packages? I would have put Alex and Happy under Parsing, lambdabot under Network, Haddock under Development, etc.
The authors can do that, next time they release. That makes for a long lead-time, of course.
What happens if you introduce a new Category in an uploaded .cabal file? Is it automatically added to the existing categories?
It is. At some point we should agree a list of categories.

This is really fantastic work. I think it could be made twice as valuable by adding a further 1% investment: some documentation on the web site. - some for the clients (people looking for libraries). - some for the providers (people implementing libraries) It's all obvious to those who are involved, but not to stupid Joe Public like me. Alistair's question below is an example. Probably not a lot is required. Example: This web site holds a collection of free Haskell packages. - Anyone can download and use them: here is how to do it (link) - Anyone can upload a new package that they have written, to make it available to others: here is how to do it (link) Each package comes in the standard Cabal format, which make it very easy to install. They each have a short description that you can read before downloading. Explanation of categories, and the change-password link. I wonder if each package could (automatically) have a Wiki link, to a Talk page, where people can comment on the package? Simon | -----Original Message----- | From: libraries-bounces@haskell.org [mailto:libraries-bounces@haskell.org] On Behalf Of Alistair | Bayley | Sent: 31 January 2007 09:41 | To: libraries@haskell.org | Subject: Re: hackageDB | | > http://hackage.haskell.org/packages/archive/pkg-list.html | > | > We now need more early adopters to add their packages and otherwise try | > it out. All comments welcome. | | How do I specify what category(ies) a package should inhabit? I can | see that the cabal Category: field would be a likely candidate, but | not all packages in the database have that in their .cabal files, so | I'm wondering if there's some other mechanism that I haven't found | yet. There's nothing on the upload page. | | Alistair | _______________________________________________ | Libraries mailing list | Libraries@haskell.org | http://www.haskell.org/mailman/listinfo/libraries

On Wed, Jan 31, 2007 at 10:01:07AM +0000, Simon Peyton-Jones wrote:
I think it could be made twice as valuable by adding a further 1% investment: some documentation on the web site. - some for the clients (people looking for libraries). - some for the providers (people implementing libraries)
I should have pointed at the intro page: http://hackage.haskell.org/packages/hackage.html More could be added, though.

web interface to HackageDB is still fairly crude, and much is yet to be added http://hackage.haskell.org/packages/archive/pkg-list.html
I'm wondering if there is any way to make the average workflow for Joe Public a bit more streamlined. With the current interface, here's how I would work: Say I want to write a parser. 1) I find the Standard libs documentation by clicking the link on haskell.org, but now I want to see what else is available. 2) I backtrack to haskell.org 3) Find and click "Applications and libraries" 4) Find and click "The Hackage database" 5) I read the introduction of interesting libraries, and if I see something I like, I hope there's a homepage link to learn more. 6) From the homepage, I search around for a link to some Haddock docs. 7) If I find a library I want, I backtrack to hackageDB and follow the install instructions. Ideally, I like to somehow be able to do the following: 1) From haskell.org, I click a "Libraries" link 2) I'm presented with a few options: "Standard libraries," "Community Packages", "Packages installed locally" 3) The "Community Packages" link should take me to a Haddock page that is a superset of the "Standard Libraries" page. 4) When I find the library I want, I look at the upper-right corner, and hit a link "Install." 5) I see a page telling me that I'm about to install the library locally, and a button to continue. After installation, I'm taken to an anchor for my new package on the "Packages installed locally" page. The "Packages installed locally" page would be a Haddock page just like the "Standard libraries," but showing only the libraries I have installed locally. Somewhere on the "Packages installed locally," page, there is a "Save package configuration" link to generate a Cabal package of the current packages installed. This cabal file could be shared with friends/classmates/coworkers to keep everyone in sync. Thoughts? Is this kind of web-based, file system reflection even possible? Maybe with the help of an applet? Thanks, Greg
participants (5)
-
Alistair Bayley
-
dons@cse.unsw.edu.au
-
Greg Fitzgerald
-
Ross Paterson
-
Simon Peyton-Jones