Subject: | documentation lies, patches LWP::UserAgent to always redirect |
This code:
*LWP::UserAgent::redirect_ok = sub { 1 }
(https://metacpan.org/source/PHRED/SOAP-Lite-1.20/lib/SOAP/Transport/HTTP.pm#L41)
...breaks the toggling off of redirect handling in LWP::UserAgent.
Moreover, the documentation lies by saying that this is *not* done by default:
SOAP::Lite's HTTP Transport module attempts to provide a simple patch to
LWP::Protocol to enable HTTP Keep Alive. By default, this patch is turned
off, if however you would like to turn on the experimental patch change the
constant like so:
$SOAP::Constants::PATCH_HTTP_KEEPALIVE = 1;
(https://metacpan.org/source/PHRED/SOAP-Lite-1.20/lib/SOAP/Constants.pm#L159-166)
But look, the variable is set to TRUE! The documentation flat out lies.
$PATCH_HTTP_KEEPALIVE = 1;
(https://metacpan.org/source/PHRED/SOAP-Lite-1.20/lib/SOAP/Constants.pm#L122)
What is the purpose of this code? It seems to be wanting to work around some
sort of bug in an LWP module, but I can find no evidence that there was ever a
bug reported upstream. If there is a bug, **we can fix it**, rather than breaking
everyone's handling of redirects if some other unrelated piece of code happens
to perform a SOAP request.