This is an automated email from the ASF dual-hosted git repository. leborchuk pushed a commit to branch REL_2_STABLE in repository https://gitbox.apache.org/repos/asf/cloudberry.git
commit e112368e006b4e7fa84ba2a0eb9d0a6a9645dfbe Author: Dianjin Wang <[email protected]> AuthorDate: Tue Sep 15 10:06:48 2026 +0800 Fetch yyjson at build time instead of vendoring it yyjson sits in a top-level dependency/ directory as a git submodule, and it is the only thing in there. It does not need to be in the source tree at all: - Nothing outside contrib/pax_storage/src/cpp/manifest/manifest.c uses it. Cloudberry core does not depend on yyjson, which answers the question raised on this PR about why it sat at the top level. - It is compiled only when USE_MANIFEST_API is ON and USE_PAX_CATALOG is OFF. Both default the other way and nothing in the tree turns them on, so no build we ship compiles yyjson: pax.so and libpaxformat.so contain no yyjson symbols and manifest.c produces no object file. Carrying it anyway is not free. dependency/yyjson is 9.3 MB across 804 files, of which 3.0 MB and 201 files are generated doxygen output, and pom.xml needs 249 RAT exclusions to cope with it, 200 of them for the docs alone. That doxygen output also bundles jQuery, jQuery UI, jQuery UI Touch Punch, doxygen-awesome-css and Doxygen's own helper scripts, none of which the root LICENSE accounts for. Justin Mclean raised the LICENSE gap during the 2.2.0-rc1 IPMC vote; fetching yyjson on demand removes the components rather than documenting them. CMake now fetches the dependency during configuration, as suggested by Ed Espino on this PR. This follows what gpMgmt/bin/Makefile already does for psutil, PyYAML and PyGreSQL, which are downloaded at build time for the same reason. The version is a release tag rather than the previous submodule pointer, which was 61c03f6 "Try fix github action", not a release at all. Ed's draft also tried a system yyjson through find_package first. That path is left out: it sets neither yyjson_SOURCE_DIR, which the include path needs, nor a target named yyjson, which pax.cmake links, because an installed yyjson exports yyjson::yyjson. Since the previous behaviour was always to build yyjson from source, always fetching keeps the change behaviour-preserving, and a branch no image can exercise would only rot. The LICENSE entry, licenses/LICENSE-yyjson.txt and all 249 RAT exclusions go away with the directory. This is rebased on top of the boost licence fix, #1995 on main and #1987 on REL_2_STABLE, which corrected the entry from dependencies/yyjson to dependency/yyjson; the whole entry is removed either way, and every hunk now applies cleanly to REL_2_STABLE as well. Verified on Rocky 9: - `mvn clean verify -Drat.consoleOutput=true` against a fresh checkout of main with this applied gives Unapproved: 0, unknown: 0, generated: 1, approved: 5650 licenses, BUILD SUCCESS, so dropping the 249 exclusions leaves nothing unaccounted for. - The default PAX build succeeds with no network access at all, which is the configuration every release build uses. - With USE_MANIFEST_API=ON USE_PAX_CATALOG=OFF, CMake fetches yyjson 0.12.0, builds libyyjson.so.0.12.0, puts -I.../_deps/yyjson-src/src on the compile line that manifest.c uses and libyyjson.so.0.12.0 on the link line. - That configuration then fails in micro_partition_iterator_manifest.cc, which still uses the pre-PostgreSQL-16 rd_node field. An unpatched tree with the submodule fails at the same two lines with the same error, so the breakage predates this change and confirms how long the manifest API path has gone unbuilt. Assisted-by: Claude Code Backpatch-through: REL_2_STABLE --- .gitmodules | 3 - LICENSE | 3 - contrib/pax_storage/CMakeLists.txt | 19 ++- contrib/pax_storage/doc/README.md | 16 +- contrib/pax_storage/src/cpp/cmake/pax.cmake | 2 +- dependency/yyjson | 1 - licenses/LICENSE-yyjson.txt | 21 --- pom.xml | 249 ---------------------------- 8 files changed, 29 insertions(+), 285 deletions(-) diff --git a/.gitmodules b/.gitmodules index f900edb6807..20ba5ada265 100644 --- a/.gitmodules +++ b/.gitmodules @@ -11,9 +11,6 @@ [submodule "contrib/pax_storage/src/cpp/contrib/googlebench"] path = contrib/pax_storage/src/cpp/contrib/googlebench url = https://github.com/google/benchmark.git -[submodule "dependency/yyjson"] - path = dependency/yyjson - url = https://github.com/ibireme/yyjson.git [submodule "gpcontrib/yezzey"] path = gpcontrib/yezzey diff --git a/LICENSE b/LICENSE index 43e78bf7be2..9614868308a 100644 --- a/LICENSE +++ b/LICENSE @@ -388,9 +388,6 @@ Apache Cloudberry includes codes from ---------------------------- MIT LICENSE - dependency/yyjson - see licenses/LICENSE-yyjson.txt - contrib/pax_storage/src/cpp/cpp-stub see licenses/LICENSE-cpp-stub.txt diff --git a/contrib/pax_storage/CMakeLists.txt b/contrib/pax_storage/CMakeLists.txt index ac25ee6cbad..7fe4cc7cae7 100644 --- a/contrib/pax_storage/CMakeLists.txt +++ b/contrib/pax_storage/CMakeLists.txt @@ -118,13 +118,30 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/") include(FindDependencies) add_subdirectory(src/cpp) +# yyjson is only needed by the manifest API implementation, which is off by +# default. It is fetched from its upstream release at configure time rather +# than vendored as a submodule, so that it stays out of the source release +# for builds that do not use it. +set(YYJSON_VERSION "0.12.0" CACHE STRING "yyjson release to fetch for the manifest API") + if(USE_MANIFEST_API AND NOT USE_PAX_CATALOG) + include(FetchContent) + + message(STATUS "Fetching yyjson ${YYJSON_VERSION} for the manifest API") + FetchContent_Declare( + yyjson + GIT_REPOSITORY https://github.com/ibireme/yyjson.git + GIT_TAG ${YYJSON_VERSION} + GIT_SHALLOW TRUE + ) + set(SAVED_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS}) set(SAVED_CMAKE_INSTALL_SO_NO_EXE ${CMAKE_INSTALL_SO_NO_EXE}) set(BUILD_SHARED_LIBS ON) set(CMAKE_INSTALL_SO_NO_EXE OFF) - add_subdirectory(${CMAKE_SOURCE_DIR}/../../dependency/yyjson ${CMAKE_BINARY_DIR}/yyjson_build) + + FetchContent_MakeAvailable(yyjson) set(BUILD_SHARED_LIBS ${SAVED_BUILD_SHARED_LIBS}) set(CMAKE_INSTALL_SO_NO_EXE ${SAVED_CMAKE_INSTALL_SO_NO_EXE}) diff --git a/contrib/pax_storage/doc/README.md b/contrib/pax_storage/doc/README.md index 43393f2f859..fe9020eb406 100644 --- a/contrib/pax_storage/doc/README.md +++ b/contrib/pax_storage/doc/README.md @@ -54,12 +54,16 @@ Also, you need to run the following command at the top level of the Cloudberry s git submodule update --init --recursive ``` -The following submodules will be downloaded for building and tesing PAX: -- yyjson (`dependency/yyjson`) -- cpp-stub (`contrib/pax_storage/src/cpp/cotnrib`) -- googlebench (`contrib/pax_storage/src/cpp/cotnrib`) -- googletest (`contrib/pax_storage/src/cpp/cotnrib`) -- tabulate (`contrib/pax_storage/src/cpp/cotnrib`) +The following submodules will be downloaded for building and testing PAX: +- cpp-stub (`contrib/pax_storage/src/cpp/contrib`) +- googlebench (`contrib/pax_storage/src/cpp/contrib`) +- googletest (`contrib/pax_storage/src/cpp/contrib`) +- tabulate (`contrib/pax_storage/src/cpp/contrib`) + +yyjson is not a submodule. It is only needed by the manifest API +implementation, which is off by default, and CMake fetches it from its +upstream release during configuration when you build with +`USE_MANIFEST_API=ON USE_PAX_CATALOG=OFF`. ### Build debug version diff --git a/contrib/pax_storage/src/cpp/cmake/pax.cmake b/contrib/pax_storage/src/cpp/cmake/pax.cmake index 0d8be852ddb..b32227eb298 100644 --- a/contrib/pax_storage/src/cpp/cmake/pax.cmake +++ b/contrib/pax_storage/src/cpp/cmake/pax.cmake @@ -144,7 +144,7 @@ if (USE_MANIFEST_API) set(pax_catalog_src ${pax_catalog_src} catalog/pax_manifest_impl.cc) else() # use manifest implementation - set(pax_target_include ${pax_target_include} ${TOP_DIR}/dependency/yyjson/src) + set(pax_target_include ${pax_target_include} ${yyjson_SOURCE_DIR}/src) set(pax_catalog_src ${pax_catalog_src} ${manifest_src}) endif() else() # USE_MANIFEST_API diff --git a/dependency/yyjson b/dependency/yyjson deleted file mode 160000 index 61c03f62b37..00000000000 --- a/dependency/yyjson +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 61c03f62b370b685b7994830b570a88d05ba15ab diff --git a/licenses/LICENSE-yyjson.txt b/licenses/LICENSE-yyjson.txt deleted file mode 100644 index a09bff35534..00000000000 --- a/licenses/LICENSE-yyjson.txt +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2020 YaoYuan <[email protected]> - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/pom.xml b/pom.xml index 5b8d1959eb9..61076220b7e 100644 --- a/pom.xml +++ b/pom.xml @@ -1517,255 +1517,6 @@ code or new licensing patterns. <exclude>contrib/pax_storage/src/api/python3/MANIFEST.in</exclude> <exclude>contrib/pax_storage/src/api/python3/setup.cfg</exclude> - <exclude>dependency/yyjson/.gitattributes</exclude> - <exclude>dependency/yyjson/.github/codecov.yml</exclude> - <exclude>dependency/yyjson/.github/workflows/cmake.yml</exclude> - <exclude>dependency/yyjson/CMakeLists.txt</exclude> - <exclude>dependency/yyjson/Package.swift</exclude> - <exclude>dependency/yyjson/cmake/FindGMP.cmake</exclude> - <exclude>dependency/yyjson/cmake/FindMPFR.cmake</exclude> - <exclude>dependency/yyjson/cmake/XcodeProperty.cmake</exclude> - <exclude>dependency/yyjson/doc/doxygen/DoxyLayout.xml</exclude> - <exclude>dependency/yyjson/doc/doxygen/Doxyfile.in</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/annotated.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/annotated_dup.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/api.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/building-and-testing.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/classes.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/cookie.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/data-structures.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/deprecated.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/dir_e68e8157741866f444e17edd764ebbae.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/doc.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/docd.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/doxygen.css</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/doxygen.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/doxygen_crawl.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/files.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/files_dup.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/folderclosed.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/folderclosedd.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/folderopen.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/folderopend.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/functions.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/functions_vars.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals_defs.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals_dup.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals_func.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals_func.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals_type.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals_vars.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/globals_y.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/index.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/index.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/jquery.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/md__c_h_a_n_g_e_l_o_g.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/md_doc__a_p_i.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/md_doc__build_and_test.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/md_doc__data_structure.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/minus.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/minusd.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/navtree.css</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/navtreeindex0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/navtreeindex1.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/navtreeindex2.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/pages.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/perf_reader_a14.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/perf_reader_ec2.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/plus.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/plusd.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_10.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_10.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_11.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_12.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_13.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_14.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_15.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_16.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_17.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_18.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_19.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1a.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1b.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1c.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1d.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1e.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_1f.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_2.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_2.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_20.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_3.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_3.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_4.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_4.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_5.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_5.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_6.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_6.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_7.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_7.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_8.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_8.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_9.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_9.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_a.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_a.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_b.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_b.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_c.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_c.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_d.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_d.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_e.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_e.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_f.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/all_f.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/classes_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/classes_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/close.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/defines_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/defines_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/defines_1.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/defines_1.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/files_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/files_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/functions_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/functions_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/mag.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/mag_d.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/mag_sel.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/mag_seld.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/nomatches.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_1.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_1.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_2.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_2.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_3.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_3.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_4.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_4.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_5.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_6.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/pages_7.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/search.css</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/searchdata.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/typedefs_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/typedefs_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_0.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_0.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_1.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_1.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_2.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_2.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_3.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_3.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_4.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_4.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_5.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_5.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_6.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_6.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_7.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_7.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_8.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_8.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_9.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_9.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_a.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_a.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_b.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_b.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_c.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_c.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_d.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_d.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_e.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/search/variables_e.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/struct_idoc1.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/struct_idoc2.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/struct_ival.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/struct_mdoc.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/struct_mval.svg</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/structyyjson__alc.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/structyyjson__alc.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/tabs.css</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson-style.css</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__alc.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__arr__iter.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__doc.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__mut__arr__iter.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__mut__doc.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__mut__obj__iter.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__mut__val.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__obj__iter.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__patch__err.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__ptr__ctx.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__ptr__err.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__read__err.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__val.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/html/yyjson_8h_structyyjson__write__err.js</exclude> - <exclude>dependency/yyjson/doc/doxygen/theme/yyjson-footer.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/theme/yyjson-header.html</exclude> - <exclude>dependency/yyjson/doc/doxygen/theme/yyjson-style.css</exclude> - <exclude>dependency/yyjson/doc/images/perf_reader_a14.svg</exclude> - <exclude>dependency/yyjson/doc/images/perf_reader_ec2.svg</exclude> - <exclude>dependency/yyjson/doc/images/struct_idoc1.svg</exclude> - <exclude>dependency/yyjson/doc/images/struct_idoc2.svg</exclude> - <exclude>dependency/yyjson/doc/images/struct_ival.svg</exclude> - <exclude>dependency/yyjson/doc/images/struct_mdoc.svg</exclude> - <exclude>dependency/yyjson/doc/images/struct_mval.svg</exclude> - <exclude>dependency/yyjson/fuzz/fuzzer.c</exclude> - <exclude>dependency/yyjson/fuzz/fuzzer.dict</exclude> - <exclude>dependency/yyjson/misc/jsoninfo.c</exclude> - <exclude>dependency/yyjson/misc/make_tables.c</exclude> - <exclude>dependency/yyjson/test/compile_ansi.c</exclude> - <exclude>dependency/yyjson/test/compile_ansi.cpp</exclude> - <exclude>dependency/yyjson/test/data/num/literal_fail.txt</exclude> - <exclude>dependency/yyjson/test/data/num/literal_pass.txt</exclude> - <exclude>dependency/yyjson/test/data/num/num_fail.txt</exclude> - <exclude>dependency/yyjson/test/data/num/num_overflow.txt</exclude> - <exclude>dependency/yyjson/test/data/num/real_pass_1.txt</exclude> - <exclude>dependency/yyjson/test/data/num/real_pass_2.txt</exclude> - <exclude>dependency/yyjson/test/data/num/real_pass_3.txt</exclude> - <exclude>dependency/yyjson/test/data/num/real_pass_4.txt</exclude> - <exclude>dependency/yyjson/test/data/num/real_pass_5.txt</exclude> - <exclude>dependency/yyjson/test/data/num/real_pass_6.txt</exclude> - <exclude>dependency/yyjson/test/data/num/real_pass_7.txt</exclude> - <exclude>dependency/yyjson/test/data/num/sint_bignum.txt</exclude> - <exclude>dependency/yyjson/test/data/num/sint_pass.txt</exclude> - <exclude>dependency/yyjson/test/data/num/uint_bignum.txt</exclude> - <exclude>dependency/yyjson/test/data/num/uint_pass.txt</exclude> - <exclude>dependency/yyjson/test/test_allocator.c</exclude> - <exclude>dependency/yyjson/test/test_err_code.c</exclude> - <exclude>dependency/yyjson/test/test_json_merge_patch.c</exclude> - <exclude>dependency/yyjson/test/test_json_mut_val.c</exclude> - <exclude>dependency/yyjson/test/test_json_patch.c</exclude> - <exclude>dependency/yyjson/test/test_json_pointer.c</exclude> - <exclude>dependency/yyjson/test/test_json_reader.c</exclude> - <exclude>dependency/yyjson/test/test_json_val.c</exclude> - <exclude>dependency/yyjson/test/test_json_writer.c</exclude> - <exclude>dependency/yyjson/test/test_number.c</exclude> - <exclude>dependency/yyjson/test/test_roundtrip.c</exclude> - <exclude>dependency/yyjson/test/test_string.c</exclude> - <exclude>dependency/yyjson/test/util/goo_double_conv.h</exclude> - <exclude>dependency/yyjson/test/util/yy_test_utils.c</exclude> - <exclude>dependency/yyjson/test/util/yy_test_utils.h</exclude> - <exclude>dependency/yyjson/test/xctest/Info.plist</exclude> - <exclude>dependency/yyjson/test/xctest/yy_xctest.h</exclude> - <exclude>dependency/yyjson/test/xctest/yy_xctest.m.in</exclude> - <exclude>dependency/yyjson/test/xctest/yy_xctest.m</exclude> - <exclude>dependency/yyjson/yyjson.pc.in</exclude> <exclude>contrib/pax_storage/src/cpp/contrib/googlebench/tools/requirements.txt</exclude> <exclude>contrib/pax_storage/src/cpp/contrib/googlebench/tools/strip_asm.py</exclude> --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
