Skip Menu |

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

Report information
The Basics
Id: 17713
Status: resolved
Priority: 0/
Queue: SOAP-Lite

People
Owner: Nobody in particular
Requestors: cpan [...] clotho.com
Cc:
AdminCc:

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



Subject: Deprecation of uri method is confusing
My existing code uses "SOAP::Lite->uri($uri)" to get started. I am seeing this warning: use_prefix has been deprecated. if you wish to turn off or on the use of a default namespace, then please use either ns(uri) or default_ns(uri) at /Users/chris/perl/lib/perl5/site_perl/SOAP/Lite.pm line 858. I was VERY confused because "grep -r use_default" yielded nothing in my own software. I had to look at the SOAP::Lite CHANGES document (which is out of date) to figure out that uri() is deprecated too, but isn't mentioned in the deprecation warning. Two fixes are needed: 1) uri() needs to be mentioned in the warning 2) SOAP::Lite should not call it's own deprecated methods uri() should call ns_default, not use_default -- Chris
Places where SOAP::Lite v0.67 calls its own deprecated uri() method: Line 2553: my $result = $self->serializer ->prefix('s') # distinguish generated element names between client and server ->uri($method_uri) ->envelope(response => $method_name . 'Response', @results); Line 3008: $self->endpoint($method{endpoint}) ->uri($method{uri}) ->on_action(sub{qq!"$method{soapaction}"!}); Line 3097: my $som = $soap->uri($uri->as_string)->call($method => @_); Places where the documentation still recommends the deprecated method: Line 3598: my $soap = SOAP::Lite ->uri($uri) ->proxy($proxyUrl, timeout => 5 ); Line 3848: my $som = SOAP::Lite ->uri($SOME_NAMESPACE) ->parts([ $ent ]) ->proxy($SOME_HOST) ->some_method(SOAP::Data->name("foo" => "bar")); Line 3861: my $soap = SOAP::Lite ->uri($NS) ->proxy($HOST); Line 4115: print SOAP::Lite ->uri('http://localhost/My/Parameters') ->proxy('http://localhost/', options => {compress_threshold => 10000}) ->echo(1 x 10000) ->result; Line 4237: $som = SOAP::Lite->uri('urn:MyURI') ->proxy($HOST) ->use_prefix(0) ->myMethod(); Line 4344: my $proxy = SOAP::Lite->uri($uri)->proxy($proxyUrl); -- Chris
From: cdolan [...] cpan.org
Oops, I must apologize. I was accidentally reporting against v0.66, not v0.67. I recollected incorrectly which version was installed on my work computer. I see that the uri() method is still heavily referenced in the documentation, so I will leave this bug open. However, the severity is greatly diminished. Apologies again...
Should be fixed from 0.710.1 on