Re: [Module-build-general] More version info in META.yml
Status: Beta
Brought to you by:
kwilliams
|
From: Ken W. <ke...@ma...> - 2003-03-30 05:45:18
|
On Monday, March 10, 2003, at 12:11 PM, Andreas J. Koenig wrote: >>>>>> On Sat, 8 Mar 2003 13:53:25 -0800, sc...@po... (Michael G. >>>>>> Schwern) said: > >> On Sat, Mar 08, 2003 at 01:43:37PM -0600, Ken Williams wrote: >>>>> 2) What about .pm files that contain multiple packages? Should >>>>> those >>>>> packages be included too, like the PAUSE namespace indexer does? >>>> >>>> Is the PAUSE indexer that smart? I don't think it is. >>> >>> Yup, it is: > >> Maybe we should borrow the code then? > > In case you don't know, PAUSE code is available in a subversion > repository and in daily snapshots. Daily dumps of the subversion repo > are also there. The dumps and snapshots are at > > ftp://pause.perl.org/pub/PAUSE/PAUSE-code/ > > The repository itself is > > http://pause.perl.org:5459/svn/pause/trunk > or > https://pause.perl.org:5460/svn/pause/trunk > > The http adresses can also be browsed. > > The indexer is in cron/mldistwatch. Thanks. Am I right that something like the following is what we're aiming for? provides: Foo::Bar: file: Bar.pm version: 0.12 Foo::Bar::Baz: file: lib/Foo/Bar/Baz.pm version: ~ (the '~' is YAML for undef) > > Problem is, it is not a tiny program but 2000+ lines long and probably > not easy to follow and dissect. What do you suggest? So, I started hacking my way through that code, slurping the relevant bits into Module::Build::Base. It was going pretty well. But then I got to the part where we try to figure out the version of each package, and I nearly fainted. Since this is a pretty hard and dangerous task, maybe we ought to really get it right and have it in a module. Could we try to use Module::Info for this? Even if Module::Info doesn't work correctly, maybe the best thing to do would be to fix Module::Info. I'd just hate to spend a lot of time on this and have the code buried in Module::Build, when this is exactly the kind of thing Module::Info aims to do correctly. -Ken |