Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Nusoap Laravel Package

econea/nusoap

NuSOAP is a pure-PHP library for creating and consuming SOAP 1.1 web services with WSDL 1.1 and HTTP 1.0/1.1 support. No PHP extensions required. Install via Composer and call methods on the client.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Legacy System Modernization (with a stack prerequisite): Still the core value — integrate SOAP-based ERP/government/partner systems without rewriting core logic. But v0.10.0 sets a hard floor of PHP 8.2, so this now supports modernization only for products already on (or committed to) PHP 8.2+.
  • Cost-Effective API Connectivity: No custom SOAP client needed. The release adds real test infrastructure (Nette Tester suites, E2E server tests, Codecov), which lowers the maintenance burden we absorb — the "buy" side of build-vs-buy gets stronger, not weaker.
  • Compliance & Interoperability: SOAP 1.1/1.2 support remains, and the new configurable charencoding property (getter/setter) directly addresses a common integration defect class — legacy partners sending ISO-8859-1 or non-UTF-8 payloads. That's fewer "garbled characters in the invoice feed" tickets.
  • Bidirectional Integration (new): The addition of E2E server tests confirms the SOAP server path is exercised, not just the client. This opens an option we previously didn't credit: exposing a SOAP endpoint to a partner that can't consume REST, without a separate stack.
  • Roadmap Flexibility: Still supports gradual SOAP → REST/GraphQL migration by keeping legacy endpoints alive — but the PHP 8.2 floor should be sequenced against our PHP upgrade roadmap, not treated as free.
  • Build vs. Buy: Skews further toward "buy." Active maintenance, CI matrix, static analysis config, and a deprecation-cleanup pass for PHP 8.5 are exactly the invisible costs we'd otherwise own.

When to Consider This Package

  • SOAP Dependency: Your product or a partner requires SOAP (government APIs, legacy SaaS, EDI-adjacent systems).
  • PHP 8.2–8.5 — now a requirement, not a range: v0.10.0 requires PHP >= 8.2. This is a breaking change versus the previously stated 5.6–8.5 support. Runtime support for 5.6–8.1 is effectively dropped (those versions are lint-only in CI, not tested).
  • No usable ext-soap: The package's remaining differentiator is being pure PHP — valuable on shared hosting or containerized environments where the native soap extension is unavailable or disabled. If ext-soap is available, prefer it.
  • Low-to-moderate complexity: WSDL-driven request/response work. The charset setter helps with encoding; still avoid if you need WS-Security, MTOM, or WS-Addressing.
  • Avoid / re-plan if:
    • You are on PHP < 8.2 with no upgrade path this cycle — pin ^0.9 as a stopgap and set an explicit expiry date, or look elsewhere.
    • You can migrate to REST/GraphQL — still prioritize future-proofing.
    • You require hardened quality gates: the release explicitly allows PHPStan and CodeSniffer CI to fail, so "static analysis configured" is advisory, not enforced. Do not treat it as an assurance signal.
    • You're on PHP 8.6+ where the native extension likely suffices.

How to Pitch It (Stakeholders)

For Executives: "This package keeps us connected to [Partner X's ERP] and other SOAP-only systems without custom development. The new release is actively maintained — modern test suite, PHP 8.5 compatibility, encoding fixes that reduce integration defects. One decision it forces: it now requires PHP 8.2 or newer. If our PHP upgrade is already on the roadmap, this is a low-cost, low-risk dependency; if not, we need to either accelerate that upgrade or pin the previous version with a dated exit plan. Either way, no bespoke SOAP client to build or maintain."

For Engineering: *"v0.10.0 of the NuSOAP lineage (release published from contributte/nusoap — confirm and pin the exact Composer package name your app depends on) is a meaningful maintenance release with one breaking change:

  • Breaking: composer.json modernized to require PHP >= 8.2. Tests and linter now target 8.2–8.5 only; PHP 5.6–8.1 is no longer a supported runtime. If we're below 8.2, stay on ^0.9 deliberately and track the upgrade.
  • Feature: configurable charencoding with getter/setter — use it for partners on ISO-8859-1 or other legacy charsets instead of post-processing strings.
  • Fixes: PHP 8.5 deprecations (curl_close(), non-canonical casts), PHP 8.2+ wsdl::$schemaTargetNamespace deprecation, undefined $tt_ns warning in serialize_val(), removed $HTTP_SERVER_VARS.
  • Quality: real test suite (Nette/contributte tester), E2E server tests — so the server path is now credible, not just the client — plus Codecov and static analysis config.
  • Caveat: PHPStan and CodeSniffer are configured to fail softly in CI. Treat static analysis as directional; our own review and tests remain the gate.
  • Net: speed to integrate unchanged, reliability improved, and the version floor is now something we must schedule rather than assume."*

For Developers: *"Pin explicitly — this is a breaking release:

composer require contributte/nusoap:^0.10   # requires PHP >= 8.2
# or, if we're still below 8.2:
composer require <same-package>:^0.9

Usage is unchanged (new \nusoap_client($wsdl)). Set charencoding when a partner isn't UTF-8. Since the server path now has E2E coverage, it's fair game for exposing a SOAP endpoint if needed. Docs remain sparse — keep our own tests around namespaces, fault handling, and charset edge cases. Verify the fork/package name resolves to the maintained line before committing."*

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
steadrun/laravel-monitor
labyrinthe/connect-laravel
elmogy/layan
drewdan/sentinel-client
dskripchenko/laravel-llm
fatryst/nuonuo
stevenay/myanfont
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin