- Can I install manoakys/nusoap-bundle in a Laravel application?
- Composer may resolve the dependency, but the package is a Symfony2 bundle with no ServiceProvider, facade, publishable config, or package auto-discovery, so Laravel will never load it. You would end up instantiating NuSOAP by hand while paying for an abstraction layer that contributes nothing. Treat the repository as a source of the underlying library rather than an installable Laravel dependency.
- Does manoakys/nusoap-bundle support Laravel 10 or Laravel 11?
- No. The bundle targets the Symfony2 generation and depends on symfony/framework-bundle ^2.x, while Laravel 10 and 11 pull Symfony 6 or 7 components transitively, so Composer resolution is likely to fail outright before any code runs. There is no ServiceProvider or auto-discovery metadata that would let modern Laravel integrate it.
- How do I install manoakys/nusoap-bundle?
- In a Symfony2 application you would require it through Composer and register the bundle in AppKernel along with its XML/YAML service definitions. Laravel has no equivalent bundle registration step and nothing to publish, so installation in a Laravel app leaves you with an inert dependency.
- Is NuSOAP compatible with PHP 8?
- NuSOAP predates modern PHP: it relies on constructs removed in PHP 8.0 such as each(), triggers dynamic-property deprecations on PHP 8.2, and has no typed signatures. It is neither PSR-18 nor PSR-7 compliant, so compatibility with the PHP version your Laravel app targets must be verified empirically rather than assumed. Test every code path, including WSDL parsing, request building, and response handling.
- What is the difference between NuSOAP and PHP's ext-soap?
- ext-soap is a native extension maintained by php-src, supports most enterprise SOAP integrations, and carries no third-party risk when paired with a checked-in WSDL. NuSOAP retains a niche for generating WSDL directly from PHP and for rpc/encoded services that ext-soap handles poorly. If your contract does not need those features, ext-soap wrapped in a small adapter is the safer choice.
- Is manoakys/nusoap-bundle actively maintained?
- No. The repository has zero stars, zero dependents, no issue traffic, and no PR review history, and its Symfony2-era design has been frozen since roughly the 2011 to 2016 period. With no maintainer there is no CVE response path for XML parsing, entity handling, or transport configuration.
- What license does NuSOAP use and can I ship it in a product?
- NuSOAP carries LGPL terms, so you must confirm your obligations before distributing it inside a commercial product. Bundling it statically or modifying it can trigger additional requirements, and this bundle adds no licensing clarity of its own. Review the terms with legal before committing to the dependency.
- How do I build a SOAP client in Laravel without this bundle?
- Define a SoapGatewayInterface in your domain layer, bind a concrete implementation in a ServiceProvider, and expose settings through config/soap.php. For most contracts, back that interface with PHP's native SoapClient and a checked-in WSDL. If you genuinely need NuSOAP, install a maintained fork directly and isolate it behind the same interface so swapping implementations later is a one-line binding change.
- Are there maintained alternatives to manoakys/nusoap-bundle?
- Yes. PHP's ext-soap is the default choice for document/literal services and needs no third-party package. If NuSOAP's WSDL generation or rpc/encoded support is genuinely required, use a maintained fork such as nusoap/nusoap directly instead of this Symfony2 bundle, and wrap it behind your own interface.
- Can I vendor the NuSOAP classes into Laravel manually?
- You can copy the NuSOAP classes into a namespace such as app/Support, strip the Symfony DI wiring, and call them from your own services. Understand that you now own that code: you are responsible for PHP 8 compatibility fixes, security patches for XML handling, and LGPL compliance. Keep the implementation behind an interface so it can be replaced when a maintained alternative becomes necessary.