Releases: phpro/soap-client
Releases · phpro/soap-client
Version 0.6.1
Total issues resolved: 7
- 102: Fixes #36
- 109: Add Symfony 4 compatibility
- 113: Generated getResult() method is incompatible with ResultProviderInterface parent method due to missing return type declaration
- 115: Fix result provider contract
- 120: Add ClientMethodMatchesRule
- 128: Change wrongly referenced interface in docs/client.md
- 129: Update call to removed function
Version 0.6.0
Total issues resolved: 5
- 56: Client generator
- 61: Adding return types
- 77: Replace guzzle with httplug
- 80: Fix Issue #26 Strict Typing
- 101: Update assembler documentation
Migrating from 0.5.* to 0.6.0
Interface changes
Following interfaces have been changed, these need to be updated in your implementation:
\Phpro\SoapClient\CodeGenerator\Assembler\AssemblerInterface::canAssemble
now requires a strict bool return type\Phpro\SoapClient\CodeGenerator\Assembler\GetterAssembler::__construct
now requires an instance of GetterAssemblerOptions\Phpro\SoapClient\Client::call
now requires a strict return type of ResultInterface\Phpro\SoapClient\Client::call
The method now needs to be strict string type hinted
Guzzle to new Httplug implementation
composer require psr/http-message:^1.0 php-http/httplug:^1.1 php-http/message-factory:^1.0 php-http/discovery:^1.3 php-http/message:^1.6 php-http/client-common:^1.6 php-http/guzzle6-adapter:^1.1
// Wrap your guzzle client in a HTTPlug adapter:
$httpClient = new Client($guzzleClient);
// Use the new HttPlugHandle instead of the old GuzzleHandle
$clientBuilder->withHandler(HttPlugHandle::createForClient($httpClient));
// use the new HttPlugWsdlProvider instead of the old GuzzleWsdlHandle
$clientBuilder->withWsdlProvider(HttPlugWsdlProvider::createForClient($httpClient));
// If you are using NTLM:
// Remove the NtlmMiddleware and add the curl options to the guzzle client configuration instead:
$httpClient = Client::createWithConfig(['curl' => [
CURLOPT_HTTPAUTH => CURLAUTH_NTLM,
CURLOPT_USERPWD => 'username:password',
]]);
Deprecated
These methods are deprecated and will be removed in a next release:
\Phpro\SoapClient\CodeGenerator\Config\ConfigInterface::getNamespace()
usegetTypeNamespace()
instead.\Phpro\SoapClient\CodeGenerator\Config\ConfigInterface::getDestination()
usegetTypeDestination()
instead.\Phpro\SoapClient\CodeGenerator\Config\ConfigInterface::setNamespace()
usesetTypeNamespace()
instead.\Phpro\SoapClient\CodeGenerator\Config\ConfigInterface::setDestination()
usesetTypeDestination()
instead.
Version 0.5.3
Total issues resolved: 20
- 32: Create generate:types destination if it doesn't exist
- 62: Add test for WSSE encryption
- 64: Feature/make command more flexible
- 66: Add ExtendAssembler
- 67: Don't generate use statement for the same namespace
- 68: optimizes shell command to use soap-client
- 70: fixes code documentation
- 71: Replace underscores with DIRECTORY_SEPARATOR (PSR-O, PSR-4)
- 73: CodeGenerator - date changed to dateTime within a class name
- 74: Make sure to replace exact matching types only
- 75: Update documentation about logger
- 78: Only replace underscores in class name, not entire path
- 82: Update documentation for GuzzleWsdlProvider
- 89: Update to PHPUnit 6
- 90: Update documentation for multiple clients
- 91: Omit null
- 93: Fix property assembler test
- 94: Fix typos in readme
- 95: Improve usage documentation
- 96: Fix handlers typos
Version 0.5.2
Version 0.5.1
Total issues resolved: 1
Version 0.5.0
Total issues resolved: 7
Version 0.4.0
Total issues resolved: 2
Version 0.3.1
Version 0.3.0
New features
- #21: Middlewares feature request
- #23: Middlewares feature
- Use your preferred data transfer layer with Handlers
- Get control of the HTTP layer with middlewares
Breaking changes
- Exception normalization: The client always throws a
\Phpro\SoapClient\Exception\SoapException
. Therefor we also changed theFaultEvent
. ThegetSoapFault()
method was renamed togetSoapException()
. This means you will have to change your custom EventListeners that listen to the FaultEvent.
Version 0.2.3
New features
- Added
TraitAssembler
- Added
UseAssembler
- Use the
UseAssembler
in theInterfaceAssembler
- Added
FluentAssembler
- Added an optional
wrappedClass
attribute to theResultProviderAssembler
- Added
FinalClassAssembler
- Added
PropertynameMatchesRule
- Added
TypeMapRule
- Added
MultiRule
Bugfixes
- Fixed logging prefix