Skip Menu |

This queue is for tickets about the YAML-Syck CPAN distribution.

Report information
The Basics
Id: 34073
Status: resolved
Priority: 0/
Queue: YAML-Syck

People
Owner: Nobody in particular
Requestors: ANDK [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 1.04
Fixed in: (no value)



Subject: Parsing YAML without separator
Today I encountered a META.yml file that contained nothing but: % od -c META.yml 0000000 - - \n 0000003 YAML.pm throws an error on it but YAML::Syck translates it. Watch yourself: % ysh -MYAML::Syck < META.yml $VAR1 = '--'; % ysh -MYAML < META.yml YAML Error: Expected separator '---' Code: YAML_PARSE_ERR_NO_SEPARATOR Line: 1 Document: 2 at /usr/share/perl5/YAML.pm line 33 Cheers,
(This is a form-reply that isn't specific to your particular report) YAML::Syck has just acquired one new maintainer (me), it still doesn't have anyone that *cares* about it. But I'm willing to help solve your report & release a new version with the fix if it's easy for me. It now has a Git repository at: http://github.com/avar/YAML-Syck If your report is a patch that fixes a problem, great. Please remake the patch against Git by forking that repo and sending me a pull request on GitHub (or an update to this bug if you prefer git-format-patch(1) or some other repo provider..). Make sure to include a test for what you fixed. If your report is some code that fails (and you have a testcase for it) a patch against the test suite to demonstrate that failure would be very useful. It's OK if the test crashes and burns, see Test::More's docs for how to make TODO tests that fail now, but shouldn't. Even if it segfaults perl C<system $^X => qw/ -Mblib -MYAML::Syck .../> or something like that and checking the return value will do.
$>perl -MYAML -E 'Load "--\n"; print "Success!\n"' YAML Error: Expected separator '---' Code: YAML_PARSE_ERR_NO_SEPARATOR Line: 1 Document: 2 at /usr/local/perl/510/lib/5.10.1/YAML.pm line 36 $>perl -MYAML::Syck -E 'Load "--\n"; print "Success!\n"' Success!
Current behavior is to not die, but return what was passed in. I believe the correct behavior would be do die on a bad Load, but Syck's been out there a while. It might be a bad idea to fix it now. TODO tests added: 84fbc0261b1e1012f065413e6351b7a1c4ccb3ec
Ticket migrated to github as https://github.com/toddr/YAML-Syck/issues/35