Skip Menu |

This queue is for tickets about the Moose CPAN distribution.

Report information
The Basics
Id: 120017
Status: rejected
Priority: 0/
Queue: Moose

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

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



Subject: can't run Moose tests in parallel
I do not know if it's different on a real linux, but I tried this under Cygwin, where the same thing for e.g. PPI works fine: ===( 3046;4 109/1944 46/2145 1/1114 78/3875 1/2... )=== With Moose i get: $ prove -rlb -j 9 t t/attributes/accessor_override_method.t .......................... skipped: Test requires module 'Test::Output' but it's not found t/attributes/accessor_overwrite_warning.t ........................ skipped: Test requires module 'Test::Output' but it's not found t/000_load.t ..................................................... ok t/attributes/accessor_context.t .................................. ok t/attributes/accessor_inlining.t ................................. ok ===( 19;1 1/1 1/? 0/? 0/? 0/? 0/? 0/? 0/? 0/? )===========# # Versions for all modules listed in MYMETA.json (including optional ones): # # === Configure Requires === # # Module Want Have # -------------------- ---- ---- # Dist::CheckConflicts 0.02 0.11 # ExtUtils::MakeMaker any 7.18 # # === Configure Suggests === # # Module Want Have # -------- ------- ------- # JSON::PP 2.27300 2.27400 # # === Build Requires === # # Module Want Have # ------------------- ---- ---- # ExtUtils::MakeMaker any 7.18 # # === Test Requires === # # Module Want Have # ------------------------ ----- -------- # CPAN::Meta::Check 0.011 0.014 # CPAN::Meta::Requirements any 2.140 # File::Spec any 3.62 # Module::Metadata any 1.000027 # Test::CleanNamespaces 0.13 0.22 # Test::Fatal 0.001 0.014 # Test::More 0.94 1.302075 # Test::Requires 0.05 0.10 # Test::Warnings 0.016 0.026 # # === Test Recommends === # # Module Want Have # ---------- -------- -------- # CPAN::Meta 2.120900 2.150005 # # === Runtime Requires === # # Module Want Have # --------------------------- ----- ----- # Carp 1.22 1.38 # Class::Load 0.09 0.23 # Class::Load::XS 0.01 0.09 # Data::OptList 0.107 0.110 # Devel::GlobalDestruction any 0.13 # Devel::OverloadInfo 0.004 0.004 # Devel::StackTrace 1.33 2.01 # Dist::CheckConflicts 0.02 0.11 # Eval::Closure 0.04 0.14 # List::Util 1.45 1.47 # MRO::Compat 0.05 0.12 # Module::Runtime 0.014 0.014 # Module::Runtime::Conflicts 0.002 0.003 # Package::DeprecationManager 0.11 0.17 # Package::Stash 0.32 0.37 # Package::Stash::XS 0.24 0.28 # Params::Util 1.00 1.07 # Scalar::Util 1.19 1.47 # Sub::Exporter 0.980 0.987 # Sub::Identify any 0.12 # Sub::Name 0.05 0.19 # Try::Tiny 0.17 0.28 # parent 0.223 0.234 # strict 1.03 1.09 # warnings 1.03 1.34 # # === Runtime Recommends === # # Module Want Have # ------------- ----- ----- # Data::OptList 0.110 0.110 # # === Runtime Suggests === # # Module Want Have # ------------------ ---- ------- # Devel::PartialDump 0.14 missing # # === Other Modules === # # Module Have # ---------------------------- ---------- # Algorithm::C3 0.10 # DBM::Deep missing # DateTime 1.28 # DateTime::Calendar::Mayan missing # DateTime::Format::MySQL missing # Declare::Constraints::Simple missing # Dist::CheckConflicts 0.11 # DynaLoader 1.32 # HTTP::Headers 6.11 # IO::File 1.16 # IO::String 1.08 # Locale::US missing # Module::Refresh missing # MooseX::NonMoose missing # Params::Coerce missing # Regexp::Common 2016060801 # SUPER 1.20141117 # Test::Deep 1.123 # Test::DependentModules missing # Test::LeakTrace 0.15 # Test::Output missing # URI 1.71 # YAML 1.21 # autodie 2.29 # t/00-report-prereqs.t ............................................ ok t/attributes/attr_dereference_test.t ............................. ok t/attributes/attribute_custom_metaclass.t ........................ ok t/attributes/attribute_does.t .................................... ok t/attributes/attribute_accessor_generation.t ..................... ok t/attributes/attribute_delegation.t .............................. ok t/attributes/attribute_lazy_initializer.t ........................ ok t/attributes/attribute_names.t ................................... ok t/attributes/attribute_inherited_slot_specs.t .................... ok t/attributes/attribute_reader_generation.t ....................... ok ===( 366;4 12/? 0/? 1/? 0/? 0/? 0/? 0/? 0/? 0/? )==========
To clarify the wording of the title: The tests do run, but they run in sequence, not parallel. (Though slightly out of order.)
Is this a bug in Moose or in prove or something else? I don't think there's much special about Moose's .t files.
I'd note that PPI's test suite is not nested, just a list of files under t/, whereas Moose's has subdirs.
As haarg pointed out on irc, moose has a bit of startup time. Turns out it is making a lot of processes, they just don't do a lot of output because they spend 1.5 seconds starting up and immediately finish tests and close.