New package: perl-MP3-Tag
Chip Turner
chip.turner at gmail.com
Sun Jun 26 17:35:04 UTC 2005
On 6/26/05, Ville Skyttä <ville.skytta at iki.fi> wrote:
> On Sat, 2005-06-25 at 19:57 -0700, Chip Turner wrote:
>
> > These are all Hard Problems(tm) to solve, really. Short of parsing a
> > perl script (Makefile.PL), it isn't really doable to figure out the
> > correct BuildRequires.
>
> That's not entirely accurate nowadays. Many CPAN packages ship META.yml
> which contains the dependencies in a machine (and human) readable form.
>
> For example Module::Depends can operate on that. The Module-Depends
> distribution also contains Module::Depends::Intrusive for distributions
> without a META.yml, operating on Build.PL or Makefile.PL (which, as
> said, is always more or less evil).
> http://search.cpan.org/dist/Module-Depends/
>
> If you don't want to add dependecies like Module::Depends to cpanflute2,
> it could be either dynamically invoked where available, or internal YAML
> parsing routines could be bundled with it.
Ahhh, that's right! I'd forgotten about Module::Depends. Handy.
Unfortunately, as some modules tend to do, it requires File::chdir and
Class::Accessor::Method when it really could just do the same thing
with ten lines of code. Grrr, that kind of dependency bloat is really
annoying. But, for the case of a META.yml, just parsing directly with
YAML will work fine. The Module::Depends::Intrusive behavior isn't as
critical right now.
Okay, I have basic META.yml support in, now. Adding a dep on
perl-YAML is no big deal to me, as it's in extras, thankfully.
> > This question comes down to managing the %files section. I've found
> > historically that just letting a script do it is less error-prone over
> > time. cpanflute2 will -never- miss a file; the template might.
>
> Sure, but given the "unpackaged files" behaviour in rpmbuild, that would
> not go unnoticed but rather result in a trivially fixable build failure.
True, that does make it better these days.
Chip
More information about the fedora-extras-list
mailing list