Skip to content

Some of the lib/ modules do not load standalone, but they should #156

Description

@ribasushi

Running the following emits a number of weird exceptions (ignoring deprecations):

rabbit@Ahasver:~/devel/rapidapp$ find lib/ -name '*.pm' -exec perl -Ilib -e '
  (my $mod = substr(q({}), 4, -3 )) =~ s!/!::!g;
  eval "require $mod" or print "\n\n\nLoading $mod failed:\n$@\n"
' \; 2>/dev/null
Loading RapidApp::Module failed:
The method 'apply_init_modules' was not found in the inheritance hierarchy for RapidApp::RootModule at /home/rabbit/perl5/perlbrew/perls/5.16.2/lib/site_perl/5.16.2/x86_64-linux-thread-multi-ld/Moose/Exporter.pm line 419
    Moose::around('apply_init_modules', 'CODE(0x27aaaf8)') called at lib/RapidApp/RootModule.pm line 50
    require RapidApp/RootModule.pm at lib/RapidApp/Util.pm line 61
    RapidApp::Util::BEGIN at lib/RapidApp/RootModule.pm line 0
    eval {...} at lib/RapidApp/RootModule.pm line 0
    require RapidApp/Util.pm at lib/RapidApp/JSONFunc.pm line 10
    RapidApp::JSONFunc::BEGIN at lib/RapidApp/RootModule.pm line 0
    eval {...} at lib/RapidApp/RootModule.pm line 0
    require RapidApp/JSONFunc.pm at lib/RapidApp/Module.pm line 18
    RapidApp::Module::BEGIN at lib/RapidApp/RootModule.pm line 0
    eval {...} at lib/RapidApp/RootModule.pm line 0
    require RapidApp/Module.pm at (eval 1) line 2
    eval 'require RapidApp::Module
;' at -e line 3
Loading RapidApp::Template::Context failed:
Bareword "Template::Constants::ERROR_PLUGIN" not allowed while "strict subs" in use at lib/RapidApp/Template/Context.pm line 213.
Compilation failed in require at (eval 1) line 2.
Loading RapidApp::Template::Provider failed:
Bareword "Template::Constants::STATUS_ERROR" not allowed while "strict subs" in use at lib/RapidApp/Template/Provider.pm line 200.
Compilation failed in require at (eval 1) line 2.

Generally things should be loadable on their own, it avoids a whole class of difficult-to-track load-order bugs.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions