diff --git a/.travis.yml b/.travis.yml index cc8546cd8..e068f747c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,10 +28,9 @@ env: before_install: - # We need to run a pre-1.0 instance of ES until we update everything. - - wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-0.90.13.deb - - sudo dpkg -i --force-confdef elasticsearch-0.90.13.deb - sudo service elasticsearch restart + - git clone https://github.com/CPAN-API/p5-elasticsearch-model.git + - pwd - cpanm -n Devel::Cover::Report::Coveralls - cpanm -n Carton @@ -53,7 +52,7 @@ script: # Devel::Cover isn't in the cpanfile # but if it's installed into the global dirs this should work. # NOTE: No '-r' for prove; 't/fakecpan.t' does the recursion for us. - - HARNESS_PERL_SWITCHES=-MDevel::Cover=+ignore,local carton exec prove -lv t + - HARNESS_PERL_SWITCHES=-MDevel::Cover=+ignore,local carton exec prove -lv -I p5-elasticsearch-model/lib t after_success: - cover -report coveralls diff --git a/cpanfile b/cpanfile index 9306ad64b..2ac34c46f 100644 --- a/cpanfile +++ b/cpanfile @@ -42,7 +42,7 @@ requires 'Devel::ArgNames'; requires 'Digest::MD5'; requires 'Digest::SHA1'; requires 'EV'; -requires 'ElasticSearchX::Model', '0.1.5'; +requires 'ElasticSearchX::Model', '0.1.7'; requires 'Email::Address'; requires 'Email::Sender::Simple'; requires 'Email::Simple'; @@ -85,7 +85,7 @@ requires 'Log::Log4perl::Appender::ScreenColoredLevels'; requires 'Module::Metadata', '1.000022'; requires 'Module::Pluggable'; requires 'Module::Runtime'; -requires 'Moose', ' == 2.0802'; # Pin to older version to avoid deprecation warning on enum that we can't escape b/c we're pinned to an old version of MX-Types-ES. +requires 'Moose', ' >= 2.1403'; requires 'Moose::Role'; requires 'Moose::Util'; requires 'MooseX::Aliases'; @@ -98,7 +98,7 @@ requires 'MooseX::Getopt::OptionTypeMap'; requires 'MooseX::StrictConstructor'; requires 'MooseX::Types'; requires 'MooseX::Types::Common::String'; -requires 'MooseX::Types::ElasticSearch', ' == 0.0.2'; # Newer versions use the other ES module which we can't upgrade to yet b/c of ESX-Model. +requires 'MooseX::Types::ElasticSearch', ' == 0.0.4'; requires 'MooseX::Types::Moose'; requires 'MooseX::Types::Path::Class::MoreCoercions'; requires 'MooseX::Types::Structured'; @@ -134,6 +134,7 @@ requires 'Pod::Text'; requires 'Regexp::Common'; requires 'Regexp::Common::time'; requires 'Safe', '2.35'; # bug fixes (used by Parse::PMFile) +requires 'Search::Elasticsearch'; requires 'Starman'; requires 'Time::Local'; requires 'Throwable::Error'; diff --git a/cpanfile.snapshot b/cpanfile.snapshot index d2dc4e4a9..4b7a6da60 100644 --- a/cpanfile.snapshot +++ b/cpanfile.snapshot @@ -2680,6 +2680,20 @@ DISTRIBUTIONS ExtUtils::MakeMaker 0 Sub::Exporter::Progressive 0.001011 perl 5.006 + Devel-OverloadInfo-0.002 + pathname: I/IL/ILMARI/Devel-OverloadInfo-0.002.tar.gz + provides: + Devel::OverloadInfo 0.002 + requirements: + Exporter 5.57 + ExtUtils::MakeMaker 6.30 + MRO::Compat 0 + Package::Stash 0.14 + Scalar::Util 0 + Sub::Identify 0 + overload 0 + strict 0 + warnings 0 Devel-PartialDump-0.17 pathname: E/ET/ETHER/Devel-PartialDump-0.17.tar.gz provides: @@ -2696,16 +2710,17 @@ DISTRIBUTIONS perl 5.006001 strict 0 warnings 0 - Devel-StackTrace-1.32 - pathname: D/DR/DROLSKY/Devel-StackTrace-1.32.tar.gz + Devel-StackTrace-2.00 + pathname: D/DR/DROLSKY/Devel-StackTrace-2.00.tar.gz provides: - Devel::StackTrace 1.32 - Devel::StackTrace::Frame 1.32 + Devel::StackTrace 2.00 + Devel::StackTrace::Frame 2.00 requirements: - ExtUtils::MakeMaker 6.30 + ExtUtils::MakeMaker 0 File::Spec 0 Scalar::Util 0 overload 0 + perl 5.006 strict 0 warnings 0 Devel-StackTrace-AsHTML-0.14 @@ -3750,6 +3765,13 @@ DISTRIBUTIONS Hash::MultiValue 0.15 requirements: ExtUtils::MakeMaker 6.30 + Hijk-0.19 + pathname: A/AV/AVAR/Hijk-0.19.tar.gz + provides: + Hijk 0.19 + requirements: + CPAN::Meta 0 + ExtUtils::MakeMaker 6.36 Hook-LexWrap-0.24 pathname: C/CH/CHORNY/Hook-LexWrap-0.24.tar.gz provides: @@ -4029,16 +4051,36 @@ DISTRIBUTIONS ExtUtils::MakeMaker 6.52 Test::More 0.82 perl 5.00503 - Log-Any-0.15 - pathname: J/JS/JSWARTZ/Log-Any-0.15.tar.gz - provides: - Log::Any 0.15 - Log::Any::Adapter::Null 0.15 - Log::Any::Adapter::Test 0.15 - Log::Any::Test 0.15 + Log-Any-1.03 + pathname: D/DA/DAGOLDEN/Log-Any-1.03.tar.gz + provides: + Log::Any 1.03 + Log::Any::Adapter 1.03 + Log::Any::Adapter::Base 1.03 + Log::Any::Adapter::File 1.03 + Log::Any::Adapter::Null 1.03 + Log::Any::Adapter::Stderr 1.03 + Log::Any::Adapter::Stdout 1.03 + Log::Any::Adapter::Test 1.03 + Log::Any::Adapter::Util 1.03 + Log::Any::Manager 1.03 + Log::Any::Proxy 1.03 + Log::Any::Proxy::Test 1.03 + Log::Any::Test 1.03 requirements: - ExtUtils::MakeMaker 6.30 - Test::More 0 + B 0 + Carp 0 + Data::Dumper 0 + Exporter 0 + ExtUtils::MakeMaker 6.17 + Fcntl 0 + IO::File 0 + Test::Builder 0 + base 0 + constant 0 + perl 5.008001 + strict 0 + warnings 0 Log-Contextual-0.006003 pathname: F/FR/FREW/Log-Contextual-0.006003.tar.gz provides: @@ -4261,10 +4303,10 @@ DISTRIBUTIONS Text::ParseWords 0 perl 5.006001 version 0.87 - Module-Build-Tiny-0.036 - pathname: L/LE/LEONT/Module-Build-Tiny-0.036.tar.gz + Module-Build-Tiny-0.039 + pathname: L/LE/LEONT/Module-Build-Tiny-0.039.tar.gz provides: - Module::Build::Tiny 0.036 + Module::Build::Tiny 0.039 requirements: CPAN::Meta 0 DynaLoader 0 @@ -4405,6 +4447,18 @@ DISTRIBUTIONS perl 5.006 strict 0 warnings 0 + Module-Runtime-Conflicts-0.001 + pathname: E/ET/ETHER/Module-Runtime-Conflicts-0.001.tar.gz + provides: + Module::Runtime::Conflicts 0.001 + requirements: + Dist::CheckConflicts 0 + ExtUtils::MakeMaker 0 + Module::Build::Tiny 0.038 + Module::Runtime 0 + perl 5.006 + strict 0 + warnings 0 Moo-1.004006 pathname: H/HA/HAARG/Moo-1.004006.tar.gz provides: @@ -4455,221 +4509,412 @@ DISTRIBUTIONS MooX::Types::MooseLike 0.23 Test::Fatal 0.003 Test::More 0.96 - Moose-2.0802 - pathname: E/ET/ETHER/Moose-2.0802.tar.gz - provides: - Bar undef - Bar7::Meta::Trait undef - Bar7::Meta::Trait2 undef - BinaryTree 0.02 - Class::MOP 2.0802 - Class::MOP::Attribute 2.0802 - Class::MOP::Class 2.0802 - Class::MOP::Class::Immutable::Trait 2.0802 - Class::MOP::Deprecated 2.0802 - Class::MOP::Instance 2.0802 - Class::MOP::Method 2.0802 - Class::MOP::Method::Accessor 2.0802 - Class::MOP::Method::Constructor 2.0802 - Class::MOP::Method::Generated 2.0802 - Class::MOP::Method::Inlined 2.0802 - Class::MOP::Method::Meta 2.0802 - Class::MOP::Method::Overload 2.0802 - Class::MOP::Method::Wrapped 2.0802 - Class::MOP::MiniTrait 2.0802 - Class::MOP::Mixin 2.0802 - Class::MOP::Mixin::AttributeCore 2.0802 - Class::MOP::Mixin::HasAttributes 2.0802 - Class::MOP::Mixin::HasMethods 2.0802 - Class::MOP::Module 2.0802 - Class::MOP::Object 2.0802 - Class::MOP::Package 2.0802 - Foo undef - MMHelper undef - MY undef - Moose 2.0802 - Moose::Cookbook::Legacy::Debugging_BaseClassReplacement 2.0802 - Moose::Cookbook::Meta::Labeled_AttributeMetaclass 2.0802 - Moose::Deprecated 2.0802 - Moose::Error::Confess 2.0802 - Moose::Error::Croak 2.0802 - Moose::Error::Default 2.0802 - Moose::Exporter 2.0802 - Moose::Meta::Attribute 2.0802 - Moose::Meta::Attribute::Custom::Bar undef - Moose::Meta::Attribute::Custom::Foo undef - Moose::Meta::Attribute::Custom::Moose 2.0802 - Moose::Meta::Attribute::Custom::Trait::Bar undef - Moose::Meta::Attribute::Custom::Trait::Foo undef - Moose::Meta::Attribute::Native 2.0802 - Moose::Meta::Attribute::Native::Trait 2.0802 - Moose::Meta::Attribute::Native::Trait::Array 2.0802 - Moose::Meta::Attribute::Native::Trait::Bool 2.0802 - Moose::Meta::Attribute::Native::Trait::Code 2.0802 - Moose::Meta::Attribute::Native::Trait::Counter 2.0802 - Moose::Meta::Attribute::Native::Trait::Hash 2.0802 - Moose::Meta::Attribute::Native::Trait::Number 2.0802 - Moose::Meta::Attribute::Native::Trait::String 2.0802 - Moose::Meta::Class 2.0802 - Moose::Meta::Class::Immutable::Trait 2.0802 - Moose::Meta::Instance 2.0802 - Moose::Meta::Method 2.0802 - Moose::Meta::Method::Accessor 2.0802 - Moose::Meta::Method::Accessor::Native 2.0802 - Moose::Meta::Method::Accessor::Native::Array 2.0802 - Moose::Meta::Method::Accessor::Native::Array::Writer 2.0802 - Moose::Meta::Method::Accessor::Native::Array::accessor 2.0802 - Moose::Meta::Method::Accessor::Native::Array::clear 2.0802 - Moose::Meta::Method::Accessor::Native::Array::count 2.0802 - Moose::Meta::Method::Accessor::Native::Array::delete 2.0802 - Moose::Meta::Method::Accessor::Native::Array::elements 2.0802 - Moose::Meta::Method::Accessor::Native::Array::first 2.0802 - Moose::Meta::Method::Accessor::Native::Array::first_index 2.0802 - Moose::Meta::Method::Accessor::Native::Array::get 2.0802 - Moose::Meta::Method::Accessor::Native::Array::grep 2.0802 - Moose::Meta::Method::Accessor::Native::Array::insert 2.0802 - Moose::Meta::Method::Accessor::Native::Array::is_empty 2.0802 - Moose::Meta::Method::Accessor::Native::Array::join 2.0802 - Moose::Meta::Method::Accessor::Native::Array::map 2.0802 - Moose::Meta::Method::Accessor::Native::Array::natatime 2.0802 - Moose::Meta::Method::Accessor::Native::Array::pop 2.0802 - Moose::Meta::Method::Accessor::Native::Array::push 2.0802 - Moose::Meta::Method::Accessor::Native::Array::reduce 2.0802 - Moose::Meta::Method::Accessor::Native::Array::set 2.0802 - Moose::Meta::Method::Accessor::Native::Array::shallow_clone 2.0802 - Moose::Meta::Method::Accessor::Native::Array::shift 2.0802 - Moose::Meta::Method::Accessor::Native::Array::shuffle 2.0802 - Moose::Meta::Method::Accessor::Native::Array::sort 2.0802 - Moose::Meta::Method::Accessor::Native::Array::sort_in_place 2.0802 - Moose::Meta::Method::Accessor::Native::Array::splice 2.0802 - Moose::Meta::Method::Accessor::Native::Array::uniq 2.0802 - Moose::Meta::Method::Accessor::Native::Array::unshift 2.0802 - Moose::Meta::Method::Accessor::Native::Bool::not 2.0802 - Moose::Meta::Method::Accessor::Native::Bool::set 2.0802 - Moose::Meta::Method::Accessor::Native::Bool::toggle 2.0802 - Moose::Meta::Method::Accessor::Native::Bool::unset 2.0802 - Moose::Meta::Method::Accessor::Native::Code::execute 2.0802 - Moose::Meta::Method::Accessor::Native::Code::execute_method 2.0802 - Moose::Meta::Method::Accessor::Native::Collection 2.0802 - Moose::Meta::Method::Accessor::Native::Counter::Writer 2.0802 - Moose::Meta::Method::Accessor::Native::Counter::dec 2.0802 - Moose::Meta::Method::Accessor::Native::Counter::inc 2.0802 - Moose::Meta::Method::Accessor::Native::Counter::reset 2.0802 - Moose::Meta::Method::Accessor::Native::Counter::set 2.0802 - Moose::Meta::Method::Accessor::Native::Hash 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::Writer 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::accessor 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::clear 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::count 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::defined 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::delete 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::elements 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::exists 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::get 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::is_empty 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::keys 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::kv 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::set 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::shallow_clone 2.0802 - Moose::Meta::Method::Accessor::Native::Hash::values 2.0802 - Moose::Meta::Method::Accessor::Native::Number::abs 2.0802 - Moose::Meta::Method::Accessor::Native::Number::add 2.0802 - Moose::Meta::Method::Accessor::Native::Number::div 2.0802 - Moose::Meta::Method::Accessor::Native::Number::mod 2.0802 - Moose::Meta::Method::Accessor::Native::Number::mul 2.0802 - Moose::Meta::Method::Accessor::Native::Number::set 2.0802 - Moose::Meta::Method::Accessor::Native::Number::sub 2.0802 - Moose::Meta::Method::Accessor::Native::Reader 2.0802 - Moose::Meta::Method::Accessor::Native::String::append 2.0802 - Moose::Meta::Method::Accessor::Native::String::chomp 2.0802 - Moose::Meta::Method::Accessor::Native::String::chop 2.0802 - Moose::Meta::Method::Accessor::Native::String::clear 2.0802 - Moose::Meta::Method::Accessor::Native::String::inc 2.0802 - Moose::Meta::Method::Accessor::Native::String::length 2.0802 - Moose::Meta::Method::Accessor::Native::String::match 2.0802 - Moose::Meta::Method::Accessor::Native::String::prepend 2.0802 - Moose::Meta::Method::Accessor::Native::String::replace 2.0802 - Moose::Meta::Method::Accessor::Native::String::substr 2.0802 - Moose::Meta::Method::Accessor::Native::Writer 2.0802 - Moose::Meta::Method::Augmented 2.0802 - Moose::Meta::Method::Constructor 2.0802 - Moose::Meta::Method::Delegation 2.0802 - Moose::Meta::Method::Destructor 2.0802 - Moose::Meta::Method::Meta 2.0802 - Moose::Meta::Method::Overridden 2.0802 - Moose::Meta::Mixin::AttributeCore 2.0802 - Moose::Meta::Object::Trait 2.0802 - Moose::Meta::Role 2.0802 - Moose::Meta::Role::Application 2.0802 - Moose::Meta::Role::Application::RoleSummation 2.0802 - Moose::Meta::Role::Application::ToClass 2.0802 - Moose::Meta::Role::Application::ToInstance 2.0802 - Moose::Meta::Role::Application::ToRole 2.0802 - Moose::Meta::Role::Attribute 2.0802 - Moose::Meta::Role::Composite 2.0802 - Moose::Meta::Role::Method 2.0802 - Moose::Meta::Role::Method::Conflicting 2.0802 - Moose::Meta::Role::Method::Required 2.0802 - Moose::Meta::TypeCoercion 2.0802 - Moose::Meta::TypeCoercion::Union 2.0802 - Moose::Meta::TypeConstraint 2.0802 - Moose::Meta::TypeConstraint::Class 2.0802 - Moose::Meta::TypeConstraint::DuckType 2.0802 - Moose::Meta::TypeConstraint::Enum 2.0802 - Moose::Meta::TypeConstraint::Parameterizable 2.0802 - Moose::Meta::TypeConstraint::Parameterized 2.0802 - Moose::Meta::TypeConstraint::Registry 2.0802 - Moose::Meta::TypeConstraint::Role 2.0802 - Moose::Meta::TypeConstraint::Union 2.0802 - Moose::Object 2.0802 - Moose::Role 2.0802 - Moose::Util 2.0802 - Moose::Util::MetaRole 2.0802 - Moose::Util::TypeConstraints 2.0802 - Moose::Util::TypeConstraints::Builtins 2.0802 - My::Bar undef - My::Content undef - My::Extract undef - My::Output undef - My::Trait::Bar undef - MyExporter undef - MyInline undef - MyMetaClass undef - MyMetaClass::Attribute undef - MyMetaClass::Instance undef - MyMetaClass::Method undef - MyMetaClass::Random undef - MyMetaclassRole undef - MyMooseA undef - MyMooseB undef - MyMooseObject undef - NoInlineAccessor undef - NoInlineAttribute undef - Role::Child undef - Role::Interface undef - Role::Parent undef - SyntaxError undef - Test::Moose 2.0802 - inc::CheckDelta undef - inc::Clean undef - inc::ExtractInlineTests undef - inc::GitUpToDate undef - inc::MakeMaker undef - inc::RequireAuthorDeps undef - inc::TestRelease undef - metaclass 2.0802 - oose 2.0802 + Moose-2.1403 + pathname: E/ET/ETHER/Moose-2.1403.tar.gz + provides: + Class::MOP 2.1403 + Class::MOP::Attribute 2.1403 + Class::MOP::Class 2.1403 + Class::MOP::Class::Immutable::Trait undef + Class::MOP::Deprecated undef + Class::MOP::Instance 2.1403 + Class::MOP::Method 2.1403 + Class::MOP::Method::Accessor 2.1403 + Class::MOP::Method::Constructor 2.1403 + Class::MOP::Method::Generated 2.1403 + Class::MOP::Method::Inlined 2.1403 + Class::MOP::Method::Meta 2.1403 + Class::MOP::Method::Wrapped 2.1403 + Class::MOP::MiniTrait undef + Class::MOP::Mixin undef + Class::MOP::Mixin::AttributeCore undef + Class::MOP::Mixin::HasAttributes undef + Class::MOP::Mixin::HasMethods undef + Class::MOP::Mixin::HasOverloads undef + Class::MOP::Module 2.1403 + Class::MOP::Object 2.1403 + Class::MOP::Overload 2.1403 + Class::MOP::Package 2.1403 + Moose 2.1403 + Moose::Deprecated undef + Moose::Exception 2.1403 + Moose::Exception::AccessorMustReadWrite 2.1403 + Moose::Exception::AddParameterizableTypeTakesParameterizableType 2.1403 + Moose::Exception::AddRoleTakesAMooseMetaRoleInstance 2.1403 + Moose::Exception::AddRoleToARoleTakesAMooseMetaRole 2.1403 + Moose::Exception::ApplyTakesABlessedInstance 2.1403 + Moose::Exception::AttachToClassNeedsAClassMOPClassInstanceOrASubclass 2.1403 + Moose::Exception::AttributeConflictInRoles 2.1403 + Moose::Exception::AttributeConflictInSummation 2.1403 + Moose::Exception::AttributeExtensionIsNotSupportedInRoles 2.1403 + Moose::Exception::AttributeIsRequired 2.1403 + Moose::Exception::AttributeMustBeAnClassMOPMixinAttributeCoreOrSubclass 2.1403 + Moose::Exception::AttributeNamesDoNotMatch 2.1403 + Moose::Exception::AttributeValueIsNotAnObject 2.1403 + Moose::Exception::AttributeValueIsNotDefined 2.1403 + Moose::Exception::AutoDeRefNeedsArrayRefOrHashRef 2.1403 + Moose::Exception::BadOptionFormat 2.1403 + Moose::Exception::BothBuilderAndDefaultAreNotAllowed 2.1403 + Moose::Exception::BuilderDoesNotExist 2.1403 + Moose::Exception::BuilderMethodNotSupportedForAttribute 2.1403 + Moose::Exception::BuilderMethodNotSupportedForInlineAttribute 2.1403 + Moose::Exception::BuilderMustBeAMethodName 2.1403 + Moose::Exception::CallingMethodOnAnImmutableInstance 2.1403 + Moose::Exception::CallingReadOnlyMethodOnAnImmutableInstance 2.1403 + Moose::Exception::CanExtendOnlyClasses 2.1403 + Moose::Exception::CanOnlyConsumeRole 2.1403 + Moose::Exception::CanOnlyWrapBlessedCode 2.1403 + Moose::Exception::CanReblessOnlyIntoASubclass 2.1403 + Moose::Exception::CanReblessOnlyIntoASuperclass 2.1403 + Moose::Exception::CannotAddAdditionalTypeCoercionsToUnion 2.1403 + Moose::Exception::CannotAddAsAnAttributeToARole 2.1403 + Moose::Exception::CannotApplyBaseClassRolesToRole 2.1403 + Moose::Exception::CannotAssignValueToReadOnlyAccessor 2.1403 + Moose::Exception::CannotAugmentIfLocalMethodPresent 2.1403 + Moose::Exception::CannotAugmentNoSuperMethod 2.1403 + Moose::Exception::CannotAutoDerefWithoutIsa 2.1403 + Moose::Exception::CannotAutoDereferenceTypeConstraint 2.1403 + Moose::Exception::CannotCalculateNativeType 2.1403 + Moose::Exception::CannotCallAnAbstractBaseMethod 2.1403 + Moose::Exception::CannotCallAnAbstractMethod 2.1403 + Moose::Exception::CannotCoerceAWeakRef 2.1403 + Moose::Exception::CannotCoerceAttributeWhichHasNoCoercion 2.1403 + Moose::Exception::CannotCreateHigherOrderTypeWithoutATypeParameter 2.1403 + Moose::Exception::CannotCreateMethodAliasLocalMethodIsPresent 2.1403 + Moose::Exception::CannotCreateMethodAliasLocalMethodIsPresentInClass 2.1403 + Moose::Exception::CannotDelegateLocalMethodIsPresent 2.1403 + Moose::Exception::CannotDelegateWithoutIsa 2.1403 + Moose::Exception::CannotFindDelegateMetaclass 2.1403 + Moose::Exception::CannotFindType 2.1403 + Moose::Exception::CannotFindTypeGivenToMatchOnType 2.1403 + Moose::Exception::CannotFixMetaclassCompatibility 2.1403 + Moose::Exception::CannotGenerateInlineConstraint 2.1403 + Moose::Exception::CannotInitializeMooseMetaRoleComposite 2.1403 + Moose::Exception::CannotInlineTypeConstraintCheck 2.1403 + Moose::Exception::CannotLocatePackageInINC 2.1403 + Moose::Exception::CannotMakeMetaclassCompatible 2.1403 + Moose::Exception::CannotOverrideALocalMethod 2.1403 + Moose::Exception::CannotOverrideBodyOfMetaMethods 2.1403 + Moose::Exception::CannotOverrideLocalMethodIsPresent 2.1403 + Moose::Exception::CannotOverrideNoSuperMethod 2.1403 + Moose::Exception::CannotRegisterUnnamedTypeConstraint 2.1403 + Moose::Exception::CannotUseLazyBuildAndDefaultSimultaneously 2.1403 + Moose::Exception::CircularReferenceInAlso 2.1403 + Moose::Exception::ClassDoesNotHaveInitMeta 2.1403 + Moose::Exception::ClassDoesTheExcludedRole 2.1403 + Moose::Exception::ClassNamesDoNotMatch 2.1403 + Moose::Exception::CloneObjectExpectsAnInstanceOfMetaclass 2.1403 + Moose::Exception::CodeBlockMustBeACodeRef 2.1403 + Moose::Exception::CoercingWithoutCoercions 2.1403 + Moose::Exception::CoercionAlreadyExists 2.1403 + Moose::Exception::CoercionNeedsTypeConstraint 2.1403 + Moose::Exception::ConflictDetectedInCheckRoleExclusions 2.1403 + Moose::Exception::ConflictDetectedInCheckRoleExclusionsInToClass 2.1403 + Moose::Exception::ConstructClassInstanceTakesPackageName 2.1403 + Moose::Exception::CouldNotCreateMethod 2.1403 + Moose::Exception::CouldNotCreateWriter 2.1403 + Moose::Exception::CouldNotEvalConstructor 2.1403 + Moose::Exception::CouldNotEvalDestructor 2.1403 + Moose::Exception::CouldNotFindTypeConstraintToCoerceFrom 2.1403 + Moose::Exception::CouldNotGenerateInlineAttributeMethod 2.1403 + Moose::Exception::CouldNotLocateTypeConstraintForUnion 2.1403 + Moose::Exception::CouldNotParseType 2.1403 + Moose::Exception::CreateMOPClassTakesArrayRefOfAttributes 2.1403 + Moose::Exception::CreateMOPClassTakesArrayRefOfSuperclasses 2.1403 + Moose::Exception::CreateMOPClassTakesHashRefOfMethods 2.1403 + Moose::Exception::CreateTakesArrayRefOfRoles 2.1403 + Moose::Exception::CreateTakesHashRefOfAttributes 2.1403 + Moose::Exception::CreateTakesHashRefOfMethods 2.1403 + Moose::Exception::DefaultToMatchOnTypeMustBeCodeRef 2.1403 + Moose::Exception::DelegationToAClassWhichIsNotLoaded 2.1403 + Moose::Exception::DelegationToARoleWhichIsNotLoaded 2.1403 + Moose::Exception::DelegationToATypeWhichIsNotAClass 2.1403 + Moose::Exception::DoesRequiresRoleName 2.1403 + Moose::Exception::EnumCalledWithAnArrayRefAndAdditionalArgs 2.1403 + Moose::Exception::EnumValuesMustBeString 2.1403 + Moose::Exception::ExtendsMissingArgs 2.1403 + Moose::Exception::HandlesMustBeAHashRef 2.1403 + Moose::Exception::IllegalInheritedOptions 2.1403 + Moose::Exception::IllegalMethodTypeToAddMethodModifier 2.1403 + Moose::Exception::IncompatibleMetaclassOfSuperclass 2.1403 + Moose::Exception::InitMetaRequiresClass 2.1403 + Moose::Exception::InitializeTakesUnBlessedPackageName 2.1403 + Moose::Exception::InstanceBlessedIntoWrongClass 2.1403 + Moose::Exception::InstanceMustBeABlessedReference 2.1403 + Moose::Exception::InvalidArgPassedToMooseUtilMetaRole 2.1403 + Moose::Exception::InvalidArgumentToMethod 2.1403 + Moose::Exception::InvalidArgumentsToTraitAliases 2.1403 + Moose::Exception::InvalidBaseTypeGivenToCreateParameterizedTypeConstraint 2.1403 + Moose::Exception::InvalidHandleValue 2.1403 + Moose::Exception::InvalidHasProvidedInARole 2.1403 + Moose::Exception::InvalidNameForType 2.1403 + Moose::Exception::InvalidOverloadOperator 2.1403 + Moose::Exception::InvalidRoleApplication 2.1403 + Moose::Exception::InvalidTypeConstraint 2.1403 + Moose::Exception::InvalidTypeGivenToCreateParameterizedTypeConstraint 2.1403 + Moose::Exception::InvalidValueForIs 2.1403 + Moose::Exception::IsaDoesNotDoTheRole 2.1403 + Moose::Exception::IsaLacksDoesMethod 2.1403 + Moose::Exception::LazyAttributeNeedsADefault 2.1403 + Moose::Exception::Legacy 2.1403 + Moose::Exception::MOPAttributeNewNeedsAttributeName 2.1403 + Moose::Exception::MatchActionMustBeACodeRef 2.1403 + Moose::Exception::MessageParameterMustBeCodeRef 2.1403 + Moose::Exception::MetaclassIsAClassNotASubclassOfGivenMetaclass 2.1403 + Moose::Exception::MetaclassIsARoleNotASubclassOfGivenMetaclass 2.1403 + Moose::Exception::MetaclassIsNotASubclassOfGivenMetaclass 2.1403 + Moose::Exception::MetaclassMustBeASubclassOfMooseMetaClass 2.1403 + Moose::Exception::MetaclassMustBeASubclassOfMooseMetaRole 2.1403 + Moose::Exception::MetaclassMustBeDerivedFromClassMOPClass 2.1403 + Moose::Exception::MetaclassNotLoaded 2.1403 + Moose::Exception::MetaclassTypeIncompatible 2.1403 + Moose::Exception::MethodExpectedAMetaclassObject 2.1403 + Moose::Exception::MethodExpectsFewerArgs 2.1403 + Moose::Exception::MethodExpectsMoreArgs 2.1403 + Moose::Exception::MethodModifierNeedsMethodName 2.1403 + Moose::Exception::MethodNameConflictInRoles 2.1403 + Moose::Exception::MethodNameNotFoundInInheritanceHierarchy 2.1403 + Moose::Exception::MethodNameNotGiven 2.1403 + Moose::Exception::MustDefineAMethodName 2.1403 + Moose::Exception::MustDefineAnAttributeName 2.1403 + Moose::Exception::MustDefineAnOverloadOperator 2.1403 + Moose::Exception::MustHaveAtLeastOneValueToEnumerate 2.1403 + Moose::Exception::MustPassAHashOfOptions 2.1403 + Moose::Exception::MustPassAMooseMetaRoleInstanceOrSubclass 2.1403 + Moose::Exception::MustPassAPackageNameOrAnExistingClassMOPPackageInstance 2.1403 + Moose::Exception::MustPassEvenNumberOfArguments 2.1403 + Moose::Exception::MustPassEvenNumberOfAttributeOptions 2.1403 + Moose::Exception::MustProvideANameForTheAttribute 2.1403 + Moose::Exception::MustSpecifyAtleastOneMethod 2.1403 + Moose::Exception::MustSpecifyAtleastOneRole 2.1403 + Moose::Exception::MustSpecifyAtleastOneRoleToApplicant 2.1403 + Moose::Exception::MustSupplyAClassMOPAttributeInstance 2.1403 + Moose::Exception::MustSupplyADelegateToMethod 2.1403 + Moose::Exception::MustSupplyAMetaclass 2.1403 + Moose::Exception::MustSupplyAMooseMetaAttributeInstance 2.1403 + Moose::Exception::MustSupplyAnAccessorTypeToConstructWith 2.1403 + Moose::Exception::MustSupplyAnAttributeToConstructWith 2.1403 + Moose::Exception::MustSupplyArrayRefAsCurriedArguments 2.1403 + Moose::Exception::MustSupplyPackageNameAndName 2.1403 + Moose::Exception::NeedsTypeConstraintUnionForTypeCoercionUnion 2.1403 + Moose::Exception::NeitherAttributeNorAttributeNameIsGiven 2.1403 + Moose::Exception::NeitherClassNorClassNameIsGiven 2.1403 + Moose::Exception::NeitherRoleNorRoleNameIsGiven 2.1403 + Moose::Exception::NeitherTypeNorTypeNameIsGiven 2.1403 + Moose::Exception::NoAttributeFoundInSuperClass 2.1403 + Moose::Exception::NoBodyToInitializeInAnAbstractBaseClass 2.1403 + Moose::Exception::NoCasesMatched 2.1403 + Moose::Exception::NoConstraintCheckForTypeConstraint 2.1403 + Moose::Exception::NoDestructorClassSpecified 2.1403 + Moose::Exception::NoImmutableTraitSpecifiedForClass 2.1403 + Moose::Exception::NoParentGivenToSubtype 2.1403 + Moose::Exception::OnlyInstancesCanBeCloned 2.1403 + Moose::Exception::OperatorIsRequired 2.1403 + Moose::Exception::OverloadConflictInSummation 2.1403 + Moose::Exception::OverloadRequiresAMetaClass 2.1403 + Moose::Exception::OverloadRequiresAMetaMethod 2.1403 + Moose::Exception::OverloadRequiresAMetaOverload 2.1403 + Moose::Exception::OverloadRequiresAMethodNameOrCoderef 2.1403 + Moose::Exception::OverloadRequiresAnOperator 2.1403 + Moose::Exception::OverloadRequiresNamesForCoderef 2.1403 + Moose::Exception::OverrideConflictInComposition 2.1403 + Moose::Exception::OverrideConflictInSummation 2.1403 + Moose::Exception::PackageDoesNotUseMooseExporter 2.1403 + Moose::Exception::PackageNameAndNameParamsNotGivenToWrap 2.1403 + Moose::Exception::PackagesAndModulesAreNotCachable 2.1403 + Moose::Exception::ParameterIsNotSubtypeOfParent 2.1403 + Moose::Exception::ReferencesAreNotAllowedAsDefault 2.1403 + Moose::Exception::RequiredAttributeLacksInitialization 2.1403 + Moose::Exception::RequiredAttributeNeedsADefault 2.1403 + Moose::Exception::RequiredMethodsImportedByClass 2.1403 + Moose::Exception::RequiredMethodsNotImplementedByClass 2.1403 + Moose::Exception::Role::Attribute 2.1403 + Moose::Exception::Role::AttributeName 2.1403 + Moose::Exception::Role::Class 2.1403 + Moose::Exception::Role::EitherAttributeOrAttributeName 2.1403 + Moose::Exception::Role::Instance 2.1403 + Moose::Exception::Role::InstanceClass 2.1403 + Moose::Exception::Role::InvalidAttributeOptions 2.1403 + Moose::Exception::Role::Method 2.1403 + Moose::Exception::Role::ParamsHash 2.1403 + Moose::Exception::Role::Role 2.1403 + Moose::Exception::Role::RoleForCreate 2.1403 + Moose::Exception::Role::RoleForCreateMOPClass 2.1403 + Moose::Exception::Role::TypeConstraint 2.1403 + Moose::Exception::RoleDoesTheExcludedRole 2.1403 + Moose::Exception::RoleExclusionConflict 2.1403 + Moose::Exception::RoleNameRequired 2.1403 + Moose::Exception::RoleNameRequiredForMooseMetaRole 2.1403 + Moose::Exception::RolesDoNotSupportAugment 2.1403 + Moose::Exception::RolesDoNotSupportExtends 2.1403 + Moose::Exception::RolesDoNotSupportInner 2.1403 + Moose::Exception::RolesDoNotSupportRegexReferencesForMethodModifiers 2.1403 + Moose::Exception::RolesInCreateTakesAnArrayRef 2.1403 + Moose::Exception::RolesListMustBeInstancesOfMooseMetaRole 2.1403 + Moose::Exception::SingleParamsToNewMustBeHashRef 2.1403 + Moose::Exception::TriggerMustBeACodeRef 2.1403 + Moose::Exception::TypeConstraintCannotBeUsedForAParameterizableType 2.1403 + Moose::Exception::TypeConstraintIsAlreadyCreated 2.1403 + Moose::Exception::TypeParameterMustBeMooseMetaType 2.1403 + Moose::Exception::UnableToCanonicalizeHandles 2.1403 + Moose::Exception::UnableToCanonicalizeNonRolePackage 2.1403 + Moose::Exception::UnableToRecognizeDelegateMetaclass 2.1403 + Moose::Exception::UndefinedHashKeysPassedToMethod 2.1403 + Moose::Exception::UnionCalledWithAnArrayRefAndAdditionalArgs 2.1403 + Moose::Exception::UnionTakesAtleastTwoTypeNames 2.1403 + Moose::Exception::ValidationFailedForInlineTypeConstraint 2.1403 + Moose::Exception::ValidationFailedForTypeConstraint 2.1403 + Moose::Exception::WrapTakesACodeRefToBless 2.1403 + Moose::Exception::WrongTypeConstraintGiven 2.1403 + Moose::Exporter 2.1403 + Moose::Meta::Attribute 2.1403 + Moose::Meta::Attribute::Native 2.1403 + Moose::Meta::Attribute::Native::Trait undef + Moose::Meta::Attribute::Native::Trait::Array 2.1403 + Moose::Meta::Attribute::Native::Trait::Bool 2.1403 + Moose::Meta::Attribute::Native::Trait::Code 2.1403 + Moose::Meta::Attribute::Native::Trait::Counter 2.1403 + Moose::Meta::Attribute::Native::Trait::Hash 2.1403 + Moose::Meta::Attribute::Native::Trait::Number 2.1403 + Moose::Meta::Attribute::Native::Trait::String 2.1403 + Moose::Meta::Class 2.1403 + Moose::Meta::Class::Immutable::Trait undef + Moose::Meta::Instance 2.1403 + Moose::Meta::Method 2.1403 + Moose::Meta::Method::Accessor 2.1403 + Moose::Meta::Method::Accessor::Native undef + Moose::Meta::Method::Accessor::Native::Array undef + Moose::Meta::Method::Accessor::Native::Array::Writer undef + Moose::Meta::Method::Accessor::Native::Array::accessor undef + Moose::Meta::Method::Accessor::Native::Array::clear undef + Moose::Meta::Method::Accessor::Native::Array::count undef + Moose::Meta::Method::Accessor::Native::Array::delete undef + Moose::Meta::Method::Accessor::Native::Array::elements undef + Moose::Meta::Method::Accessor::Native::Array::first undef + Moose::Meta::Method::Accessor::Native::Array::first_index undef + Moose::Meta::Method::Accessor::Native::Array::get undef + Moose::Meta::Method::Accessor::Native::Array::grep undef + Moose::Meta::Method::Accessor::Native::Array::insert undef + Moose::Meta::Method::Accessor::Native::Array::is_empty undef + Moose::Meta::Method::Accessor::Native::Array::join undef + Moose::Meta::Method::Accessor::Native::Array::map undef + Moose::Meta::Method::Accessor::Native::Array::natatime undef + Moose::Meta::Method::Accessor::Native::Array::pop undef + Moose::Meta::Method::Accessor::Native::Array::push undef + Moose::Meta::Method::Accessor::Native::Array::reduce undef + Moose::Meta::Method::Accessor::Native::Array::set undef + Moose::Meta::Method::Accessor::Native::Array::shallow_clone undef + Moose::Meta::Method::Accessor::Native::Array::shift undef + Moose::Meta::Method::Accessor::Native::Array::shuffle undef + Moose::Meta::Method::Accessor::Native::Array::sort undef + Moose::Meta::Method::Accessor::Native::Array::sort_in_place undef + Moose::Meta::Method::Accessor::Native::Array::splice undef + Moose::Meta::Method::Accessor::Native::Array::uniq undef + Moose::Meta::Method::Accessor::Native::Array::unshift undef + Moose::Meta::Method::Accessor::Native::Bool::not undef + Moose::Meta::Method::Accessor::Native::Bool::set undef + Moose::Meta::Method::Accessor::Native::Bool::toggle undef + Moose::Meta::Method::Accessor::Native::Bool::unset undef + Moose::Meta::Method::Accessor::Native::Code::execute undef + Moose::Meta::Method::Accessor::Native::Code::execute_method undef + Moose::Meta::Method::Accessor::Native::Collection undef + Moose::Meta::Method::Accessor::Native::Counter::Writer undef + Moose::Meta::Method::Accessor::Native::Counter::dec undef + Moose::Meta::Method::Accessor::Native::Counter::inc undef + Moose::Meta::Method::Accessor::Native::Counter::reset undef + Moose::Meta::Method::Accessor::Native::Counter::set undef + Moose::Meta::Method::Accessor::Native::Hash undef + Moose::Meta::Method::Accessor::Native::Hash::Writer undef + Moose::Meta::Method::Accessor::Native::Hash::accessor undef + Moose::Meta::Method::Accessor::Native::Hash::clear undef + Moose::Meta::Method::Accessor::Native::Hash::count undef + Moose::Meta::Method::Accessor::Native::Hash::defined undef + Moose::Meta::Method::Accessor::Native::Hash::delete undef + Moose::Meta::Method::Accessor::Native::Hash::elements undef + Moose::Meta::Method::Accessor::Native::Hash::exists undef + Moose::Meta::Method::Accessor::Native::Hash::get undef + Moose::Meta::Method::Accessor::Native::Hash::is_empty undef + Moose::Meta::Method::Accessor::Native::Hash::keys undef + Moose::Meta::Method::Accessor::Native::Hash::kv undef + Moose::Meta::Method::Accessor::Native::Hash::set undef + Moose::Meta::Method::Accessor::Native::Hash::shallow_clone undef + Moose::Meta::Method::Accessor::Native::Hash::values undef + Moose::Meta::Method::Accessor::Native::Number::abs undef + Moose::Meta::Method::Accessor::Native::Number::add undef + Moose::Meta::Method::Accessor::Native::Number::div undef + Moose::Meta::Method::Accessor::Native::Number::mod undef + Moose::Meta::Method::Accessor::Native::Number::mul undef + Moose::Meta::Method::Accessor::Native::Number::set undef + Moose::Meta::Method::Accessor::Native::Number::sub undef + Moose::Meta::Method::Accessor::Native::Reader undef + Moose::Meta::Method::Accessor::Native::String::append undef + Moose::Meta::Method::Accessor::Native::String::chomp undef + Moose::Meta::Method::Accessor::Native::String::chop undef + Moose::Meta::Method::Accessor::Native::String::clear undef + Moose::Meta::Method::Accessor::Native::String::inc undef + Moose::Meta::Method::Accessor::Native::String::length undef + Moose::Meta::Method::Accessor::Native::String::match undef + Moose::Meta::Method::Accessor::Native::String::prepend undef + Moose::Meta::Method::Accessor::Native::String::replace undef + Moose::Meta::Method::Accessor::Native::String::substr undef + Moose::Meta::Method::Accessor::Native::Writer undef + Moose::Meta::Method::Augmented 2.1403 + Moose::Meta::Method::Constructor 2.1403 + Moose::Meta::Method::Delegation 2.1403 + Moose::Meta::Method::Destructor 2.1403 + Moose::Meta::Method::Meta 2.1403 + Moose::Meta::Method::Overridden 2.1403 + Moose::Meta::Mixin::AttributeCore undef + Moose::Meta::Object::Trait undef + Moose::Meta::Role 2.1403 + Moose::Meta::Role::Application 2.1403 + Moose::Meta::Role::Application::RoleSummation 2.1403 + Moose::Meta::Role::Application::ToClass 2.1403 + Moose::Meta::Role::Application::ToInstance 2.1403 + Moose::Meta::Role::Application::ToRole 2.1403 + Moose::Meta::Role::Attribute 2.1403 + Moose::Meta::Role::Composite 2.1403 + Moose::Meta::Role::Method 2.1403 + Moose::Meta::Role::Method::Conflicting 2.1403 + Moose::Meta::Role::Method::Required 2.1403 + Moose::Meta::TypeCoercion 2.1403 + Moose::Meta::TypeCoercion::Union 2.1403 + Moose::Meta::TypeConstraint 2.1403 + Moose::Meta::TypeConstraint::Class 2.1403 + Moose::Meta::TypeConstraint::DuckType 2.1403 + Moose::Meta::TypeConstraint::Enum 2.1403 + Moose::Meta::TypeConstraint::Parameterizable 2.1403 + Moose::Meta::TypeConstraint::Parameterized 2.1403 + Moose::Meta::TypeConstraint::Registry 2.1403 + Moose::Meta::TypeConstraint::Role 2.1403 + Moose::Meta::TypeConstraint::Union 2.1403 + Moose::Object 2.1403 + Moose::Role 2.1403 + Moose::Util 2.1403 + Moose::Util::MetaRole 2.1403 + Moose::Util::TypeConstraints 2.1403 + Moose::Util::TypeConstraints::Builtins undef + Test::Moose 2.1403 + metaclass 2.1403 + oose 2.1403 requirements: Carp 1.22 Class::Load 0.09 Class::Load::XS 0.01 Data::OptList 0.107 Devel::GlobalDestruction 0 + Devel::OverloadInfo 0.002 + Devel::StackTrace 1.33 Dist::CheckConflicts 0.02 Eval::Closure 0.04 - ExtUtils::MakeMaker 6.30 + ExtUtils::CBuilder 0.27 + ExtUtils::MakeMaker 0 + File::Spec 0 List::MoreUtils 0.28 + List::Util 1.33 MRO::Compat 0.05 + Module::Runtime 0.014 + Module::Runtime::Conflicts 0 Package::DeprecationManager 0.11 Package::Stash 0.32 Package::Stash::XS 0.24 @@ -4678,10 +4923,10 @@ DISTRIBUTIONS Sub::Exporter 0.980 Sub::Name 0.05 Task::Weaken 0 - Test::Fatal 0.001 - Test::More 0.88 - Test::Requires 0.05 - Try::Tiny 0.02 + Try::Tiny 0.17 + parent 0.223 + strict 1.03 + warnings 1.03 MooseX-Aliases-0.11 pathname: D/DO/DOY/MooseX-Aliases-0.11.tar.gz provides: @@ -4979,16 +5224,16 @@ DISTRIBUTIONS perl 5.008 strict 0 warnings 0 - MooseX-Types-ElasticSearch-0.0.2 - pathname: P/PE/PERLER/MooseX-Types-ElasticSearch-0.0.2.tar.gz + MooseX-Types-ElasticSearch-0.0.4 + pathname: P/PE/PERLER/MooseX-Types-ElasticSearch-0.0.4.tar.gz provides: - MooseX::Types::ElasticSearch 0.000002 + MooseX::Types::ElasticSearch 0.000004 requirements: DateTime::Format::Epoch::Unix 0 DateTime::Format::ISO8601 0 - ElasticSearch 0 Module::Build 0.3601 MooseX::Types 0 + Search::Elasticsearch 0 MooseX-Types-Path-Class-0.06 pathname: T/TH/THEPLER/MooseX-Types-Path-Class-0.06.tar.gz provides: @@ -5459,27 +5704,6 @@ DISTRIBUTIONS Test::Trap 0 overload 0 parent 0 - PAUSE-Permissions-0.11 - pathname: N/NE/NEILB/PAUSE-Permissions-0.11.tar.gz - provides: - PAUSE::Permissions 0.11 - PAUSE::Permissions::Entry 0.11 - PAUSE::Permissions::EntryIterator 0.11 - PAUSE::Permissions::Module 0.11 - PAUSE::Permissions::ModuleIterator 0.11 - requirements: - Carp 0 - ExtUtils::MakeMaker 0 - File::HomeDir 0 - File::Spec::Functions 0 - HTTP::Date 0 - HTTP::Tiny 0 - Moo 0 - autodie 0 - feature 0 - perl 5.010000 - strict 0 - warnings 0 POSIX-strftime-Compiler-0.31 pathname: K/KA/KAZEBURO/POSIX-strftime-Compiler-0.31.tar.gz provides: @@ -6802,6 +7026,16 @@ DISTRIBUTIONS Exporter 5.57 ExtUtils::MakeMaker 0 Scalar::Util 0 + Scalar-List-Utils-1.41 + pathname: P/PE/PEVANS/Scalar-List-Utils-1.41.tar.gz + provides: + List::Util 1.41 + List::Util::XS 1.41 + Scalar::Util 1.41 + Sub::Util 1.41 + requirements: + ExtUtils::MakeMaker 0 + Test::More 0 Scope-Guard-0.20 pathname: C/CH/CHOCOLATE/Scope-Guard-0.20.tar.gz provides: @@ -6810,6 +7044,93 @@ DISTRIBUTIONS ExtUtils::MakeMaker 0 Test::More 0 perl 5.006001 + Search-Elasticsearch-1.19 + pathname: D/DR/DRTECH/Search-Elasticsearch-1.19.tar.gz + provides: + MockCxn undef + Search::Elasticsearch 1.19 + Search::Elasticsearch::Bulk 1.19 + Search::Elasticsearch::Client::0_90::Direct 1.19 + Search::Elasticsearch::Client::0_90::Direct::Cluster 1.19 + Search::Elasticsearch::Client::0_90::Direct::Indices 1.19 + Search::Elasticsearch::Client::Direct 1.19 + Search::Elasticsearch::Client::Direct::Cat 1.19 + Search::Elasticsearch::Client::Direct::Cluster 1.19 + Search::Elasticsearch::Client::Direct::Indices 1.19 + Search::Elasticsearch::Client::Direct::Nodes 1.19 + Search::Elasticsearch::Client::Direct::Snapshot 1.19 + Search::Elasticsearch::Cxn::Factory 1.19 + Search::Elasticsearch::Cxn::HTTPTiny 1.19 + Search::Elasticsearch::Cxn::Hijk 1.19 + Search::Elasticsearch::Cxn::LWP 1.19 + Search::Elasticsearch::CxnPool::Sniff 1.19 + Search::Elasticsearch::CxnPool::Static 1.19 + Search::Elasticsearch::CxnPool::Static::NoPing 1.19 + Search::Elasticsearch::Error 1.19 + Search::Elasticsearch::Logger::LogAny 1.19 + Search::Elasticsearch::Role::API 1.19 + Search::Elasticsearch::Role::API::0_90 1.19 + Search::Elasticsearch::Role::Bulk 1.19 + Search::Elasticsearch::Role::Client 1.19 + Search::Elasticsearch::Role::Client::Direct 1.19 + Search::Elasticsearch::Role::Cxn 1.19 + Search::Elasticsearch::Role::Cxn::HTTP 1.19 + Search::Elasticsearch::Role::CxnPool 1.19 + Search::Elasticsearch::Role::CxnPool::Sniff 1.19 + Search::Elasticsearch::Role::CxnPool::Static 1.19 + Search::Elasticsearch::Role::CxnPool::Static::NoPing 1.19 + Search::Elasticsearch::Role::Is_Sync 1.19 + Search::Elasticsearch::Role::Logger 1.19 + Search::Elasticsearch::Role::Scroll 1.19 + Search::Elasticsearch::Role::Serializer 1.19 + Search::Elasticsearch::Role::Serializer::JSON 1.19 + Search::Elasticsearch::Role::Transport 1.19 + Search::Elasticsearch::Scroll 1.19 + Search::Elasticsearch::Serializer::JSON 1.19 + Search::Elasticsearch::Serializer::JSON::Cpanel 1.19 + Search::Elasticsearch::Serializer::JSON::PP 1.19 + Search::Elasticsearch::Serializer::JSON::XS 1.19 + Search::Elasticsearch::TestServer 1.19 + Search::Elasticsearch::Transport 1.19 + Search::Elasticsearch::Util 1.19 + Search::Elasticsearch::Util::API::Path 1.19 + Search::Elasticsearch::Util::API::QS 1.19 + requirements: + Any::URI::Escape 0 + Data::Dumper 0 + Encode 0 + ExtUtils::MakeMaker 0 + File::Temp 0 + HTTP::Headers 0 + HTTP::Request 0 + HTTP::Tiny 0.043 + Hijk 0.12 + IO::Select 0 + IO::Socket 0 + IO::Uncompress::Inflate 0 + JSON::MaybeXS 1.002002 + JSON::PP 0 + LWP::UserAgent 0 + List::Util 0 + Log::Any 1.02 + Log::Any::Adapter 0 + MIME::Base64 0 + Module::Runtime 0 + Moo 1.003 + Moo::Role 0 + POSIX 0 + Package::Stash 0.34 + Pod::Simple 3.28 + Scalar::Util 0 + Sub::Exporter 0 + Test::More 0.98 + Time::HiRes 0 + Try::Tiny 0 + URI 0 + namespace::clean 0 + overload 0 + strict 0 + warnings 0 Sort-Naturally-1.03 pathname: B/BI/BINGOS/Sort-Naturally-1.03.tar.gz provides: @@ -6894,6 +7215,13 @@ DISTRIBUTIONS requirements: ExtUtils::MakeMaker 0 Test::More 0.88 + Sub-Identify-0.10 + pathname: R/RG/RGARCIA/Sub-Identify-0.10.tar.gz + provides: + Sub::Identify 0.10 + requirements: + ExtUtils::MakeMaker 0 + Test::More 0 Sub-Install-0.927 pathname: R/RJ/RJBS/Sub-Install-0.927.tar.gz provides: diff --git a/lib/Catalyst/Plugin/Session/Store/ElasticSearch.pm b/lib/Catalyst/Plugin/Session/Store/ElasticSearch.pm index b2469fdd5..184b48ec0 100644 --- a/lib/Catalyst/Plugin/Session/Store/ElasticSearch.pm +++ b/lib/Catalyst/Plugin/Session/Store/ElasticSearch.pm @@ -52,7 +52,7 @@ sub store_session_data { index => $self->_session_es_index, type => $self->_session_es_type, id => $sid, - data => $session, + body => $session, refresh => 1, ); } diff --git a/lib/MetaCPAN/Document/File.pm b/lib/MetaCPAN/Document/File.pm index 3b31cd198..3e9c153bf 100644 --- a/lib/MetaCPAN/Document/File.pm +++ b/lib/MetaCPAN/Document/File.pm @@ -888,20 +888,27 @@ sub prefix { my @query = split( /\s+/, $prefix ); my $should = [ map { - { field => { 'documentation.analyzed' => "$_*" } }, - { field => { 'documentation.camelcase' => "$_*" } } + { + simple_query_string => { + fields => [ + 'documentation.analyzed', 'documentation.camelcase' + ], + query => "$_*" + } + } } grep {$_} @query ]; return $self->query( { filtered => { query => { - custom_score => { + function_score => { query => { bool => { should => $should } }, - #metacpan_script => 'prefer_shorter_module_names_100', - script => - "_score - doc['documentation'].value.length()/100" + script_score => { + script => + "_score - doc['documentation'].value.length()/100", + } }, }, filter => { @@ -999,8 +1006,14 @@ sub autocomplete { my @query = split( /\s+/, $query ); my $should = [ map { - { field => { 'documentation.analyzed' => "$_*" } }, - { field => { 'documentation.camelcase' => "$_*" } } + { + simple_query_string => { + fields => [ + 'documentation.analyzed', 'documentation.camelcase' + ], + query => "$_*" + } + } } grep {$_} @query ]; @@ -1008,9 +1021,12 @@ sub autocomplete { # As of 2013-10-27 we are still using 0.20.2 in production. return $self->query( { - custom_score => { - query => { bool => { should => $should } }, - script => "_score - doc['documentation'].value.length()/100", + function_score => { + query => { bool => { should => $should } }, + script_score => { + script => + "_score - doc['documentation'].value.length()/100", + } } } )->filter( diff --git a/lib/MetaCPAN/Document/Release.pm b/lib/MetaCPAN/Document/Release.pm index 70bc01ce6..f1eeada32 100644 --- a/lib/MetaCPAN/Document/Release.pm +++ b/lib/MetaCPAN/Document/Release.pm @@ -113,11 +113,17 @@ has id => ( id => [qw(author name)], ); -has [qw(license version author archive)] => ( +has [qw(version author archive)] => ( is => 'ro', required => 1, ); +has license => ( + is => 'ro', + isa => 'ArrayRef', + required => 1, +); + has date => ( is => 'ro', required => 1, diff --git a/lib/MetaCPAN/Role/Script.pm b/lib/MetaCPAN/Role/Script.pm index 6689edc54..0f4af0fbf 100644 --- a/lib/MetaCPAN/Role/Script.pm +++ b/lib/MetaCPAN/Role/Script.pm @@ -3,7 +3,6 @@ package MetaCPAN::Role::Script; use strict; use warnings; -use ElasticSearch; use ElasticSearchX::Model::Document::Types qw(:all); use FindBin; use Log::Contextual qw( :dlog ); @@ -27,7 +26,7 @@ has es => ( is => 'ro', required => 1, coerce => 1, - documentation => 'ElasticSearch http connection string', + documentation => 'Elasticsearch http connection string', ); has model => ( lazy_build => 1, is => 'ro', traits => ['NoGetopt'] ); @@ -105,7 +104,7 @@ sub _build_cpan { } sub remote { - shift->es->transport->default_servers->[0]; + shift->es->nodes->info->[0]; } sub run { } @@ -114,7 +113,7 @@ before run => sub { $self->set_logger_once; - Dlog_debug {"Connected to $_"} $self->remote; + #Dlog_debug {"Connected to $_"} $self->remote; }; 1; diff --git a/lib/MetaCPAN/Script/CPANTesters.pm b/lib/MetaCPAN/Script/CPANTesters.pm index 16a628b9d..ec3854f1d 100644 --- a/lib/MetaCPAN/Script/CPANTesters.pm +++ b/lib/MetaCPAN/Script/CPANTesters.pm @@ -40,14 +40,7 @@ sub index_reports { bunzip2 "$db.bz2" => "$db", AutoClose => 1; - my $scroll = $es->scrolled_search( - index => $index, - type => 'release', - query => { match_all => {} }, - size => 500, - search_type => 'scan', - scroll => '5m', - ); + my $scroll = $self->index->type('release')->size(500)->raw->scroll; my %releases; while ( my $release = $scroll->next ) { @@ -56,8 +49,7 @@ sub index_reports { join( '-', grep {defined} $data->{distribution}, $data->{version} ) - } - = $data; + } = $data; } log_info { 'Opening database file at ' . $db }; @@ -87,22 +79,21 @@ sub index_reports { sub bulk { my ( $self, $bulk ) = @_; - my @bulk; + my $bulk = $self->model->bulk; my $index = $self->index->name; while ( my $data = shift @$bulk ) { - push( - @bulk, + $bulk->add( { index => { index => $index, id => $data->{id}, type => 'release', - data => $data + body => $data } } ); } - $self->es->bulk( \@bulk ); + } __PACKAGE__->meta->make_immutable; diff --git a/lib/MetaCPAN/Script/Check.pm b/lib/MetaCPAN/Script/Check.pm index 548502002..fea6c9ba1 100644 --- a/lib/MetaCPAN/Script/Check.pm +++ b/lib/MetaCPAN/Script/Check.pm @@ -3,7 +3,6 @@ package MetaCPAN::Script::Check; use strict; use warnings; -use ElasticSearch; use File::Spec::Functions qw(catfile); use Log::Contextual qw( :log ); use Moose; diff --git a/lib/MetaCPAN/Script/Latest.pm b/lib/MetaCPAN/Script/Latest.pm index b1edb2a54..f448db5a8 100644 --- a/lib/MetaCPAN/Script/Latest.pm +++ b/lib/MetaCPAN/Script/Latest.pm @@ -89,7 +89,7 @@ sub run { 'file.release', 'file.distribution', 'file.date', 'file.status', ] - )->size(10000)->raw->scroll('1h'); + )->size(10000)->raw->scroll; my ( %downgrade, %upgrade ); log_debug { 'Found ' . $scroll->total . ' modules' }; @@ -100,11 +100,10 @@ sub run { while ( my $file = $scroll->next ) { $i++; log_debug { "$i of " . $scroll->total } unless ( $i % 1000 ); - my $data = $file->{fields}; - my @modules - = ref $data->{'module.name'} - ? @{ $data->{'module.name'} } - : $data->{'module.name'}; + my $data = $file->{fields}; + my @modules = @{ $data->{'module.name'} }; + ( $data->{$_} ) = @{ $data->{$_} } + for qw(author release distribution date status); # Convert module name into Parse::CPAN::Packages::Fast::Package object. @modules = grep {defined} map { @@ -188,33 +187,16 @@ sub reindex { $release->put unless ( $self->dry_run ); # Get all the files for the release. - my $scroll = $es->scrolled_search( + my $scroll = $self->index->type("file")->size(1000)->filter( { - index => $self->index->name, - type => 'file', - scroll => '5m', - size => 1000, - search_type => 'scan', - query => { - filtered => { - query => { match_all => {} }, - filter => { - and => [ - { - term => - { 'file.release' => $source->{release} } - }, - { - term => { 'file.author' => $source->{author} } - } - ] - } - } - } + and => [ + { term => { 'file.release' => $source->{release} } }, + { term => { 'file.author' => $source->{author} } } + ] } - ); + )->raw->scroll; - my @bulk; + my $bulk = $self->model->bulk; while ( my $row = $scroll->next ) { my $source = $row->{_source}; log_trace { @@ -223,23 +205,17 @@ sub reindex { }; # Use bulk update to overwrite the status for X files at a time. - push( - @bulk, + $bulk->add( { index => { index => $self->index->name, type => 'file', id => $row->{_id}, - data => { %$source, status => $status } + body => { %$source, status => $status } } } - ) unless ( $self->dry_run ); - if ( @bulk > 100 ) { - $self->es->bulk( \@bulk ); - @bulk = (); - } + ) unless $self->dry_run; } - $self->es->bulk( \@bulk ) if (@bulk); } sub compare_dates { diff --git a/lib/MetaCPAN/Server/Controller.pm b/lib/MetaCPAN/Server/Controller.pm index 1f340f92d..03f241cb1 100644 --- a/lib/MetaCPAN/Server/Controller.pm +++ b/lib/MetaCPAN/Server/Controller.pm @@ -67,7 +67,7 @@ sub model { sub mapping : Path('_mapping') { my ( $self, $c ) = @_; $c->stash( - $c->model('CPAN')->es->mapping( + $c->model('CPAN')->es->indices->get_mapping( index => $c->model('CPAN')->index, type => $self->type ) @@ -97,6 +97,7 @@ sub search : Path('_search') : ActionClass('Deserialize') { # shallow copy my $params = { %{ $req->params } }; + delete $params->{$_} for qw(type index body join); { my $size = $params->{size} || ( $req->data || {} )->{size}; $c->detach( '/bad_request', @@ -106,14 +107,12 @@ sub search : Path('_search') : ActionClass('Deserialize') { delete $params->{callback}; eval { $c->stash( - $c->model('CPAN')->es->request( + $self->model($c)->es->search( { - method => $req->method, - qs => $params, - cmd => join( '/', - '', $c->model('CPAN')->index, - $self->type, '_search' ), - data => $req->data + index => $c->model("CPAN")->index, + type => $self->type, + body => $c->req->data, + %$params, } ) ); diff --git a/lib/MetaCPAN/Server/Controller/Scroll.pm b/lib/MetaCPAN/Server/Controller/Scroll.pm index cc974f7db..e3eb5271e 100644 --- a/lib/MetaCPAN/Server/Controller/Scroll.pm +++ b/lib/MetaCPAN/Server/Controller/Scroll.pm @@ -35,16 +35,10 @@ sub index : Path('/_search/scroll') : Args { } my $res = eval { - $c->model('CPAN')->es->transport->request( + $c->model('CPAN')->es->scroll( { - method => $req->method, - qs => $req->parameters, - - # We could alternatively append "/$scroll_id" to the cmd. - cmd => '/_search/scroll', - - # Pass reference to scalar as a non-ref will throw an error. - data => \$scroll_id, + scroll_id => $scroll_id, + scroll => $c->req->params->{scroll}, } ); } or do { $self->internal_error( $c, $@ ); }; diff --git a/lib/MetaCPAN/Types/Internal.pm b/lib/MetaCPAN/Types/Internal.pm index 9b62965c8..91281b035 100644 --- a/lib/MetaCPAN/Types/Internal.pm +++ b/lib/MetaCPAN/Types/Internal.pm @@ -4,7 +4,6 @@ use strict; use warnings; use CPAN::Meta; -use ElasticSearch; use ElasticSearchX::Model::Document::Types qw(:all); use JSON; use MooseX::Getopt::OptionTypeMap; diff --git a/lib/Plack/Session/Store/ElasticSearch.pm b/lib/Plack/Session/Store/ElasticSearch.pm deleted file mode 100644 index b02cf3005..000000000 --- a/lib/Plack/Session/Store/ElasticSearch.pm +++ /dev/null @@ -1,58 +0,0 @@ -package Plack::Session::Store::ElasticSearch; - -use strict; -use warnings; - -use base 'Plack::Session::Store'; - -use List::MoreUtils qw(); -use Plack::Util::Accessor qw(es index type property); - -sub new { - my ( $class, %params ) = @_; - bless { - index => 'user', - type => 'session', - property => 'id', - %params - } => $class; -} - -sub fetch { - my ( $self, $session_id ) = @_; - return undef unless ($session_id); - my $data = eval { - $self->es->get( - index => $self->index, - type => $self->type, - id => $session_id, - fields => [ '_parent', '_source' ] - ); - } || return undef; - $data->{_parent} = delete $data->{fields}->{_parent}; - return $data; -} - -sub store { - my ( $self, $session_id, $session ) = @_; - $self->es->index( - index => $self->index, - type => $self->type, - id => $session_id || undef, - parent => $session->{_parent} || "", - data => keys %$session ? $session->{_source} : { $self->type => {} }, - refresh => 1, - ); -} - -sub remove { - my ( $self, $session_id ) = @_; - $self->es->delete( - index => $self->index, - type => $self->type, - id => $session_id, - refresh => 1, - ); -} - -1; diff --git a/t/fakecpan.t b/t/fakecpan.t index c217b8941..9243725ad 100644 --- a/t/fakecpan.t +++ b/t/fakecpan.t @@ -13,7 +13,8 @@ use Test::Aggregate::Nested 0.371 (); use CPAN::Faker 0.010; use Config::General; -use ElasticSearch::TestServer; +use DDP; +use Search::Elasticsearch; use File::Copy; use MetaCPAN::Script::Author; use MetaCPAN::Script::Latest; @@ -31,16 +32,16 @@ BEGIN { $ENV{EMAIL_SENDER_TRANSPORT} = 'Test' } my $ES_HOST_PORT = '127.0.0.1:' . ( $ENV{METACPAN_ES_TEST_PORT} ||= 9900 ); ok( - my $es = ElasticSearch->new( - transport => 'httplite', - servers => $ES_HOST_PORT, + my $es = Search::Elasticsearch->new( + nodes => $ES_HOST_PORT, # trace_calls => 1, ), 'got ElasticSearch object' ); -eval { $es->transport->refresh_servers; }; +diag p $es->cluster->health; +diag p $es->nodes->stats; ok( !$@, "Connected to the ElasticSearch test instance on $ES_HOST_PORT" ) or do { @@ -54,7 +55,7 @@ EOF }; Test::More::note( - Test::More::explain( { 'ElasticSearch info' => $es->request } ) ); + Test::More::explain( { 'ElasticSearch info' => $es->info } ) ); my $config = MetaCPAN::Script::Runner->build_config; $config->{es} = $es; @@ -138,11 +139,11 @@ wait_for_es(); sub wait_for_es { sleep $_[0] if $_[0]; - $es->cluster_health( + $es->cluster->health( wait_for_status => 'yellow', timeout => '30s' ); - $es->refresh_index(); + $es->indices->refresh; } subtest 'Nested tests' => sub { diff --git a/t/release/badpod.t b/t/release/badpod.t index 2f35ced04..f626c2f0a 100644 --- a/t/release/badpod.t +++ b/t/release/badpod.t @@ -36,7 +36,7 @@ sub test_bad_pod { is $file->sloc, 3, 'sloc'; is $file->slop, 4, 'slop'; - is_deeply $file->pod_lines, [ [ 5, 7 ], ], 'no pod_lines'; + is_deeply $file->{pod_lines}, [ [ 5, 7 ], ], 'no pod_lines'; is ${ $file->pod }, diff --git a/t/server/controller/author.t b/t/server/controller/author.t index 8fcf063f6..f99d5f0c0 100644 --- a/t/server/controller/author.t +++ b/t/server/controller/author.t @@ -26,7 +26,7 @@ test_psgi app, sub { my $json = decode_json_ok($res); ok( $json->{pauseid} eq 'MO', 'pauseid is MO' ) if ( $k eq '/author/MO' ); - ok( ref $json->{author} eq 'HASH', '_mapping' ) + ok( ref $json->{cpan_v1}{mappings}{author} eq 'HASH', '_mapping' ) if ( $k eq '/author/_mapping' ); } diff --git a/t/server/controller/module.t b/t/server/controller/module.t index 03a4b6060..d6053fffc 100644 --- a/t/server/controller/module.t +++ b/t/server/controller/module.t @@ -29,16 +29,16 @@ test_psgi app, sub { if ( $k eq '/module' ) { ok( $json->{hits}->{total}, 'got total count' ); } - elsif ( $v eq 200 ) { - ok( $json->{name} eq 'Moose.pm', 'Moose.pm' ); - } - if ( $v =~ /fields/ ) { + elsif ( $k =~ /fields/ ) { is_deeply( $json, - { documentation => 'Moose', name => 'Moose.pm' }, + { documentation => ['Moose'], name => ['Moose.pm'] }, 'controller proxies field query parameter to ES' ); } + elsif ( $v eq 200 ) { + ok( $json->{name} eq 'Moose.pm', 'Moose.pm' ); + } } }; diff --git a/t/server/controller/search/autocomplete.t b/t/server/controller/search/autocomplete.t index 208353a4d..cceedded4 100644 --- a/t/server/controller/search/autocomplete.t +++ b/t/server/controller/search/autocomplete.t @@ -15,7 +15,7 @@ test_psgi app, sub { 'GET' ); my $json = decode_json_ok($res); - my $got = [ map { $_->{fields}{documentation} } + my $got = [ map { @{ $_->{fields}{documentation} } } @{ $json->{hits}{hits} } ]; is_deeply $got, [ diff --git a/t/server/controller/search/reverse_dependencies.t b/t/server/controller/search/reverse_dependencies.t index 5fee46f2f..243af0627 100644 --- a/t/server/controller/search/reverse_dependencies.t +++ b/t/server/controller/search/reverse_dependencies.t @@ -125,7 +125,7 @@ test_psgi app, sub { ); my $json = decode_json_ok($res); is( $json->{hits}->{total}, 1, 'total is 1' ); - is( $json->{hits}->{hits}->[0]->{fields}->{distribution}, + is( $json->{hits}->{hits}->[0]->{fields}->{distribution}->[0], 'Multiple-Modules-RDeps-A', 'filter worked' ); } }; diff --git a/t/server/sanitize_query.t b/t/server/sanitize_query.t index 3ee0130fb..4159df491 100644 --- a/t/server/sanitize_query.t +++ b/t/server/sanitize_query.t @@ -70,7 +70,7 @@ test_psgi app, sub { my $json = decode_json_ok($res); is_deeply $json->{hits}{hits}->[0]->{fields}, - { pauselen2 => 18 }, 'script_fields via metacpan_script' + { pauselen2 => [18] }, 'script_fields via metacpan_script' or diag explain $json; }, ); @@ -149,8 +149,7 @@ while ( my ( $mscript, $re ) = each %replacements ) { $cleaned = MetaCPAN::Server::QuerySanitizer->new( query => $query )->query; - like_if_defined - delete $cleaned->{foo}{bar}->[0]->{script}, + like_if_defined delete $cleaned->{foo}{bar}->[0]->{script}, $re, "$mscript script replaced"; is_deeply $cleaned, { foo => { bar => [ { other => 'val' } ] } }, 'any hash structure accepts metacpan_script'; @@ -169,8 +168,7 @@ hash_key_rejected( { my $hash = filtered_custom_score_hash( hi => 'there' ); - is_deeply - delete $hash->{query}{filtered}{query}, + is_deeply delete $hash->{query}{filtered}{query}, { custom_score => { query => { foo => 'bar' }, hi => 'there' } }, 'remove custom_score hash';