From 2622fedf9ba62388679005a26ec20f7886422dd8 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 14 Apr 2026 13:07:05 +0100 Subject: [PATCH 1/5] =?UTF-8?q?Bump=20ueberdb2=20to=20^5.0.40=20=E2=80=94?= =?UTF-8?q?=20fixes=20Docker=20CI=20crash=20(#7511)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ueberdb2 5.0.40 lazy-loads database drivers so only the configured backend's dependencies need to be installed. Fixes the Docker production build crash: "Cannot find module 'cassandra-driver'" See ether/ueberDB#924 Co-authored-by: Claude Opus 4.6 (1M context) --- pnpm-lock.yaml | 57 +++++++++++++++++++++++++++++++++++++++--------- src/package.json | 2 +- 2 files changed, 48 insertions(+), 11 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 957cbf7b8..2d6f4d8c8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -277,8 +277,8 @@ importers: specifier: 4.21.0 version: 4.21.0 ueberdb2: - specifier: ^5.0.34 - version: 5.0.34 + specifier: ^5.0.40 + version: 5.0.40 underscore: specifier: 1.13.8 version: 1.13.8 @@ -1520,24 +1520,28 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] + libc: [glibc] '@rolldown/binding-linux-arm64-musl@1.0.0-beta.53': resolution: {integrity: sha512-bGe5EBB8FVjHBR1mOLOPEFg1Lp3//7geqWkU5NIhxe+yH0W8FVrQ6WRYOap4SUTKdklD/dC4qPLREkMMQ855FA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] + libc: [musl] '@rolldown/binding-linux-x64-gnu@1.0.0-beta.53': resolution: {integrity: sha512-qL+63WKVQs1CMvFedlPt0U9PiEKJOAL/bsHMKUDS6Vp2Q+YAv/QLPu8rcvkfIMvQ0FPU2WL0aX4eWwF6e/GAnA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] + libc: [glibc] '@rolldown/binding-linux-x64-musl@1.0.0-beta.53': resolution: {integrity: sha512-VGl9JIGjoJh3H8Mb+7xnVqODajBmrdOOb9lxWXdcmxyI+zjB2sux69br0hZJDTyLJfvBoYm439zPACYbCjGRmw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] + libc: [musl] '@rolldown/binding-openharmony-arm64@1.0.0-beta.53': resolution: {integrity: sha512-B4iIserJXuSnNzA5xBLFUIjTfhNy7d9sq4FUMQY3GhQWGVhS2RWWzzDnkSU6MUt7/aHUrep0CdQfXUJI9D3W7A==} @@ -1605,66 +1609,79 @@ packages: resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} cpu: [arm] os: [linux] + libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.59.0': resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} cpu: [arm] os: [linux] + libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.59.0': resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} cpu: [arm64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.59.0': resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} cpu: [arm64] os: [linux] + libc: [musl] '@rollup/rollup-linux-loong64-gnu@4.59.0': resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} cpu: [loong64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-loong64-musl@4.59.0': resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} cpu: [loong64] os: [linux] + libc: [musl] '@rollup/rollup-linux-ppc64-gnu@4.59.0': resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} cpu: [ppc64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-ppc64-musl@4.59.0': resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} cpu: [ppc64] os: [linux] + libc: [musl] '@rollup/rollup-linux-riscv64-gnu@4.59.0': resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} cpu: [riscv64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.59.0': resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} cpu: [riscv64] os: [linux] + libc: [musl] '@rollup/rollup-linux-s390x-gnu@4.59.0': resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} cpu: [s390x] os: [linux] + libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.59.0': resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} cpu: [x64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-x64-musl@4.59.0': resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} cpu: [x64] os: [linux] + libc: [musl] '@rollup/rollup-openbsd-x64@4.59.0': resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} @@ -2107,31 +2124,37 @@ packages: resolution: {integrity: sha512-v81R2wjqcWXJlQY23byqYHt9221h4anQ6wwN64oMD/WAE+FmxPHFZee5bhRkNVtzqO/q7wki33VFWlhiADwUeQ==} cpu: [arm64] os: [linux] + libc: [glibc] '@unrs/resolver-binding-linux-arm64-musl@1.3.3': resolution: {integrity: sha512-cAOx/j0u5coMg4oct/BwMzvWJdVciVauUvsd+GQB/1FZYKQZmqPy0EjJzJGbVzFc6gbnfEcSqvQE6gvbGf2N8Q==} cpu: [arm64] os: [linux] + libc: [musl] '@unrs/resolver-binding-linux-ppc64-gnu@1.3.3': resolution: {integrity: sha512-mq2blqwErgDJD4gtFDlTX/HZ7lNP8YCHYFij2gkXPtMzrXxPW1hOtxL6xg4NWxvnj4bppppb0W3s/buvM55yfg==} cpu: [ppc64] os: [linux] + libc: [glibc] '@unrs/resolver-binding-linux-s390x-gnu@1.3.3': resolution: {integrity: sha512-u0VRzfFYysarYHnztj2k2xr+eu9rmgoTUUgCCIT37Nr+j0A05Xk2c3RY8Mh5+DhCl2aYibihnaAEJHeR0UOFIQ==} cpu: [s390x] os: [linux] + libc: [glibc] '@unrs/resolver-binding-linux-x64-gnu@1.3.3': resolution: {integrity: sha512-OrVo5ZsG29kBF0Ug95a2KidS16PqAMmQNozM6InbquOfW/udouk063e25JVLqIBhHLB2WyBnixOQ19tmeC/hIg==} cpu: [x64] os: [linux] + libc: [glibc] '@unrs/resolver-binding-linux-x64-musl@1.3.3': resolution: {integrity: sha512-PYnmrwZ4HMp9SkrOhqPghY/aoL+Rtd4CQbr93GlrRTjK6kDzfMfgz3UH3jt6elrQAfupa1qyr1uXzeVmoEAxUA==} cpu: [x64] os: [linux] + libc: [musl] '@unrs/resolver-binding-wasm32-wasi@1.3.3': resolution: {integrity: sha512-81AnQY6fShmktQw4hWDUIilsKSdvr/acdJ5azAreu2IWNlaJOKphJSsUVWE+yCk6kBMoQyG9ZHCb/krb5K0PEA==} @@ -3781,24 +3804,28 @@ packages: engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] + libc: [glibc] lightningcss-linux-arm64-musl@1.30.2: resolution: {integrity: sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] + libc: [musl] lightningcss-linux-x64-gnu@1.30.2: resolution: {integrity: sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] + libc: [glibc] lightningcss-linux-x64-musl@1.30.2: resolution: {integrity: sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] + libc: [musl] lightningcss-win32-arm64-msvc@1.30.2: resolution: {integrity: sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==} @@ -4547,24 +4574,28 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] + libc: [glibc] rusty-store-kv-linux-arm64-musl@1.3.1: resolution: {integrity: sha512-QMNbq7G1Zr2Yk82XqGbs7z2X2gs9mO5lxnHXeHLSy++56EUBTW/zj4JSjdYdetnFBkGwlPSQLAs1s0MXefxc0g==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + libc: [musl] rusty-store-kv-linux-x64-gnu@1.3.1: resolution: {integrity: sha512-aD6Oj3PlRzLLcIMytTdzkh/mIu0pJjsug2tA8Gfd5lH2SdB6NFVrF/cjrFWgx5LSLcmI+vVpstqjLOIuc3tZ7g==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + libc: [glibc] rusty-store-kv-linux-x64-musl@1.3.1: resolution: {integrity: sha512-oSkE6X96muX0cbhE754s7shfzEzUTDQi5d3xrNlA/VskWRjDwKmrqiLHLsxO9lamNcDi5wvK8O6byI9qBXigRg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + libc: [musl] rusty-store-kv-win32-arm64-msvc@1.3.1: resolution: {integrity: sha512-HIJ2uJt5LzI/Flx73gnZX/tUfOH2EKS1UKMEzzMF8kqor3iSeGyr0NkLxdl0sZ31dZzRkW63bKxTESmIYjTgiQ==} @@ -4971,6 +5002,10 @@ packages: resolution: {integrity: sha512-5lwD62pD97OcxUnGpHustvB7SmbJkL/991YoBGfh8VgLFAUNINnDBoXgxIdak3wJGBBfNLCHEPv18uXXKCjczQ==} engines: {node: '>=16.20.1'} + ueberdb2@5.0.40: + resolution: {integrity: sha512-v6J2BMvNG4bOjWYW4mbkePlOcJ2YLa9y4qWILZGlviKOLExHSBGKkFdw+0aML7ndBriFjpVsUt+ONVlC3Sgcpw==} + engines: {node: '>=22.22.0'} + uid-safe@2.1.5: resolution: {integrity: sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==} engines: {node: '>= 0.8'} @@ -7751,10 +7786,10 @@ snapshots: '@rushstack/eslint-patch': 1.11.0 '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0)(typescript@6.0.2) '@typescript-eslint/parser': 7.18.0(eslint@10.2.0)(typescript@6.0.2) - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0) eslint-plugin-cypress: 2.15.2(eslint@10.2.0) eslint-plugin-eslint-comments: 3.2.0(eslint@10.2.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) eslint-plugin-mocha: 10.5.0(eslint@10.2.0) eslint-plugin-n: 16.6.2(eslint@10.2.0) eslint-plugin-prefer-arrow: 1.2.3(eslint@10.2.0) @@ -7775,7 +7810,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3(supports-color@8.1.1) @@ -7786,18 +7821,18 @@ snapshots: tinyglobby: 0.2.16 unrs-resolver: 1.3.3 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 7.18.0(eslint@10.2.0)(typescript@6.0.2) eslint: 10.2.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0) transitivePeerDependencies: - supports-color @@ -7819,7 +7854,7 @@ snapshots: eslint: 10.2.0 ignore: 5.3.2 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -7830,7 +7865,7 @@ snapshots: doctrine: 2.1.0 eslint: 10.2.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -10060,6 +10095,8 @@ snapshots: ueberdb2@5.0.34: {} + ueberdb2@5.0.40: {} + uid-safe@2.1.5: dependencies: random-bytes: 1.0.0 diff --git a/src/package.json b/src/package.json index 143770396..b37e3f0c0 100644 --- a/src/package.json +++ b/src/package.json @@ -73,7 +73,7 @@ "swagger-ui-express": "^5.0.1", "tinycon": "0.6.8", "tsx": "4.21.0", - "ueberdb2": "^5.0.34", + "ueberdb2": "^5.0.40", "underscore": "1.13.8", "unorm": "1.6.0", "wtfnode": "^0.10.1" From df1377982f8dfa413edceaf01b2249ed6a6b77cb Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 14 Apr 2026 13:36:37 +0100 Subject: [PATCH 2/5] Bump ueberdb2 to ^5.0.41 and update lockfile (#7513) 5.0.41 includes the rolldown runtime fix (ether/ueberDB#925) needed for the lazy-loaded database drivers to work at runtime. Co-authored-by: Claude Opus 4.6 (1M context) --- pnpm-lock.yaml | 26 +++++++++++++------------- src/package.json | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2d6f4d8c8..81711eb09 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -277,8 +277,8 @@ importers: specifier: 4.21.0 version: 4.21.0 ueberdb2: - specifier: ^5.0.40 - version: 5.0.40 + specifier: ^5.0.41 + version: 5.0.41 underscore: specifier: 1.13.8 version: 1.13.8 @@ -5002,8 +5002,8 @@ packages: resolution: {integrity: sha512-5lwD62pD97OcxUnGpHustvB7SmbJkL/991YoBGfh8VgLFAUNINnDBoXgxIdak3wJGBBfNLCHEPv18uXXKCjczQ==} engines: {node: '>=16.20.1'} - ueberdb2@5.0.40: - resolution: {integrity: sha512-v6J2BMvNG4bOjWYW4mbkePlOcJ2YLa9y4qWILZGlviKOLExHSBGKkFdw+0aML7ndBriFjpVsUt+ONVlC3Sgcpw==} + ueberdb2@5.0.41: + resolution: {integrity: sha512-4zdlLhOls1PcDcO3sQE3q/B2olxwgPYckNr138NYDlNqMeYvyaadb+adqeKLdCpFVC3X/bX11KMiMqZyPX8jJQ==} engines: {node: '>=22.22.0'} uid-safe@2.1.5: @@ -7786,10 +7786,10 @@ snapshots: '@rushstack/eslint-patch': 1.11.0 '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0)(typescript@6.0.2) '@typescript-eslint/parser': 7.18.0(eslint@10.2.0)(typescript@6.0.2) - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0) eslint-plugin-cypress: 2.15.2(eslint@10.2.0) eslint-plugin-eslint-comments: 3.2.0(eslint@10.2.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) eslint-plugin-mocha: 10.5.0(eslint@10.2.0) eslint-plugin-n: 16.6.2(eslint@10.2.0) eslint-plugin-prefer-arrow: 1.2.3(eslint@10.2.0) @@ -7810,7 +7810,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3(supports-color@8.1.1) @@ -7821,18 +7821,18 @@ snapshots: tinyglobby: 0.2.16 unrs-resolver: 1.3.3 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 7.18.0(eslint@10.2.0)(typescript@6.0.2) eslint: 10.2.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0) transitivePeerDependencies: - supports-color @@ -7854,7 +7854,7 @@ snapshots: eslint: 10.2.0 ignore: 5.3.2 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -7865,7 +7865,7 @@ snapshots: doctrine: 2.1.0 eslint: 10.2.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -10095,7 +10095,7 @@ snapshots: ueberdb2@5.0.34: {} - ueberdb2@5.0.40: {} + ueberdb2@5.0.41: {} uid-safe@2.1.5: dependencies: diff --git a/src/package.json b/src/package.json index b37e3f0c0..2315137c5 100644 --- a/src/package.json +++ b/src/package.json @@ -73,7 +73,7 @@ "swagger-ui-express": "^5.0.1", "tinycon": "0.6.8", "tsx": "4.21.0", - "ueberdb2": "^5.0.40", + "ueberdb2": "^5.0.41", "underscore": "1.13.8", "unorm": "1.6.0", "wtfnode": "^0.10.1" From 5e0602c5eefe8e7ff0c80657440b0f83becc6501 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 14 Apr 2026 13:42:03 +0100 Subject: [PATCH 3/5] Fix Docker build: use production-only workspace config (#7514) The pnpm-workspace.yaml references admin, doc, and ui packages that aren't copied into the production Docker image. This caused pnpm install warnings and incomplete dependency resolution, which broke ueberdb2's modular build (missing bin symlinks, broken module paths). Fix: overwrite pnpm-workspace.yaml in the production stage with a minimal version that only lists the packages present in the image (src and bin). Co-authored-by: Claude Opus 4.6 (1M context) --- Dockerfile | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Dockerfile b/Dockerfile index d33742966..2ad2936fb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -171,6 +171,11 @@ ARG ETHERPAD_GITHUB_PLUGINS= ENV NODE_ENV=production ENV ETHERPAD_PRODUCTION=true +# The full pnpm-workspace.yaml references admin, doc, ui which are not +# needed at runtime. Overwrite it with a production-only version so +# pnpm install doesn't warn about missing workspace directories. +RUN printf 'packages:\n - src\n - bin\n' > pnpm-workspace.yaml + COPY --chown=etherpad:etherpad ./src ./src COPY --chown=etherpad:etherpad --from=adminbuild /opt/etherpad-lite/src/templates/admin ./src/templates/admin COPY --chown=etherpad:etherpad --from=adminbuild /opt/etherpad-lite/src/static/oidc ./src/static/oidc From 649f96034187390dae1143d3b54da1f0c6183ae1 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 14 Apr 2026 13:48:33 +0100 Subject: [PATCH 4/5] Add docs for aceRegisterLineAttributes hook (#7512) * Add docs for aceRegisterLineAttributes hook Documents the new hook in both .md and .adoc client-side hook references. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix: correct source file path from .js to .ts Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- doc/api/hooks_client-side.adoc | 28 ++++++++++++++++++++++++++++ doc/api/hooks_client-side.md | 27 +++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) diff --git a/doc/api/hooks_client-side.adoc b/doc/api/hooks_client-side.adoc index 9b0e0d18c..842d50e04 100644 --- a/doc/api/hooks_client-side.adoc +++ b/doc/api/hooks_client-side.adoc @@ -211,6 +211,34 @@ The return value of this hook will add elements into the "lineMarkerAttribute" category, making the aceDomLineProcessLineAttributes hook (documented below) call for those elements. +=== aceRegisterLineAttributes + +Called from: `src/static/js/ace2_inner.ts` + +Things in context: None + +Tells Etherpad which line attributes should be preserved when a user presses +Enter to split a line. Without this hook, custom line attributes (such as +headings or alignment) are lost when a line is split. + +The return value should be an array of attribute names: + +[source,javascript] +---- +exports.aceRegisterLineAttributes = function(){ + return [ 'heading' ]; +} +---- + +When Enter is pressed on a line that has a registered attribute: + +* **Middle or end of line:** the attribute is copied to the new line below. +* **Start of line (column 0):** the attribute moves down with the text content, + and the now-empty line above is cleared. + +This is backwards compatible — on Etherpad versions that do not have this hook, +the registration is silently ignored. + === aceInitialized Called from: `src/static/js/ace2_inner.js` diff --git a/doc/api/hooks_client-side.md b/doc/api/hooks_client-side.md index e7d039e50..4b0f1cce6 100644 --- a/doc/api/hooks_client-side.md +++ b/doc/api/hooks_client-side.md @@ -207,6 +207,33 @@ The return value of this hook will add elements into the "lineMarkerAttribute" category, making the aceDomLineProcessLineAttributes hook (documented below) call for those elements. +## aceRegisterLineAttributes + +Called from: `src/static/js/ace2_inner.ts` + +Things in context: None + +Tells Etherpad which line attributes should be preserved when a user presses +Enter to split a line. Without this hook, custom line attributes (such as +headings or alignment) are lost when a line is split. + +The return value should be an array of attribute names: + +``` +exports.aceRegisterLineAttributes = function(){ + return [ 'heading' ]; +} +``` + +When Enter is pressed on a line that has a registered attribute: + +* **Middle or end of line:** the attribute is copied to the new line below. +* **Start of line (column 0):** the attribute moves down with the text content, + and the now-empty line above is cleared. + +This is backwards compatible — on Etherpad versions that do not have this hook, +the registration is silently ignored. + ## aceInitialized Called from: `src/static/js/ace2_inner.js` From f4dde52d54b7f587894b7e82047dcff4cc18a6b8 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 14 Apr 2026 15:59:51 +0100 Subject: [PATCH 5/5] =?UTF-8?q?Bump=20ueberdb2=20to=20^5.0.42=20=E2=80=94?= =?UTF-8?q?=20production=20dependencies=20for=20db=20drivers=20(#7516)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Bump ueberdb2 to ^5.0.42 — adds production dependencies for db drivers 5.0.42 moves core database drivers (dirty-ts, rusty-store-kv) to production dependencies so they're installed in production/Docker. Optional drivers (cassandra, mongodb, etc.) are now optional peerDependencies. Co-Authored-By: Claude Opus 4.6 (1M context) * Update to ueberdb2 ^5.0.43 — fixes Node engine requirement 5.0.43 relaxes the Node engine from >=22.22.0 to >=18.0.0, matching etherpad-lite's supported Node versions. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- pnpm-lock.yaml | 142 ++++++++++++++++++++++++++++++++++++++++++----- src/package.json | 2 +- 2 files changed, 129 insertions(+), 15 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 81711eb09..db0afba54 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -277,8 +277,8 @@ importers: specifier: 4.21.0 version: 4.21.0 ueberdb2: - specifier: ^5.0.41 - version: 5.0.41 + specifier: ^5.0.43 + version: 5.0.43 underscore: specifier: 1.13.8 version: 1.13.8 @@ -418,6 +418,14 @@ importers: packages: + 2@1.0.2: + resolution: {integrity: sha512-G0Eca6Fz2qJKvjM9/niouz5kWTZy7pm+LRAMXir5v+DOt4bMszVlfIYKy2T+TPKnGxpp236pzK7/chNuToWlnQ==} + engines: {node: '>=7.0.0'} + + 3@2.1.0: + resolution: {integrity: sha512-rEoeK/qBZCLzqt9a3Q3Dnb5TUyXnZlxVaWr9ZXBV65Ppzcz59dx3Ik5YUxtni+36CtZgJdhQaYkLgHBdqjxjoA==} + engines: {node: '>=7.0.0'} + '@apidevtools/json-schema-ref-parser@11.9.3': resolution: {integrity: sha512-60vepv88RwcJtSHrD6MjIL6Ta3SOYbgfnkHb+ppAVK+o9mXprRtulx7VlRl3lN3bbvysAfCS7WMVfhUYemB0IQ==} engines: {node: '>= 16'} @@ -1195,6 +1203,12 @@ packages: peerDependencies: koa: ^2.0.0 || ^3.0.0 + '@kwsites/file-exists@1.1.1': + resolution: {integrity: sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==} + + '@kwsites/promise-deferred@1.1.1': + resolution: {integrity: sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==} + '@napi-rs/wasm-runtime@0.2.12': resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} @@ -1746,6 +1760,12 @@ packages: '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} + '@simple-git/args-pathspec@1.0.3': + resolution: {integrity: sha512-ngJMaHlsWDTfjyq9F3VIQ8b7NXbBLq5j9i5bJ6XLYtD6qlDXT7fdKY2KscWWUF8t18xx052Y/PUO1K1TRc9yKA==} + + '@simple-git/argv-parser@1.1.1': + resolution: {integrity: sha512-Q9lBcfQ+VQCpQqGJFHe5yooOS5hGdLFFbJ5R+R5aDsnkPCahtn1hSkMcORX65J2Z5lxSkD0lQorMsncuBQxYUw==} + '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} @@ -2594,6 +2614,9 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} + chunk-array@1.0.2: + resolution: {integrity: sha512-NdHMmQ59t0VOwG+md2fYfLbmeaN1ZeX+4rEKgOj2vqgJsuXyTvSgYLZ9jEU8xwmB4nm6DeuuAkU/Y67LpGlvHQ==} + cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} @@ -2821,6 +2844,10 @@ packages: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} + dirty-ts@1.1.8: + resolution: {integrity: sha512-RvnzXCdg5GuAvUgAUa5b5O74fXd11JJxZD5OoBXOQrkjuQwDV6LBJYdtX9hjxBA7Q9y9gcp4mZnDWVVpCzftvQ==} + engines: {node: '>=12.13.0'} + doctrine@2.1.0: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} engines: {node: '>=0.10.0'} @@ -2859,6 +2886,9 @@ packages: resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} engines: {node: '>= 0.8'} + enforce-range@1.0.0: + resolution: {integrity: sha512-iOYthPljA5P/S823In8avtTbeUl8/uTP1+pqy08ryb8jeMO2enuIO/f72QFFqT4GTNiOe0yWPIzXB9nR3u6O5A==} + engine.io-client@6.6.4: resolution: {integrity: sha512-+kjUJnZGwzewFDw951CDWcwj35vMNf2fcj7xQWOctq1F2i1jkDdVvdFG9kM/BEChymCH36KgjnW0NsL58JYRxw==} @@ -4722,6 +4752,9 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + simple-git@3.36.0: + resolution: {integrity: sha512-cGQjLjK8bxJw4QuYT7gxHw3/IouVESbhahSsHrX97MzCL1gu2u7oy38W6L2ZIGECEfIBG4BabsWDPjBxJENv9Q==} + sinon@21.1.2: resolution: {integrity: sha512-FS6mN+/bx7e2ajpXkEmOcWB6xBzWiuNoAQT18/+a20SS4U7FSYl8Ms7N6VTUxN/1JAjkx7aXp+THMC8xdpp0gA==} @@ -5002,9 +5035,41 @@ packages: resolution: {integrity: sha512-5lwD62pD97OcxUnGpHustvB7SmbJkL/991YoBGfh8VgLFAUNINnDBoXgxIdak3wJGBBfNLCHEPv18uXXKCjczQ==} engines: {node: '>=16.20.1'} - ueberdb2@5.0.41: - resolution: {integrity: sha512-4zdlLhOls1PcDcO3sQE3q/B2olxwgPYckNr138NYDlNqMeYvyaadb+adqeKLdCpFVC3X/bX11KMiMqZyPX8jJQ==} - engines: {node: '>=22.22.0'} + ueberdb2@5.0.43: + resolution: {integrity: sha512-rMJKW9Nft0V4O3a1QVqOEiKwVqJWpU0KZOvesQ6nrHk2IgPipDu7FiuV4KcbYzlEdc01b1VthJAqQ2xyao+JzQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + '@elastic/elasticsearch': ^9.3.4 + cassandra-driver: ^4.8.0 + mongodb: ^7.1.1 + mssql: ^12.2.1 + mysql2: ^3.22.0 + nano: ^11.0.5 + pg: ^8.20.0 + redis: ^5.12.1 + rethinkdb: ^2.4.2 + surrealdb: ^2.0.3 + peerDependenciesMeta: + '@elastic/elasticsearch': + optional: true + cassandra-driver: + optional: true + mongodb: + optional: true + mssql: + optional: true + mysql2: + optional: true + nano: + optional: true + pg: + optional: true + redis: + optional: true + rethinkdb: + optional: true + surrealdb: + optional: true uid-safe@2.1.5: resolution: {integrity: sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==} @@ -5390,6 +5455,14 @@ packages: snapshots: + 2@1.0.2: {} + + 3@2.1.0: + dependencies: + '2': 1.0.2 + chunk-array: 1.0.2 + enforce-range: 1.0.0 + '@apidevtools/json-schema-ref-parser@11.9.3': dependencies: '@jsdevtools/ono': 7.1.3 @@ -6000,6 +6073,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@kwsites/file-exists@1.1.1': + dependencies: + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + '@kwsites/promise-deferred@1.1.1': {} + '@napi-rs/wasm-runtime@0.2.12': dependencies: '@emnapi/core': 1.7.1 @@ -6425,6 +6506,12 @@ snapshots: '@shikijs/vscode-textmate@10.0.2': {} + '@simple-git/args-pathspec@1.0.3': {} + + '@simple-git/argv-parser@1.1.1': + dependencies: + '@simple-git/args-pathspec': 1.0.3 + '@sinonjs/commons@3.0.1': dependencies: type-detect: 4.0.8 @@ -7343,6 +7430,8 @@ snapshots: chownr@2.0.0: {} + chunk-array@1.0.2: {} + cliui@8.0.1: dependencies: string-width: 4.2.3 @@ -7528,6 +7617,10 @@ snapshots: dependencies: path-type: 4.0.0 + dirty-ts@1.1.8: + dependencies: + '3': 2.1.0 + doctrine@2.1.0: dependencies: esutils: 2.0.3 @@ -7558,6 +7651,10 @@ snapshots: encodeurl@2.0.0: {} + enforce-range@1.0.0: + dependencies: + '2': 1.0.2 + engine.io-client@6.6.4: dependencies: '@socket.io/component-emitter': 3.1.2 @@ -7786,10 +7883,10 @@ snapshots: '@rushstack/eslint-patch': 1.11.0 '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0)(typescript@6.0.2) '@typescript-eslint/parser': 7.18.0(eslint@10.2.0)(typescript@6.0.2) - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0) eslint-plugin-cypress: 2.15.2(eslint@10.2.0) eslint-plugin-eslint-comments: 3.2.0(eslint@10.2.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) eslint-plugin-mocha: 10.5.0(eslint@10.2.0) eslint-plugin-n: 16.6.2(eslint@10.2.0) eslint-plugin-prefer-arrow: 1.2.3(eslint@10.2.0) @@ -7810,7 +7907,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3(supports-color@8.1.1) @@ -7821,18 +7918,18 @@ snapshots: tinyglobby: 0.2.16 unrs-resolver: 1.3.3 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 7.18.0(eslint@10.2.0)(typescript@6.0.2) eslint: 10.2.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.2.0) transitivePeerDependencies: - supports-color @@ -7854,7 +7951,7 @@ snapshots: eslint: 10.2.0 ignore: 5.3.2 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -7865,7 +7962,7 @@ snapshots: doctrine: 2.1.0 eslint: 10.2.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint@10.2.0))(eslint@10.2.0))(eslint@10.2.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.2.0)(typescript@6.0.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.2.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -9768,6 +9865,16 @@ snapshots: signal-exit@4.1.0: {} + simple-git@3.36.0: + dependencies: + '@kwsites/file-exists': 1.1.1 + '@kwsites/promise-deferred': 1.1.1 + '@simple-git/args-pathspec': 1.0.3 + '@simple-git/argv-parser': 1.1.1 + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + sinon@21.1.2: dependencies: '@sinonjs/commons': 3.0.1 @@ -10095,7 +10202,14 @@ snapshots: ueberdb2@5.0.34: {} - ueberdb2@5.0.41: {} + ueberdb2@5.0.43: + dependencies: + async: 3.2.6 + dirty-ts: 1.1.8 + rusty-store-kv: 1.3.1 + simple-git: 3.36.0 + transitivePeerDependencies: + - supports-color uid-safe@2.1.5: dependencies: diff --git a/src/package.json b/src/package.json index 2315137c5..c194d96c6 100644 --- a/src/package.json +++ b/src/package.json @@ -73,7 +73,7 @@ "swagger-ui-express": "^5.0.1", "tinycon": "0.6.8", "tsx": "4.21.0", - "ueberdb2": "^5.0.41", + "ueberdb2": "^5.0.43", "underscore": "1.13.8", "unorm": "1.6.0", "wtfnode": "^0.10.1"