FreeBSD Bugzilla – Attachment 255203 Details for
Bug 279519
[NEW PORT] databases/mongosh: mongodb official Shell CLI
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Updated patch
0001-mongosh-2.2.5.patch (text/plain), 21.92 KB, created by
Fabien Amelinck
on 2024-11-15 18:30:12 UTC
(
hide
)
Description:
Updated patch
Filename:
MIME Type:
Creator:
Fabien Amelinck
Created:
2024-11-15 18:30:12 UTC
Size:
21.92 KB
patch
obsolete
>From 56c035c2909c54a7fa5310aa4ca48b6d7e6b1981 Mon Sep 17 00:00:00 2001 >From: Fabien Amelinck <fabien.amelinck@advens.fr> >Date: Fri, 15 Nov 2024 19:25:04 +0100 >Subject: [PATCH] New mongosh port > >--- > databases/Makefile | 1 + > databases/mongosh/Makefile | 146 ++++++++++++++++++ > databases/mongosh/distinfo | 11 ++ > .../patch-node__modules_kerberos_binding.gyp | 32 ++++ > ...e__modules_kerberos_src_kerberos__common.h | 11 ++ > ...ules_mongodb-client-encryption_binding.gyp | 35 +++++ > ...les_mongodb-client-encryption_package.json | 11 ++ > ...ch-node__modules_os-dns-native_binding.gyp | 13 ++ > .../mongosh/files/node-patches/004-openssl3 | 15 ++ > .../files/node-patches/005-src_cares__wrap.h | 11 ++ > databases/mongosh/files/patch-package.json | 36 +++++ > ...dejs-patches_002-workaround-node-bug-52229 | 17 ++ > .../files/patch-scripts_prep-fle-addon.sh | 20 +++ > .../files/patch-scripts_sort-workspaces.js | 11 ++ > databases/mongosh/pkg-descr | 5 + > databases/mongosh/pkg-plist | 1 + > 16 files changed, 376 insertions(+) > create mode 100644 databases/mongosh/Makefile > create mode 100644 databases/mongosh/distinfo > create mode 100644 databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_binding.gyp > create mode 100644 databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_src_kerberos__common.h > create mode 100644 databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_binding.gyp > create mode 100644 databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_package.json > create mode 100644 databases/mongosh/files/node-modules-patches/patch-node__modules_os-dns-native_binding.gyp > create mode 100644 databases/mongosh/files/node-patches/004-openssl3 > create mode 100644 databases/mongosh/files/node-patches/005-src_cares__wrap.h > create mode 100644 databases/mongosh/files/patch-package.json > create mode 100644 databases/mongosh/files/patch-scripts_nodejs-patches_002-workaround-node-bug-52229 > create mode 100644 databases/mongosh/files/patch-scripts_prep-fle-addon.sh > create mode 100644 databases/mongosh/files/patch-scripts_sort-workspaces.js > create mode 100644 databases/mongosh/pkg-descr > create mode 100644 databases/mongosh/pkg-plist > >diff --git a/databases/Makefile b/databases/Makefile >index 8046288dcfa8..92a6a201a9a8 100644 >--- a/databases/Makefile >+++ b/databases/Makefile >@@ -189,6 +189,7 @@ > SUBDIR += mongodb60 > SUBDIR += mongodb70 > SUBDIR += mongodb80 >+ SUBDIR += mongosh > SUBDIR += movine > SUBDIR += mroonga > SUBDIR += mtop >diff --git a/databases/mongosh/Makefile b/databases/mongosh/Makefile >new file mode 100644 >index 000000000000..54d5eec6d600 >--- /dev/null >+++ b/databases/mongosh/Makefile >@@ -0,0 +1,146 @@ >+PORTNAME= mongosh >+DISTVERSIONPREFIX= v >+DISTVERSION= 2.2.5 >+CATEGORIES= databases shells net >+MASTER_SITES= https://registry.npmjs.org/mongodb-client-encryption/-/:mongocrypt \ >+ https://registry.npmjs.org/kerberos/-/:kerberos \ >+ https://registry.npmjs.org/os-dns-native/-/:dns \ >+ https://github.com/${GH_ACCOUNT}/${PORTNAME}/releases/download/${DISTVERSIONFULL}/:modules >+ # https://nodejs.org/dist/latest-v${NODEJS_VERSION}.x/:node >+DISTFILES= mongodb-client-encryption-${MONGO_CRYPT_VER}.tgz:mongocrypt \ >+ kerberos-${KERBEROS_VER}.tgz:kerberos \ >+ os-dns-native-${OSDNSNATIVE_VER}.tgz:dns \ >+ ${NODE_MODULES_TARBALL}:modules \ >+ # ${NODEJS_TARBALL}:node \ >+ # SHASUMS256.txt:node >+DIST_SUBDIR= ${PORTNAME} >+EXTRACT_ONLY= ${DISTFILE_DEFAULT} >+ >+MAINTAINER= fabien.amelinck+freebsd@advens.fr >+COMMENT= MongoDB Shell CLI REPL >+WWW= https://github.com/mongodb-js/mongosh/ >+ >+LICENSE= APACHE20 >+ >+FETCH_DEPENDS= npm${NODEJS_SUFFIX}>0:www/npm${NODEJS_SUFFIX} >+BUILD_DEPENDS= bash>0:shells/bash \ >+ brotli>=1.0.9,1:archivers/brotli \ >+ c-ares>=1.17.2:dns/c-ares \ >+ libnghttp2>=1.45.1:www/libnghttp2 \ >+ libuv>=1.42.0:devel/libuv \ >+ objdump:devel/binutils \ >+ git>0:devel/git \ >+ ${PREFIX}/include/gssapi/gssapi_generic.h:security/krb5 >+RUN_DEPENDS= ca_root_nss>=0:security/ca_root_nss >+LIB_DEPENDS= libmongocrypt.so:databases/libmongocrypt \ >+ libbrotlidec.so:archivers/brotli \ >+ libcares.so:dns/c-ares \ >+ libnghttp2.so:www/libnghttp2 \ >+ libuv.so:devel/libuv >+ >+USES= compiler:c++11-lib gmake localbase pkgconfig nodejs:20,build python:build ssl >+ >+USE_GITHUB= yes >+GH_ACCOUNT= VultureProject >+GH_PROJECT= mongosh >+ >+MPROTECT_DISABLE= bin/mongosh >+ >+CXXFLAGS+= -DNODE_API_EXPERIMENTAL \ >+ -DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT >+ >+CUSTOM_ENV= SEGMENT_API_KEY=dummy BUILD_TYPE=dynamic >+CONFIGURE_ENV= ${CUSTOM_ENV} >+MAKE_ENV= ${CUSTOM_ENV} \ >+ NODE_JS_VERSION=file://${_DISTDIR}/${NODEJS_TARBALL} \ >+ BOXEDNODE_CONFIGURE_ARGS="--shared-brotli,--shared-cares,--shared-libuv,--shared-nghttp2,--shared-zlib,--shared-openssl,--openssl-use-def-ca-store,--without-npm" >+REINPLACE_ARGS= -i '' >+ >+MONGO_CRYPT_VER=6.0.0 >+KERBEROS_VER= 2.1.0 >+OSDNSNATIVE_VER=1.2.0 >+NODE_MODULES_DIR= ${WRKSRC}/node_modules >+NODE_MODULES_TARBALL= ${PORTNAME}-node-modules.tar.xz >+NPM_CACHE_DIR= /tmp/.npm >+NODEJS_TARBALL= node-v${NODEJS_PORTVERSION}.tar.gz >+ >+post-fetch: >+.if !exists(/tmp/checkpoint) >+ ${FETCH_CMD} -o ${_DISTDIR} https://nodejs.org/dist/v${NODEJS_PORTVERSION}/${NODEJS_TARBALL} >+ ${FETCH_CMD} -o ${_DISTDIR} https://nodejs.org/dist/v${NODEJS_PORTVERSION}/SHASUMS256.txt >+ ${TOUCH} /tmp/checkpoint >+.endif >+ >+post-extract: >+.if !exists(${NODE_MODULES_DIR}) >+ ${TAR} -xzf /${_DISTDIR}/${NODE_MODULES_TARBALL} -C ${WRKSRC} >+ ${REINPLACE_CMD} -e "s/'make'/'gmake'/g" \ >+ -e "s/'V='/'V=0'/g" \ >+ -e 's/(await (0, nv_1.default)(range)).pop()/{"version": "${NODEJS_PORTVERSION}"}/g' \ >+ -e "s|\$${releaseBaseUrl}/\(SHASUMS256.txt\)|${_DISTDIR}/\1|g" \ >+ -e 's/await (0, node_fetch_1.default)(shaSumsUrl)/{"ok":1}/g' \ >+ -e "s/shaSums.text()/fs_1.promises.readFile(shaSumsUrl, 'utf8')/g" \ >+ -e "s/catch (_a) { }/catch (_a) { console.error(_a) }/g" \ >+ ${NODE_MODULES_DIR}/boxednode/lib/index.js >+ ${GREP} -A20 "const shaSumsUrl" ${NODE_MODULES_DIR}/boxednode/lib/index.js >+ ${REINPLACE_CMD} -e "s|\('install',\) \('--ignore-scripts'\)|\1 '--offline', '--cache ${NPM_CACHE_DIR}', \2|g" \ >+ ${NODE_MODULES_DIR}/boxednode/lib/native-addons.js >+ ${GREP} "ignore-scripts" ${NODE_MODULES_DIR}/boxednode/lib/native-addons.js >+.endif >+ >+post-patch: >+ ${FIND} ${WRKSRC}/scripts -name "*.orig" -delete >+ ${CP} -v ${FILESDIR}/node-patches/* ${WRKSRC}/scripts/nodejs-patches >+ >+do-configure: >+.for module in mongodb-client-encryption kerberos os-dns-native >+ cd ${NODE_MODULES_DIR}/${module} && ${CONFIGURE_ENV} node-gyp configure --nodedir=${LOCALBASE} >+.endfor >+ >+do-build: >+.for module in mongodb-client-encryption kerberos os-dns-native >+ cd ${NODE_MODULES_DIR}/${module} && ${MAKE_ENV} ${MAKE_CMD} BUILDTYPE=Release -C build -d >+.endfor >+ ${REINPLACE_CMD} 's/"version": "0.0.0-dev.0"/"version": "${DISTVERSION}"/g' ${WRKSRC}/packages/cli-repl/package.json >+ cd ${WRKSRC} && ${MAKE_ENV} /usr/local/bin/npm run compile-exec >+ >+do-install: >+ ${INSTALL_PROGRAM} ${WRKSRC}/dist/mongosh ${STAGEDIR}${PREFIX}/bin >+ >+npm-pkg-list: extract >+ ${GREP} registry.npmjs.org ${WRKSRC}/package-lock.json | \ >+ | ${SED} -E 's/^[[:space:]]+//g' \ >+ | ${SED} -E 's#^.*org/|.tgz",##g' \ >+ | ${SORT} \ >+ | /usr/bin/uniq \ >+ | ${SED} -E 's/(.*)-([^-])/\1@\2/g' \ >+ | ${SED} -E 's|/-/.*@|@|g' \ >+ > ${FILESDIR}/npm-pkg.list >+ >+.for module in mongodb-client-encryption kerberos os-dns-native mongodb-crypt-library-version glibc-version >+ cd ${NODE_MODULES_DIR}/${module} && /usr/local/bin/npm list 2>/dev/null \ >+ | ${GREP} UNMET \ >+ | ${AWK} 'BEGIN{FS="UNMET DEPENDENCY "}{print $$2}' \ >+ > ${FILESDIR}/npm-pkg-${module}.list >+.endfor >+ >+node-modules-archive: build >+ ${RM} -R ${NODE_MODULES_DIR} >+.for module in mongodb-client-encryption kerberos os-dns-native >+ ${MKDIR} -v ${NODE_MODULES_DIR}/${module} >+ ${TAR} -xzf ${_DISTDIR}/${module}-*.tgz -C ${NODE_MODULES_DIR}/${module} --strip-components 1 >+.endfor >+ for f in ${FILESDIR}/node-modules-patches/*; do patch -N -d ${WRKSRC} < $$f; done >+ >+ cd ${WRKSRC} && npx cross-env PUPPETEER_SKIP_DOWNLOAD=1 /usr/local/bin/npm install --cache ${NPM_CACHE_DIR} >+ >+.for module in mongodb-client-encryption kerberos os-dns-native mongodb-crypt-library-version glibc-version >+ /usr/local/bin/npm cache add $$(cat ${FILESDIR}/npm-pkg-${module}.list) --cache ${NPM_CACHE_DIR} || true >+ cd ${NODE_MODULES_DIR}/${module} && ${CONFIGURE_ENV} /usr/local/bin/npm install --ignore-scripts --cache ${NPM_CACHE_DIR} >+.endfor >+ ${FIND} ${WRKSRC} -name "*.orig" -or -name "*.bak" -delete >+ >+ cd ${WRKSRC} && ${TAR} -cJf /tmp/${NODE_MODULES_TARBALL} node_modules >+ >+.include <bsd.port.mk> >+.include "${PORTSDIR}/www/node${NODEJS_VERSION}/Makefile.version" >diff --git a/databases/mongosh/distinfo b/databases/mongosh/distinfo >new file mode 100644 >index 000000000000..8e30721fef98 >--- /dev/null >+++ b/databases/mongosh/distinfo >@@ -0,0 +1,11 @@ >+TIMESTAMP = 1731685667 >+SHA256 (mongosh/mongodb-client-encryption-6.0.0.tgz) = b72d6ad4e4c449ba4548f8f4f8708d37c1490c6615caefa8c56a02f22897b64a >+SIZE (mongosh/mongodb-client-encryption-6.0.0.tgz) = 15734 >+SHA256 (mongosh/kerberos-2.1.0.tgz) = eeb1d33472dcf15be8ae46e30ffc76455a62356a91cee52bb8d48f97a35a58c7 >+SIZE (mongosh/kerberos-2.1.0.tgz) = 28988 >+SHA256 (mongosh/os-dns-native-1.2.0.tgz) = cfe145091dd469c4fe6923b61ef85621222526a0ed74b01b6b3739069d244f7d >+SIZE (mongosh/os-dns-native-1.2.0.tgz) = 6525 >+SHA256 (mongosh/mongosh-node-modules.tar.xz) = fb8702b2e7846d320a6dafa77496be0adad9d248b4097b541bfaf84cd890a518 >+SIZE (mongosh/mongosh-node-modules.tar.xz) = 155538892 >+SHA256 (mongosh/VultureProject-mongosh-v2.2.5_GH0.tar.gz) = 38fd3c21433d2b8d371161941843a3c6a6652e41c4a9d3cfa3917164630f3928 >+SIZE (mongosh/VultureProject-mongosh-v2.2.5_GH0.tar.gz) = 8653615 >diff --git a/databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_binding.gyp b/databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_binding.gyp >new file mode 100644 >index 000000000000..6c40a322285e >--- /dev/null >+++ b/databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_binding.gyp >@@ -0,0 +1,32 @@ >+--- node_modules/kerberos/binding.gyp.orig 2024-05-13 15:16:38 UTC >++++ node_modules/kerberos/binding.gyp >+@@ -34,14 +34,18 @@ >+ 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden >+ } >+ }], >+- ['OS=="mac" or OS=="linux"', { >++ ['OS=="mac" or OS=="linux" or OS=="freebsd"', { >+ 'sources': [ >+ 'src/unix/base64.cc', >+ 'src/unix/kerberos_gss.cc', >+ 'src/unix/kerberos_unix.cc' >+ ] >+ }], >+- ['(OS=="mac" or OS=="linux") and (kerberos_use_rtld!="true")', { >++ ['(OS=="mac" or OS=="linux" or OS=="freebsd") and (kerberos_use_rtld!="true")', { >++ 'defines': ['NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT'], >++ 'include_dirs': [ >++ '/usr/local/include' >++ ], >+ 'link_settings': { >+ 'libraries': [ >+ '-lkrb5', >+@@ -58,7 +62,7 @@ >+ }] >+ ] >+ }], >+- ['(OS=="mac" or OS=="linux") and (kerberos_use_rtld=="true")', { >++ ['(OS=="mac" or OS=="linux" or OS=="freebsd") and (kerberos_use_rtld=="true")', { >+ 'defines': ['KERBEROS_USE_RTLD=1'], >+ 'link_settings': { >+ 'libraries': [ >diff --git a/databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_src_kerberos__common.h b/databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_src_kerberos__common.h >new file mode 100644 >index 000000000000..ca2ad82d6d29 >--- /dev/null >+++ b/databases/mongosh/files/node-modules-patches/patch-node__modules_kerberos_src_kerberos__common.h >@@ -0,0 +1,11 @@ >+--- node_modules/kerberos/src/kerberos_common.h.orig 2024-05-13 16:09:25 UTC >++++ node_modules/kerberos/src/kerberos_common.h >+@@ -1,7 +1,7 @@ >+ #ifndef KERBEROS_COMMON_H >+ #define KERBEROS_COMMON_H >+ >+-#if defined(__linux__) || defined(__APPLE__) >++#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) >+ #include "unix/kerberos_gss.h" >+ >+ namespace node_kerberos { >diff --git a/databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_binding.gyp b/databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_binding.gyp >new file mode 100644 >index 000000000000..bf3a39c2554f >--- /dev/null >+++ b/databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_binding.gyp >@@ -0,0 +1,35 @@ >+--- node_modules/mongodb-client-encryption/binding.gyp.orig 2024-05-13 14:10:24 UTC >++++ node_modules/mongodb-client-encryption/binding.gyp >+@@ -38,9 +38,14 @@ >+ } >+ }], >+ ['build_type=="dynamic"', { >++ 'defines': [ 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' ], >++ 'include_dirs': [ >++ '/usr/include', >++ '/usr/local/include' >++ ], >+ 'link_settings': { >+ 'libraries': [ >+- '-lmongocrypt' >++ '-L/usr/local/lib -lmongocrypt' >+ ] >+ } >+ }], >+@@ -48,13 +53,12 @@ >+ 'conditions': [ >+ ['OS!="win"', { >+ 'include_dirs': [ >+- '<(module_root_dir)/deps/include' >++ '/usr/include', >++ '/usr/local/include' >+ ], >+ 'link_settings': { >+ 'libraries': [ >+- '<(module_root_dir)/deps/lib/libmongocrypt-static.a', >+- '<(module_root_dir)/deps/lib/libkms_message-static.a', >+- '<(module_root_dir)/deps/lib/libbson-static-for-libmongocrypt.a' >++ '-L/usr/local/lib -lmongocrypt' >+ ] >+ } >+ }], >diff --git a/databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_package.json b/databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_package.json >new file mode 100644 >index 000000000000..63545e891861 >--- /dev/null >+++ b/databases/mongosh/files/node-modules-patches/patch-node__modules_mongodb-client-encryption_package.json >@@ -0,0 +1,11 @@ >+--- node_modules/mongodb-client-encryption/package.json.orig 2024-05-13 13:50:11 UTC >++++ node_modules/mongodb-client-encryption/package.json >+@@ -16,7 +16,7 @@ >+ "lib": "lib" >+ }, >+ "scripts": { >+- "install": "prebuild-install --runtime napi --tag-prefix node-v || node-gyp rebuild", >++ "install": "prebuild-install --runtime napi --tag-prefix node-v || BUILD_TYPE=dynamic node-gyp rebuild", >+ "build:ts": "tsc", >+ "clang-format": "clang-format --style=file:.clang-format --Werror -i addon/*", >+ "check:eslint": "eslint src test", >diff --git a/databases/mongosh/files/node-modules-patches/patch-node__modules_os-dns-native_binding.gyp b/databases/mongosh/files/node-modules-patches/patch-node__modules_os-dns-native_binding.gyp >new file mode 100644 >index 000000000000..340a86450dc4 >--- /dev/null >+++ b/databases/mongosh/files/node-modules-patches/patch-node__modules_os-dns-native_binding.gyp >@@ -0,0 +1,13 @@ >+--- node_modules/os-dns-native/binding.gyp.orig 2024-05-13 16:56:54 UTC >++++ node_modules/os-dns-native/binding.gyp >+@@ -19,10 +19,6 @@ >+ "link_settings": { >+ "libraries": ["-ldnsapi"] >+ } >+- }, { >+- "link_settings": { >+- "libraries": ["-lresolv"] >+- } >+ }] >+ ] >+ }] >diff --git a/databases/mongosh/files/node-patches/004-openssl3 b/databases/mongosh/files/node-patches/004-openssl3 >new file mode 100644 >index 000000000000..6b1f10fb4a83 >--- /dev/null >+++ b/databases/mongosh/files/node-patches/004-openssl3 >@@ -0,0 +1,15 @@ >+--- a/src/crypto/crypto_util.cc 2023-05-16 06:58:21 UTC >++++ b/src/crypto/crypto_util.cc >+@@ -205,10 +205,12 @@ void InitCryptoOnce() { >+ // No-op with OPENSSL_NO_COMP builds of OpenSSL. >+ sk_SSL_COMP_zero(SSL_COMP_get_compression_methods()); >+ >++#if OPENSSL_VERSION_MAJOR < 3 >+ #ifndef OPENSSL_NO_ENGINE >+ ERR_load_ENGINE_strings(); >+ ENGINE_load_builtin_engines(); >+ #endif // !OPENSSL_NO_ENGINE >++#endif >+ } >+ >+ void GetFipsCrypto(const FunctionCallbackInfo<Value>& args) { >diff --git a/databases/mongosh/files/node-patches/005-src_cares__wrap.h b/databases/mongosh/files/node-patches/005-src_cares__wrap.h >new file mode 100644 >index 000000000000..80c07e6aab7a >--- /dev/null >+++ b/databases/mongosh/files/node-patches/005-src_cares__wrap.h >@@ -0,0 +1,11 @@ >+--- a/src/cares_wrap.h 2023-05-16 06:58:21 UTC >++++ b/src/cares_wrap.h >+@@ -23,7 +23,7 @@ >+ # include <netdb.h> >+ #endif // __POSIX__ >+ >+-# include <ares_nameser.h> >++# include <arpa/nameser.h> >+ >+ namespace node { >+ namespace cares_wrap { >diff --git a/databases/mongosh/files/patch-package.json b/databases/mongosh/files/patch-package.json >new file mode 100644 >index 000000000000..001034097bb1 >--- /dev/null >+++ b/databases/mongosh/files/patch-package.json >@@ -0,0 +1,36 @@ >+--- package.json.orig 2024-05-15 14:01:43 UTC >++++ package.json >+@@ -9,7 +9,7 @@ >+ "author": "Compass Team <compass@mongodb.com>", >+ "scripts": { >+ "bootstrap-with-chromium": "npm install && npm run compile", >+- "bootstrap": "npx cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install && npm run compile", >++ "bootstrap": "npx cross-env PUPPETEER_SKIP_DOWNLOAD=1 npm install && npm run compile", >+ "clean": "lerna clean -y && rm -Rf node_modules", >+ "check": "lerna run check --since HEAD --exclude-dependents", >+ "check-ci": "npm run check --workspaces --if-present", >+@@ -33,7 +33,7 @@ >+ "start-browser": "npm run start --workspace @mongosh/browser-repl", >+ "start": "npm run start-cli", >+ "precompile-exec": "npm run compile-cli", >+- "compile-exec": "npm run evergreen-release compile", >++ "compile-exec": "SEGMENT_API_KEY=dummy npm run evergreen-release compile", >+ "compile-all": "npm run compile-compass && npm run compile-exec", >+ "evergreen-release": "cd packages/build && npm run evergreen-release --", >+ "release": "cd packages/build && npm run release --", >+@@ -59,7 +59,6 @@ >+ "create-vulnerability-tickets": "mongodb-sbom-tools generate-vulnerability-report --snyk-reports=.sbom/snyk-test-result.json,.sbom/node-js-vuln.json --dependencies=.sbom/dependencies.json,.sbom/node-js-dep.json --create-jira-issues", >+ "where": "monorepo-where", >+ "reformat": "npm run reformat --workspaces --if-present", >+- "prepare": "husky install", >+ "precommit": "precommit", >+ "preinstall": "node scripts/sort-workspaces.js" >+ }, >+@@ -101,7 +100,6 @@ >+ "duplexpair": "^1.0.2", >+ "find-up": "^5.0.0", >+ "glob": "^10.3.12", >+- "husky": "^8.0.3", >+ "mocha": "^10.2.0", >+ "mongodb": "^6.5.0", >+ "mongodb-runner": "^5.4.6", >diff --git a/databases/mongosh/files/patch-scripts_nodejs-patches_002-workaround-node-bug-52229 b/databases/mongosh/files/patch-scripts_nodejs-patches_002-workaround-node-bug-52229 >new file mode 100644 >index 000000000000..bed349e3cb91 >--- /dev/null >+++ b/databases/mongosh/files/patch-scripts_nodejs-patches_002-workaround-node-bug-52229 >@@ -0,0 +1,17 @@ >+--- scripts/nodejs-patches/002-workaround-node-bug-52229.orig 2024-05-16 08:32:21 UTC >++++ scripts/nodejs-patches/002-workaround-node-bug-52229 >+@@ -2,13 +2,12 @@ diff --git a/common.gypi b/common.gypi >+ index efcd8da84815..fe11453f09b5 100644 >+ --- a/common.gypi >+ +++ b/common.gypi >+-@@ -268,6 +268,9 @@ >++@@ -268,6 +268,8 @@ >+ # Defines these mostly for node-gyp to pickup. >+ 'defines': [ >+ '_GLIBCXX_USE_CXX11_ABI=1', >+ + # Work around https://github.com/nodejs/node/issues/52229 >+ + "NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT=1", >+-+ "NAPI_EXPERIMENTAL=1", >+ ], >+ >+ # Forcibly disable -Werror. We support a wide range of compilers, it's >diff --git a/databases/mongosh/files/patch-scripts_prep-fle-addon.sh b/databases/mongosh/files/patch-scripts_prep-fle-addon.sh >new file mode 100644 >index 000000000000..bfc90c06c7bb >--- /dev/null >+++ b/databases/mongosh/files/patch-scripts_prep-fle-addon.sh >@@ -0,0 +1,20 @@ >+--- scripts/prep-fle-addon.sh.orig 2024-05-13 17:26:57 UTC >++++ scripts/prep-fle-addon.sh >+@@ -62,7 +62,7 @@ if [ x"$PREBUILT_OSNAME" != x"" ]; then >+ mv -v prebuilts/nocrypto/include include >+ mv -v prebuilts/$LIB/*bson* lib >+ rm -rf prebuilts >+-else >++elif [ `uname` != FreeBSD ]; then >+ if [ `uname` = Darwin ]; then >+ export CFLAGS="-mmacosx-version-min=10.15"; >+ fi >+@@ -86,7 +86,7 @@ else >+ cd ../../ >+ fi >+ >+-if [ x"$FLE_NODE_SOURCE_PATH" != x"" ]; then >++if [ x"$FLE_NODE_SOURCE_PATH" != x"" -a `uname` != FreeBSD -a "$BUILD_TYPE" != dynamic ]; then >+ mkdir -p "$FLE_NODE_SOURCE_PATH"/deps/lib >+ mkdir -p "$FLE_NODE_SOURCE_PATH"/deps/include >+ cp -rv "$BUILDROOT"/lib*/*-static* "$FLE_NODE_SOURCE_PATH"/deps/lib >diff --git a/databases/mongosh/files/patch-scripts_sort-workspaces.js b/databases/mongosh/files/patch-scripts_sort-workspaces.js >new file mode 100644 >index 000000000000..0fe4e6da9222 >--- /dev/null >+++ b/databases/mongosh/files/patch-scripts_sort-workspaces.js >@@ -0,0 +1,11 @@ >+--- scripts/sort-workspaces.js.orig 2024-05-03 16:42:16 UTC >++++ scripts/sort-workspaces.js >+@@ -22,7 +22,7 @@ async function main() { >+ )); >+ >+ // should use the scopes in lerna.json >+- const { stdout } = await exec('npx -y lerna ls --all --no-since --toposort --json'); >++ const { stdout } = await exec('npx -y lerna ls --all --toposort --json'); >+ packageJSON.workspaces = JSON.parse(stdout).map(({ location }) => path.relative(monorepoRoot, location)); >+ >+ await fs.writeFile( >diff --git a/databases/mongosh/pkg-descr b/databases/mongosh/pkg-descr >new file mode 100644 >index 000000000000..aa002307d0f7 >--- /dev/null >+++ b/databases/mongosh/pkg-descr >@@ -0,0 +1,5 @@ >+Standalone MongoDB Shell replacing deprecated Mongo CLI. >+NodeJS doesn't need to be installed. >+ >+This port is maintained by VultureOS Team. >+Contact us if you experience any issue: https://discord.gg/E5Bs97J >\ No newline at end of file >diff --git a/databases/mongosh/pkg-plist b/databases/mongosh/pkg-plist >new file mode 100644 >index 000000000000..061e8b2e4302 >--- /dev/null >+++ b/databases/mongosh/pkg-plist >@@ -0,0 +1 @@ >+bin/mongosh >-- >2.34.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 279519
:
251215
|
255203
|
255218