* PHPC-2473: Bump to libmongoc 1.29.0
Update sources and paths for libmongoc 1.29.0.
Update libmongoc CI builds and re-enable "latest". Also updates the file paths in comment. The test-variants.yml file was moved in e128d2e182
* PHPC-2475: bson_as_legacy_extended_json replaces bson_as_json
* PHPC-2470: Vendor bson-atomic as phongo_atomic
libmongoc 1.29.0 deprecated bson-atomic.h, so this vendors the necessary functionality into PHPC. Also applied clang-format to the new sources.
* PHPC-2311: Note that with-libbson and with-libmongoc are deprecated
* PHPC-2312: MONGOC_ENABLE_SASL_GSSAPI is obsolete
* PHPC-1218: Use m4_include with base path for including m4 scripts
This removes the custom _include macro, which used sinclude on two different paths in order to support both shared and static builds. Unlike m4_sinclude, m4_include reports an error if the file is not found, so this also addresses the validation that was disabled to support PECL installs.
* PHPC-2300 and PHPC-2302: Fix configure output for bundled libbson/libmongoc versions
This was missed in 7ccb0949ba and 1c533ffa2d.
* PHPC-2225: Validate PHP_ARG_ENABLE and PHP_ARG_WITH configure options
Introduce a PHP_MONGODB_VALIDATE_ARG macro, which is called after processing a configure option.
PHP may still assign "yes" as a value during parsing, so map that to another value when necessary (e.g. selecting a crypto/TLS library).
* Add deprecation notice for --enable-system-ciphers in shared builds
* PHPC-2155: Remove prefixes for quoted shell variable references
* PHPC-1017: Allow configure options to be specified with PECL install
Introducing <configureoption> tags in package.xml means that PECL installs will now prompt for input. Non-interactive installs can still be achieved by either piping input (e.g. `yes '' | pecl install mongodb`) or explicitly specifying configure options (--configureoptions option for pecl install).
* Refer to update-submodule-sources.php in config.m4/w32 and fix macOS compatibility
* PHPC-2314: Require OpenSSL 1.0.1+ for libmongoc 1.24+
* PHPC-2315: Use PKG_CHECK_MODULES for detecting libmongoc system libs
* Remove superfluous AC_MSG_NOTICE output in CheckSSL.m4
Bumps libmongoc to 1.25-dev.
This introduces a --with-mongodb-utf8proc configure flag, which accepts "bundled" (default) and "system". Windows will always use bundled sources.
CheckICU.m4 and the --with-mongodb-icu configure flag have been removed.
For the libmongoc bump, this also adds support for a new MONGOC_ENABLE_SRV config constant, which is currently set based on detection in CheckResolv.m4. We can consider exposing that as a configure option down the line in PHPC-2256.
* Update expected error message for invalid crypt_shared override path
This was changed in mongodb/libmongocrypt@792beee312 for MONGOCRYPT-576
* Update update-submodule-sources script for zlib 1.2.13
libmongoc 1.24-dev recently bumped zlib from 1.2.12 to 1.2.13 (CDRIVER-4624). This change was applied to config.m4 in 14af5ea970 but that commit missed the update-submodule-sources script.
* PHPC-2049: Bump libmongoc and libmongocrypt submodules
libmongoc master (1.22-dev) now depends on libmongocrypt master (1.5-dev).
libmongoc's bundled zlib library was updated to 1.2.12.
* PHPC-2049: BulkWrite and Query support comment option of any type
MongoDB 4.4+ allows a comment option of any type on most commands. Previously, find required a string type and write commands did not support comment at all. The driver does not validate the option and relies on the server to raise an error.
* Fix title and variable access in BulkWrite and Query let option tests
* Fix grammar in php_phongo_bulkwrite_delete_apply_options comment
* Undefine additional Query option macros