[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FR-devel] ModuleBuilder [was: Can we attack the 'not enough libraries
From: |
Curt Hibbs |
Subject: |
[FR-devel] ModuleBuilder [was: Can we attack the 'not enough libraries' thing straight on?] |
Date: |
Thu, 23 Jan 2003 11:01:27 -0800 |
I would like to support something like this in FreeRIDE as part of our
project-management/deployment support (which does not yet exist), and I
would appreciate it if you could keep us informed as the project progresses.
Thank you,
Curt
> -----Original Message-----
Berger, Daniel wrote:
> A few of us here in Denver are working on this issue. See
> http://development.faeriemud.org/ModuleBuilder/. There's a link to CVS as
> well.
>
> As far as standards, here is how the file layout is gonna be until someone
> threatens me with a pair of pliers and a blowtorch (or Michael and Martin
> kick me off the project):
>
> Layout will be based on package name. A script (ala h2xs, but
> with a better
> name and no assumptions that C is present) will be provided to
> autogenerate
> the directory & file layout. The initial version of this script is called
> "rbuildmaker.rb" (name subject to change) and can be found under the bin
> directory on the cvs page (follow the links from the url provided above).
>
> Examples:
>
> package "foo" - all package names will be lower case
>
> foo/
> lib/ - foo.rb (plus whatever other libs)
> doc/ - documentation
> test/ - test cases here
> CHANGES - changelog
> install.rb - a revamped, consistent, standard install script
> MANIFEST - listing of package contents
> test.rb - will run any unit tests included (for a "make
> test", or the
> like)
> INSTALL - installation instructions
> LICENSE - Licensing information (perhaps relegated to rd2)
>
> package "foo-bar"
>
> foo-bar/
> lib/foo/bar.rb
> ...
>
> In the second example, bar.rb would then be installed in the
> sitelibdir (by
> default - would be configurable) under the directory "foo". My feeling is
> that documentation should be as well (if provided). I wouldn't mind
> autogenerating and installing ri docs or man pages either. Keeping
> everything in the sitelibdir would also make it easier to
> determine what 3rd
> party modules have been installed on your system. I can't think
> of a reason
> not to install in the sitelibdir, unless it's a permissions/administration
> issue.
>
> Some stub documenation will be automatically created for you as well. For
> example, using the foo-bar package, the bar.rb file will start off like
> this:
>
> module Foo
> class Bar
> VERSION = "0.1.0"
> # Add code here
> def self.VERSION
> VERSION
> end
> end
> end
> =begin
> = Description
> # Add description
> = Synopsis
> # Add synopsis
> = Class Methods
> # Add class method docs
> = Instance Methods
> # Add instance method docs
> = Constants
> # Add constant docs
> = Author
> # Your name, email address, irc nick, whatever
> = License
> # Ruby's by default. Change as desired.
> = Copyright
> (C) #{current-year} All Rights Reserved. Change as desired
> =end
>
> Thus, package name matches directory layout matches module-class
> hierarchy.
>
> A couple of points to head off questions:
>
> lower case - You can make your package name whatever case you
> like, but all
> of *mine* are going to be lower case. Most people seem to follow this
> tradition anyway. Let's make it a standard.
>
> stub - don't bug me about the stub documentation details. It's JUST STUB
> DOCUMENTATION. I don't expect it to survive long. It's just there as a
> guideline and to remind you to document certain things, like your License
> and Copyright.
>
> rd2 - if you prefer rdoc, delete and retype as you see fit. See my point
> about "stub" above.
>
> hypocrisy - I admit I do not follow these standards 100% in my
> own packages
> (but I'm close). However, I plan on converting all them where they differ
> eventually.
>
> Now, autogenerating a file layout is easy. It's the install.rb script
> that's going to be the heart of this project (and thus most difficult).
>
> Questions anyone?
>
> Regards,
>
> Dan
>
>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [FR-devel] ModuleBuilder [was: Can we attack the 'not enough libraries' thing straight on?],
Curt Hibbs <=