SDK Release Notes

  • reference
    +
    Release notes for the Couchbase PHP Client.

    These pages cover the 4.x versions of the Couchbase PHP SDK.

    For download instructions, see the installation page.

    PHP SDK 4.2 Releases

    We always recommend using the latest version of the SDK — it contains all of the latest security patches and support for new and upcoming features. All patch releases for each dot minor release should be API compatible, and safe to upgrade; any changes to expected behavior are noted in the release notes that follow.

    PHP SDK 4.2 is written to version 3.5 of the SDK API specification (and matching the features available in Couchbase 7.6 and earlier).

    Version 4.2.5 (22 November 2024)

    Enhancements

    • Core updated to 1.0.4. Release notes: C++ SDK 1.0.4.

    • PCBC-1004: Insert ABI version tag into PHP extension namespace (#187). At this moment this feature is optional and does not break existing ABI. The extension namespace will become versioned by default from 4.3.0.

      Prebuild binaries with -abi suffix have version tag in the extension name, and in the namespaces of the visible API, as is shown with the following demo:

      $ wget \
          https://packages.couchbase.com/clients/php/couchbase-4.2.5-php8.3-nts-linux-x86_64.tgz \
          https://packages.couchbase.com/clients/php/couchbase-4.2.5-php8.3-nts-linux-x86_64-abi.tgz
      
      $ for t in *.tgz; do tar zxf $t; done
      
      $ php \
              -d extension=$(realpath couchbase-4.2.5-php8.3-nts-linux-x86_64-abi/couchbase_4_2_5.so) \
              -d extension=$(realpath couchbase-4.2.5-php8.3-nts-linux-x86_64/couchbase.so) \
              -i \
          | grep couchbase
      couchbase
      couchbase => enabled
      couchbase_extension_abi => unspecified
      couchbase_extension_version => 4.2.5
      couchbase_extension_revision => c9704a8aa5ca50475c5fe8ee64166fa164cbd43e
      couchbase_client_revision => 5355b0fdc221d87f0d6adbbf7e7f8826d819ea22
      couchbase_4_2_5
      couchbase => enabled
      couchbase_extension_abi => 4_2_5
      couchbase_extension_version => 4.2.5
      couchbase_extension_revision => c9704a8aa5ca50475c5fe8ee64166fa164cbd43e
      couchbase_client_revision => 5355b0fdc221d87f0d6adbbf7e7f8826d819ea22
      ...
      
      $ php \
              -d extension=$(realpath couchbase-4.2.5-php8.3-nts-linux-x86_64-abi/couchbase_4_2_5.so) \
              --re couchbase_4_2_5 \
          | grep createConnection
      Function [ <internal:couchbase_4_2_5> function Couchbase\Extension_4_2_5\createConnection ] {
      
      $ php \
              -d extension=$(realpath couchbase-4.2.5-php8.3-nts-linux-x86_64/couchbase.so) \
              --re couchbase \
          | grep createConnection
      Function [ <internal:couchbase> function Couchbase\Extension\createConnection ] {

    Fixes

    • PCBC-975: Fixed expiry with upsertMulti. The option is now applied to all documents.

    • PCBC-1017: Updated user agent generation. It now uses the common SDK format.

    Checksum

    couchbase-4.2.5.sha256.txt

    Source

    couchbase-4.2.5.tgz

    Linux

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-linux-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-linux-musl-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-macos-x86_64.tgz

    MacOS

    arm64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-macos-arm64.tgz

    Windows

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-windows-x64.zip

    As noted above, from this release we also publish ABI-safe binaries that expose all internal APIs as \Couchbase\Extension_4_2_5, which allows the loading of different versions of the library at the same time.

    The extension file is also renamed to couchbase_4_2_5.so (couchbase_4_2_5.dll).

    Linux

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-linux-x86_64-abi.tgz

    Linux

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-linux-x86_64-abi.tgz

    Linux

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-linux-x86_64-abi.tgz

    Linux

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-linux-x86_64-abi.tgz

    Linux

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-linux-x86_64-abi.tgz

    Linux

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-linux-x86_64-abi.tgz

    Linux

    x86_64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-linux-x86_64-abi.tgz

    Linux

    x86_64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-linux-x86_64-abi.tgz

    Linux

    x86_64 (musl)

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-linux-musl-x86_64-abi.tgz

    Linux

    x86_64 (musl)

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-linux-musl-x86_64-abi.tgz

    Linux

    x86_64 (musl)

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-linux-musl-x86_64-abi.tgz

    Linux

    x86_64 (musl)

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-linux-musl-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-macos-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-macos-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-macos-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-macos-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-macos-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-macos-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-macos-x86_64-abi.tgz

    MacOS

    x86_64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-macos-x86_64-abi.tgz

    MacOS

    arm64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-macos-arm64-abi.tgz

    MacOS

    arm64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-macos-arm64-abi.tgz

    MacOS

    arm64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-macos-arm64-abi.tgz

    MacOS

    arm64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-macos-arm64-abi.tgz

    MacOS

    arm64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-macos-arm64-abi.tgz

    MacOS

    arm64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-macos-arm64-abi.tgz

    MacOS

    arm64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-macos-arm64-abi.tgz

    MacOS

    arm64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-macos-arm64-abi.tgz

    Windows

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.5-php8.1-nts-windows-x64-abi.zip

    Windows

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.5-php8.1-zts-windows-x64-abi.zip

    Windows

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.5-php8.2-nts-windows-x64-abi.zip

    Windows

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.5-php8.2-zts-windows-x64-abi.zip

    Windows

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.5-php8.3-nts-windows-x64-abi.zip

    Windows

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.5-php8.3-zts-windows-x64-abi.zip

    Windows

    x86_64

    PHP 8.4

    NTS

    couchbase-4.2.5-php8.4-nts-windows-x64-abi.zip

    Windows

    x86_64

    PHP 8.4

    ZTS

    couchbase-4.2.5-php8.4-zts-windows-x64-abi.zip

    Version 4.2.4 (22 October 2024)

    Enhancements

    • PCBC-832: Management API - Analytics Management (#177).

    • Core updated to 1.0.3. Release notes: C++ SDK 1.0.3.

    Fixes

    • PCBC-1009: IS_RESOURCE has been removed from function signatures of the extension, so that they compile with 8.4.

    • PCBC-1010: implicit marking of certain parameters as nullable has now been deprecated. Use explicit nullable types where applicable to avoid deprecation warning in PHP 8.4.

    • Fixed SearchQuery API docs link in API reference.

    Checksum

    couchbase-4.2.4.sha256.txt

    Source

    couchbase-4.2.4.tgz

    Linux

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.4-php8.1-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.4-php8.1-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.4-php8.2-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.4-php8.2-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.4-php8.3-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.4-php8.3-zts-linux-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.1

    NTS

    couchbase-4.2.4-php8.1-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.2

    NTS

    couchbase-4.2.4-php8.2-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.3

    NTS

    couchbase-4.2.4-php8.3-nts-linux-musl-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.4-php8.1-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.4-php8.1-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.4-php8.2-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.4-php8.2-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.4-php8.3-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.4-php8.3-zts-macos-x86_64.tgz

    MacOS

    arm64

    PHP 8.1

    NTS

    couchbase-4.2.4-php8.1-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.1

    ZTS

    couchbase-4.2.4-php8.1-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    NTS

    couchbase-4.2.4-php8.2-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    ZTS

    couchbase-4.2.4-php8.2-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    NTS

    couchbase-4.2.4-php8.3-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    ZTS

    couchbase-4.2.4-php8.3-zts-macos-arm64.tgz

    Windows

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.4-php8.1-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.4-php8.1-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.4-php8.2-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.4-php8.2-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.4-php8.3-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.4-php8.3-zts-windows-x64.zip

    Version 4.2.3 (27 August 2024)

    Enhancements

    Checksum

    couchbase-4.2.3.sha256.txt

    Source

    couchbase-4.2.3.tgz

    Linux

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.3-php8.1-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.3-php8.1-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.3-php8.2-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.3-php8.2-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.3-php8.3-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.3-php8.3-zts-linux-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.1

    NTS

    couchbase-4.2.3-php8.1-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.2

    NTS

    couchbase-4.2.3-php8.2-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.3

    NTS

    couchbase-4.2.3-php8.3-nts-linux-musl-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.3-php8.1-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.3-php8.1-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.3-php8.2-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.3-php8.2-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.3-php8.3-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.3-php8.3-zts-macos-x86_64.tgz

    MacOS

    arm64

    PHP 8.1

    NTS

    couchbase-4.2.3-php8.1-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.1

    ZTS

    couchbase-4.2.3-php8.1-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    NTS

    couchbase-4.2.3-php8.2-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    ZTS

    couchbase-4.2.3-php8.2-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    NTS

    couchbase-4.2.3-php8.3-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    ZTS

    couchbase-4.2.3-php8.3-zts-macos-arm64.tgz

    Windows

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.3-php8.1-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.3-php8.1-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.3-php8.2-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.3-php8.2-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.3-php8.3-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.3-php8.3-zts-windows-x64.zip

    Version 4.2.2 (24 July 2024)

    Fixes

    • PCBC-997: Excluded C++ files, tests, and development scripts, so that Packagist will not install them to the application ./vendor directory #172).

    • PCBC-991: Added consistency utility for testing (#168).

    • PCBC-989: Rollback to cmake 3.19 (#167).

    • PCBC-988: Fixed type annotation for JsonSerializable implementations (#166).

    Enhancements

    Checksum

    couchbase-4.2.2.sha256.txt

    Source

    couchbase-4.2.2.tgz

    Linux

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.2-php8.1-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.2-php8.1-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.2-php8.2-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.2-php8.2-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.2-php8.3-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.2-php8.3-zts-linux-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.1

    NTS

    couchbase-4.2.2-php8.1-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.2

    NTS

    couchbase-4.2.2-php8.2-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.3

    NTS

    couchbase-4.2.2-php8.3-nts-linux-musl-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.2-php8.1-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.2-php8.1-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.2-php8.2-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.2-php8.2-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.2-php8.3-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.2-php8.3-zts-macos-x86_64.tgz

    MacOS

    arm64

    PHP 8.1

    NTS

    couchbase-4.2.2-php8.1-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.1

    ZTS

    couchbase-4.2.2-php8.1-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    NTS

    couchbase-4.2.2-php8.2-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    ZTS

    couchbase-4.2.2-php8.2-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    NTS

    couchbase-4.2.2-php8.3-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    ZTS

    couchbase-4.2.2-php8.3-zts-macos-arm64.tgz

    Windows

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.2-php8.1-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.2-php8.1-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.2-php8.2-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.2-php8.2-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.2-php8.3-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.2-php8.3-zts-windows-x64.zip

    Version 4.2.1 (23 April 2024)

    Enhancements

    Fixes

    • PCBC-987: Fixed consistency vector encoding for FTS (#163).

    • PCBC-985: Use system DNS config by default, and disable DNS-SRV if system does not provide DNS server (#159).

    Notable changes in core C++

    Enhancements
    Fixes
    • CXXCBC-487: Added logic during bootstrap to check if alternate addressing is being used (#545).

    • CXXCBC-503: Added logic to ignore configuration if it contains an empty vBucket map (#556, #558).

    • CXXCBC-30: Fixed inconsistent behaviour when using subdoc opcodes incorrectly (#559).

    • CXXCBC-492: Updated collection_component get_collection_id to use retry strategy (#552).

    • CXXCBC-494: Fixed memory issue in range scan implementation (#549).

    • Always attempt to extract common query code if error has not been set (#561). This fixes quota/rate limit checks for older servers.

    Build and Tests Fixes
    • CXXCBC-502: Apply /bigobj for SDK objects only (#550). Avoid using global add_definitions() as it might leak to non-C++ languages (like ASM_NASM on Windows).

    • Add feature check for scoped analyze_document in tests (#555)

    Checksum

    couchbase-4.2.1.sha256sum

    Source

    couchbase-4.2.1.tgz

    Linux

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.1-php8.1-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.1-php8.1-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.1-php8.2-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.1-php8.2-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.1-php8.3-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.1-php8.3-zts-linux-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.1

    NTS

    couchbase-4.2.1-php8.1-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.2

    NTS

    couchbase-4.2.1-php8.2-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.3

    NTS

    couchbase-4.2.1-php8.3-nts-linux-musl-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.1-php8.1-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.1-php8.1-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.1-php8.2-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.1-php8.2-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.1-php8.3-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.1-php8.3-zts-macos-x86_64.tgz

    MacOS

    arm64

    PHP 8.1

    NTS

    couchbase-4.2.1-php8.1-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.1

    ZTS

    couchbase-4.2.1-php8.1-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    NTS

    couchbase-4.2.1-php8.2-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    ZTS

    couchbase-4.2.1-php8.2-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    NTS

    couchbase-4.2.1-php8.3-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    ZTS

    couchbase-4.2.1-php8.3-zts-macos-arm64.tgz

    Windows

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.1-php8.1-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.1-php8.1-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.1-php8.2-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.1-php8.2-zts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.1-php8.3-nts-windows-x64.zip

    Windows

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.1-php8.3-zts-windows-x64.zip

    Version 4.2.0 (17 March 2024)

    Known Issues

    • CXXCBC-447: This version of the SDK will not be able to connect to a cluster utilizing alternate addressing. The recommendation is to wait to upgrade to a version of the PHP SDK that contains C++ 1.0.0-dp.15 (or later).

    Enhancements

    • PCBC-979: Added static helpers to SearchQuery types (#149).

    • PCBC-970: SDK support added for Scoped Search Indexes (#147).

    • PCBC-968: Support addd for maxTTL value of -1 for collection 'no expiry' (#144).

    • PCBC-967: Support added for vector search (#143).

    • PCBC-965: Adedd DocumentNotLocked error to corresponds with the C++ error code couchbase::errc::key_value::document_not_locked (#142).

    • PCBC-960: Merge protostellar branch to master, in preparation for couchbase2 protocol (#138, #153).

    Fixes

    • PCBC-964: The SDK no longer fires the close operation asynchronously, instead it will now wait until the core instance is completely destroyed Wait until the core connection is closed (#141).

    • PCBC-972: Fixed C++ detection on MacOS X, so that the SDK now installs correctly on Sonoma (#145).

    • Added missing use statement in class DecrementOptions (#146).

    • Updated core and renamed query_index_create fields to keys (#148).

    Notable changes in core C++

    Since 1.0.0-dp.14
    Fixes
    • CXXCBC-482: Updated range scan orchestrator to use best effort retry strategy by default (#542).

    • CXXCBC-481: Fixed potential crash when parsing search result hits (#541).

    • CXXCBC-461: Updated ping operation to not send to nodes that have not completed bootstrap (#540).

    • CXXCBC-480: Fixed capabilities check for replica LookupIn operations (#539).

    • CXXCBC-479: Fixed capabilities check for replica LookupIn operations (#537).

    • CXXCBC-336: Updated DNS config to not fallback to 8.8.8.8 if SDK cannot obtain system DNS server (#533).

    Since 1.0.0-dp.13
    New features and enhancements
    • CXXCBC-456: Updated configuration logic when 0x0d (EConfigOnly) status code is received to have the SDK request new configuration and send current operation to retry orchestrator (#523).

    • CXXCBC-191: Index Key Encoding (#519) — in line with the rfc, the fields paramaeter is now remamed to keys in the Public API’s create_index(), and each index key provided to create_index() is encoded by surrounding them with backticks.

    • Added full_set option to view query options (#517).

    Fixes
    • CXXCBC-345: Added range scan improvements and resolved concurrency issues (#525).

    • CXXCBC-284: Updated config polling to not use session that is not bootstrapped (#528).

    • CXXCBC-447: Updated bootstrap logic to use addresses from the config to bootstrap bucket (#516).

    • CXXCBC-450: Updated bootstrap logic to reset bootstrap handler before re-bootstrap (#524).

      • We do not want any actions from the old bootstrap handler once the session decided to re-bootstrap. For example, bucket could not be selected, but we might still get configuration responses before socket reset.

    • CXXCBC-452: Updated capabilities and fail fast when selected feature is not available (#522, #513).

    • CXXCBC-431: Added check for history retention bucket capability in collection create/update (#502, #505).

    • CXXCBC-421: Updated query operation to return feature_not_available if query preserve expiry is specified but is not supported on the server(#510).

    Since 1.0.0-dp.12
    New features and enhancements
    • CXXCBC-346: Support added for maxTTL value of -1 for collection 'no expiry' (#500).

    • CXXCBC-442: Transcoder support - which was previously limited in the SDK to JSON and RawBinary transcoders — has now been extended to raw_json and raw_string transcoders (#514, #515).

    • CXXCBC-440: Support added for Scoped Search Indexes (#512, #513).

    Fixes
    • CXXCBC-284: Updated config polling to not use session that is not bootstrapped, to reduce network traffic when polling for cluster configuration (#504, #528).

    • CXXCBC-422: Added insufficient credentials error code to common query error code conversion (#511).

    • CXXCBC-421: Updated query operation to return feature_not_available if query preserve expiry is specified but is not supported on the server(#510).

    • CXXCBC-426: Under testing, a get with very large projection was returning fields outside of the projection. This has been fixed, with the projections now set correctly, and the SDK should fall back to a full-doc fetch and return a valid projected result (#499).

    Since 1.0.0-dp.11
    Fixes
    • CXXCBC-404: Fixed unlock operations to expose KV_LOCKED status as cas_mismatch (#479).

    • CXXCBC-403: Updated not_my_vbucket KV response to allow retries (#480).

    • CXXCBC-368: Added support for subscribing to clustermap notifications to speed up failover (#490).

    • CXXCBC-419: Updated MCBP protocol parser to start with clean state. Fixes protocol parsing issues when bootstrap sequence is being retried (#496).

    • CXXCBC-409: Added handling for index does not exist query error (#492).

    • CXXCBC-391: Fixed transactions API inconsistencies (#482):

    • Removed kv_timeout,

    • Renamed expiration_time to timeout.

    New features and enhancements

    • CXXCBC-100: Added ability to set timeout for ping (#486).

    • CXXCBC-412: Added support for the document_not_locked (0x0e) KV status, mapping it to the errc::key_value::document_not_locked error code (#491).

    Since 1.0.0-dp.10
    Fixes
    • CXXCBC-383: The subdoc_doc_too_deep (0xc4) KV status now returns a`path_too_deep` error code (#455).

    New features and enhancements
    • CXXCBC-377: Implemented ExtParallelUnstaging in transactions (#457).

    • CXXCBC-363: Added examples for bulk operations (#442).

    • Added more information to diagnose timeouts on NMV responses (#475).

    Checksum

    couchbase-4.2.0.sha256sum

    Source

    couchbase-4.2.0.tgz

    Linux

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.0-php8.1-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.0-php8.1-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.0-php8.2-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.0-php8.2-zts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.0-php8.3-nts-linux-x86_64.tgz

    Linux

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.0-php8.3-zts-linux-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.1

    NTS

    couchbase-4.2.0-php8.1-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.2

    NTS

    couchbase-4.2.0-php8.2-nts-linux-musl-x86_64.tgz

    Linux

    x86_64 (musl)

    PHP 8.3

    NTS

    couchbase-4.2.0-php8.3-nts-linux-musl-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    NTS

    couchbase-4.2.0-php8.1-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.1

    ZTS

    couchbase-4.2.0-php8.1-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    NTS

    couchbase-4.2.0-php8.2-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.2

    ZTS

    couchbase-4.2.0-php8.2-zts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    NTS

    couchbase-4.2.0-php8.3-nts-macos-x86_64.tgz

    MacOS

    x86_64

    PHP 8.3

    ZTS

    couchbase-4.2.0-php8.3-zts-macos-x86_64.tgz

    MacOS

    arm64

    PHP 8.1

    NTS

    couchbase-4.2.0-php8.1-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.1

    ZTS

    couchbase-4.2.0-php8.1-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    NTS

    couchbase-4.2.0-php8.2-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.2

    ZTS

    couchbase-4.2.0-php8.2-zts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    NTS

    couchbase-4.2.0-php8.3-nts-macos-arm64.tgz

    MacOS

    arm64

    PHP 8.3

    ZTS

    couchbase-4.2.0-php8.3-zts-macos-arm64.tgz

    PHP SDK 4.1 Releases

    Version 4.1.6 (10 October 2023)

    Source

    couchbase-4.1.6.tgz

    Checksum

    couchbase-4.1.6.sha256sum

    Enhancements

    • PCBC-956: Updated wrapper-side bucket settings — to now use new BucketSettings optional fields in underlying C++ core (#132).

    • PCBC-950: Added support to bucket settings for no dedup feature (#131).

    • PCBC-955: Preventing trailing garbage in encoded CAS value (#134).

    • Updates to support PHP 8.3: zend_bool was removed from 8.3.

    Underlying C++ SDK Core Changes

    • CXXCBC-376: Changed what 'create' and 'update' bucket operations send to the server. Unrequired BucketSettings fields are now set to optional, and are not sent unless the settings are explicitly specified. (#451).

    • CXXCBC-374: The SDK should now return a 'bucket_exists' error when the bucket already exists during a 'create' operation. (#449).

    • CXXCBC-359: Reduced the default timeout for idle HTTP connections to 1 second. The previous default (4.5 seconds) was too close to the 5-second server-side timeout, and could lead to spurious request failures. (#448).

    • CXXCBC-367, CXXCBC-370: Added history retention settings to buckets/collection management (#446).

    • CXXCBC-119: Return booleans for subdocument 'exists' operation, instead of error code (#444, #452).

    • Detect collection_not_found error in update_collection response (#450).

    Version 4.1.5 (21 August 2023)

    Source

    couchbase-4.1.5.tgz

    Checksum

    couchbase-4.1.5.sha256sum

    Enhancements

    • PCBC-939: Added support for query with Read from Replica (#118).

    • PCBC-831: Implemented search index management (#115).

    • PCBC-945: Expiry options for increment/decrement are now exposed, as they were before 4.0.0 (#120).

    • PCBC-937: Fixed removeMulti, which now correctly removes documents (#123).

    • PCBC-938: Override exception constructor in PHP Extension, which allows to initialize context in derived classes (#117).

    • PCBC-940: Added support for subdoc Read from Replica (#121).

    • PCBC-884: Added support for Native KV range scans (#122, #127).

    Underlying C++ SDK Core

    Version 4.1.4 (26 May 2023)

    Source

    couchbase-4.1.4.tgz

    Checksum

    couchbase-4.1.4.sha256sum

    Enhancements

    • Added couchbase:: namespace to durability_level, which fixes using Sync Durability. (#102)

    • PCBC-934: Fixed setting timeout for transactions.

    Underlying C++ SDK Core

    • CXXCBC-327: Bundled Mozilla certificates with the library (#405, #408). Source: https://curl.se/docs/caextract.html. Use the disable_mozilla_ca_certificates connection string option to disable the bundled certificates.

    • CXXCBC-324: Port and network name now checked on session restart, improving performance during rebalance (#401).

    • CXXCBC-323: bootstrap_timeout and resolve_timeout can now be used in the connection string (#400).

    • Introduced dump_configuration option for debugging. (#398) It logs cluster configuration at trace level.

    Version 4.1.3 (13 April 2023)

    Source

    couchbase-4.1.3.tgz

    Checksum

    couchbase-4.1.3.sha256sum

    Enhancements

    • PCBC-915: Fixed incorrect handling of timestamps as expiry in mutation options (#88).

    • PCBC-828: Implemented collection management (#89).

    • PCBC-918: Extra attributes in ExistsResult (deleted, expiry, flags, and sequenceNumber) are now optional (#95).

    Underlying C++ SDK Core

    • CXXCBC-31: Allow the use of schemaless connection strings (e.g. "cb1.example.com,cb2.example.com") (#394).

    • CXXCBC-318: Always try TCP if UDP fails in DNS-SRV resolver (#390).

    • CXXCBC-320: Negative expiry in atr was leaving docs in a stuck state — this has been fixed, with expiry atr now becoming an int32_t (#393).

    • CXXCBC-310: Improved shutdown of the LostTxnCleanup thread (#389).

    Version 4.1.2 (20 March 2023)

    Source

    couchbase-4.1.2.tgz

    Checksum

    couchbase-4.1.2.sha256sum

    Enhancements

    • PCBC-888: Added new method Collection#queryIndexes that allows to manage query indexes defined for the collection (#68).

    • Added optional context to CouchbaseException constructor (#85).

    Underlying C++ SDK Core

    • CXXCBC-144: Search query on collections no longer requires you to pass in the scope name — it is inferred from the index (#379).

    • CXXCBC-145: Search query request, raw option added (#380).

    • CXXCBC-194: The SDK now supports the ExtThreadSafe transaction extension (#374, #376).

    • CXXCBC-316: When a document is removed in a transaction, and then a call made to get_optional, we expect to just get an empty optional. However, the handling was raising a transaction_operation_failed This has been fixed, and an empty optional will now be returned (#385).

    • CXXCBC-310: Fixed race condition in transaction_context state machine (#386, #378).

    Version 4.1.1 (22 February 2023)

    Source

    couchbase-4.1.1.tgz

    Checksum

    couchbase-4.1.1.sha256sum

    Enhancements

    • PCBC-869: Implemented changePassword for management API (#55, #56)

    • PCBC-891: Append extension version info to HELLO indentifier (#58)

    • PCBC-901: Attach error details to management exceptions (#71)

    • Increase required PHP version up to 8.0 (#76)

    Fixes

    • PCBC-890: Scope must implement ScopeInterface (#57)

    • PCBC-899: Ensure the connection will be closed on error (#70)

    • PCBC-900: Don’t set "function" property on exceptions. (#74)

    • PCBC-905: Don’t dereference empty optional if option is not set (#75)

    • PCBC-907: Assign meta to view query result (#79)

    • Fix missing header for GCC 13 (#63)

    Underlying C++ SDK Core

    Notable Changes in C++ SDK 1.0.0-dp.4

    • CXXCBC-275: Update implementation query context fields passed to the server. In future versions of the server versions it will become mandatory to specify context of the statement (bucket, scope and collection). This change ensures that both future and current server releases supported transparently.

    • CXXCBC-296: Force PLAIN SASL auth if TLS enabled. Using SCRAM SASL mechanisms over TLS protocol is unnecesary complication, that slows down initial connection bootstrap and potentially limits server ability to improve security and evolve credentials management.

    • CXXCBC-295: The get with projections opration should not fail if one of the the paths is missing in the document, because the semantics is "get the partial document" and not "get individual fields" like in lookup_in operation.

    • CXXCBC-294: In the Public API, if get operation requested to return expiry time, zero expiry should not be interpreted as absolute expiry timestamp (zero seconds from UNIX epoch), but rather as absense of the expiry.

    • CXXCBC-291: Allow to disable mutation tokens for Key/Value mutations (use enable_mutation_tokens in connection string).

    • Resource management and performance improvements:

      • Fix tracer and meter ref-counting (#370)

      • Replace minstd_rand with mt19937_64, as it gives less collisions (#356)

      • CXXCBC-285: Write to sockets from IO threads, to eliminate potential race conditions. (#348)

      • Eliminate looping transform in mcbp_parser::next (#347)

      • CXXCBC-205: Use thread-local UUID generator (#340)

      • CXXCBC-293: Performance improvements:

        • Speed up UUID serialization to string (#346)

        • Don’t allow to copy mcbp_message objects (#345)

        • Avoid extra allocation and initialization (#344)

    • Build system fixes:

      • Fix build with gcc-13 (#372)

      • Fix gcc 12 issue (#367)

    • Enhancements:

      • Include bucketless KV service when ping is requested. (#339)

      • Include OS name in SDK identifier (#349)

    Version 4.1.0 (20 January 2023)

    Version 4.1.0 brings a number of improvements related to internal connection behavior.

    Source

    couchbase-4.0.0.tgz

    Checksum

    couchbase-4.0.0.sha256sum

    New Features

    • PCBC-824: Implemented replica reads.

    • PCBC-630: Implemented legacy durability for mutations (replicateTo/persistTo options)

    • PCBC-880: Support for configuration profiles

    Fixes

    • PCBC-889: Fixed behaviour of 'skip' SearchOption.

    • Bug fixes: logger and build improvements

    Caveats

    There are no pre-built binaries for the Windows platform of PHP SDK 4.1.0. But there are steps in WINDOWS.md, that describe how to build an extension along with PHP interpreter.

    PHP SDK 4.0 Releases

    PHP SDK 4.0 is written to version 3.3 of the SDK API specification (and matching the features available in Couchbase 7.1 and earlier).

    Version 4.0.0 (11 May 2022)

    Version 4.0.0 is the first major release of the next generation PHP SDK, built on the Couchbase++ library — featuring multi-document distributed ACID transactions, and bringing a number of improvements related to internal connection behavior.

    Source

    couchbase-4.0.0.tgz

    Checksum

    couchbase-4.0.0.sha256sum

    New Features

    • PCBC-806: Migrated core to Couchbase++.

    • PCBC-797: Updated the Query Index management API to use scopes and collections.

    • PCBC-836: Added support for the Transactions API.

    Caveats

    There are no pre-built binaries for the Windows platform of PHP SDK 4.0.0. But there are steps in WINDOWS.md, that describe how to build an extension along with PHP interpreter.

    Older Releases

    See: