Releases: couchbase/couchbase-php-client
4.2.5
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.2.5
Full Changelog: 4.2.4...4.2.5
Composer: https://packagist.org/packages/couchbase/couchbase#4.2.5
PECL: https://pecl.php.net/package/couchbase/4.2.5
Enhancements
-
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 since 4.3.0.
-
Core updated to 1.0.4. Release notes:
https://docs.couchbase.com/cxx-sdk/current/project-docs/sdk-release-notes.html#version-1-0-4-22-november-2024
Fixes
4.2.4
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.2.4
Full Changelog: 4.2.3...4.2.4
Composer: https://packagist.org/packages/couchbase/couchbase#4.2.4
PECL: https://pecl.php.net/package/couchbase/4.2.4
Enhancements
- PCBC-832: Management API - Analytics Management (#177).
- Core updated to 1.0.3. Release notes: couchbase-cxx-client 1.0.3.
Fixes
4.2.3
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.2.3
Full Changelog: 4.2.2...4.2.3
Composer: https://packagist.org/packages/couchbase/couchbase#4.2.3
PECL: https://pecl.php.net/package/couchbase/4.2.3
Enhancements
- Core updated to 1.0.1. Release notes:
https://docs.couchbase.com/cxx-sdk/current/project-docs/sdk-release-notes.html#version-1-0-1-22-august-2024
4.2.2
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.2.2
Full Changelog: 4.2.1...4.2.2
Fixes
-
PCBC-997: Do not export development files. (#172)
Exclude C++ files, tests and development scripts, so that Packagist will
not install them to the application ./vendor directory. -
PCBC-988: Fix type annotation for JsonSerializable implementations (#166)
Enhancements
-
PCBC-994: Support for base64 encoded vector types (#169, #170)
-
Core updated to 1.0.0. Release notes:
https://docs.couchbase.com/cxx-sdk/current/project-docs/sdk-release-notes.html#version-1-0-0-26-june-2024
4.2.1
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.2.1
Full Changelog: 4.2.0...4.2.1
Fixes
- PCBC-987: Fix consistency vector encoding for FTS (#163)
- PCBC-985: Use system DNS config by default, and disable DNS-SRV if OS does not provide DNS server. (#159)
Enhancements
- PCBC-859: Update build scripts and instructions for Windows (#158, #164)
- PCBC-984, PCBC-987: Improve compatiblity with pcntl_fork() (#157, #162)
Notable changes in core C++
Enhancements
- CXXCBC-489: Support scoped eventing functions. (#548, #554)
- CXXCBC-470: Distinguish between 'unset' and 'off' query_profile (#551)
Fixes
- CXXCBC-487: Check if alternate addressing is used when bootstrapping. (#545)
- CXXCBC-503: Ignore configuration if it contains an empty vBucketMap. (#556, #558)
- CXXCBC-30: Inconsistent behaviour when using subdoc opcodes incorrectly (#559)
- CXXCBC-492: Use retry strategy in collections_component's get_collection_id. (#552)
- CXXCBC-494: Fix memory issue in range scan implementation. (#549)
- Always attempt to extract common query code if error has not been set. (#561) Fixes quota/rate limit checks for older servers.
Build and Tests Fixes
4.2.0
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.2.0
Full Changelog: 4.1.6...4.2.0
Enhancements
- PCBC-979: Add static helpers to SearchQuery types (#149)
- PCBC-970: SDK Support for Scoped Search Indexes (#147)
- PCBC-968: Support for maxTTL value of -1 for collection "no expiry" (#144)
- PCBC-967: Support for vector search (#143)
- PCBC-965: Support DocNotLockedException and core update (#142)
- PCBC-960: Merge protostellar branch to master (#138, #153)
Fixes
- PCBC-964: Wait until the core connection is closed (#141)
- PCBC-972: Fix C++ detection on MacOS X (#145)
- Add missing use statement in class DecrementOptions (#146)
- Update core and rename query_index_create fields to keys (#148)
Notable changes in core C++
Since 1.0.0-dp.14
Fixes
- CXXCBC-482: Range scan orchestrator should use best effort retry strategy by default. (#542)
- CXXCBC-481: Fix potential crash when parsing search result hits. (#541)
- CXXCBC-461: Do not send ping to nodes that have not completed bootstrap. (#540)
- CXXCBC-480: LookupInAnyReplica should not enforce any limits on number of specs in the library. (#539)
- CXXCBC-479: Fix capabilities check for replica LookupIn operations. (#537)
- CXXCBC-336: Do not fallback to 8.8.8.8, if we cannot obtain system DNS server (#533)
Since 1.0.0-dp.13
New features and enhancements
- CXXCBC-456: handle 0x0d (config_only) status from KV (#523).
- CXXCBC-191: Create Index Key Encoding (#519)
- CXXCBC-442: Add support for raw_json and raw_string transcoders (#514, #515)
- Add full_set option to view query options (#517)
Fixes
- CXXCBC-345: Range scan improvements & resolve concurrency issues (#525).
- CXXCBC-284: Do not use session that is not bootstrapped to poll for config (#528)
- CXXCBC-447: Use addresses from the config to bootstrap bucket (#516)
- CXXCBC-450: Reset bootstrap handler before re-bootstrap (#524).
- Update view design_document rev to be optional (#526).
- Change encoded search request showrequest param from string to boolean. (#518)
- CXXCBC-452: Update capabilities and fail fast when selected feature is not available. (#522, #513)
Since 1.0.0-dp.12
New features and enhancements
- CXXCBC-346: Support for maxTTL value of -1 for collection 'no expiry'. (#500)
- CXXCBC-442: Support for raw_json and raw_string transcoders. (#514)
- CXXCBC-440: Support for Scoped Search Indexes. (#512, #513)
Fixes
- CXXCBC-284: Reduce network traffic when polling for cluster configuration. (#504)
- CXXCBC-422: Add insufficient credentials error code to common query error code conversion. (#511)
- CXXCBC-421: Return
feature_not_available
when query preserve expiry is not supported. (#510) - CXXCBC-426: Get with very large projection test is returning fields outside of the projection. (#499)
Since 1.0.0-dp.11
Fixes
- CXXCBC-404: KV_LOCKED status should be exposed as
cas_mismatch
for unlock. (#479) - CXXCBC-403: Allow retries for KV
not_my_vbucket
response. (#480) - CXXCBC-368: Subscribe to clustermap notifications to speedup failover. (#490)
- CXXCBC-419: Ensure that MCBP protocol parser starts with clean state. Fixes protocol parsing issues when bootstrap sequence is being retried. (#496)
- CXXCBC-409: Add handling for 'index does not exist' query error. (#492)
- CXXCBC-391: Fix transactions API inconsistencies. (#482)
- Remove
kv_timeout
- Rename
expiration_time
totimeout
- Remove
New features and enhancements
- CXXCBC-100: Add ability to set timeout for ping. (#486)
- CXXCBC-412: Support
document_not_locked
response. (#491)
Since 1.0.0-dp.10
Fixes
- CXXCBC-383: Map
subdoc_doc_too_deep
KV status topath_too_deep
error code. (#455) - CXXCBC-382: Fix
raw_binary_transcoder
so thatget
s on binary data are possible. (#459)
New features and enhancements
4.1.6
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.1.6
Full Changelog: 4.1.5...4.1.6
- PCBC-955: do not allow trailing garbage in encoded CAS value (#134)
- PCBC-956: Update wrapper side bucket settings (#132)
- PCBC-950: Support bucket settings for no dedup feature (#131)
- Updates to support PHP 8.3.
zend_bool
was removed from 8.3.
Notable changes in core C++
- CXXCBC-376: Revisit what 'create' and 'update' bucket operations send to the server. Make optional bucket settings fields optional, and do not send anything unless the settings explicitly specified. (couchbase/couchbase-cxx-client#451)
- CXXCBC-374: Return 'bucket_exists' error when the bucket already exists during 'create' operation. (couchbase/couchbase-cxx-client#449)
- CXXCBC-359: Reduce default HTTP idle timeout to 1 second (couchbase/couchbase-cxx-client#448)
- CXXCBC-367: CXXCBC-370: Add history retention settings to buckets/collection management. (couchbase/couchbase-cxx-client#446)
- CXXCBC-119: Return booleans for subdocument 'exists' operation instead of error code. (couchbase/couchbase-cxx-client#444, couchbase/couchbase-cxx-client#452)
- Detect 'collection_not_found' error in 'update_collection' response (couchbase/couchbase-cxx-client#450)
4.1.5
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.1.5
Full Changelog: 4.1.4...4.1.5
- PCBC-939: Support query with read from replica. (#118)
- PCBC-831: Implement search index management. (#115)
- PCBC-945: Expose expiry options for increment/decrement. (#120)
- PCBC-937: Fix
removeMulti
, which didn't remove documents. (#123) - PCBC-938: Override exception constructor in PHP Extension, which allows to initialize context in derived classes. (#117)
- PCBC-940: Support for subdoc read from replica. (#121)
- PCBC-884: Support for Native KV range scans. (#122, #127)
Notable changes in core C++
- CXXCBC-333: Fix parsing resolv.conf on Linux (#416)
- CXXCBC-335: Log connection options (#417)
- CXXCBC-343: Continue bootsrap if DNS-SRV resolution fails (#422)
- CXXCBC-242: SDK Support for Native KV Range Scans (#419, #423, #424, #428, #431, #432, #433, #434, #426)
- CXXCBC-339: Disable older TLS protocols (#418)
4.1.4
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.1.4
Full Changelog: 4.1.3...4.1.4
Enhancements
- Add
couchbase::
namespace todurability_level
, fixes using Sync Durability. (#102) - PCBC-934: Fixed setting timeout for transaction.
Notable changes in core C++
4.1.3
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.1.3
Full Changelog: 4.1.2...4.1.3
Enhancements
- PCBC-915: Fixed timestamp as expiry in mutation options (#88)
- PCBC-828: Implemented collection management (#89)
- PCBC-918: Extra attributes in ExistsResult now optional (deleted, expiry, flags, and sequenceNumber) (#95)