Subject: | Moose newer than 2.1005 cannot find a class in not explicitly loaded module |
Archive::RPM stopped to work with Moose newer than 2.1005. See CPAN RT#100701 for more details. In short, delegating to a class whose name differs from a module name does not work anymore because the %INC does contain an entry.
This is because Moose changes a way how too look for a class in this commit:
commit c16411bc122732a1fe7f96f801a5cf127b146406
Author: Jesse Luehrs <doy@tozt.net>
Date: Wed Sep 4 14:39:59 2013 -0400
stop using Class::Load
The heuristics involved in is_class_loaded and such have caused all
kinds of issues over the years. Instead, we should use Module::Runtime,
which uses %INC as the only check to see if a package has been loaded.
This should hopefully not cause too many problems now that we make sure
the appropriate %INC entry is set whenever Moose creates a class.
Class::Load should stay as a dep for now, because we haven't actually
deprecated Class::MOP::load_class and such yet, but we should get on
that too.
Is there any plan to fix it?