in reply to I am not a META.yml expert.....

I think that in the META.yml it is not allowed to use arbitrary YAML, but only a (sadly poorly defined, afaict) subset.

Maybe try to use Test::YAML::Meta to verify it locally.

Perl 6 - links to (nearly) everything that is Perl 6.

Replies are listed 'Best First'.
Re^2: I am not a META.yml expert.....
by SilasTheMonk (Chaplain) on Sep 28, 2009 at 11:43 UTC

    Thanks. I have tested with Test::YAML::Meta and Test::YAML::Valid and it confirms that there is a problem with my META.yml. However it does not pinpoint what the problem is, nor how it got generated incorrectly. Thus I am still stuck. Also curiously the problem seems to be identified by YAML::Syck but not straight YAML.

    Edit: Just to make this clear. If I run this code:

    use strict; use warnings; use Test::More; use Test::YAML::Valid qw(-Syck); yaml_file_ok('META.yml', 'META.yml is YAML');
    it indicates that the YAML is invalid. If I remove the "-Syck" it's okay. If I run it on other META.yml it's okay. I find this very puzzling as it suggests not just that there is something mysteriously wrong with my YAML, but that Syck is not that transparent.
      $ perl -MDDS -mYAML::Syck -le 'Dump( YAML::Syck::LoadFile( shift))' M +ETA.yml Syck parser (line 4, column 62): syntax error ...
      line 4, column 62 is the abstract
      abstract: Test library that can be run in two modes: once to + generate outputs and secondly to compare against them ----------------------------------------------------------62-^
      Looks like a bug in ExtUtils::MakeMaker, it doesn't quote abstract properly.
        Yes I realized that the colon is the problem last night. I got quite worried about whether this was a problem with YAML::Syck and contacted Andreas Koenig. He pointed out I should have read the email the PAUSE daemon sent which does indeed contain that error message. It's now fixed.