Skip Menu |
 

This queue is for tickets about the SOAP-Lite CPAN distribution.

Report information
The Basics
Id: 104151
Status: new
Priority: 0/
Queue: SOAP-Lite

People
Owner: Nobody in particular
Requestors: bluefeet [...] gmail.com
Cc:
AdminCc:

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



Subject: Load-order issue with SOAP::Constants
Date: Fri, 01 May 2015 17:51:42 +0000
To: "bug-SOAP-Lite [...] rt.cpan.org" <bug-SOAP-Lite [...] rt.cpan.org>
From: Aran Deltac <bluefeet [...] gmail.com>
Download (untitled) / with headers
text/plain 902b
This fails: perl -e 'use SOAP::Constants' Use of uninitialized value $SOAP::Constants::WRONG_VERSION in concatenation (.) or string at /usr/local/share/perl/5.14.2/SOAP/Lite.pm line 3531. This passes: perl -e 'use SOAP::Lite; use SOAP::Constants' There is a load-order issue somewhere in here. I found this because @work we preload modules alphabetically before forking processes and SOAP::Constants comes before SOAP::Lite alphabetically. Often the cause of load order issues is a simple circular dependency where module A depends on module B and module B depends on module A (A <-> B). A common fix would be to break out the dependent functionality into separate modules so that you have: A -> C <- B Where C is a new module that contians code from A and B which breaks the circular dependency. That doesn't always fix it logically, but some derivative of that pattern works in most cases.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.