From: Phillip Gawlowski Date: 2007-04-19T22:38:58+09:00 Subject: Re: Project vs. Package Trans wrote: > I wonder what others take on this. Has anyone considered this > distinction between project and package before? How should this > distinction be used? How should it effect the organization of our apps > and libs. It would be nice to have some sort of community consensus on > this and see it taken up by the important projects that help define > the standards on these matters. I have noticed, that this distinction doesn't, actually, exist. The development and distribution of applications and libraries is handled by community standards, that are published in, for example, the PickAxe. RubyGems make a distinction between package and project even more superfluous. I have yet to type require 'anothersproject/anotherslib/hoe' when needing hoe. Don't mix the development environment with the actual distribution (there are a few directories and files in my project's file hierarchy, which don't get distributed) of a more-or-less finished product. In essence, the terms "project" or "package" have nothing to do with Ruby or how it handles third party add-ons. Those terms are used to make it easier to handle the *development* and necessary *collaboration*, but don't influence the way applications or libraries are distributed, let alone used. This is handled by the community standards that are well established, and reinforced by publication (i.e. PickAxe, and I'm sure The Ruby Way has something similar). And honestly, meta-data like :project, :maintainer and what not aren't necessary to handle the management of gems. If you want to use a gem, you need the name of the gem for require, and, maybe, the version of a package. The only area where I can see that it would be a problem is when two different projects pick the same name for different libraries / apps, and the chances of this happening are low, I'd say. All in all, I think you see a problem where there is none. If complete newbies (like I was) flood the mailing list with "What's a package? what's a project?", instead of "How do I require this gem?", then there is a problem in the distinction, but all resources make it pretty clear that the Gem is the method of choice to install 3rd party tools. P.S.: For GForge's rationale behind the distinction project <> package, you'd have to contact the Sourceforge inventors. -- Phillip "CynicalRyan" Gawlowski http://cynicalryan.110mb.com/ http://clothred.rubyforge.org Rule of Open-Source Programming #4: If you don't work on your project, chances are that no one will.