@pkcprotocol/pkc-js 0.0.50 → 0.0.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/README.md +1 -1
  2. package/dist/browser/generated-version.d.ts +1 -1
  3. package/dist/browser/generated-version.js +1 -1
  4. package/dist/browser/pkc/pkc.d.ts +2 -3
  5. package/dist/browser/pkc/pkc.js +16 -41
  6. package/dist/browser/pkc/pkc.js.map +1 -1
  7. package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.d.ts +1 -0
  8. package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.js +4 -0
  9. package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.js.map +1 -0
  10. package/dist/browser/runtime/node/address-rewriter-db.d.ts +32 -0
  11. package/dist/browser/runtime/node/address-rewriter-db.js +156 -0
  12. package/dist/browser/runtime/node/address-rewriter-db.js.map +1 -0
  13. package/dist/browser/runtime/node/addresses-rewriter-proxy-server.d.ts +46 -0
  14. package/dist/browser/runtime/node/addresses-rewriter-proxy-server.js +512 -0
  15. package/dist/browser/runtime/node/addresses-rewriter-proxy-server.js.map +1 -0
  16. package/dist/browser/runtime/node/community/local-community/cleanup.js +21 -0
  17. package/dist/browser/runtime/node/community/local-community/cleanup.js.map +1 -1
  18. package/dist/browser/runtime/node/setup-kubo-address-rewriter-and-http-router.d.ts +4 -0
  19. package/dist/browser/runtime/node/setup-kubo-address-rewriter-and-http-router.js +249 -0
  20. package/dist/browser/runtime/node/setup-kubo-address-rewriter-and-http-router.js.map +1 -0
  21. package/dist/browser/schema.js +3 -1
  22. package/dist/browser/schema.js.map +1 -1
  23. package/dist/bundled/bundle-manifest.json +49 -32
  24. package/dist/bundled/chunks/{helia-for-pkc-CoiCnGzf.js → helia-for-pkc-BOtcXXpQ.js} +2 -2
  25. package/dist/bundled/chunks/{local-community-PMOePYFy.js → local-community-04QX5cq0.js} +11 -2
  26. package/dist/bundled/chunks/{local-community-DiTjNeA_.js → local-community-o0hMcCA2.js} +1 -1
  27. package/dist/bundled/chunks/{node-2IRJmtOa.js → node-BxNfBS8t.js} +2799 -360
  28. package/dist/bundled/chunks/{rpc-local-community-DUD2jTEu.js → rpc-local-community-CNzfRWd9.js} +1 -1
  29. package/dist/bundled/chunks/{schema-DEqa38Xx.js → schema-TpjAJ8NM.js} +4 -2
  30. package/dist/bundled/chunks/{util-CcKyKVLs.js → util-CuHylCUx.js} +1 -1
  31. package/dist/bundled/index.js +1 -1
  32. package/dist/bundled/rpc/src/index.js +4 -4
  33. package/dist/node/generated-version.d.ts +1 -1
  34. package/dist/node/generated-version.js +1 -1
  35. package/dist/node/pkc/pkc.d.ts +2 -3
  36. package/dist/node/pkc/pkc.js +16 -41
  37. package/dist/node/pkc/pkc.js.map +1 -1
  38. package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.d.ts +1 -0
  39. package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.js +4 -0
  40. package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.js.map +1 -0
  41. package/dist/node/runtime/node/address-rewriter-db.d.ts +32 -0
  42. package/dist/node/runtime/node/address-rewriter-db.js +156 -0
  43. package/dist/node/runtime/node/address-rewriter-db.js.map +1 -0
  44. package/dist/node/runtime/node/addresses-rewriter-proxy-server.d.ts +46 -0
  45. package/dist/node/runtime/node/addresses-rewriter-proxy-server.js +512 -0
  46. package/dist/node/runtime/node/addresses-rewriter-proxy-server.js.map +1 -0
  47. package/dist/node/runtime/node/community/local-community/cleanup.js +21 -0
  48. package/dist/node/runtime/node/community/local-community/cleanup.js.map +1 -1
  49. package/dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.d.ts +4 -0
  50. package/dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.js +249 -0
  51. package/dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.js.map +1 -0
  52. package/dist/node/schema.js +3 -1
  53. package/dist/node/schema.js.map +1 -1
  54. package/package.json +2 -2
  55. package/dist/browser/runtime/browser/setup-kubo-http-routers.d.ts +0 -2
  56. package/dist/browser/runtime/browser/setup-kubo-http-routers.js +0 -14
  57. package/dist/browser/runtime/browser/setup-kubo-http-routers.js.map +0 -1
  58. package/dist/browser/runtime/node/setup-kubo-http-routers.d.ts +0 -10
  59. package/dist/browser/runtime/node/setup-kubo-http-routers.js +0 -347
  60. package/dist/browser/runtime/node/setup-kubo-http-routers.js.map +0 -1
  61. package/dist/node/runtime/browser/setup-kubo-http-routers.d.ts +0 -2
  62. package/dist/node/runtime/browser/setup-kubo-http-routers.js +0 -14
  63. package/dist/node/runtime/browser/setup-kubo-http-routers.js.map +0 -1
  64. package/dist/node/runtime/node/setup-kubo-http-routers.d.ts +0 -10
  65. package/dist/node/runtime/node/setup-kubo-http-routers.js +0 -347
  66. package/dist/node/runtime/node/setup-kubo-http-routers.js.map +0 -1
@@ -0,0 +1,249 @@
1
+ import retry from "retry";
2
+ import { AddressesRewriterProxyServer } from "./addresses-rewriter-proxy-server.js";
3
+ import Logger from "../../logger.js";
4
+ import { PKCError } from "../../pkc-error.js";
5
+ import * as remeda from "remeda";
6
+ import tcpPortUsed from "tcp-port-used";
7
+ function _mergeRouterConfigs(existingConfig, newConfig) {
8
+ if (!existingConfig?.Routers)
9
+ return newConfig;
10
+ const existingRoutersByEndpoint = new Map();
11
+ Object.entries(existingConfig.Routers).forEach(([routerName, router]) => {
12
+ if (router.Parameters?.Endpoint) {
13
+ existingRoutersByEndpoint.set(router.Parameters.Endpoint, { routerName, router });
14
+ }
15
+ });
16
+ const mergedRouters = { ...newConfig.Routers };
17
+ Object.entries(newConfig.Routers).forEach(([newRouterName, newRouter]) => {
18
+ if (newRouter.Parameters?.Endpoint) {
19
+ const existing = existingRoutersByEndpoint.get(newRouter.Parameters.Endpoint);
20
+ if (existing) {
21
+ mergedRouters[newRouterName] = {
22
+ ...existing.router,
23
+ ...newRouter,
24
+ Parameters: { ...existing.router.Parameters, ...newRouter.Parameters }
25
+ };
26
+ }
27
+ }
28
+ });
29
+ return {
30
+ ...newConfig,
31
+ Routers: mergedRouters
32
+ };
33
+ }
34
+ async function _setProvideDhtSweepEnabledOnKuboNode(kuboClient, sweepEnabled) {
35
+ const log = Logger("pkc-js:pkc:_init:retrySettingHttpRoutersOnIpfsNodes:setProvideDhtSweepEnabledOnIpfsNode");
36
+ const configKey = "Provide.DHT.SweepEnabled";
37
+ const url = `${kuboClient._clientOptions.url}/config?arg=${configKey}&arg=${JSON.stringify(sweepEnabled)}&json=true`;
38
+ try {
39
+ await fetch(url, { method: "POST", headers: kuboClient._clientOptions.headers });
40
+ }
41
+ catch (e) {
42
+ const error = new PKCError("ERR_FAILED_TO_SET_CONFIG_ON_KUBO_NODE", {
43
+ fullUrl: url,
44
+ actualError: e,
45
+ kuboEndpoint: kuboClient._clientOptions.url,
46
+ configKey,
47
+ configValueToBeSet: sweepEnabled
48
+ });
49
+ log.error(e);
50
+ throw error;
51
+ }
52
+ log.trace("Succeeded in setting config key", configKey, "on node", kuboClient._clientOptions.url, "to be", sweepEnabled);
53
+ }
54
+ async function _setHttpRouterOptionsOnKuboNode(kuboClient, routingValue) {
55
+ const log = Logger("pkc-js:pkc:_init:retrySettingHttpRoutersOnIpfsNodes:setHttpRouterOptionsOnIpfsNode");
56
+ const routingKey = "Routing";
57
+ let routingConfigBeforeChanging;
58
+ try {
59
+ routingConfigBeforeChanging = await kuboClient._client.config.get(routingKey);
60
+ }
61
+ catch (e) {
62
+ const error = new PKCError("ERR_FAILED_TO_GET_CONFIG_ON_KUBO_NODE", {
63
+ actualError: e,
64
+ kuboEndpoint: kuboClient._clientOptions.url,
65
+ configKey: routingKey
66
+ });
67
+ log.error(e);
68
+ throw error;
69
+ }
70
+ const mergedRoutingValue = _mergeRouterConfigs(routingConfigBeforeChanging, routingValue);
71
+ const url = `${kuboClient._clientOptions.url}/config?arg=${routingKey}&arg=${JSON.stringify(mergedRoutingValue)}&json=true`;
72
+ try {
73
+ await fetch(url, { method: "POST", headers: kuboClient._clientOptions.headers });
74
+ }
75
+ catch (e) {
76
+ const error = new PKCError("ERR_FAILED_TO_SET_CONFIG_ON_KUBO_NODE", {
77
+ fullUrl: url,
78
+ actualError: e,
79
+ kuboEndpoint: kuboClient._clientOptions.url,
80
+ configKey: routingKey,
81
+ configValueToBeSet: mergedRoutingValue
82
+ });
83
+ log.error(e);
84
+ throw error;
85
+ }
86
+ log.trace("Succeeded in setting config key", routingKey, "on node", kuboClient._clientOptions.url, "to be", mergedRoutingValue);
87
+ await _setProvideDhtSweepEnabledOnKuboNode(kuboClient, false);
88
+ const endpointsBefore = Object.values(routingConfigBeforeChanging?.Routers || {})
89
+ .map((router) => router.Parameters?.Endpoint)
90
+ .filter((endpoint) => endpoint !== undefined);
91
+ const endpointsAfter = Object.values(mergedRoutingValue.Routers)
92
+ .map((router) => router.Parameters?.Endpoint)
93
+ .filter((endpoint) => endpoint !== undefined);
94
+ if (!remeda.isDeepEqual(endpointsBefore.sort(), endpointsAfter.sort())) {
95
+ log("Config on kubo node has been changed. PKC-js will send shutdown command to node", kuboClient._clientOptions.url, "Clients of pkc-js should restart ipfs node");
96
+ const shutdownUrl = `${kuboClient._clientOptions.url}/shutdown`;
97
+ try {
98
+ await fetch(shutdownUrl, { method: "POST", headers: kuboClient._clientOptions.headers });
99
+ }
100
+ catch (e) {
101
+ const error = new PKCError("ERR_FAILED_TO_SHUTDOWN_KUBO_NODE", {
102
+ actualError: e,
103
+ kuboEndpoint: kuboClient._clientOptions.url,
104
+ shutdownUrl
105
+ });
106
+ log.error(e);
107
+ throw error;
108
+ }
109
+ }
110
+ }
111
+ async function _getStartedProxyUrl(pkc, httpRouterUrl) {
112
+ if (pkc.destroyed)
113
+ return undefined;
114
+ const mappingKeyName = `httprouter_proxy_${httpRouterUrl}`;
115
+ try {
116
+ const urlOfProxyOfHttpRouter = await pkc._storage.getItem(mappingKeyName);
117
+ if (pkc.destroyed)
118
+ return undefined;
119
+ if (urlOfProxyOfHttpRouter) {
120
+ const proxyHttpUrl = new URL(urlOfProxyOfHttpRouter);
121
+ if (await tcpPortUsed.check(Number(proxyHttpUrl.port), "127.0.0.1"))
122
+ return urlOfProxyOfHttpRouter;
123
+ if (pkc.destroyed)
124
+ return undefined;
125
+ await pkc._storage.removeItem(mappingKeyName);
126
+ }
127
+ return undefined;
128
+ }
129
+ catch (error) {
130
+ if (pkc.destroyed && error instanceof Error && error.message.includes("database connection is not open")) {
131
+ return undefined;
132
+ }
133
+ throw error;
134
+ }
135
+ }
136
+ export async function setupKuboAddressesRewriterAndHttpRouters(pkc) {
137
+ if (pkc.destroyed) {
138
+ return {
139
+ destroy: async () => { }
140
+ };
141
+ }
142
+ if (!Array.isArray(pkc.kuboRpcClientsOptions) || pkc.kuboRpcClientsOptions.length <= 0)
143
+ throw Error("need ipfs http client to be defined");
144
+ if (!Array.isArray(pkc.httpRoutersOptions) || pkc.httpRoutersOptions.length <= 0)
145
+ throw Error("Need http router options to defined");
146
+ const log = Logger("pkc-js:node:setupKuboAddressesRewriterAndHttpRouters");
147
+ // Set up http proxies first to rewrite addresses
148
+ const httpRouterProxyUrls = [];
149
+ const proxyServers = [];
150
+ let addressesRewriterStartPort = 19575; // use port 19575 as first port, looks like IPRTR (IPFS ROUTER)
151
+ for (const httpRouter of pkc.httpRoutersOptions) {
152
+ if (pkc.destroyed)
153
+ break;
154
+ const startedProxyUrl = await _getStartedProxyUrl(pkc, httpRouter);
155
+ if (startedProxyUrl) {
156
+ // Intentionally not tracked in proxyServers: this proxy was started by a previous PKC
157
+ // instance in the same process and persisted via storage. We have no server handle to it
158
+ // and must not destroy() it on teardown, since another instance may still rely on it. It
159
+ // is bounded (one proxy per httpRouter, reusing the same stored URL) and lives until the
160
+ // process exits, so this is reuse by design, not a leak.
161
+ httpRouterProxyUrls.push(startedProxyUrl);
162
+ continue;
163
+ }
164
+ // launch the proxy server
165
+ let port = addressesRewriterStartPort;
166
+ const hostname = "127.0.0.1";
167
+ while (await tcpPortUsed.check(port, hostname))
168
+ // keep increasing port till we find an empty port
169
+ port++;
170
+ const addressesRewriterProxyServer = new AddressesRewriterProxyServer({
171
+ kuboClients: Object.values(pkc.clients.kuboRpcClients).map((kubo) => kubo._client),
172
+ port,
173
+ hostname,
174
+ proxyTargetUrl: httpRouter,
175
+ pkc
176
+ });
177
+ await addressesRewriterProxyServer.listen();
178
+ if (pkc.destroyed) {
179
+ await addressesRewriterProxyServer.destroy();
180
+ break;
181
+ }
182
+ proxyServers.push(addressesRewriterProxyServer);
183
+ // save the proxy urls to use them later
184
+ const httpRouterProxyUrl = `http://${hostname}:${port}`;
185
+ httpRouterProxyUrls.push(httpRouterProxyUrl);
186
+ }
187
+ httpRouterProxyUrls.sort(); // make sure it's always the same order
188
+ // Set up http routers to use proxies
189
+ const kuboClients = pkc.clients.kuboRpcClients;
190
+ const parallelRouters = [];
191
+ const httpRoutersConfig = {
192
+ HttpRoutersParallel: { Type: "parallel", Parameters: { Routers: parallelRouters } },
193
+ HttpRouterNotSupported: { Type: "http", Parameters: { Endpoint: "http://kubohttprouternotsupported" } }
194
+ };
195
+ for (const [i, httpRouterUrl] of httpRouterProxyUrls.entries()) {
196
+ const RouterName = `HttpRouter${i + 1}`;
197
+ httpRoutersConfig[RouterName] = {
198
+ Type: "http",
199
+ Parameters: {
200
+ Endpoint: httpRouterUrl
201
+ }
202
+ };
203
+ parallelRouters[i] = {
204
+ RouterName: RouterName,
205
+ IgnoreErrors: true,
206
+ Timeout: "10s"
207
+ };
208
+ }
209
+ const httpRoutersMethodsConfig = {
210
+ "find-providers": { RouterName: "HttpRoutersParallel" },
211
+ provide: { RouterName: "HttpRoutersParallel" },
212
+ // not supported by pkc trackers
213
+ "find-peers": { RouterName: "HttpRouterNotSupported" },
214
+ "get-ipns": { RouterName: "HttpRouterNotSupported" },
215
+ "put-ipns": { RouterName: "HttpRouterNotSupported" }
216
+ };
217
+ const routingValue = {
218
+ Type: "custom",
219
+ Methods: httpRoutersMethodsConfig,
220
+ Routers: httpRoutersConfig
221
+ };
222
+ // Cap the backoff: with forever:true and no maxTimeout the exponential delay grows unbounded
223
+ // (hours between attempts after enough failures), which would stall router setup indefinitely.
224
+ const settingOptionRetryOption = retry.operation({ forever: true, factor: 2, maxTimeout: 60 * 1000 });
225
+ const setHttpRouterOnAllNodes = new Promise((resolve) => {
226
+ settingOptionRetryOption.attempt(async (curAttempt) => {
227
+ for (const kuboClient of Object.values(kuboClients)) {
228
+ try {
229
+ await _setHttpRouterOptionsOnKuboNode(kuboClient, routingValue);
230
+ }
231
+ catch (e) {
232
+ settingOptionRetryOption.retry(e);
233
+ return;
234
+ }
235
+ }
236
+ resolve(1);
237
+ });
238
+ });
239
+ await setHttpRouterOnAllNodes;
240
+ settingOptionRetryOption.stop();
241
+ return {
242
+ destroy: async () => {
243
+ for (const proxyServer of proxyServers) {
244
+ await proxyServer.destroy();
245
+ }
246
+ }
247
+ };
248
+ }
249
+ //# sourceMappingURL=setup-kubo-address-rewriter-and-http-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-kubo-address-rewriter-and-http-router.js","sourceRoot":"","sources":["../../../../src/runtime/browser/setup-kubo-address-rewriter-and-http-router.ts"],"names":[],"mappings":"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"}
@@ -80,7 +80,9 @@ export const PKCUserOptionsSchema = PKCUserOptionBaseSchema.extend({
80
80
  "https://peers.pleb.bot",
81
81
  "https://routing.lol",
82
82
  "https://peers.forumindex.com",
83
- "https://peers.plebpubsub.xyz"
83
+ "https://peers.plebpubsub.xyz",
84
+ "https://routerofbitsocial.xyz",
85
+ "https://bsotracker.online"
84
86
  ]),
85
87
  resolveAuthorNames: PKCUserOptionBaseSchema.shape.resolveAuthorNames.default(true),
86
88
  publishInterval: PKCUserOptionBaseSchema.shape.publishInterval.default(20000),
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@
14
14
  "node:module"
15
15
  ],
16
16
  "dynamicImports": [
17
- "chunks/node-2IRJmtOa.js"
17
+ "chunks/node-BxNfBS8t.js"
18
18
  ],
19
19
  "inputs": [
20
20
  "dist/node/runtime/node/compile-cache.js",
@@ -24,7 +24,7 @@
24
24
  "index.js": {
25
25
  "isEntry": true,
26
26
  "imports": [
27
- "chunks/node-2IRJmtOa.js"
27
+ "chunks/node-BxNfBS8t.js"
28
28
  ],
29
29
  "dynamicImports": [],
30
30
  "inputs": []
@@ -32,10 +32,10 @@
32
32
  "rpc/src/index.js": {
33
33
  "isEntry": true,
34
34
  "imports": [
35
- "chunks/schema-DEqa38Xx.js",
36
- "chunks/rpc-local-community-DUD2jTEu.js",
37
- "chunks/node-2IRJmtOa.js",
38
- "chunks/local-community-PMOePYFy.js",
35
+ "chunks/schema-TpjAJ8NM.js",
36
+ "chunks/rpc-local-community-CNzfRWd9.js",
37
+ "chunks/node-BxNfBS8t.js",
38
+ "chunks/local-community-04QX5cq0.js",
39
39
  "node:url",
40
40
  "path",
41
41
  "assert",
@@ -54,11 +54,11 @@
54
54
  "dist/node/rpc/src/index.js"
55
55
  ]
56
56
  },
57
- "chunks/helia-for-pkc-CoiCnGzf.js": {
57
+ "chunks/helia-for-pkc-BOtcXXpQ.js": {
58
58
  "isEntry": false,
59
59
  "imports": [
60
- "chunks/schema-DEqa38Xx.js",
61
- "chunks/util-CcKyKVLs.js",
60
+ "chunks/schema-TpjAJ8NM.js",
61
+ "chunks/util-CuHylCUx.js",
62
62
  "multiformats/cid",
63
63
  "@libp2p/interface",
64
64
  "@libp2p/peer-id",
@@ -83,19 +83,11 @@
83
83
  "dist/node/helia/helia-for-pkc.js"
84
84
  ]
85
85
  },
86
- "chunks/local-community-DiTjNeA_.js": {
86
+ "chunks/local-community-04QX5cq0.js": {
87
87
  "isEntry": false,
88
88
  "imports": [
89
- "chunks/local-community-PMOePYFy.js"
90
- ],
91
- "dynamicImports": [],
92
- "inputs": []
93
- },
94
- "chunks/local-community-PMOePYFy.js": {
95
- "isEntry": false,
96
- "imports": [
97
- "chunks/schema-DEqa38Xx.js",
98
- "chunks/rpc-local-community-DUD2jTEu.js",
89
+ "chunks/schema-TpjAJ8NM.js",
90
+ "chunks/rpc-local-community-CNzfRWd9.js",
99
91
  "node:crypto",
100
92
  "node:url",
101
93
  "node:path",
@@ -142,23 +134,35 @@
142
134
  "dist/node/runtime/node/community/local-community.js"
143
135
  ]
144
136
  },
145
- "chunks/node-2IRJmtOa.js": {
137
+ "chunks/local-community-o0hMcCA2.js": {
146
138
  "isEntry": false,
147
139
  "imports": [
148
- "chunks/schema-DEqa38Xx.js",
149
- "chunks/rpc-local-community-DUD2jTEu.js",
150
- "chunks/util-CcKyKVLs.js",
140
+ "chunks/local-community-04QX5cq0.js"
141
+ ],
142
+ "dynamicImports": [],
143
+ "inputs": []
144
+ },
145
+ "chunks/node-BxNfBS8t.js": {
146
+ "isEntry": false,
147
+ "imports": [
148
+ "chunks/schema-TpjAJ8NM.js",
149
+ "chunks/rpc-local-community-CNzfRWd9.js",
150
+ "chunks/util-CuHylCUx.js",
151
+ "node:http",
152
+ "node:fs/promises",
153
+ "node:path",
151
154
  "path",
152
155
  "assert",
153
156
  "fs",
157
+ "node:https",
154
158
  "better-sqlite3",
155
159
  "typestub-ipfs-only-hash",
156
160
  "events",
157
161
  "rpc-websockets"
158
162
  ],
159
163
  "dynamicImports": [
160
- "chunks/helia-for-pkc-CoiCnGzf.js",
161
- "chunks/local-community-PMOePYFy.js"
164
+ "chunks/helia-for-pkc-BOtcXXpQ.js",
165
+ "chunks/local-community-04QX5cq0.js"
162
166
  ],
163
167
  "inputs": [
164
168
  "node_modules/zod/v4/locales/en.js",
@@ -191,7 +195,20 @@
191
195
  "dist/node/runtime/node/sqlite-lru-cache.js",
192
196
  "dist/node/runtime/node/lru-storage.js",
193
197
  "dist/node/publications/comment-moderation/comment-moderation.js",
194
- "dist/node/runtime/node/setup-kubo-http-routers.js",
198
+ "dist/node/runtime/node/address-rewriter-db.js",
199
+ "dist/node/runtime/node/addresses-rewriter-proxy-server.js",
200
+ "node_modules/deep-is/index.js",
201
+ "node_modules/is2/node_modules/ip-regex/index.js",
202
+ "node_modules/is2/package.json",
203
+ "node_modules/is-url/index.js",
204
+ "node_modules/is2/index.js",
205
+ "node_modules/tcp-port-used/node_modules/ms/index.js",
206
+ "node_modules/tcp-port-used/node_modules/debug/src/common.js",
207
+ "node_modules/tcp-port-used/node_modules/debug/src/browser.js",
208
+ "node_modules/tcp-port-used/node_modules/debug/src/node.js",
209
+ "node_modules/tcp-port-used/node_modules/debug/src/index.js",
210
+ "node_modules/tcp-port-used/index.js",
211
+ "dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.js",
195
212
  "dist/node/publications/community-edit/community-edit.js",
196
213
  "dist/node/pkc/pkc.js",
197
214
  "dist/node/runtime/browser/native-functions.js",
@@ -199,10 +216,10 @@
199
216
  "dist/node/index.js"
200
217
  ]
201
218
  },
202
- "chunks/rpc-local-community-DUD2jTEu.js": {
219
+ "chunks/rpc-local-community-CNzfRWd9.js": {
203
220
  "isEntry": false,
204
221
  "imports": [
205
- "chunks/schema-DEqa38Xx.js",
222
+ "chunks/schema-TpjAJ8NM.js",
206
223
  "node:crypto",
207
224
  "node:url",
208
225
  "node:dns",
@@ -734,7 +751,7 @@
734
751
  "dist/node/community/rpc-local-community.js"
735
752
  ]
736
753
  },
737
- "chunks/schema-DEqa38Xx.js": {
754
+ "chunks/schema-TpjAJ8NM.js": {
738
755
  "isEntry": false,
739
756
  "imports": [
740
757
  "node:module",
@@ -1278,10 +1295,10 @@
1278
1295
  "dist/node/pubsub-messages/schema.js"
1279
1296
  ]
1280
1297
  },
1281
- "chunks/util-CcKyKVLs.js": {
1298
+ "chunks/util-CuHylCUx.js": {
1282
1299
  "isEntry": false,
1283
1300
  "imports": [
1284
- "chunks/schema-DEqa38Xx.js"
1301
+ "chunks/schema-TpjAJ8NM.js"
1285
1302
  ],
1286
1303
  "dynamicImports": [],
1287
1304
  "inputs": [
@@ -1,5 +1,5 @@
1
- import { L as hideClassPrivateProps, R as ipnsNameToIpnsOverPubsubTopic, cr as logger_default, or as PKCError } from "./schema-DEqa38Xx.js";
2
- import { n as getHeliaDebugContext, t as connectToPubsubPeers } from "./util-CcKyKVLs.js";
1
+ import { L as hideClassPrivateProps, R as ipnsNameToIpnsOverPubsubTopic, cr as logger_default, or as PKCError } from "./schema-TpjAJ8NM.js";
2
+ import { n as getHeliaDebugContext, t as connectToPubsubPeers } from "./util-CuHylCUx.js";
3
3
  import { CID } from "multiformats/cid";
4
4
  import { NotFoundError } from "@libp2p/interface";
5
5
  import { peerIdFromString } from "@libp2p/peer-id";
@@ -1,5 +1,5 @@
1
- import { $ as pubsubTopicToDhtKey, At as trackStartedCommunity, Bt as CommunityEditPublicationPubsubReservedFields, C as contentContainsMarkdownAudio, Ct as findUpdatingCommunity, Dr as __require, En as CommentUpdateSchema, F as getIpnsRecordInLocalKuboNode, Fn as CommentEditPubsubMessagePublicationSchema, Ft as untrackUpdatingCommunity, G as isLinkOfAudio, Gt as CommentModerationPubsubMessagePublicationSchema, In as CommentEditPubsubMessagePublicationWithFlexibleAuthorSchema, It as require_sha256, J as isLinkOfVideo, Jt as CommentModerationsTableRowSchema, K as isLinkOfImage, Kt as CommentModerationReservedFields, L as hideClassPrivateProps, Ln as CommentEditReservedFields, M as genToArray, Mt as trackUpdatingCommunity, N as getEquivalentCommunityAddresses, Nt as untrackStartedCommunity, O as derivePublicationFromChallengeRequest, On as CommentUpdateTableRowSchema, Or as __toESM, P as getErrorCodeFromMessage, Q as isStringDomain, R as ipnsNameToIpnsOverPubsubTopic, S as calculateStringSizeSameAsIpfsAddCidV0, T as contentContainsMarkdownVideos, Tr as __commonJSMin, Un as AuthorReservedFields, W as isLinkOfAnimatedImage, Xn as require_commonjs, Y as isLinkValid, Zn as require_retry, _t as timestamp, a as ChallengeRequestMessageSchema, at as removeNullUndefinedValues, b as areEquivalentCommunityAddresses, bt as findCommunityInRegistry, cr as logger_default, d as DecryptedChallengeRequestSchema, dt as retryKuboIpfsAddAndProvide, fn as VotePubsubMessagePublicationSchema, hn as VoteTablesRowSchema, ht as statMfsPathSafely, k as doesDomainAddressHaveCapitalLetter, kn as CommentsTableRowSchema, kt as syncCommunityRegistryEntry, lt as retryKuboBlockPutPinAndProvidePubsubTopic, mt as sleepUntilTimeoutOrAbort, nn as CommunityIpfsSchema, nt as removeBlocksFromKuboNode, or as PKCError, pn as VotePubsubReservedFields, q as isLinkOfMedia, r as ChallengeMessageSchema, rn as CommunitySignedPropertyNames, rt as removeMfsFilesSafely, s as ChallengeVerificationMessageSchema, sr as messages, t as ChallengeAnswerMessageSchema, u as DecryptedChallengeRequestPublicationSchema, vn as CommentIpfsSchema, w as contentContainsMarkdownImages, x as calculateIpfsCidV0, xr as ZodError, xt as findStartedCommunity, y as version_default, yn as CommentPubsubMessageReservedFields, yt as writeKuboFilesWithTimeout, zn as CommentEditsTableRowSchema } from "./schema-DEqa38Xx.js";
2
- import { A as getDefaultCommunityDbConfig, At as cleanWireAuthor, Bt as encode, C as calculateExpectedSignatureSize, Ct as verifyCommentModeration, D as deriveCommentIpfsFromCommentTableRow, Dt as verifyCommunityEdit, E as deleteOldCommunityInWindows, Et as verifyCommunity, Gn as require_lodash_merge, Gt as getPublicKeyFromPrivateKey, H as POST_REPLIES_SORT_TYPES, Ht as getIpfsKeyFromPrivateKey, I as moveCommunityDbToDeletedDirectory, It as getCommunityNameFromWire, Kt as createSchemaRowParser, L as resolveDbPostsCidRefs, Lt as getCommunityPublicKeyFromWire, M as getThumbnailPropsOfLink, Mt as getAuthorNameFromWire, N as importSignerIntoKuboNode, O as deriveDbPosts, Ot as verifyVote, S as backupCommunityDb, St as verifyCommentIpfs, Tt as verifyCommentUpdate, U as REPLY_REPLIES_SORT_TYPES, Un as stringify, Ut as getPKCAddressFromPublicKey, V as POSTS_SORT_TYPES, W as TIMEFRAMES_TO_SECONDS, Wn as STORAGE_KEYS, Wt as getPKCAddressFromPublicKeySync, Y as iterateOverPageCidsToFindAllCids, _t as verifyChallengeAnswer, a as pkcJsChallenges, an as parseCommunityIpfsSchemaPassthroughWithPKCErrorIfItFails, b as encryptEd25519AesGcmPublicKeyBuffer, ct as signChallengeVerification, ft as signCommentUpdate, h as SignerWithPublicKeyAddress, hn as parseDecryptedChallengeAnswerWithPKCErrorIfItFails, i as getCommunityChallengeFromCommunityChallengeSettings, it as cleanUpBeforePublishing, k as deriveDbReplies, kt as buildRuntimeAuthor, l as MAX_FILE_SIZE_BYTES_FOR_COMMUNITY_IPFS, lt as signComment, mt as signCommunity, o as TrackedInstanceRegistry, ot as signChallengeMessage, pt as signCommentUpdateForChallengeVerification, r as getChallengeVerification, rn as parseCommunityEditOptionsSchemaWithPKCErrorIfItFails, s as LRUCache, t as RpcLocalCommunity, tt as pLimit, u as KeyvBetterSqlite3, ut as signCommentEdit, v as decryptEd25519AesGcmPublicKeyBuffer, vn as parseJsonWithPKCErrorIfFails, w as calculateInlineRepliesBudget, wt as verifyCommentPubsubMessage, x as BackupAbortError, xt as verifyCommentEdit, yt as verifyChallengeRequest, zt as decode } from "./rpc-local-community-DUD2jTEu.js";
1
+ import { $ as pubsubTopicToDhtKey, At as trackStartedCommunity, Bt as CommunityEditPublicationPubsubReservedFields, C as contentContainsMarkdownAudio, Ct as findUpdatingCommunity, Dr as __require, En as CommentUpdateSchema, F as getIpnsRecordInLocalKuboNode, Fn as CommentEditPubsubMessagePublicationSchema, Ft as untrackUpdatingCommunity, G as isLinkOfAudio, Gt as CommentModerationPubsubMessagePublicationSchema, In as CommentEditPubsubMessagePublicationWithFlexibleAuthorSchema, It as require_sha256, J as isLinkOfVideo, Jt as CommentModerationsTableRowSchema, K as isLinkOfImage, Kt as CommentModerationReservedFields, L as hideClassPrivateProps, Ln as CommentEditReservedFields, M as genToArray, Mt as trackUpdatingCommunity, N as getEquivalentCommunityAddresses, Nt as untrackStartedCommunity, O as derivePublicationFromChallengeRequest, On as CommentUpdateTableRowSchema, Or as __toESM, P as getErrorCodeFromMessage, Q as isStringDomain, R as ipnsNameToIpnsOverPubsubTopic, Rt as pTimeout, S as calculateStringSizeSameAsIpfsAddCidV0, T as contentContainsMarkdownVideos, Tr as __commonJSMin, Un as AuthorReservedFields, W as isLinkOfAnimatedImage, Xn as require_commonjs, Y as isLinkValid, Zn as require_retry, _t as timestamp, a as ChallengeRequestMessageSchema, at as removeNullUndefinedValues, b as areEquivalentCommunityAddresses, bt as findCommunityInRegistry, cr as logger_default, d as DecryptedChallengeRequestSchema, dt as retryKuboIpfsAddAndProvide, fn as VotePubsubMessagePublicationSchema, hn as VoteTablesRowSchema, ht as statMfsPathSafely, k as doesDomainAddressHaveCapitalLetter, kn as CommentsTableRowSchema, kt as syncCommunityRegistryEntry, lt as retryKuboBlockPutPinAndProvidePubsubTopic, mt as sleepUntilTimeoutOrAbort, nn as CommunityIpfsSchema, nt as removeBlocksFromKuboNode, or as PKCError, pn as VotePubsubReservedFields, q as isLinkOfMedia, r as ChallengeMessageSchema, rn as CommunitySignedPropertyNames, rt as removeMfsFilesSafely, s as ChallengeVerificationMessageSchema, sr as messages, t as ChallengeAnswerMessageSchema, u as DecryptedChallengeRequestPublicationSchema, vn as CommentIpfsSchema, w as contentContainsMarkdownImages, x as calculateIpfsCidV0, xr as ZodError, xt as findStartedCommunity, y as version_default, yn as CommentPubsubMessageReservedFields, yt as writeKuboFilesWithTimeout, zn as CommentEditsTableRowSchema } from "./schema-TpjAJ8NM.js";
2
+ import { A as getDefaultCommunityDbConfig, At as cleanWireAuthor, Bt as encode, C as calculateExpectedSignatureSize, Ct as verifyCommentModeration, D as deriveCommentIpfsFromCommentTableRow, Dt as verifyCommunityEdit, E as deleteOldCommunityInWindows, Et as verifyCommunity, Gn as require_lodash_merge, Gt as getPublicKeyFromPrivateKey, H as POST_REPLIES_SORT_TYPES, Ht as getIpfsKeyFromPrivateKey, I as moveCommunityDbToDeletedDirectory, It as getCommunityNameFromWire, Kt as createSchemaRowParser, L as resolveDbPostsCidRefs, Lt as getCommunityPublicKeyFromWire, M as getThumbnailPropsOfLink, Mt as getAuthorNameFromWire, N as importSignerIntoKuboNode, O as deriveDbPosts, Ot as verifyVote, S as backupCommunityDb, St as verifyCommentIpfs, Tt as verifyCommentUpdate, U as REPLY_REPLIES_SORT_TYPES, Un as stringify, Ut as getPKCAddressFromPublicKey, V as POSTS_SORT_TYPES, W as TIMEFRAMES_TO_SECONDS, Wn as STORAGE_KEYS, Wt as getPKCAddressFromPublicKeySync, Y as iterateOverPageCidsToFindAllCids, _t as verifyChallengeAnswer, a as pkcJsChallenges, an as parseCommunityIpfsSchemaPassthroughWithPKCErrorIfItFails, b as encryptEd25519AesGcmPublicKeyBuffer, ct as signChallengeVerification, ft as signCommentUpdate, h as SignerWithPublicKeyAddress, hn as parseDecryptedChallengeAnswerWithPKCErrorIfItFails, i as getCommunityChallengeFromCommunityChallengeSettings, it as cleanUpBeforePublishing, k as deriveDbReplies, kt as buildRuntimeAuthor, l as MAX_FILE_SIZE_BYTES_FOR_COMMUNITY_IPFS, lt as signComment, mt as signCommunity, o as TrackedInstanceRegistry, ot as signChallengeMessage, pt as signCommentUpdateForChallengeVerification, r as getChallengeVerification, rn as parseCommunityEditOptionsSchemaWithPKCErrorIfItFails, s as LRUCache, t as RpcLocalCommunity, tt as pLimit, u as KeyvBetterSqlite3, ut as signCommentEdit, v as decryptEd25519AesGcmPublicKeyBuffer, vn as parseJsonWithPKCErrorIfFails, w as calculateInlineRepliesBudget, wt as verifyCommentPubsubMessage, x as BackupAbortError, xt as verifyCommentEdit, yt as verifyChallengeRequest, zt as decode } from "./rpc-local-community-CNzfRWd9.js";
3
3
  import { randomFillSync, randomUUID } from "node:crypto";
4
4
  import { fileURLToPath, pathToFileURL } from "node:url";
5
5
  import path from "node:path";
@@ -277,6 +277,15 @@ async function cleanUpIpfsRepoRarely(community, force = false) {
277
277
  if (Math.random() < 1e-5 || force) {
278
278
  let gcCids = 0;
279
279
  const kuboRpc = community._clientsManager.getDefaultKuboRpcClient();
280
+ try {
281
+ await pTimeout(kuboRpc._client.files.flush("/"), {
282
+ milliseconds: 15e3,
283
+ message: "Timed out flushing MFS root before repo.gc"
284
+ });
285
+ } catch (e) {
286
+ log.error("Skipping repo.gc: failed to flush MFS root beforehand (ipfs/kubo#10842 safeguard)", e);
287
+ return;
288
+ }
280
289
  try {
281
290
  for await (const res of kuboRpc._client.repo.gc({ quiet: true })) if (res.cid) gcCids++;
282
291
  else log.error("Failed to GC ipfs repo due to error", res.err);
@@ -1,2 +1,2 @@
1
- import { n as createNewLocalCommunityDb, r as updateInstancePropsWithStartedCommunityOrDb, t as LocalCommunity } from "./local-community-PMOePYFy.js";
1
+ import { n as createNewLocalCommunityDb, r as updateInstancePropsWithStartedCommunityOrDb, t as LocalCommunity } from "./local-community-04QX5cq0.js";
2
2
  export { LocalCommunity, createNewLocalCommunityDb, updateInstancePropsWithStartedCommunityOrDb };