Skip Menu |

This queue is for tickets about the Dist-Zilla-Plugin-Git CPAN distribution.

Report information
The Basics
Id: 104790
Status: open
Priority: 0/
Queue: Dist-Zilla-Plugin-Git

People
Owner: Nobody in particular
Requestors: JEFFERYS [...] cpan.org
Cc: srj [...] unc.edu
AdminCc:

Bug Information
Severity: Unimportant
Broken in: (no value)
Fixed in: (no value)



CC: srj [...] unc.edu
Subject: Parsing of value in dist.ini for [Git::Check]
I get a repeatable crash trying to build with `dzil build` when I have a dist.ini file containing [Git::Check] allow_dirty = Changes ; Default allow_dirty = dist.ini ; Default build_warnings = 1; The error is several pages long, but the first line is Attribute (build_warnings) does not pass the type constraint because: Validation failed for 'Bool' with value 1; at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Exception.pm line 37 ... If I have the following instead, `dzil build` works fine. [Git::Check] allow_dirty = Changes ; Default allow_dirty = dist.ini ; Default build_warnings = 1 The semi-colon after the 1 is very hard to notice as the error, especially as the error message format hides this detail. This may be a problem with dist zilla in general, so I would be glad to raise the bug there if need be. If this is not a valid format for a value in the dist.ini, at least the error message should be cleaner.
RT-Send-CC: srj [...] unc.edu
On 2015-05-29 17:10:05, JEFFERYS wrote: Show quoted text
> I get a repeatable crash trying to build with `dzil build` when I have > a dist.ini file containing > > [Git::Check] > allow_dirty = Changes ; Default > allow_dirty = dist.ini ; Default > build_warnings = 1; > > The error is several pages long, but the first line is > Attribute (build_warnings) does not pass the type constraint because: > Validation failed for 'Bool' with value 1; at > /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread- > multi/lib/site_perl/5.18.0/darwin-thread-multi- > 2level/Moose/Exception.pm line 37 > ... > > If I have the following instead, `dzil build` works fine. > > [Git::Check] > allow_dirty = Changes ; Default > allow_dirty = dist.ini ; Default > build_warnings = 1 > > The semi-colon after the 1 is very hard to notice as the error, > especially as the error message format hides this detail. This may be > a problem with dist zilla in general, so I would be glad to raise the > bug there if need be. > > If this is not a valid format for a value in the dist.ini, at least > the error message should be cleaner.
On 2015-05-29 17:10:05, JEFFERYS wrote: Show quoted text
> The semi-colon after the 1 is very hard to notice as the error, > especially as the error message format hides this detail. This may be > a problem with dist zilla in general, so I would be glad to raise the > bug there if need be. > > If this is not a valid format for a value in the dist.ini, at least > the error message should be cleaner.
Config::MVP::Reader::INI or Config::INI ought to skip everything following a ;, inclusive. However, I wonder what is unclear about the error message "Attribute (build_warnings) does not pass the type constraint because: Validation failed for 'Bool' with value 1"?
On Fri May 29 21:52:56 2015, ETHER wrote: Show quoted text
> On 2015-05-29 17:10:05, JEFFERYS wrote:
> > The semi-colon after the 1 is very hard to notice as the error, > > especially as the error message format hides this detail. This may be > > a problem with dist zilla in general, so I would be glad to raise the > > bug there if need be. > > > > If this is not a valid format for a value in the dist.ini, at least > > the error message should be cleaner.
> > Config::MVP::Reader::INI or Config::INI ought to skip everything > following a > ;, inclusive. > > However, I wonder what is unclear about the error message "Attribute > (build_warnings) does not pass the type constraint because: Validation > failed for 'Bool' with value 1"?
Thanks for the quick response! I never know how much interest bug reports will get, so I'm tend to be terse in a first post. It was not clear to me that this was an error with the dist.ini file, except in the context of what I changed -- which admittedly was too much at once, but I'm lazy. I was also fooled by the lack of quotes in the first line around the value '1;' I read it as not allowing an integer value 1 for bool, with the semicolon part of the error message boilerplate. Following messages do use quotes, but I was reading over those without re-parsing them after the first line. Given the large volume of error messages, it looked like something more serious was broken. The entire error message is attached. dist.ini shows up in the chain eventually.
Subject: error.txt
$ dzil build Attribute (build_warnings) does not pass the type constraint because: Validation failed for 'Bool' with value 1; at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Exception.pm line 37 Moose::Exception::_build_trace('Moose::Exception::ValidationFailedForTypeConstraint=HASH(0x7fdf2d7035b0)') called at reader Moose::Exception::trace (defined at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Exception.pm line 9) line 7 Moose::Exception::trace('Moose::Exception::ValidationFailedForTypeConstraint=HASH(0x7fdf2d7035b0)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Exception.pm line 49 Moose::Exception::BUILD('Moose::Exception::ValidationFailedForTypeConstraint=HASH(0x7fdf2d7035b0)', 'HASH(0x7fdf2d720258)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Class/MOP/Method.pm line 126 Class::MOP::Method::execute('Moose::Meta::Method=HASH(0x7fdf2e17bd30)', 'Moose::Exception::ValidationFailedForTypeConstraint=HASH(0x7fdf2d7035b0)', 'HASH(0x7fdf2d720258)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Object.pm line 55 Moose::Object::BUILDALL('Moose::Exception::ValidationFailedForTypeConstraint=HASH(0x7fdf2d7035b0)', 'HASH(0x7fdf2d720258)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Meta/Class.pm line 281 Moose::Meta::Class::new_object('Moose::Meta::Class=HASH(0x7fdf2e12db20)', 'HASH(0x7fdf2d720258)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Object.pm line 26 Moose::Object::new('Moose::Exception::ValidationFailedForTypeConstraint', 'type', 'Moose::Meta::TypeConstraint=HASH(0x7fdf2b586530)', 'value', '1;', 'attribute', 'Moose::Meta::Attribute=HASH(0x7fdf2d70be30)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Util.pm line 52 Moose::Util::throw_exception('ValidationFailedForTypeConstraint', 'type', 'Moose::Meta::TypeConstraint=HASH(0x7fdf2b586530)', 'value', '1;', 'attribute', 'Moose::Meta::Attribute=HASH(0x7fdf2d70be30)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Meta/Attribute.pm line 1268 Moose::Meta::Attribute::verify_against_type_constraint('Moose::Meta::Attribute=HASH(0x7fdf2d70be30)', '1;', 'instance', 'Dist::Zilla::Plugin::Git::Check=HASH(0x7fdf2d5b7978)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Meta/Attribute.pm line 1255 Moose::Meta::Attribute::_coerce_and_verify('Moose::Meta::Attribute=HASH(0x7fdf2d70be30)', '1;', 'Dist::Zilla::Plugin::Git::Check=HASH(0x7fdf2d5b7978)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Meta/Attribute.pm line 514 Moose::Meta::Attribute::initialize_instance_slot('Moose::Meta::Attribute=HASH(0x7fdf2d70be30)', 'Moose::Meta::Instance=HASH(0x7fdf2e12d5b8)', 'Dist::Zilla::Plugin::Git::Check=HASH(0x7fdf2d5b7978)', 'HASH(0x7fdf2d71fa18)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Class/MOP/Class.pm line 527 Class::MOP::Class::_construct_instance('Moose::Meta::Class=HASH(0x7fdf2d71f6e8)', 'HASH(0x7fdf2d71fa18)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Class/MOP/Class.pm line 497 Class::MOP::Class::new_object('Moose::Meta::Class=HASH(0x7fdf2d71f6e8)', 'HASH(0x7fdf2d71fa18)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Meta/Class.pm line 277 Moose::Meta::Class::new_object('Moose::Meta::Class=HASH(0x7fdf2d71f6e8)', 'HASH(0x7fdf2d71fa18)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Object.pm line 26 Moose::Object::new('Dist::Zilla::Plugin::Git::Check', 'HASH(0x7fdf2d6c35d8)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/Role/Plugin.pm line 69 Dist::Zilla::Role::Plugin::plugin_from_config('Dist::Zilla::Plugin::Git::Check', 'Git::Check', 'HASH(0x7fdf2cd1e1a8)', 'Dist::Zilla::MVP::Section=HASH(0x7fdf2d5b6d00)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/Role/Plugin.pm line 79 Dist::Zilla::Role::Plugin::register_component('Dist::Zilla::Plugin::Git::Check', 'Git::Check', 'HASH(0x7fdf2cd1e1a8)', 'Dist::Zilla::MVP::Section=HASH(0x7fdf2d5b6d00)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/MVP/Section.pm line 39 Class::MOP::Class:::after('Dist::Zilla::MVP::Section=HASH(0x7fdf2d5b6d00)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Class/MOP/Method/Wrapped.pm line 58 Class::MOP::Method::Wrapped::__ANON__('Dist::Zilla::MVP::Section=HASH(0x7fdf2d5b6d00)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Class/MOP/Method/Wrapped.pm line 89 Dist::Zilla::MVP::Section::finalize('Dist::Zilla::MVP::Section=HASH(0x7fdf2d5b6d00)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Config/MVP/Assembler.pm line 168 Config::MVP::Assembler::end_section('Dist::Zilla::MVP::Assembler::Zilla=HASH(0x7fdf2cd2f930)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Class/MOP/Method/Wrapped.pm line 51 Class::MOP::Method::Wrapped::__ANON__('Dist::Zilla::MVP::Assembler::Zilla=HASH(0x7fdf2cd2f930)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/darwin-thread-multi-2level/Class/MOP/Method/Wrapped.pm line 89 Dist::Zilla::MVP::Assembler::end_section('Dist::Zilla::MVP::Assembler::Zilla=HASH(0x7fdf2cd2f930)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Config/MVP/Assembler.pm line 186 Config::MVP::Assembler::change_section('Dist::Zilla::MVP::Assembler::Zilla=HASH(0x7fdf2cd2f930)', 'Git::Commit', 'Git::Commit') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Config/MVP/Reader/INI.pm line 53 Config::MVP::Reader::INI::INIReader::change_section('Config::MVP::Reader::INI::INIReader=HASH(0x7fdf2cdee930)', 'Git::Commit') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Config/INI/Reader.pm line 111 Config::INI::Reader::read_handle('Config::MVP::Reader::INI::INIReader=HASH(0x7fdf2cdee930)', 'IO::File=GLOB(0x7fdf2ce04130)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Mixin/Linewise/Readers.pm line 103 Mixin::Linewise::Readers::__ANON__ at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Config/MVP/Reader/INI.pm line 25 Config::MVP::Reader::INI::read_into_assembler('Config::MVP::Reader::INI=HASH(0x7fdf2cdf14f0)', './dist.ini', 'Dist::Zilla::MVP::Assembler::Zilla=HASH(0x7fdf2cd2f930)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Config/MVP/Reader.pm line 53 Config::MVP::Reader::read_config('Config::MVP::Reader::INI=HASH(0x7fdf2cdf14f0)', './dist.ini', 'HASH(0x7fdf2cdf1d78)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Config/MVP/Reader/Finder.pm line 115 Config::MVP::Reader::Finder::read_config('Dist::Zilla::MVP::Reader::Finder', 'Path::Class::File=HASH(0x7fdf2cdf7760)', 'HASH(0x7fdf2cdf1d78)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/Dist/Builder.pm line 256 Dist::Zilla::Dist::Builder::try {...} at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Try/Tiny.pm line 83 eval {...} at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Try/Tiny.pm line 74 Try::Tiny::try('CODE(0x7fdf2c936c18)', 'Try::Tiny::Catch=REF(0x7fdf2ce44258)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/Dist/Builder.pm line 281 Dist::Zilla::Dist::Builder::_load_config('Dist::Zilla::Dist::Builder', 'HASH(0x7fdf2c936ca8)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/Dist/Builder.pm line 40 Dist::Zilla::Dist::Builder::from_config('Dist::Zilla::Dist::Builder', 'HASH(0x7fdf2c966890)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/App.pm line 118 Dist::Zilla::App::try {...} at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Try/Tiny.pm line 83 eval {...} at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Try/Tiny.pm line 74 Try::Tiny::try('CODE(0x7fdf2ae996c8)', 'Try::Tiny::Catch=REF(0x7fdf2c91cf78)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/App.pm line 126 Dist::Zilla::App::zilla('Dist::Zilla::App=HASH(0x7fdf2a831e78)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/App/Command.pm line 18 Dist::Zilla::App::Command::zilla('Dist::Zilla::App::Command::build=HASH(0x7fdf2ae99650)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/Dist/Zilla/App/Command/build.pm line 69 Dist::Zilla::App::Command::build::execute('Dist::Zilla::App::Command::build=HASH(0x7fdf2ae99650)', 'Getopt::Long::Descriptive::Opts::__OPT__::2=HASH(0x7fdf2aba3058)', 'ARRAY(0x7fdf2ab20fb0)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/App/Cmd.pm line 282 App::Cmd::execute_command('Dist::Zilla::App=HASH(0x7fdf2a831e78)', 'Dist::Zilla::App::Command::build=HASH(0x7fdf2ae99650)', 'Getopt::Long::Descriptive::Opts::__OPT__::2=HASH(0x7fdf2aba3058)') called at /Users/srj/perl5/perlbrew/perls/x86_64-linux-thread-multi/lib/site_perl/5.18.0/App/Cmd.pm line 210 App::Cmd::run('Dist::Zilla::App') called at /Users/srj/perl5/perlbrew/perls/srjperl/bin/dzil line 12