Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Community News:
Latest PECL Releases (09.15.2026)
Sep 15, 2026 @ 08:05:24

Latest PECL Releases:

  • gRPC 1.84.0
    - gRPC Core 1.84.0 update

  • opentelemetry 1.4.1
    See https://github.com/open-telemetry/opentelemetry-php-instrumentation/releases/tag/1.4.1
  • maxminddb 1.14.0
    * Bounded the resources that the pure PHP decoder spends on a single lookup. A crafted database could nest data-section pointers to shared targets so that decoding one record cost exponential time and memory, or point many times at one large value so that the decoder copied far more data than the file holds. The decoder now follows the Reader Resource Limits section of the MaxMind DB specification. Each lookup is limited to 65,536 values, 512 levels of nesting, and 2 MiB of string and bytes payload. * Exceeding a limit throws an `InvalidDatabaseException`. * Opening a database whose metadata exceeds a limit throws the same exception. * A scalar that declares more than 16 bytes, the width of the widest fixed-width type, is rejected as invalid data. * The bundled libmaxminddb used by `--with-maxminddb-bundled` builds of the extension now applies the same decoder limits. The extension throws an `InvalidDatabaseException` when a lookup exceeds them. * The pure PHP reader is about 40% faster on City lookups. It no longer seeks before a read that continues where the last one ended, and it checks read lengths with `strlen()` instead of `ftell()`. * The Windows build configuration now accepts either `libmaxminddb.lib` or `maxminddb.lib` when building the extension. The `lib` prefix was removed in libmaxminddb 1.6.0, but the libmaxminddb that PHP publishes for Windows builds is still 1.5.0, which uses the prefixed name. Pull request by Jean-Baptiste Nahan. GitHub #231. * Replaced `XtOffsetOf()` with `offsetof()`. The `XtOffsetOf()` alias has been removed in PHP 8.6. Pull request by Remi Collet. GitHub #252. * The extension can now be built from a bundled copy of libmaxminddb, on both Unix-like systems and Windows, by passing `--with-maxminddb-bundled` to `configure` (or to `configure.bat` on Windows). This produces an extension that does not depend on a system libmaxminddb, which is a prerequisite for distributing precompiled builds; on Windows it also replaces the 1.5.0 import library that PHP publishes for Windows builds. The default is unchanged: without the flag, the extension links against a system libmaxminddb as before. GitHub #265. * The `conflict` constraint on `ext-maxminddb` in `composer.json` is again updated when a release is cut. The substitution that maintains it stopped matching in April 2024, when the constraint's separator changed from a comma to `||`, so the constraint has read `<1.11.1` through four releases. Users of the C extension should note the effect of reviving it: `ext-maxminddb` is a Composer platform package, so this release conflicts with an older compiled extension and `composer update` will require upgrading the two together. GitHub #266.
  • zephir_parser 2.8.0
    ### Added - Support PHP attribute syntax on every declaration PHP allows for a class member: `#[Attr]`, `#[Attr(1, "s", key: "v")]` and `#[A, B(2)]` on a class, interface, trait, function, property, class constant, method and parameter (including closure and interface-method parameters). The host node gains an `attributes` key, appended last and omitted entirely when the declaration carries none, so every node that parsed before keeps its exact shape. `#[A] #[B]` and `#[A, B]` produce the same flat list, since the grouping carries no meaning in PHP either. Arguments reuse the call-argument non-terminal, so a named argument (`key: expr`) needs no special form and the grammar accepts more than a constant expression, leaving the compiler to name the sub-expression it cannot fold. The canonical order is docblock then attributes; the reverse is tolerated ([zephir-lang/zephir#2466](https://github.com/zephir-lang/zephir/issues/2466)).

    Changed

    • #[ is a new token. A bare # remains a scanner error, and #[ inside a string, a comment, a docblock or a %{ ... }% cblock is still part of that literal.
    • An attribute named after one of Zephir's case-insensitive keywords is accepted for the eleven that are plausible attribute names (Deprecated, Final, Internal, Readonly, Static, Default, Case, Empty, Void, Reverse, Inline) and normalized to that canonical spelling. A keyword whose terminal matches two spellings, such as float, has no such rule and must be written qualified.
  • yac 2.4.2
    - String values are decoded straight into the zend_string handed back to PHP, no second copy per read - Copying a value and checksumming it are a single pass on writes as well as reads - The next probe slot is prefetched while the current one's lock, load and compare are in flight - Faster argument parsing for add/set/get/delete/dump - dump() builds its result array in bulk instead of one insert per entry - Overwriting an entry whose value outgrew its block skips the checksum of the block being replaced - CRC-32C picks its implementation by probing the CPU at runtime, so a binary built with -msse4.2 still runs on older hardware - Fixed get() crashing under concurrency: find() bumped the hit count and access time without holding the slot, overwriting the type flag a concurrent write had just published - flush() now takes every slot before clearing the table; it could previously land mid-publish and leave a slot permanently unusable - dump() returns an empty result while a flush() is in progress instead of reporting half-cleared slots - Fixed a wild-pointer read in the block-value guard of find() - Fixed dump() on PHP older than 7.4 - Fixed the packaged tarball missing storage/crc, which made it fail to build
  • datadog_trace 1.25.1
    ## All products ### Fixed - Fix SSI MSHUTDOWN on PHP 7.3 with opcache #4169

    Tracer

    Fixed

    • Set ZEND_ENABLE_STATIC_TSRMLS_CACHE=1 on windows as well for windows ZTS builds #4172
    • Fix #4163: broken frankenphp shutdown signal on musl #4167

    Internal

    • Remove any dependency on aws-lc-sys #4170

    Profiling

    Fixed

    • Fix IO/allocation sampling intervals #4159

    AppSec

    Fixed

    • Use MetricType::Distribution for RASP_RULE_DURATION_DIST #4093
    • Do not panic when WAF arrays exceed 2^16-1 elements DataDog/libddwaf-rust#28
tagged:

Link:

Community News:
Latest PECL Releases (09.08.2026)
Sep 08, 2026 @ 08:05:20

Latest PECL Releases:

  • gRPC 1.84.0RC1
    - gRPC Core 1.84.0 update

  • datadog_trace 1.25.0
    ## All products ### Added - Support the stable OpenTelemetry `deployment.environment.name` resource attribute, mapped to `DD_ENV` (in addition to the legacy `deployment.environment`) #4148

    Internal

    • Exclude DD_API_KEY and OTLP exporter header values from configuration telemetry #3961

    Tracer

    Changed

    • Add a 1 MB size limit to Dynamic Instrumentation capture snapshots #4126

    Fixed

    • Fix missing/mis-tagged drupal.theme.render spans on Drupal >= 11.3 and under early-returning renders #4145
    • Fix sidecar reconnection error handling DataDog/libdatadog#2463
    • Fix a sidecar listening-socket leak across forks DataDog/libdatadog#2447

    Internal

    • Reduce reconnect overhead for periodic background HTTP requests in the sidecar (telemetry/trace flushes) DataDog/libdatadog#2440
    • Reduce the number of HTTP requests sent for shutdown telemetry DataDog/libdatadog#2435
    • Feature Flag Evaluation: support arbitrary semver version formats and add serial-id tracking to exposure events DataDog/libdatadog#2413, DataDog/libdatadog#2402
    • Improve crash-report accuracy by filtering stack frames above the faulting frame DataDog/libdatadog#2428
    • Fix -flto -ffat-lto-objects builds DataDog/libdatadog#2460

    Profiling

    Changed

    • Improve profiler throughput by ~1% by gating debug-only runtime cache stats behind a build feature #4130

    Fixed

    • Restore I/O GOT hooks on module shutdown #4154

    Internal

    • Align zstd compression behavior across targets in the profiler's uploader DataDog/libdatadog#2400

    AppSec

    Internal

    • Move appsec communication onto the sidecar; the appsec helper is now built into the sidecar instead of as a separate binary, and the legacy C++ helper is removed #3725
  • mongodb 1.21.9
    **Full Changelog**: https://github.com/mongodb/mongo-php-driver/compare/1.21.8...1.21.9
  • mongodb 2.5.2
    <!-- Release notes generated using configuration in .github/release.yml at 2.5.2 -->

    Full Changelog: https://github.com/mongodb/mongo-php-driver/compare/2.5.1...2.5.2

  • mongodb 1.21.8
    ## What's Changed * Fix release workflow failing on root-owned git objects by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2066 * Document `phpize --clean` in build instructions by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2074 * Upgrade libmongoc to 1.30.9 by @paulinevos in https://github.com/mongodb/mongo-php-driver/pull/2077 * PHPC-2744 Fix dependency issue by @paulinevos in https://github.com/mongodb/mongo-php-driver/pull/2081

    Full Changelog: https://github.com/mongodb/mongo-php-driver/compare/1.21.7...1.21.8

  • mongodb 2.5.0
    <!-- Release notes generated using configuration in .github/release.yml at 2.5.0 -->

    What's Changed

    • PHPC-2753 Add link to ECR log-in by @kevinAlbs in https://github.com/mongodb/mongo-php-driver/pull/2055
    • Merge v2.4 into v2.x by @mongodb-drivers-pr-bot[bot] in https://github.com/mongodb/mongo-php-driver/pull/2058
    • PHPC-2751: Upgrade libmongoc to 2.5.0 by @paulinevos in https://github.com/mongodb/mongo-php-driver/pull/2054
    • Bump tests/drivers-evergreen-tools from e86753e to c70d29e by @dependabot[bot] in https://github.com/mongodb/mongo-php-driver/pull/2053
    • Merge v2.4 into v2.x by @mongodb-drivers-pr-bot[bot] in https://github.com/mongodb/mongo-php-driver/pull/2065
    • Update package.xml maintainers list by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2067
    • Fix release workflow failing on root-owned git objects by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2066
    • Merge v2.4 into v2.x by @mongodb-drivers-pr-bot[bot] in https://github.com/mongodb/mongo-php-driver/pull/2071
    • PHPC-2754: Update libmongocrypt to 1.20.3 by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2072
    • Merge v2.4 into v2.x by @mongodb-drivers-pr-bot[bot] in https://github.com/mongodb/mongo-php-driver/pull/2073
    • PHPC-2756: Upgrade libmongoc to 2.5.1 by @paulinevos in https://github.com/mongodb/mongo-php-driver/pull/2075

    New Contributors

    • @kevinAlbs made their first contribution in https://github.com/mongodb/mongo-php-driver/pull/2055

    Full Changelog: https://github.com/mongodb/mongo-php-driver/compare/2.4.1...2.5.0

  • yac 2.4.1
    - Integrity-check every value with CRC-32C on read: three interleaved hardware chains for values over 1KB on x86-64/ARM64, sliced-by-8 software table elsewhere - Eviction rework: separate expired sweep, victims picked by remaining ttl (ties fall to least hit), corrupt blocks tombstoned on find - A single MurmurHash64A drives home slot and probe stride (two hashes before) - hits/miss accumulated per process and folded once at request end, off the shared-counter hot path - Default memory raised: keys 4M to 8M, values 32M to 64M; compression on by default at 4K - Fixed a refcount leak on the multi-get $default - Entries failing to decompress are now invalidated instead of being evicted over and over - Fixed crc sampling and the decompression check - Fixed spurious kicks - Fixed the JSON serializer decoding from an unterminated buffer - Fixed info() folding miss counts into the hits counter
tagged:

Link:

Community News:
Latest PECL Releases (09.01.2026)
Sep 01, 2026 @ 08:05:19

Latest PECL Releases:

  • protobuf 5.36.1
    * See github.com/protocolbuffers/protobuf/releases/tag/v36.1 for release notes.

  • gRPC 1.83.1
    - gRPC Core 1.83.1 update
  • gRPC 1.82.2
    - gRPC Core 1.82.2 update
  • mongodb 1.21.7
    ## What's Changed * Update package.xml maintainers list by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2067

    Full Changelog: https://github.com/mongodb/mongo-php-driver/compare/1.21.6...1.21.7

  • mongodb 2.4.1
    <!-- Release notes generated using configuration in .github/release.yml at 2.4.1 -->

    What's Changed

    • PHPC-2742: Bump libmongocrypt to 1.20.2 by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2051
    • PHPC-2755: Fix test suite failures with PHP 8.6 by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2056
    • PHPC-2745: Reject null bytes in namespaces and periods in database names [v2.4] by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2060
    • PHPC-2745: Reject null bytes in namespaces and periods in database names [v1.21] by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2059
    • Bump drivers-github-tools action to v3 in release workflows by @GromNaN in https://github.com/mongodb/mongo-php-driver/pull/2063
    • Merge v2.4 into v2.x by @mongodb-drivers-pr-bot[bot] in https://github.com/mongodb/mongo-php-driver/pull/2061

    Full Changelog: https://github.com/mongodb/mongo-php-driver/compare/2.4.0...2.4.1

  • yac 2.4.0
    - Embed small scalars directly in the hash slot, avoiding value allocations for tiny entries - Switch compression from FastLZ to LZ4 (better ratio and speed) - get() accepts an optional $default argument (returned on miss instead of NULL) - dump() gains an $offset parameter and reports hits, atime, embedded and c_len per entry - Per-entry hit counters and start_time exposed in info()/dump() - Multi-get omits missing keys (filled with $default when given) instead of false placeholders - Field-by-field slot commits and spinlock backoff (pause/yield) reduce contention overhead - Fixed a startup hang when values_memory_size is below the 4M segment minimum - Fixed Windows shared memory cleanup (view unmapped exactly once) - Fixed valgrind-reported leaks and uninitialized reads (MINFO output, compression error paths)
  • phalcon 5.20.3
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
  • phalcon 5.20.2
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
tagged:

Link:

Community News:
Latest PECL Releases (08.11.2026)
Aug 11, 2026 @ 08:05:21

Latest PECL Releases:

  • taint 3.0.0
    - Support PHP 8.0 up to 8.5

    • Dropped PHP 7 support (use taint 2.1.x for PHP 7.x)
    • Propagate the taint mark through the frameless call fast paths (PHP 8.4+)
    • Extended sink coverage (see README for the full list)
  • sqlsrv 5.13.3
    Added - Windows support for installing the drivers with PIE (the PHP Installer for Extensions). PIE-based installation, introduced for Linux and macOS in 5.13.2, is now also available on Windows: `pie install microsoft/sqlsrv` and `pie install microsoft/pdo_sqlsrv`.

    Limitations

    • No support for inout / output params when using sql_variant type
    • No support for inout / output params when formatting decimal values
    • In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work
    • Always Encrypted requires MS ODBC Driver 17+
      • Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported
      • Issue #716 - With Always Encrypted enabled, named parameters in subqueries are not supported
      • Issue #1050 - With Always Encrypted enabled, insertion requires the column list for any tables with identity columns
      • Always Encrypted limitations

    Known Issues

    • Connection pooling on Linux or macOS is not recommended with unixODBC < 2.3.7
    • When pooling is enabled in Linux or macOS
      • unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages
      • due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples here
  • pdo_sqlsrv 5.13.3
    Added - Windows support for installing the drivers with PIE (the PHP Installer for Extensions). PIE-based installation, introduced for Linux and macOS in 5.13.2, is now also available on Windows: `pie install microsoft/sqlsrv` and `pie install microsoft/pdo_sqlsrv`.

    Limitations

    • No support for inout / output params when using sql_variant type
    • No support for inout / output params when formatting decimal values
    • In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work
    • Always Encrypted requires MS ODBC Driver 17+
      • Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported
      • Issue #716 - With Always Encrypted enabled, named parameters in subqueries are not supported
      • Issue #1050 - With Always Encrypted enabled, insertion requires the column list for any tables with identity columns
      • Always Encrypted limitations

    Known Issues

    • Connection pooling on Linux or macOS is not recommended with unixODBC < 2.3.7
    • When pooling is enabled in Linux or macOS
      • unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages
      • due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples here
  • yaconf 1.1.3
    - Fixed memory leak with PHP 8.1 - Fixed garbage value being returned when an INI file is unreadable - Fixed Yaconf::get() with paths deeper than a scalar value - Fixed section inheritance from numeric section names - Fixed fatal error and a memory leak in the startup scan
  • yar 2.4.0
    - Added yar.ssl_verify to make TLS certificate verification configurable - Kept persistent curl connections in the persistent resource list - Rejected non-public methods in the server dispatcher - Fixed use-after-free (dangling offset) in REALLOC_BUF_IF_EXCEED - Fixed size_t underflow when request body is shorter than the protocol header - Hardened protocol parsing: body length clamping, bounds checks, payload type checks - Fixed YAR_OPT_PROXY passing the connect timeout to CURLOPT_PROXY - Fixed issue #175 where Yar_Server::Info returns garbled output.
tagged:

Link:

Community News:
Latest PECL Releases (08.04.2026)
Aug 04, 2026 @ 08:05:20

Latest PECL Releases:

  • protobuf 5.36.0RC2
    * See github.com/protocolbuffers/protobuf/releases/tag/v36.0-rc2 for release notes.

  • sqlsrv 5.13.2
    Added - The drivers can now be installed with PIE (the PHP Installer for Extensions), the official replacement for the now-deprecated PECL: `pie install microsoft/sqlsrv` and `pie install microsoft/pdo_sqlsrv`.

    Security

    • Fixed SQL injection in PDO::lastInsertId($name) (CWE-89). The sequence-name lookup previously interpolated the caller-supplied name directly into the query text, allowing injection of arbitrary Transact-SQL. The name is now passed to a parameterized query and bound with the connection encoding, so it is always treated as a literal value. This also fixes lookups for sequence names containing non-ASCII characters (PR #1673)
    • Fixed silent truncation of binary parameters containing embedded NUL (0x00) bytes when using PDO emulated prepares with PDO::SQLSRV_ENCODING_BINARY (CWE-626). All bytes are now encoded (PR #1675)

    Fixed

    • Fixed a Windows thread-safe (ZTS) shared build link failure (unresolved external symbol LNK2001 on _tsrm_ls_cache) when building the extensions as shared DLLs (PR #1674)
    • Fixed stale unixODBC INI caching on Linux and macOS by clearing the unixODBC INI cache at module shutdown (PR #1667)
    • Fixed an AddressSanitizer One Definition Rule (ODR) violation reported when both the sqlsrv and pdo_sqlsrv extensions are loaded together (PR #1659)
    • Addressed CodeQL static-analysis findings (PR #1615)

    Limitations

    • No support for inout / output params when using sql_variant type
    • No support for inout / output params when formatting decimal values
    • In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work
    • Always Encrypted requires MS ODBC Driver 17+
      • Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported
      • Issue #716 - With Always Encrypted enabled, named parameters in subqueries are not supported
      • Issue #1050 - With Always Encrypted enabled, insertion requires the column list for any tables with identity columns
      • Always Encrypted limitations

    Known Issues

    • Connection pooling on Linux or macOS is not recommended with unixODBC < 2.3.7
    • When pooling is enabled in Linux or macOS
      • unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages
      • due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples here
  • pdo_sqlsrv 5.13.2
    Added - The drivers can now be installed with PIE (the PHP Installer for Extensions), the official replacement for the now-deprecated PECL: `pie install microsoft/sqlsrv` and `pie install microsoft/pdo_sqlsrv`.

    Security

    • Fixed SQL injection in PDO::lastInsertId($name) (CWE-89). The sequence-name lookup previously interpolated the caller-supplied name directly into the query text, allowing injection of arbitrary Transact-SQL. The name is now passed to a parameterized query and bound with the connection encoding, so it is always treated as a literal value. This also fixes lookups for sequence names containing non-ASCII characters (PR #1673)
    • Fixed silent truncation of binary parameters containing embedded NUL (0x00) bytes when using PDO emulated prepares with PDO::SQLSRV_ENCODING_BINARY (CWE-626). All bytes are now encoded (PR #1675)

    Fixed

    • Fixed a Windows thread-safe (ZTS) shared build link failure (unresolved external symbol LNK2001 on _tsrm_ls_cache) when building the extensions as shared DLLs (PR #1674)
    • Fixed stale unixODBC INI caching on Linux and macOS by clearing the unixODBC INI cache at module shutdown (PR #1667)
    • Fixed an AddressSanitizer One Definition Rule (ODR) violation reported when both the sqlsrv and pdo_sqlsrv extensions are loaded together (PR #1659)
    • Addressed CodeQL static-analysis findings (PR #1615)

    Limitations

    • No support for inout / output params when using sql_variant type
    • No support for inout / output params when formatting decimal values
    • In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work
    • Always Encrypted requires MS ODBC Driver 17+
      • Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported
      • Issue #716 - With Always Encrypted enabled, named parameters in subqueries are not supported
      • Issue #1050 - With Always Encrypted enabled, insertion requires the column list for any tables with identity columns
      • Always Encrypted limitations

    Known Issues

    • Connection pooling on Linux or macOS is not recommended with unixODBC < 2.3.7
    • When pooling is enabled in Linux or macOS
      • unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages
      • due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples here
  • phalcon 5.18.0
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
  • datadog_trace 1.23.3
    ## Profiler ### Fixed - Restore OPcache restart hook on shutdown (#4076)
  • datadog_trace 1.23.2
    ## Tracer ### Fixed - Prevent application error handlers from replacing successful OpenFeature evaluation values with code defaults #4071
tagged:

Link:

Community News:
Latest PECL Releases (07.28.2026)
Jul 28, 2026 @ 08:05:21

Latest PECL Releases:

tagged:

Link:

Community News:
Latest PECL Releases (07.21.2026)
Jul 21, 2026 @ 08:05:22

Latest PECL Releases:

  • zephir_parser 2.5.0
    ### Added

    • Support the readonly modifier on class and trait properties: readonly is a property modifier keyword that appears in the property visibility list (e.g. public readonly int x), independent of position relative to public/protected/private and combining with every property type prefix (builtin, ?type, &lt;Class&gt; cast and union). The parser only records the modifier; the typed / no-default / no-static rules are enforced by the compiler (zephir-lang/zephir#2614).

    Changed

    • readonly is now a reserved keyword; identifiers named readonly are a syntax error.
  • phalcon 5.17.0
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
  • zephir_parser 2.4.0
    ### Added - Support union types on parameters and class/trait properties: a `type | type | ...` prefix (builtin scalars, `null`/`false`, and `<Class>` casts) is emitted as an ordered `data-types` member list. Parameters additionally carry `data-type: "variable"`; the single-type and single-cast forms are unchanged. Mirrors the union return-type syntax already accepted after `->` ([zephir-lang/zephir#2613](https://github.com/zephir-lang/zephir/issues/2613)).
  • zephir_parser 2.3.0
    ### Added - Support typed class and trait properties: a property may now carry a builtin type (`public array items`, `private int count`), a class type (`public <Response> response`), and an optional nullable marker (`protected ?string name`). The type prefix is emitted on the property node as a `data-type` string or a `<Class>` `cast` node, plus a `nullable` flag for `?type`, mirroring how parameters encode their types. Type prefixes combine with existing default values, `{ get, set }` shortcuts, docblocks and all-caps names ([zephir-lang/zephir#2608](https://github.com/zephir-lang/zephir/issues/2608)).
  • zephir_parser 2.2.0
    ### Added - Support the `::class` magic constant: `self::class`, `parent::class`, `static::class` and `ClassName::class` now parse into a `static-constant-access` node whose member value is `class`, which the compiler resolves to the fully-qualified class name ([zephir-lang/zephir#2527](https://github.com/zephir-lang/zephir/issues/2527)).
  • event 3.1.6
    Fix PHP 8.6.0alpha2 build (patch by Remi Collet)
tagged:

Link:

Community News:
Latest PECL Releases (07.14.2026)
Jul 14, 2026 @ 08:05:21

Latest PECL Releases:

  • gRPC 1.83.0RC1
    - gRPC Core 1.83.0 update

  • protobuf 5.36.0RC1
    * See github.com/protocolbuffers/protobuf/releases/tag/v36.0-rc1 for release notes.
  • timezonedb 2026.3
    Extra release to hopefully have a "good last release" due to weird GitHub issues. There are no code or data changes.
  • swoole 6.2.2
    - Refactored the communication between multi-thread pools from `Pipe` to `Unix Socket` to enhance the reliability of high-concurrency transmission for asynchronous file operations. - Resolved sporadic segmentation faults when `Worker` parses `HTTP` parameters, eliminating the risk of process crashes. - Fixed a fatal `Error::__toString` error during the `PHP` request shutdown (rshutdown) phase when interacting with the database. - Fixed the `Poll` event initialization exception after coroutine conversion of `pdo_pgsql`, ensuring the stability of blocking mode. - Removed duplicate and redundant `Server` property configurations in `SwooleCoroutineHttpServer`. - Fixed an issue in `SwooleArrayObject::valid()` where, under `PHP 8.5`, using `null` as the key parameter for `array_key_exists()` would trigger a deprecation warning: "Using null as the key parameter for array_key_exists() is deprecated."
  • swoole 6.1.9
    - Refactored the inter-thread-pool communication mechanism from `Pipe` to `Unix Socket` to enhance the transmission reliability of asynchronous file operations under high concurrency. - Resolved the occasional segmentation fault in `Worker` when parsing `HTTP` parameters, eliminating the risk of process crashes. - Fixed the `Error::__toString` fatal error that occurred during database interactions in the PHP request shutdown (rshutdown) phase. - Fixed the `Poll` event initialization anomaly in `pdo_pgsql` after coroutine transformation, ensuring the stability of blocking mode.
tagged:

Link:

Community News:
Latest PECL Releases (06.30.2026)
Jun 30, 2026 @ 08:05:19

Latest PECL Releases:

  • gRPC 1.81.1
    - gRPC Core 1.81.1 update

  • gRPC 1.82.0RC2
    - gRPC Core 1.82.0 update
  • bsdiff 0.2.1
    - Add composer.json for installation via PIE (PHP Installer for Extensions).
  • phalcon 5.16.0
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
tagged:

Link:

Community News:
Latest PECL Releases (06.23.2026)
Jun 23, 2026 @ 08:05:27

Latest PECL Releases:

  • parallel 1.2.15
    - Fix use-after-free race on future->monitor in error paths #381

    • Promote PIE installer #383
    • Fix: Update coverallsapp/github-action from master to v2.3.6 #384
    • Narrow the Windows VEH to undefined-function calls only #379
  • phalcon 5.14.1
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
  • phalcon 5.14.2
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
  • phalcon 5.15.0
    Full changelog can be found at: https://github.com/phalcon/cphalcon/blob/master/CHANGELOG-5.0.md
  • parallel 1.2.14
    - Fix PHP 8.4 task exit handling #377 - Narrow crash handler to undefined-function calls only #378
tagged:

Link:


Trending Topics: