8 Commits

Author SHA1 Message Date
Jeremy Mikola
6ede0aa1df PHPC-2473: Bump to libmongoc 1.29.0 (#1748)
* 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.
2024-11-15 09:20:55 -05:00
Andreas Braun
01a39e7bc8 PHPC-2376: Test against MongoDB 8.0 (#1598)
* PHPC-2376: Test against MongoDB 8.0

* Update libmongoc to latest master version

* Don't rely on python being in PATH
2024-06-27 17:47:11 +02:00
Jeremy Mikola
3484355b40 PHPC-2358 and PHPC-2360: Upgrade libmongoc 1.26 and libmongocrypt 1.9 (#1516)
* PHPC-2360: Update libmongoc to 1.26.0

* PHPC-2358: Update libmongocrypt to 1.9.0

* Allow running update-submodule-sources.php from any pwd
2024-02-21 13:07:21 -05:00
Jeremy Mikola
8dfe6c31ec PHPC-2256: Build configuration improvements (#1483)
* 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
2023-11-01 21:41:56 -04:00
Jeremy Mikola
d2a600bae6 PHPC-2262: Replace ICU dep with vendored utf8proc lib (#1447)
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.
2023-07-19 10:29:43 -04:00
Jeremy Mikola
69671dbb73 PHPC-2228: Upgrade libmongocrypt to 1.8.1 (#1428)
* 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.
2023-05-28 10:30:28 -04:00
Jeremy Mikola
db4fe3dc8b PHPC-2049: BulkWrite and Query support comment option of any type (#1320)
* 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
2022-05-20 11:11:18 -04:00
Jeremy Mikola
8a4670becd PHPC-2011: Upgrade libmongoc to 1.20.0 and libmongocrypt to 1.3.0 (#1279)
* PHPC-2011: Bump libmongocrypt to 1.3.0

* PHPC-2011: Bump libmongoc to 1.20.0

* Script to update submodule sources in config.m4 and config.w32
2021-12-06 11:15:20 -05:00