diff --git a/package-lock.json b/package-lock.json index 1e6c715..dbfb729 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "hasInstallScript": true, "license": "GPL-3.0", "dependencies": { - "@comapeo/core": "2.0.1", + "@comapeo/core": "2.1.0", "@comapeo/ipc": "2.0.2", "@formatjs/intl": "^2.10.11", "@mapeo/default-config": "5.0.0", @@ -48,7 +48,7 @@ "@tanstack/react-query": "^5.59.16", "@types/eslint__js": "^8.42.3", "@types/lint-staged": "^13.3.0", - "@types/node": "^20.17.4", + "@types/node": "^20.17.5", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@types/sodium-native": "^2.3.9", @@ -513,13 +513,13 @@ } }, "node_modules/@comapeo/core": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@comapeo/core/-/core-2.0.1.tgz", - "integrity": "sha512-6ZUb5umzitYKZx28bYFMxQfpE2B6pdC2ukCd9rcM1l+EgNUAcL+1NWeo/YRlXPnbzhltZ7kr0LvmZtXoMb/ing==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@comapeo/core/-/core-2.1.0.tgz", + "integrity": "sha512-Fvi/EO1RJIQfpmKFUs4QApM2TsV8JrKw3HbNZ3hmlXiPl1oVVvIce0KkfdPJOoYHbEznTc9dIN1A2vkaoi431A==", "license": "MIT", "dependencies": { "@comapeo/fallback-smp": "^1.0.0", - "@comapeo/schema": "1.0.0", + "@comapeo/schema": "1.2.0", "@digidem/types": "^2.3.0", "@fastify/error": "^3.4.1", "@fastify/type-provider-typebox": "^4.1.0", @@ -537,7 +537,7 @@ "debug": "^4.3.4", "dot-prop": "^9.0.0", "drizzle-orm": "^0.30.8", - "fastify": ">= 4", + "fastify": "^4.0.0", "fastify-plugin": "^4.5.1", "hyperblobs": "2.3.0", "hypercore": "10.17.0", @@ -547,7 +547,7 @@ "magic-bytes.js": "^1.10.0", "map-obj": "^5.0.2", "mime": "^4.0.3", - "multi-core-indexer": "^1.0.0-alpha.10", + "multi-core-indexer": "^1.0.0", "p-defer": "^4.0.0", "p-event": "^6.0.1", "p-timeout": "^6.1.2", @@ -557,6 +557,7 @@ "sodium-universal": "^4.0.0", "start-stop-state-machine": "^1.2.0", "streamx": "^2.19.0", + "string-timing-safe-equal": "^0.1.0", "styled-map-package": "^2.0.0", "sub-encoder": "^2.1.1", "throttle-debounce": "^5.0.0", @@ -564,6 +565,7 @@ "type-fest": "^4.5.0", "undici": "^6.13.0", "varint": "^6.0.0", + "ws": "^8.18.0", "yauzl-promise": "^4.0.0" } }, @@ -573,6 +575,15 @@ "integrity": "sha512-6wLTtBOdlwtYMyrynBq6ZQ7S1aVABXQSwR/1QENkFkc7WyLLs4wLd9ny7WfSUQdHn6E2zfvA7WfKH7R06Zy3gQ==", "license": "MIT" }, + "node_modules/@comapeo/geometry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@comapeo/geometry/-/geometry-1.0.2.tgz", + "integrity": "sha512-q6zadJA3lr85GZPTZ+lol9F6ERRq2Rt4upON7HhcwPPBiCLN696SY03OJZCE6xkXHxjJY98FF5DxVX3W0IftLQ==", + "license": "MIT", + "dependencies": { + "protobufjs": "^7.4.0" + } + }, "node_modules/@comapeo/ipc": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/@comapeo/ipc/-/ipc-2.0.2.tgz", @@ -591,11 +602,12 @@ } }, "node_modules/@comapeo/schema": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@comapeo/schema/-/schema-1.0.0.tgz", - "integrity": "sha512-dK227I+0yg9D2y5/O5NGywx50tgeNYyUkl1uYnSmNAPlbv+r2KX9aaC9m4dEjIja2aR2VFnYn6z537ERZiahqQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@comapeo/schema/-/schema-1.2.0.tgz", + "integrity": "sha512-LWrUSqtXmrEmE/B9V/zffKBbJmMo37AlvjXczvGx1+BbCAjOYCPDX6GCtnSKNsvtnNS2KQZDm9apg3mp92tFGA==", "license": "MIT", "dependencies": { + "@comapeo/geometry": "^1.0.2", "compact-encoding": "^2.12.0", "protobufjs": "^7.2.5", "type-fest": "^4.26.0" @@ -4160,9 +4172,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "20.17.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.4.tgz", - "integrity": "sha512-Fi1Bj8qTJr4f1FDdHFR7oMlOawEYSzkHNdBJK+aRjcDDNHwEV3jPPjuZP2Lh2QNgXeqzM8Y+U6b6urKAog2rZw==", + "version": "20.17.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.5.tgz", + "integrity": "sha512-n8FYY/pRxu496441gIcAQFZPKXbhsd6VZygcq+PTSZ75eMh/Ke0hCAROdUa21qiFqKNsPPYic46yXDO1JGiPBQ==", "license": "MIT", "dependencies": { "undici-types": "~6.19.2" @@ -11466,9 +11478,9 @@ "license": "MIT" }, "node_modules/multi-core-indexer": { - "version": "1.0.0-alpha.10", - "resolved": "https://registry.npmjs.org/multi-core-indexer/-/multi-core-indexer-1.0.0-alpha.10.tgz", - "integrity": "sha512-H9QdpJ/MaelrBZw6jCcsrInE+hwUQmfz/2swtIdQNNh1IHUDGEdPkakjcZAyahpM5iIVz7EqyWO74aC03A3qSA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/multi-core-indexer/-/multi-core-indexer-1.0.0.tgz", + "integrity": "sha512-7EEXJuBS+uhpDnNlfEn/PbT09pdCWulI8NHYS9v+t0sEksyD+X5HNsdJKDsIDtnBlYdMzxJRnZwMDVPfp/aPYw==", "license": "MIT", "dependencies": { "@types/node": "^18.16.19", @@ -11481,9 +11493,9 @@ } }, "node_modules/multi-core-indexer/node_modules/@types/node": { - "version": "18.19.59", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.59.tgz", - "integrity": "sha512-vizm2EqwV/7Zay+A6J3tGl9Lhr7CjZe2HmWS988sefiEmsyP9CeXEleho6i4hJk/8UtZAo0bWN4QPZZr83RxvQ==", + "version": "18.19.63", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.63.tgz", + "integrity": "sha512-hcUB7THvrGmaEcPcvUZCZtQ2Z3C+UR/aOcraBLCvTsFMh916Gc1kCCYcfcMuB76HM2pSerxl1PoP3KnmHzd9Lw==", "license": "MIT", "dependencies": { "undici-types": "~5.26.4" @@ -14434,6 +14446,15 @@ "node": ">=0.6.19" } }, + "node_modules/string-timing-safe-equal": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/string-timing-safe-equal/-/string-timing-safe-equal-0.1.0.tgz", + "integrity": "sha512-AMhfQVC+que87xh7nAW2ShSDK6E3CYFC3zGieewF7OHBW9vGPCatMuVPzZ9afoIOT5q6ldKPOKeuQf9hVZlvhw==", + "license": "Unlicense", + "engines": { + "node": ">=18" + } + }, "node_modules/string-ts": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/string-ts/-/string-ts-2.2.0.tgz", @@ -16054,6 +16075,27 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "license": "ISC" }, + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/xache": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/xache/-/xache-1.2.1.tgz", diff --git a/package.json b/package.json index 4819269..026a55f 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "vite:build": "vite build src/renderer" }, "dependencies": { - "@comapeo/core": "2.0.1", + "@comapeo/core": "2.1.0", "@comapeo/ipc": "2.0.2", "@formatjs/intl": "^2.10.11", "@mapeo/default-config": "5.0.0", @@ -87,7 +87,7 @@ "@tanstack/react-query": "^5.59.16", "@types/eslint__js": "^8.42.3", "@types/lint-staged": "^13.3.0", - "@types/node": "^20.17.4", + "@types/node": "^20.17.5", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@types/sodium-native": "^2.3.9", diff --git a/patches/@comapeo+core+2.0.1+001+fix-smp-fallback-map-setup.patch b/patches/@comapeo+core+2.1.0+001+fix-smp-fallback-map-setup.patch similarity index 100% rename from patches/@comapeo+core+2.0.1+001+fix-smp-fallback-map-setup.patch rename to patches/@comapeo+core+2.1.0+001+fix-smp-fallback-map-setup.patch diff --git a/patches/README.md b/patches/README.md index 40b0c33..cb64c12 100644 --- a/patches/README.md +++ b/patches/README.md @@ -5,7 +5,7 @@ fixes. ## @comapeo/core -### [Do not watch fallback map patch when setting up SMP server plugin](./@comapeo+core+2.0.1+001+fix-smp-fallback-map-setup.patch) +### [Do not watch fallback map patch when setting up SMP server plugin](./@comapeo+core+2.1.0+001+fix-smp-fallback-map-setup.patch) By default, core sets up a file watcher for the `fallbackMapPath` option that's provided when instantiating `MapeoManager`. This does not work when packaging the app as an ASAR file (via Electron Forge) because watching a file within the ASAR directory is not possible. Instead, we change the setup so that it does not try to watch the file and instead make the assumption that the file always exists on instantiation, which is generally the case in CoMapeo Desktop (for now).