From: patrik Date: 2001-12-24T19:24:01+09:00 Subject: [ruby-talk:29396] Dependency generator and RubyGems [WAS: Re: Re: raa.succ top 5! ] On Mon, Dec 24, 2001 at 09:02:14AM +0900, Holden Glova wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On Mon, 24 Dec 2001 11:21, patrik wrote: > > On Mon, Dec 24, 2001 at 12:37:30AM +0900, Niko Schwarz wrote: > > > Jim Menard wrote: > > > > 1) Keyword searches. Maintain lists of pre-defined keywords > > > > that project authors can use to describe their projects. Let > > > > project authors add or submit new keywords. Then raa.succ can > > > > respond to queries like "list all database projects" or "list > > > > all gui builder projects". > > > > > > > > 2) Dependencies. Let a project author define which other > > > > projects (and version numbers) are required for their project. > > > > > > > > 3) When retrieving a project, automagically grab all other > > > > projects that the project depends on. > > > > > > 4) A list of platforms under which you can run it for each > > > project > > > > 5) Be based on the RubyGems project and for crossplatform building > > maybe also the talked about ruby make replacement. > > > > on a sidenot: I think both RubyGems, "standalone ruby > > executables"-project and rdoc could cooperade on a good dependency > > graph generator class(es)), they would all need that functionality > > and we don't want to violate the DRY principle :) > > > > /Patrik > > Hmm..I'm not sure how this sort of thing works (dependency checking > etc...) > > But what immediately formed in my mind after reading the wiki on > RaaSucc ( http://www.rubygarden.org/ruby?RaaSucc ) was the following. > > Have a web interface for maintainers of a packge to submit packages > and any metadata associated with it. Store this information in the > database. Have the client tool communicate with a "package getting" > servlet type of thing (WEBrick has a servlet paradigm). The servlet > will query the database and return you a list of packages to get > (this would include any amount of dependencies). After that the > client tool will go through the packages, getting them, unpackaging > them, and finally setting them up and running tests. > > I could be completely overlooking the obvious as I try to think of > the simplest thing that would possibley work, but why do you need a > dependency generator? the dependencies should be recorded in the rubygems, not by hand in some database. when you get a rubygem you should only need to have that and when you try to install it, the recorded dependencies kicka in and the install tool will fetch the dependencies etc. when creating rubygems you could benefit from a dependency generator finding your gems dependencies, as would you when creating a standalone executable (which will contain all dependencies + the application) and rdoc needs dependencies found for it also to generate it's docs and class trees. rdoc probably has something for this already which could be separated out into it's own module. i think the real project to work on is rubygems, once that part is working and in good shape a raa.succ is an "easy" thing to get going. rubygems are already worked on and has a sf.net project assigned with a CVS (with files). I can't remember who started it, but i think it is worth working on. We need this kind of system working in my opinion. /Patrik