GithubHelp home page GithubHelp logo

dagolden / class-insideout Goto Github PK

View Code? Open in Web Editor NEW
3.0 4.0 2.0 387 KB

(Perl) a safe, simple inside-out object construction kit

Home Page: http://search.cpan.org/dist/Class-InsideOut

Perl 99.04% Perl 6 0.96%

class-insideout's Introduction

HOW TO CONTRIBUTE

Thank you for considering contributing to this distribution. This file contains instructions that will help you work with the source code.

The distribution is managed with Dist::Zilla. This means that many of the usual files you might expect are not in the repository, but are generated at release time, as is much of the documentation. Some generated files are kept in the repository as a convenience (e.g. Makefile.PL or cpanfile).

Generally, you do not need Dist::Zilla to contribute patches. You do need Dist::Zilla to create a tarball. See below for guidance.

Getting dependencies

If you have App::cpanminus 1.6 or later installed, you can use cpanm to satisfy dependencies like this:

$ cpanm --installdeps .

Otherwise, look for either a Makefile.PL or cpanfile file for a list of dependencies to satisfy.

Running tests

You can run tests directly using the prove tool:

$ prove -l
$ prove -lv t/some_test_file.t

For most of my distributions, prove is entirely sufficient for you to test any patches you have. I use prove for 99% of my testing during development.

Code style and tidying

Please try to match any existing coding style. If there is a .perltidyrc file, please install Perl::Tidy and use perltidy before submitting patches.

If there is a tidyall.ini file, you can also install Code::TidyAll and run tidyall on a file or tidyall -a to tidy all files.

Patching documentation

Much of the documentation Pod is generated at release time. Some is generated boilerplate; other documentation is built from pseudo-POD directives in the source like C<=method> or C<=func>.

If you would like to submit a documentation edit, please limit yourself to the documentation you see.

If you see typos or documentation issues in the generated docs, please email or open a bug ticket instead of patching.

Where to send patches and pull requests

If you found this distribution on Github, sending a pull-request is the best way to contribute.

If a pull-request isn't possible, a bug ticket with a patch file is the next best option.

As a last resort, an email to the author(s) is acceptable.

Installing and using Dist::Zilla

Dist::Zilla is not required for contributing, but if you'd like to learn more, this section will get you up to speed.

Dist::Zilla is a very powerful authoring tool, optimized for maintaining a large number of distributions with a high degree of automation, but it has a large dependency chain, a bit of a learning curve and requires a number of author-specific plugins.

To install it from CPAN, I recommend one of the following approaches for the quickest installation:

# using CPAN.pm, but bypassing non-functional pod tests
$ cpan TAP::Harness::Restricted
$ PERL_MM_USE_DEFAULT=1 HARNESS_CLASS=TAP::Harness::Restricted cpan Dist::Zilla

# using cpanm, bypassing *all* tests
$ cpanm -n Dist::Zilla

In either case, it's probably going to take about 10 minutes. Go for a walk, go get a cup of your favorite beverage, take a bathroom break, or whatever. When you get back, Dist::Zilla should be ready for you.

Then you need to install any plugins specific to this distribution:

$ cpan `dzil authordeps`
$ dzil authordeps | cpanm

Once installed, here are some dzil commands you might try:

$ dzil build
$ dzil test
$ dzil xtest

You can learn more about Dist::Zilla at http://dzil.org/

class-insideout's People

Contributors

karenetheridge avatar xdg avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

class-insideout's Issues

Tests fail without '.' in @INC

on current bleadperl with PERL_USE_UNSAFE_INC=0:

Output from '/usr/bin/make test':

PERL_DL_NONLAZY=1 "/home/cpan4/install/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01_load.t ........................ ok

#   Failed test 'require t::Object::Trivial;'
#   at t/02_register.t line 28.
#     Tried to require 't::Object::Trivial'.
#     Error:  Can't locate t/Object/Trivial.pm in @INC (you may need to install the t::Object::Trivial module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 7) line 2.
Can't locate object method "new" via package "t::Object::Trivial" at t/02_register.t line 32.
# Looks like your test exited with 255 just after 2.
t/02_register.t .................... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 24/25 subtests 
t/00-compile.t ..................... ok

#   Failed test 'require t::Object::Animal::Jackalope;'
#   at t/03_properties.t line 40.
#     Tried to require 't::Object::Animal::Jackalope'.
#     Error:  Can't locate t/Object/Animal/Jackalope.pm in @INC (you may need to install the t::Object::Animal::Jackalope module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.

#   Failed test 't::Object::Animal::Jackalope has/inherited its expected properties'
#   at t/03_properties.t line 42.
#     Structures begin differing at:
#          $got->{t::Object::Animal::Antelope} = Does not exist
#     $expected->{t::Object::Animal::Antelope} = HASH(0x2d473f8)
Can't locate object method "new" via package "t::Object::Animal::Jackalope" at t/03_properties.t line 51.
# Looks like your test exited with 255 just after 3.
t/03_properties.t .................. 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 14/15 subtests 
# Prerequisite Report:
#    Version Module               
#   -------- ---------------------
#       1.42 Carp                 
#       0.36 Class::ISA           
#   5.026000 Config               
#       1.41 DynaLoader           
#       5.72 Exporter             
#       7.24 ExtUtils::MakeMaker  
#       1.34 File::Find           
#       3.67 File::Spec           
#       3.67 File::Spec::Functions
#     0.2304 File::Temp           
#       1.16 IO::File             
#    1.46_02 List::Util           
#    1.46_02 Scalar::Util         
#    3.05_11 Storable             
#   1.302073 Test::More           
#       0.26 XSLoader             
#       1.28 overload             
#       1.11 strict               
#       2.15 threads              
#       1.03 vars                 
#       1.37 warnings             
t/00-report-prereqs.t .............. ok

#   Failed test 'require t::Object::Animal;'
#   at t/05_forking.t line 45.
#     Tried to require 't::Object::Animal'.
#     Error:  Can't locate t/Object/Animal.pm in @INC (you may need to install the t::Object::Animal module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.

#   Failed test 'require t::Object::Animal::Antelope;'
#   at t/05_forking.t line 46.
#     Tried to require 't::Object::Animal::Antelope'.
#     Error:  Can't locate t/Object/Animal/Antelope.pm in @INC (you may need to install the t::Object::Animal::Antelope module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 7) line 2.
Can't locate object method "new" via package "t::Object::Animal" at t/05_forking.t line 48.
# Looks like your test exited with 255 just after 2.
t/05_forking.t ..................... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 10/10 subtests 

#   Failed test 'require t::Object::Animal;'
#   at t/04_threaded.t line 60.
#     Tried to require 't::Object::Animal'.
#     Error:  Can't locate t/Object/Animal.pm in @INC (you may need to install the t::Object::Animal module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 15) line 2.

#   Failed test 'require t::Object::Animal::Antelope;'
#   at t/04_threaded.t line 61.
#     Tried to require 't::Object::Animal::Antelope'.
#     Error:  Can't locate t/Object/Animal/Antelope.pm in @INC (you may need to install the t::Object::Animal::Antelope module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 16) line 2.
Can't locate object method "new" via package "t::Object::Animal" at t/04_threaded.t line 63.
# Looks like your test exited with 255 just after 2.
t/04_threaded.t .................... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 10/10 subtests 
t/06_export_ok.t ................... ok

#   Failed test 'require t::Object::Animal;'
#   at t/08_DEMOLISH.t line 18.
#     Tried to require 't::Object::Animal'.
#     Error:  Can't locate t/Object/Animal.pm in @INC (you may need to install the t::Object::Animal module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.

#   Failed test 'require t::Object::Animal::Antelope;'
#   at t/08_DEMOLISH.t line 19.
#     Tried to require 't::Object::Animal::Antelope'.
#     Error:  Can't locate t/Object/Animal/Antelope.pm in @INC (you may need to install the t::Object::Animal::Antelope module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 7) line 2.
Can't locate object method "new" via package "t::Object::Animal" at t/08_DEMOLISH.t line 21.
# Looks like your test exited with 255 just after 2.
t/08_DEMOLISH.t .................... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 9/9 subtests 

#   Failed test 'require t::Object::Synopsis;'
#   at t/07_synopsis_obj.t line 25.
#     Tried to require 't::Object::Synopsis'.
#     Error:  Can't locate t/Object/Synopsis.pm in @INC (you may need to install the t::Object::Synopsis module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.

#   Failed test 't::Object::Synopsis has/inherited its expected properties'
#   at t/07_synopsis_obj.t line 27.
#     Structures begin differing at:
#          $got->{t::Object::Synopsis} = Does not exist
#     $expected->{t::Object::Synopsis} = HASH(0x2856b00)
Can't locate object method "new" via package "t::Object::Synopsis" at t/07_synopsis_obj.t line 36.
# Looks like your test exited with 255 just after 3.
t/07_synopsis_obj.t ................ 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 11/12 subtests 

#   Failed test 'require t::Object::Foreign;'
#   at t/09_foreign.t line 28.
#     Tried to require 't::Object::Foreign'.
#     Error:  Can't locate t/Object/Foreign.pm in @INC (you may need to install the t::Object::Foreign module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 9) line 2.
Can't locate object method "new" via package "t::Object::Foreign" at t/09_foreign.t line 30.
# Looks like your test exited with 255 just after 1.
t/09_foreign.t ..................... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 5/5 subtests 

#   Failed test 'require t::Object::Friends;'
#   at t/11_storable_refs.t line 61.
#     Tried to require 't::Object::Friends'.
#     Error:  Can't locate t/Object/Friends.pm in @INC (you may need to install the t::Object::Friends module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 9) line 2.
Can't locate object method "new" via package "t::Object::Friends" at t/11_storable_refs.t line 64.
# Looks like your test exited with 2 just after 2.
t/11_storable_refs.t ............... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 67/68 subtests 

#   Failed test 'require t::Object::Animal::Jackalope;'
#   at t/12_storable_hooks.t line 25.
#     Tried to require 't::Object::Animal::Jackalope'.
#     Error:  Can't locate t/Object/Animal/Jackalope.pm in @INC (you may need to install the t::Object::Animal::Jackalope module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 7) line 2.
Can't locate object method "new" via package "t::Object::Animal::Jackalope" at t/12_storable_hooks.t line 28.
# Looks like your test exited with 2 just after 1.
t/12_storable_hooks.t .............. 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 10/10 subtests 

#   Failed test 'require t::Object::Scalar;'
#   at t/10_storable_values.t line 94.
#     Tried to require 't::Object::Scalar'.
#     Error:  Can't locate t/Object/Scalar.pm in @INC (you may need to install the t::Object::Scalar module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 8) line 2.
Can't locate object method "new" via package "t::Object::Scalar" at t/10_storable_values.t line 97.
# Looks like your test exited with 2 just after 2.
t/10_storable_values.t ............. 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 58/59 subtests 

#   Failed test 'require t::Object::Hooked;'
#   at t/14_accessor_hooks.t line 32.
#     Tried to require 't::Object::Hooked'.
#     Error:  Can't locate t/Object/Hooked.pm in @INC (you may need to install the t::Object::Hooked module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.
Undefined subroutine &Class::InsideOut::_properties called at t/14_accessor_hooks.t line 34.
# Looks like your test exited with 255 just after 1.
t/14_accessor_hooks.t .............. 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 21/21 subtests 
t/13_options.t ..................... ok
t/15_no_weaken_fallback.t .......... skipped: Your Scalar::Util is XS only
t/16_property_argument_checking.t .. ok
t/17_option_argument_checking.t .... ok
t/18_register_argument_checking.t .. ok

#   Failed test 'require t::Object::Singleton::Simple;'
#   at t/19_storable_singleton.t line 31.
#     Tried to require 't::Object::Singleton::Simple'.
#     Error:  Can't locate t/Object/Singleton/Simple.pm in @INC (you may need to install the t::Object::Singleton::Simple module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 7) line 2.
Can't use an undefined value as a subroutine reference at t/19_storable_singleton.t line 35.
# Looks like your test exited with 2 just after 1.
t/19_storable_singleton.t .......... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 24/24 subtests 

#   Failed test 'require t::Object::WithNew::Inherited;'
#   at t/21_optional_new.t line 56.
#     Tried to require 't::Object::WithNew::Inherited'.
#     Error:  Can't locate t/Object/WithNew/Inherited.pm in @INC (you may need to install the t::Object::WithNew::Inherited module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.

#   Failed test 't::Object::WithNew::Inherited->can('new')'
#   at t/21_optional_new.t line 58.
#     t::Object::WithNew::Inherited->can('new') failed
Can't locate object method "new" via package "t::Object::WithNew::Inherited" at t/21_optional_new.t line 64.
# Looks like your test exited with 255 just after 2.
t/21_optional_new.t ................ 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 17/17 subtests 

#   Failed test 'require t::Object::Singleton::MissingConstructor;'
#   at t/20_storable_singleton_error.t line 28.
#     Tried to require 't::Object::Singleton::MissingConstructor'.
#     Error:  Can't locate t/Object/Singleton/MissingConstructor.pm in @INC (you may need to install the t::Object::Singleton::MissingConstructor module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 7) line 2.
Can't use an undefined value as a subroutine reference at t/20_storable_singleton_error.t line 32.
# Looks like your test exited with 2 just after 1.
t/20_storable_singleton_error.t .... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 6/6 subtests 

#   Failed test 'require t::Object::HookedBlessed;'
#   at t/23_accessor_hooks_blessed.t line 32.
#     Tried to require 't::Object::HookedBlessed'.
#     Error:  Can't locate t/Object/HookedBlessed.pm in @INC (you may need to install the t::Object::HookedBlessed module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.
Undefined subroutine &Class::InsideOut::_properties called at t/23_accessor_hooks_blessed.t line 34.
# Looks like your test exited with 255 just after 1.
t/23_accessor_hooks_blessed.t ...... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 21/21 subtests 

#   Failed test 'require t::Object::ReadOnly;'
#   at t/22_readonly.t line 26.
#     Tried to require 't::Object::ReadOnly'.
#     Error:  Can't locate t/Object/ReadOnly.pm in @INC (you may need to install the t::Object::ReadOnly module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 6) line 2.
Undefined subroutine &Class::InsideOut::_properties called at t/22_readonly.t line 28.
# Looks like your test exited with 255 just after 1.
t/22_readonly.t .................... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 6/6 subtests 

#   Failed test 'require t::Object::HookedOverloaded;'
#   at t/24_accessor_hooks_overloaded.t line 37.
#     Tried to require 't::Object::HookedOverloaded'.
#     Error:  Can't locate t/Object/HookedOverloaded.pm in @INC (you may need to install the t::Object::HookedOverloaded module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 7) line 2.
Undefined subroutine &Class::InsideOut::_properties called at t/24_accessor_hooks_overloaded.t line 39.
# Looks like your test exited with 255 just after 1.
t/24_accessor_hooks_overloaded.t ... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 21/21 subtests 

#   Failed test 'require t::Object::HookedTT;'
#   at t/25_accessor_hooks_typetiny.t line 37.
#     Tried to require 't::Object::HookedTT'.
#     Error:  Can't locate t/Object/HookedTT.pm in @INC (you may need to install the t::Object::HookedTT module) (@INC contains: /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/lib /home/cpan4/.cpan/build/Class-InsideOut-1.13-0/blib/arch /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/site_perl/5.26.0 /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld /home/cpan4/install/lib/perl5/5.26.0) at (eval 9) line 2.
Undefined subroutine &Class::InsideOut::_properties called at t/25_accessor_hooks_typetiny.t line 39.
# Looks like your test exited with 255 just after 1.
t/25_accessor_hooks_typetiny.t ..... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 20/20 subtests 

Test Summary Report
-------------------
t/02_register.t                  (Wstat: 65280 Tests: 2 Failed: 1)
  Failed test:  2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 25 tests but ran 2.
t/03_properties.t                (Wstat: 65280 Tests: 3 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 15 tests but ran 3.
t/05_forking.t                   (Wstat: 65280 Tests: 2 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 10 tests but ran 2.
t/04_threaded.t                  (Wstat: 65280 Tests: 2 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 10 tests but ran 2.
t/08_DEMOLISH.t                  (Wstat: 65280 Tests: 2 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 9 tests but ran 2.
t/07_synopsis_obj.t              (Wstat: 65280 Tests: 3 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 12 tests but ran 3.
t/09_foreign.t                   (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 5 tests but ran 1.
t/11_storable_refs.t             (Wstat: 512 Tests: 2 Failed: 1)
  Failed test:  2
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 68 tests but ran 2.
t/12_storable_hooks.t            (Wstat: 512 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 10 tests but ran 1.
t/10_storable_values.t           (Wstat: 512 Tests: 2 Failed: 1)
  Failed test:  2
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 59 tests but ran 2.
t/14_accessor_hooks.t            (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 21 tests but ran 1.
t/19_storable_singleton.t        (Wstat: 512 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 24 tests but ran 1.
t/21_optional_new.t              (Wstat: 65280 Tests: 2 Failed: 2)
  Failed tests:  1-2
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 17 tests but ran 2.
t/20_storable_singleton_error.t  (Wstat: 512 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 2
  Parse errors: Bad plan.  You planned 6 tests but ran 1.
t/23_accessor_hooks_blessed.t    (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 21 tests but ran 1.
t/22_readonly.t                  (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 6 tests but ran 1.
t/24_accessor_hooks_overloaded.t (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 21 tests but ran 1.
t/25_accessor_hooks_typetiny.t   (Wstat: 65280 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 20 tests but ran 1.
Files=27, Tests=114,  1 wallclock secs ( 0.15 usr  0.01 sys +  2.52 cusr  0.14 csys =  2.82 CPU)
Result: FAIL
Failed 18/27 test programs. 24/114 subtests failed.
Makefile:885: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 255

------------------------------
PREREQUISITES
------------------------------

Prerequisite modules loaded:

requires:

    Module                Need Have    
    --------------------- ---- --------
    Carp                  0    1.42    
    Class::ISA            0    0.36    
    Exporter              0    5.72    
    overload              0    1.28    
    Scalar::Util          1.09 1.46_02 
    Storable              0    3.05_11 
    strict                0    1.11    
    vars                  0    1.03    

build_requires:

    Module                Need Have    
    --------------------- ---- --------
    Config                0    5.026000
    DynaLoader            0    1.41    
    ExtUtils::MakeMaker   0    7.24    
    File::Find            0    1.34    
    File::Spec            0    3.67    
    File::Spec::Functions 0    3.67    
    File::Temp            0    0.2304  
    IO::File              0    1.16    
    List::Util            0    1.46_02 
    Test::More            0.45 1.302073
    threads               0    2.15    
    warnings              0    1.37    
    XSLoader              0    0.26    

configure_requires:

    Module                Need Have    
    --------------------- ---- --------
    ExtUtils::MakeMaker   6.30 7.24    


------------------------------
ENVIRONMENT AND OTHER CONTEXT
------------------------------

Environment variables:

    AUTOMATED_TESTING = 1
    HARNESS_OPTIONS = j3
    LANG = en_US.UTF-8
    PATH = /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
    PERL5LIB = 
    PERL5OPT = 
    PERL5_CPANPLUS_IS_RUNNING = 16499
    PERL5_CPAN_IS_RUNNING = 16499
    PERL5_CPAN_IS_RUNNING_IN_RECURSION = 18389,16499
    PERL_CR_SMOKER_CURRENT = Wx-Perl-DbLinker-0.011
    PERL_CR_SMOKER_RUNONCE = 1
    PERL_EXTUTILS_AUTOINSTALL = --defaultdeps
    PERL_MM_USE_DEFAULT = 1
    PERL_USE_UNSAFE_INC = 0
    SHELL = /bin/bash
    TERM = putty-256color

Perl special variables (and OS-specific diagnostics, for MSWin32):

    $^X = /home/cpan4/install/bin/perl
    $UID/$EUID = 1005 / 1005
    $GID = 1005 1005
    $EGID = 1005 1005

Perl module toolchain versions installed:

    Module              Have      
    ------------------- ----------
    CPAN                2.18      
    CPAN::Meta          2.150010  
    Cwd                 3.67      
    ExtUtils::CBuilder  0.280225  
    ExtUtils::Command   7.24      
    ExtUtils::Install   2.04      
    ExtUtils::MakeMaker 7.24      
    ExtUtils::Manifest  1.70      
    ExtUtils::ParseXS   3.34      
    File::Spec          3.67      
    JSON                2.90      
    JSON::PP            2.27400_02
    Module::Build       0.4222    
    Module::Signature   n/a       
    Parse::CPAN::Meta   2.150010  
    Test::Harness       3.38      
    Test::More          1.302073  
    YAML                1.23      
    YAML::Syck          1.29      
    version             0.9917    


--

Summary of my perl5 (revision 5 version 26 subversion 0) configuration:
  Commit id: 1b92e6949b737e92f61827f9c92afce9218e30ba
  Platform:
    osname=linux
    osvers=3.16.0-4-amd64
    archname=x86_64-linux-thread-multi-ld
    uname='linux digitalis 3.16.0-4-amd64 #1 smp debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 gnulinux '
    config_args='-Dusedevel -DDEBUGGING -Dusethreads -Duselongdouble -Duse64bitall -Doptimize=-O3 -Dprefix=/home/cpan4/install -Uversiononly -Uman1dir -Uman3dir -des'
    hint=recommended
    useposix=true
    d_sigaction=define
    useithreads=define
    usemultiplicity=define
    use64bitint=define
    use64bitall=define
    uselongdouble=define
    usemymalloc=n
    default_inc_excludes_dot=define
    bincompat5005=undef
  Compiler:
    cc='cc'
    ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2'
    optimize='-O3 -g'
    cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
    ccversion=''
    gccversion='4.9.2'
    gccosandvers=''
    intsize=4
    longsize=8
    ptrsize=8
    doublesize=8
    byteorder=12345678
    doublekind=3
    d_longlong=define
    longlongsize=8
    d_longdbl=define
    longdblsize=16
    longdblkind=3
    ivtype='long'
    ivsize=8
    nvtype='long double'
    nvsize=16
    Off_t='off_t'
    lseeksize=8
    alignbytes=16
    prototype=define
  Linker and Libraries:
    ld='cc'
    ldflags =' -fstack-protector-strong -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.9/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib /lib64 /usr/lib64
    libs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
    perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
    libc=libc-2.19.so
    so=so
    useshrplib=false
    libperl=libperl.a
    gnulibc_version='2.19'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs
    dlext=so
    d_dlsymun=undef
    ccdlflags='-Wl,-E'
    cccdlflags='-fPIC'
    lddlflags='-shared -O3 -g -L/usr/local/lib -fstack-protector-strong'


Characteristics of this binary (from libperl): 
  Compile-time options:
    DEBUGGING
    HAS_TIMES
    MULTIPLICITY
    PERLIO_LAYERS
    PERL_COPY_ON_WRITE
    PERL_DONT_CREATE_GVSV
    PERL_IMPLICIT_CONTEXT
    PERL_MALLOC_WRAP
    PERL_OP_PARENT
    PERL_PRESERVE_IVUV
    PERL_TRACK_MEMPOOL
    PERL_USE_DEVEL
    USE_64_BIT_ALL
    USE_64_BIT_INT
    USE_ITHREADS
    USE_LARGE_FILES
    USE_LOCALE
    USE_LOCALE_COLLATE
    USE_LOCALE_CTYPE
    USE_LOCALE_NUMERIC
    USE_LOCALE_TIME
    USE_LONG_DOUBLE
    USE_PERLIO
    USE_PERL_ATOF
    USE_REENTRANT_API
  Built under linux
  Compiled at Mar 31 2017 23:44:13
  %ENV:
    PERL5LIB=""
    PERL5OPT=""
    PERL5_CPANPLUS_IS_RUNNING="16499"
    PERL5_CPAN_IS_RUNNING="16499"
    PERL5_CPAN_IS_RUNNING_IN_RECURSION="18389,16499"
    PERL_CR_SMOKER_CURRENT="Wx-Perl-DbLinker-0.011"
    PERL_CR_SMOKER_RUNONCE="1"
    PERL_EXTUTILS_AUTOINSTALL="--defaultdeps"
    PERL_MM_USE_DEFAULT="1"
    PERL_USE_UNSAFE_INC="0"
  @INC:
    /home/cpan4/install/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld
    /home/cpan4/install/lib/perl5/site_perl/5.26.0
    /home/cpan4/install/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld
    /home/cpan4/install/lib/perl5/5.26.0

Can we have an option to implement our own DESTROY?

Hi

I'm using that to add properties to a subclass of Lucy::Highlight::Highlighter, and the implementation of DESTROY makes my process exit with 11 under Perl 5.16:

https://travis-ci.org/jeteve/App-CSE/jobs/26422963

I had to implement a similar thing myself to work around this issue, so sadly I cannot use this package:

https://github.com/jeteve/App-CSE/blob/master/lib/App/CSE/Lucy/Highlight/Highlighter.pm

It would be great to have an option not to implement the DESTROY and a recipe to tell what to do in our own destroy.

Jerome.

t/15_no_weaken_fallback.t failures

It seems that the test suite fails with Scalar::Util 1.22 and 1.23:

Scalar::Util version 1.2303 required--this is only version 1.23 at -e line 1.

#   Failed test 'caught a warning'
#   at t/15_no_weaken_fallback.t line 63.

#   Failed test 'Saw warning for Scalar::Util::weaken unavailable'
#   at t/15_no_weaken_fallback.t line 64.
#                   undef
#     doesn't match '/Scalar::Util::weaken/'
# Looks like you failed 2 tests of 3.
t/15_no_weaken_fallback.t .......... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/3 subtests 

Cannot have object property 'id' [rt.cpan.org #53526]

https://rt.cpan.org/Ticket/Display.html?id=53526

Perhaps it is obvious after one thinks about it, but public and readonly
object property names automatically become function names. Therefore,
one cannot have an object property named 'id', 'options', etc., unless
it is private. Otherwise, bad things happen:

  package MyClass;
  use Class::InsideOut qw(:std);
  public id => my %id;
  # ...

produces:

Subroutine MyClass::id redefined at
/usr/lib/perl5/site_perl/5.8.8/Class/InsideOut.pm line 458.
Prototype mismatch: sub MyClass::id ($) vs none at
/usr/lib/perl5/site_perl/5.8.8/Class/InsideOut.pm line 458.

This restriction should be documented or (better) eliminated. (The
get_/set_ accessor style mentioned in the roadmap would do the trick, I
believe.)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.