You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Upgraded to the latest php-soap stack: php-soap/encoding 0.35.0 (pinned exactly), php-soap/engine ^2.20, php-soap/wsdl-reader ^0.33, php-soap/psr18-transport ^2.1 and veewee/xml ^4.13, which uses the PHP 8.4 Dom\ API. Custom SOAP header configurators now receive Dom\Element instead of DOMElement.
From php-soap/encoding 0.33, attributes with falsy values (0, false) are sent in requests. Older versions silently dropped them.
Performance
Complex types are decoded by a bundle copy of php-soap's ObjectEncoder/ObjectAccess, located in src/Encoding/Encoder with every change marked OVERRIDE START/END. It decodes without exception-driven control flow and without building lens objects for every property. A 3 MB SynXis availability response now decodes in ~0.35 s instead of ~6 s, with identical output.
Derived types such as soapenc:Array restrictions still use php-soap's own built-in encoders.
Tests
Added PHPUnit tests that check every complex type is decoded by the bundle's encoder and that decoded output matches php-soap's own decoder (document/literal and rpc/encoded).