Swow 1.0 Release: Full PHP 8.4 Support, New Pipe API, and Critical Fixes

The latest Swow release brings complete PHP 8.4 compatibility, introduces a powerful pipe API (Swow\pipe(), Swow\fileno(), Swow\pipe_from_fd()), adds CPU core detection via Swow\nproc(), enhances SSL/TLS reliability, restructures closure serialization, fixes numerous memory‑safety and compatibility bugs, and updates internal libraries.

Open Source Tech Hub
Open Source Tech Hub
Open Source Tech Hub
Swow 1.0 Release: Full PHP 8.4 Support, New Pipe API, and Critical Fixes
Swow release banner
Swow release banner

Version Highlights

Swow adds full support for PHP 8.4, improves SSL/TLS reliability, includes critical memory‑safety fixes, and introduces major architectural changes.

New Features

Full compatibility with PHP 8.4.

Pipe API: Swow\pipe(), Swow\fileno(), and Swow\pipe_from_fd() for creating and managing operating‑system pipes. Swow\nproc() returns the number of CPU cores available to the process. stop() method enables graceful shutdown of a running Swow server.

INI directive swow.hook_pdo_pgsql to activate Swow hooks for PDO PostgreSQL.

Enhancements

Closure serialization has been completely rewritten; the new implementation builds closure code from an abstract syntax tree (AST). This change is breaking for code that relied on the previous serialization format.

Performance and compatibility improvements: added Apple Clang support and raised the minimum required libcurl version to 7.61.0.

Bug Fixes

Resolved multiple SSL issues, including correct operation of enableCrypto() and proper handling of CA certificates read from streams.

Fixed use‑after‑free vulnerabilities in coroutine management and exception handling, eliminating crashes when coroutines terminate or exceptions are thrown.

Addressed ZTS (thread‑safe) build crashes that occurred during shutdown.

Patched numerous PHP 8.4 compatibility problems across the code base.

Updated libpq library search paths for PostgreSQL support.

Corrected build‑time bugs such as string terminator handling, left‑shift overflow, and macro expansion errors.

Fixed HTTP response handling where the Content‑Length header could be undefined.

Removed

The error constant Swow\Errno::ESTALE has been removed.

Internal Updates

Upgraded libcat’s bundled libuv version.

Refined compatibility macros and wrapper functions.

Integrated the latest swow_fs implementation from the PHP source tree to improve filesystem operations.

Embedded the most recent PHP 8.4 PostgreSQL source for enhanced database capabilities.

Added new test suites covering OpenSSL hooks, TLS handling, and property hooks.

Improved CI/CD configuration and development tooling.

Swow internal diagram
Swow internal diagram
Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

SecuritycoroutineSwowRelease NotesPHP 8.4
Open Source Tech Hub
Written by

Open Source Tech Hub

Sharing cutting-edge internet technologies and practical AI resources.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.