Releases: couchbase/couchbase-php-client
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)
Notable changes in core C++
4.1.2
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.1.2
Enhancements
- PCBC-888 handle query context changes (#68)
- Added optional context to CouchbaseException constructor (#85)
Notable changes in core C++
- OpenSSL and CentOS 7 (couchbase/couchbase-cxx-client#382)
- CXXCBC-144: Search query on collections should not require you to pass in the scope name (couchbase/couchbase-cxx-client#379)
- CXXCBC-145: Search query request raw option not used (couchbase/couchbase-cxx-client#380)
- CXXCBC-194: Support ExtThreadSafe transaction extension. (couchbase/couchbase-cxx-client#374, couchbase/couchbase-cxx-client#376)
- CXXCBC-316: Core txn get_optional after query issue (couchbase/couchbase-cxx-client#385)
- CXXCBC-310: Fixed race condition in transaction_context state machine (couchbase/couchbase-cxx-client#386, couchbase/couchbase-cxx-client#378)
4.1.1
API docs: https://docs.couchbase.com/sdk-api/couchbase-php-client-4.1.1
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-902: Make sure that new account is usable in changePassword test (#72)
- 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)
Notable changes in core C++ 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 inlookup_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
- Replace
minstd_rand
withmt19937_64
, as it gives less collisions. - CXXCBC-285: Write to sockets from IO threads, to eliminate potential race conditions.
- Eliminate looping transform in
mcbp_parser::next
. - CXXCBC-205: Use thread-local UUID generator.
- CXXCBC-293: Other performance improvements:
- Speed up UUID serialization to string
- Don't allow to copy
mcbp_message
objects - Avoid extra allocation and initialization
-
Build system fixes:
- Fix build with gcc-13
- Fix gcc 12 issue
-
Enhancements:
- Include OS name in SDK identifier