Thanks for the feedback Mark and Sam. I chose
Module::License::Report and posted my implementation to CPAN this
afternoon.
Further feedback would be VERY welcome, as the module uses a few
sketchy heuristics to guess at the license. To mitigate the
uncertainty, I made it report a confidence number so the user can set
a sketchiness threshold. The confidence is just a guess, but it's
better than nothing. I'm thinking the next version should use
multiple algorithms to guess the license and report higher confidence
if they all agree.
On a side note, I discovered that using Data::Dumper on my output
object causes memory use to go through the roof. I think
Data::Dumper is chasing into the CPANPLUS data structures and
thrashing my machine. Is anyone familiar enough with CPANPLUS
internals to know whether Data::Dumper problems are well known, or if
I've stumbled on some new bug?
Thanks all,
Chris
On Oct 31, 2005, at 2:51 PM, Sam Vilain wrote:
On Mon, 2005-10-31 at 11:20 -0500, Mark Stosberg wrote:
I don't like any of the names I've come up with so far. It seems
clear that it should be in the Module:: namespace, but beyond that
I'm unsure. Possibilities:
Module::GuessLicense
Module::License
Module::LicenseChain
Module::DistributionRights
From your description, this is much as about a module's
dependencies as
it as a about a specific module. So I'll suggest:
Module::Depends::LicenseReport
Including "Report" signifies that the module has a "read-only"
purpose.
On the other hand, a license might be seen to implicitly imply
dependency on all of the things that it depends on (esp. if any are
GPL).
I think your point is very valid, and perhaps the logic for figuring a
module's dependencies recursively should be available independently
from
the logic to show the license for an individual module.
So, perhaps
Module::Depends
and
Module::License
Module::License::(Report|Chain|...)
Sam.
--
Chris Dolan, Software Developer, Clotho Advanced Media Inc.
608-294-7900, fax 294-7025, 1435 E Main St, Madison WI 53703
Clotho Advanced Media, Inc. - Creators of MediaLandscape Software
(http://www.media-landscape.com/) and partners in the revolutionary
Croquet project (http://www.opencroquet.org/)