Skip to content

PHPC-2473: Bump to libmongoc 1.29.0 #1748

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Nov 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 12 additions & 14 deletions .evergreen/config/generated/build/build-libmongoc.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

60 changes: 30 additions & 30 deletions .evergreen/config/generated/test-variant/libmongoc.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

26 changes: 12 additions & 14 deletions .evergreen/config/templates/build/build-libmongoc.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# The following tasks are used to build with different libmongoc versions.
# If libmongoc is not set to a stable version, disable the first two builds and only leave the last one enabled.
# When updating libmongoc to a stable release, make sure all builds are enabled.
# These tasks are used in the build task group "build-php-libmongoc" defined in .evergreen/config/build-task-groups.yml,
# These tasks are used in the build task group "build-php-libmongoc" defined in .evergreen/config/templates/build-task-groups.yml,
# where the "max_hosts" setting must be set to the number of enabled tasks.
# Last but not least, make sure the corresponding test variants are enabled in .evergreen/config/test-variants.yml
# Last but not least, make sure the corresponding test variants are enabled in .evergreen/config/templates/test-variant/libmongoc.yml
- name: "build-php-%phpVersion%-libmongoc-lowest-supported"
tags: ["build-libmongoc", "php%phpVersion%"]
commands:
- func: "compile driver"
vars:
PHP_VERSION: "%phpVersion%"
LIBMONGOC_VERSION: "1.28.1"
LIBMONGOC_VERSION: "1.29.0"
- func: "upload build"

- name: "build-php-%phpVersion%-libmongoc-next-stable"
Expand All @@ -19,16 +19,14 @@
- func: "compile driver"
vars:
PHP_VERSION: "%phpVersion%"
LIBMONGOC_VERSION: "r1.28"
LIBMONGOC_VERSION: "r1.29"
- func: "upload build"

# TODO: this currently fails as libmongoc master needs changes to build directories
# We can re-enable this after switching to 1.29-dev
# - name: "build-php-%phpVersion%-libmongoc-latest"
# tags: ["build-libmongoc", "php%phpVersion%"]
# commands:
# - func: "compile driver"
# vars:
# PHP_VERSION: "%phpVersion%"
# LIBMONGOC_VERSION: "master"
# - func: "upload build"
- name: "build-php-%phpVersion%-libmongoc-latest"
tags: ["build-libmongoc", "php%phpVersion%"]
commands:
- func: "compile driver"
vars:
PHP_VERSION: "%phpVersion%"
LIBMONGOC_VERSION: "master"
- func: "upload build"
60 changes: 30 additions & 30 deletions .evergreen/config/templates/test-variant/libmongoc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,33 +61,33 @@
execution_tasks:
- ".ocsp .7.0"

# - name: test-debian12-php-%phpVersion%-libmongoc-latest
# tags: ["test", "libmongoc", "debian", "x64", "php%phpVersion%"]
# display_name: "Test: Debian 12, PHP %phpVersion%, libmongoc latest"
# run_on: debian12-small
# expansions:
# FETCH_BUILD_VARIANT: "build-debian12"
# FETCH_BUILD_TASK: "build-php-%phpVersion%-libmongoc-latest"
# depends_on:
# - variant: "build-debian12"
# name: "build-php-%phpVersion%-libmongoc-latest"
# tasks:
# - ".standalone .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
# - ".replicaset .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
# - ".sharded .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
# - ".loadbalanced .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
# - "test-atlas-connectivity"
# - ".ocsp !.4.4 !.5.0 !.6.0"
# display_tasks:
# - name: "test-ocsp-latest"
# execution_tasks:
# - ".ocsp .latest"
# - name: "test-ocsp-rapid"
# execution_tasks:
# - ".ocsp .rapid"
# - name: "test-ocsp-8.0"
# execution_tasks:
# - ".ocsp .8.0"
# - name: "test-ocsp-7.0"
# execution_tasks:
# - ".ocsp .7.0"
- name: test-debian12-php-%phpVersion%-libmongoc-latest
tags: ["test", "libmongoc", "debian", "x64", "php%phpVersion%"]
display_name: "Test: Debian 12, PHP %phpVersion%, libmongoc latest"
run_on: debian12-small
expansions:
FETCH_BUILD_VARIANT: "build-debian12"
FETCH_BUILD_TASK: "build-php-%phpVersion%-libmongoc-latest"
depends_on:
- variant: "build-debian12"
name: "build-php-%phpVersion%-libmongoc-latest"
tasks:
- ".standalone .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
- ".replicaset .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
- ".sharded .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
- ".loadbalanced .local !.4.0 !.4.2 !.4.4 !.5.0 !.6.0"
- "test-atlas-connectivity"
- ".ocsp !.4.4 !.5.0 !.6.0"
display_tasks:
- name: "test-ocsp-latest"
execution_tasks:
- ".ocsp .latest"
- name: "test-ocsp-rapid"
execution_tasks:
- ".ocsp .rapid"
- name: "test-ocsp-8.0"
execution_tasks:
- ".ocsp .8.0"
- name: "test-ocsp-7.0"
execution_tasks:
- ".ocsp .7.0"
2 changes: 1 addition & 1 deletion bin/prep-release.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ function get_files() {
"src/BSON/*.{c,h}",
"src/contrib/*.{c,h}",

"src/libmongoc/src/common/*.{c,h,h.in}",
"src/libmongoc/src/common/src/*.{c,h,h.in}",
"src/libmongoc/src/kms-message/src/*.{c,h}",
"src/libmongoc/src/kms-message/src/kms_message/*.{c,h}",
"src/libmongoc/src/libbson/src/bson/*.{c,h,h.in}",
Expand Down
19 changes: 10 additions & 9 deletions config.m4
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ if test "$PHP_MONGODB" != "no"; then
PHP_MONGODB_SOURCES="\
php_phongo.c \
src/phongo_apm.c \
src/phongo_atomic.c \
src/phongo_bson.c \
src/phongo_bson_encode.c \
src/phongo_client.c \
Expand Down Expand Up @@ -276,26 +277,26 @@ if test "$PHP_MONGODB" != "no"; then
PHP_MONGODB_MONGOCRYPT_VERSION_STRING="None"

if test "$PHP_MONGODB_SYSTEM_LIBS" != "no"; then
PKG_CHECK_MODULES([PHP_MONGODB_BSON], [libbson-1.0 >= 1.28.1], [
PKG_CHECK_MODULES([PHP_MONGODB_BSON], [libbson-1.0 >= 1.29.0], [
PHP_MONGODB_BSON_VERSION=`$PKG_CONFIG libbson-1.0 --modversion`
PHP_MONGODB_BSON_VERSION_STRING="System ($PHP_MONGODB_BSON_VERSION)"

PHP_MONGODB_CFLAGS="$PHP_MONGODB_CFLAGS $PHP_MONGODB_BSON_CFLAGS"
PHP_EVAL_LIBLINE($PHP_MONGODB_BSON_LIBS, MONGODB_SHARED_LIBADD)
AC_DEFINE(HAVE_SYSTEM_LIBBSON, 1, [Use system libbson])
],[
AC_MSG_ERROR([Could not find system library for libbson >= 1.28.1])
AC_MSG_ERROR([Could not find system library for libbson >= 1.29.0])
])

PKG_CHECK_MODULES([PHP_MONGODB_MONGOC], [libmongoc-1.0 >= 1.28.1], [
PKG_CHECK_MODULES([PHP_MONGODB_MONGOC], [libmongoc-1.0 >= 1.29.0], [
PHP_MONGODB_BSON_VERSION=`$PKG_CONFIG libbson-1.0 --modversion`
PHP_MONGODB_BSON_VERSION_STRING="System ($PHP_MONGODB_BSON_VERSION)"

PHP_MONGODB_CFLAGS="$PHP_MONGODB_CFLAGS $PHP_MONGODB_MONGOC_CFLAGS"
PHP_EVAL_LIBLINE($PHP_MONGODB_MONGOC_LIBS, MONGODB_SHARED_LIBADD)
AC_DEFINE(HAVE_SYSTEM_LIBMONGOC, 1, [Use system libmongoc])
],[
AC_MSG_ERROR(Could not find system library for libmongoc >= 1.28.1)
AC_MSG_ERROR(Could not find system library for libmongoc >= 1.29.0)
])

if test "$PHP_MONGODB_CLIENT_SIDE_ENCRYPTION" != "no"; then
Expand Down Expand Up @@ -394,26 +395,26 @@ if test "$PHP_MONGODB" != "no"; then
fi

dnl Sources below are updated by scripts/update-submodule-sources.php
PHP_MONGODB_COMMON_SOURCES="common-b64.c common-md5.c common-thread.c"
PHP_MONGODB_COMMON_SOURCES="common-atomic.c common-b64.c common-md5.c common-thread.c"
PHP_MONGODB_KMS_MESSAGE_SOURCES="hexlify.c kms_azure_request.c kms_b64.c kms_caller_identity_request.c kms_crypto_apple.c kms_crypto_libcrypto.c kms_crypto_none.c kms_crypto_windows.c kms_decrypt_request.c kms_encrypt_request.c kms_gcp_request.c kms_kmip_reader_writer.c kms_kmip_request.c kms_kmip_response.c kms_kmip_response_parser.c kms_kv_list.c kms_message.c kms_port.c kms_request.c kms_request_opt.c kms_request_str.c kms_response.c kms_response_parser.c sort.c"
PHP_MONGODB_BSON_SOURCES="bcon.c bson-atomic.c bson.c bson-clock.c bson-context.c bson-decimal128.c bson-error.c bson-iso8601.c bson-iter.c bson-json.c bson-keys.c bson-md5.c bson-memory.c bson-oid.c bson-reader.c bson-string.c bson-timegm.c bson-utf8.c bson-value.c bson-version-functions.c bson-writer.c"
PHP_MONGODB_JSONSL_SOURCES="jsonsl.c"
PHP_MONGODB_MONGOC_SOURCES="mcd-azure.c mcd-nsinfo.c mcd-rpc.c mongoc-aggregate.c mongoc-apm.c mongoc-array.c mongoc-async.c mongoc-async-cmd.c mongoc-buffer.c mongoc-bulk-operation.c mongoc-bulkwrite.c mongoc-change-stream.c mongoc-client.c mongoc-client-pool.c mongoc-client-session.c mongoc-client-side-encryption.c mongoc-cluster-aws.c mongoc-cluster.c mongoc-cluster-cyrus.c mongoc-cluster-sasl.c mongoc-cluster-sspi.c mongoc-cmd.c mongoc-collection.c mongoc-compression.c mongoc-counters.c mongoc-crypt.c mongoc-crypto.c mongoc-crypto-cng.c mongoc-crypto-common-crypto.c mongoc-crypto-openssl.c mongoc-cursor-array.c mongoc-cursor.c mongoc-cursor-change-stream.c mongoc-cursor-cmd.c mongoc-cursor-cmd-deprecated.c mongoc-cursor-find.c mongoc-cursor-find-cmd.c mongoc-cursor-find-opquery.c mongoc-cursor-legacy.c mongoc-cyrus.c mongoc-database.c mongoc-deprioritized-servers.c mongoc-error.c mongoc-find-and-modify.c mongoc-flags.c mongoc-generation-map.c mongoc-gridfs-bucket.c mongoc-gridfs-bucket-file.c mongoc-gridfs.c mongoc-gridfs-file.c mongoc-gridfs-file-list.c mongoc-gridfs-file-page.c mongoc-handshake.c mongoc-host-list.c mongoc-http.c mongoc-index.c mongoc-init.c mongoc-interrupt.c mongoc-libressl.c mongoc-linux-distro-scanner.c mongoc-list.c mongoc-log.c mongoc-matcher.c mongoc-matcher-op.c mongoc-memcmp.c mongoc-ocsp-cache.c mongoc-opcode.c mongoc-openssl.c mongoc-optional.c mongoc-opts.c mongoc-opts-helpers.c mongoc-queue.c mongoc-rand-cng.c mongoc-rand-common-crypto.c mongoc-rand-openssl.c mongoc-read-concern.c mongoc-read-prefs.c mongoc-rpc.c mongoc-sasl.c mongoc-scram.c mongoc-secure-channel.c mongoc-secure-transport.c mongoc-server-api.c mongoc-server-description.c mongoc-server-monitor.c mongoc-server-stream.c mongoc-set.c mongoc-shared.c mongoc-socket.c mongoc-ssl.c mongoc-sspi.c mongoc-stream-buffered.c mongoc-stream.c mongoc-stream-file.c mongoc-stream-gridfs.c mongoc-stream-gridfs-download.c mongoc-stream-gridfs-upload.c mongoc-stream-socket.c mongoc-stream-tls.c mongoc-stream-tls-libressl.c mongoc-stream-tls-openssl-bio.c mongoc-stream-tls-openssl.c mongoc-stream-tls-secure-channel.c mongoc-stream-tls-secure-transport.c mongoc-timeout.c mongoc-topology-background-monitoring.c mongoc-topology.c mongoc-topology-description-apm.c mongoc-topology-description.c mongoc-topology-scanner.c mongoc-ts-pool.c mongoc-uri.c mongoc-util.c mongoc-version-functions.c mongoc-write-command.c mongoc-write-concern.c service-gcp.c"
PHP_MONGODB_UTF8PROC_SOURCES="utf8proc.c"
PHP_MONGODB_ZLIB_SOURCES="adler32.c compress.c crc32.c deflate.c gzclose.c gzlib.c gzread.c gzwrite.c infback.c inffast.c inflate.c inftrees.c trees.c uncompr.c zutil.c"

PHP_MONGODB_ADD_SOURCES([src/libmongoc/src/common/], $PHP_MONGODB_COMMON_SOURCES, $PHP_MONGODB_BUNDLED_CFLAGS)
PHP_MONGODB_ADD_SOURCES([src/libmongoc/src/common/src/], $PHP_MONGODB_COMMON_SOURCES, $PHP_MONGODB_BUNDLED_CFLAGS)
PHP_MONGODB_ADD_SOURCES([src/libmongoc/src/libbson/src/bson/], $PHP_MONGODB_BSON_SOURCES, $PHP_MONGODB_BUNDLED_CFLAGS)
PHP_MONGODB_ADD_SOURCES([src/libmongoc/src/libbson/src/jsonsl/], $PHP_MONGODB_JSONSL_SOURCES, $PHP_MONGODB_BUNDLED_CFLAGS)
PHP_MONGODB_ADD_SOURCES([src/libmongoc/src/libmongoc/src/mongoc/], $PHP_MONGODB_MONGOC_SOURCES, $PHP_MONGODB_BUNDLED_CFLAGS)

PHP_MONGODB_ADD_INCLUDE([src/libmongoc/src/common/])
PHP_MONGODB_ADD_INCLUDE([src/libmongoc/src/common/src/])
PHP_MONGODB_ADD_INCLUDE([src/libmongoc/src/uthash/])
PHP_MONGODB_ADD_INCLUDE([src/libmongoc/src/libbson/src/])
PHP_MONGODB_ADD_INCLUDE([src/libmongoc/src/libbson/src/jsonsl/])
PHP_MONGODB_ADD_INCLUDE([src/libmongoc/src/libmongoc/src/])

PHP_MONGODB_ADD_BUILD_DIR([src/libmongoc/src/common/])
PHP_MONGODB_ADD_BUILD_DIR([src/libmongoc/src/common/src/])
PHP_MONGODB_ADD_BUILD_DIR([src/libmongoc/src/libbson/src/bson/])
PHP_MONGODB_ADD_BUILD_DIR([src/libmongoc/src/libbson/src/jsonsl/])
PHP_MONGODB_ADD_BUILD_DIR([src/libmongoc/src/libmongoc/src/mongoc/])
Expand All @@ -431,7 +432,7 @@ if test "$PHP_MONGODB" != "no"; then
ac_config_dir=PHP_EXT_SRCDIR(mongodb)

AC_CONFIG_FILES([
${ac_config_dir}/src/libmongoc/src/common/common-config.h
${ac_config_dir}/src/libmongoc/src/common/src/common-config.h
${ac_config_dir}/src/libmongoc/src/libbson/src/bson/bson-config.h
${ac_config_dir}/src/libmongoc/src/libbson/src/bson/bson-version.h
${ac_config_dir}/src/libmongoc/src/libmongoc/src/mongoc/mongoc-config.h
Expand Down
Loading