As there is no longer a :syntax option for import there are no symbol conflicts for application's that export globals from sub modules. In this example we have a MyApp::Schemas module that contains a large number of OpenAPI shared schema objects (using Dancer2::Plugin::OpenAPI). These schema's are then re-used in other route handling modules.
As there is no longer a
:syntax
option for import there are no symbol conflicts for application's that export globals from sub modules. In this example we have a MyApp::Schemas module that contains a large number of OpenAPI shared schema objects (using Dancer2::Plugin::OpenAPI). These schema's are then re-used in other route handling modules.App minimal layout
lib/MyApp.pm lib/MyApp/V1/Object1.pm lib/MyApp/Schemas.pm
MyApp.pm
MyApp/V1/Object1.pm
MyApp/Schemas.pm
When running the app you get the following error:
Subroutine MyApp::Schemas::import redefined at /usr/lib/x86_64-linux-gnu/perl-base/Exporter.pm line 30 (#1)