@fedify/fedify 2.5.0-dev.2513 → 2.5.0-dev.2516

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 (86) hide show
  1. package/dist/{builder-CUg3qurz.mjs → builder-DAtPBTTb.mjs} +2 -2
  2. package/dist/compat/transformers.test.mjs +1 -1
  3. package/dist/{compound-proof-dsdjn7Br.mjs → compound-proof-DS4ezwAK.mjs} +2 -2
  4. package/dist/{deno-DAFuiu3D.mjs → deno-DKTVenSL.mjs} +1 -1
  5. package/dist/{docloader-CWalSzue.mjs → docloader-DiCRhiVf.mjs} +2 -2
  6. package/dist/federation/builder.test.mjs +1 -1
  7. package/dist/federation/compound-fanout.test.mjs +3 -3
  8. package/dist/federation/handler-compound-proof.test.mjs +3 -3
  9. package/dist/federation/handler.test.mjs +4 -4
  10. package/dist/federation/hashlink-media.test.mjs +2 -2
  11. package/dist/federation/idempotency.test.mjs +2 -2
  12. package/dist/federation/inbox-actorless.test.mjs +5 -5
  13. package/dist/federation/inbox-report.test.mjs +5 -5
  14. package/dist/federation/inbox-view.test.mjs +1 -1
  15. package/dist/federation/inbox.test.mjs +1 -1
  16. package/dist/federation/metrics.test.mjs +1 -1
  17. package/dist/federation/middleware.test.mjs +7 -7
  18. package/dist/federation/mod.cjs +1 -1
  19. package/dist/federation/mod.js +1 -1
  20. package/dist/federation/mq.test.mjs +1 -1
  21. package/dist/federation/outgoing-proof.test.mjs +4 -4
  22. package/dist/federation/portable-actor.test.mjs +3 -3
  23. package/dist/federation/portable-chain.test.mjs +3 -3
  24. package/dist/federation/portable-collection.test.mjs +4 -4
  25. package/dist/federation/portable-delivery.test.mjs +2 -2
  26. package/dist/federation/portable-gateway-keys.test.mjs +5 -5
  27. package/dist/federation/portable-inbox.test.mjs +4 -4
  28. package/dist/federation/portable-parse-uri.test.mjs +1 -1
  29. package/dist/federation/portable-route-activity.test.mjs +2 -2
  30. package/dist/federation/portable.test.mjs +3 -3
  31. package/dist/federation/send.test.mjs +3 -3
  32. package/dist/federation/tasks/enqueue.test.mjs +1 -1
  33. package/dist/federation/tasks/tasks.test.mjs +2 -2
  34. package/dist/federation/temporal.test.mjs +1 -1
  35. package/dist/federation/webfinger.test.mjs +1 -1
  36. package/dist/{federation-BxywCwQM.cjs → federation-CvcwaqSJ.cjs} +3 -3
  37. package/dist/{http-CctPLZgh.js → http-CCBtCnfU.js} +1 -1
  38. package/dist/{http-BgVblFFL.cjs → http-D1JHygBO.cjs} +1 -1
  39. package/dist/{http-CAg1XZri.mjs → http-K3Y5mwPV.mjs} +4 -4
  40. package/dist/{inbox-DrwO4JSZ.mjs → inbox-CH9A835j.mjs} +2 -2
  41. package/dist/{inbox-view-ag2wY6BD.mjs → inbox-view-D94ArFLo.mjs} +1 -1
  42. package/dist/{kv-cache-o-AGW06x.js → kv-cache-DcnXpBOR.js} +1 -1
  43. package/dist/{kv-cache-C5tnXyfp.mjs → kv-cache-DqLI7Paj.mjs} +1 -1
  44. package/dist/{kv-cache-I-AsZdcB.cjs → kv-cache-nXgDNKBA.cjs} +1 -1
  45. package/dist/{ld-Dfgm-uU-.mjs → ld-OerCxmrO.mjs} +2 -2
  46. package/dist/{metrics-CaC1VAxM.mjs → metrics-Bv6GmeIq.mjs} +1 -1
  47. package/dist/{middleware-IondfIYP.js → middleware-CSxw_dWE.js} +3 -3
  48. package/dist/{middleware-D0IsB8J-.mjs → middleware-DSr558Us.mjs} +15 -15
  49. package/dist/{middleware-nLDAUfRJ.mjs → middleware-DhSeHQgD.mjs} +1 -1
  50. package/dist/mod.cjs +4 -4
  51. package/dist/mod.js +4 -4
  52. package/dist/nodeinfo/handler.test.mjs +1 -1
  53. package/dist/{owner-sDZ8YtDA.mjs → owner-Ce2FtPkm.mjs} +3 -3
  54. package/dist/{portable-collection-D2A5zyUK.js → portable-collection-B_o9Pki8.js} +1 -1
  55. package/dist/{portable-collection-CcZ8lOM3.mjs → portable-collection-CIewEV7b.mjs} +2 -2
  56. package/dist/{portable-collection-udtOVUbC.cjs → portable-collection-Ckw7Zxxg.cjs} +1 -1
  57. package/dist/{portable-key-96xXB1GO.mjs → portable-key-CE89A0TY.mjs} +1 -1
  58. package/dist/{proof-B0cdn5CF.mjs → proof-Caq-e6N4.mjs} +3 -3
  59. package/dist/{send-BDuNgoTP.mjs → send-DILufwcm.mjs} +3 -3
  60. package/dist/sig/compound-proof-discovery.test.mjs +1 -1
  61. package/dist/sig/compound-proof-producer.test.mjs +1 -1
  62. package/dist/sig/compound-proof-verification.test.mjs +2 -2
  63. package/dist/sig/compound-proof.test.mjs +2 -2
  64. package/dist/sig/http.test.mjs +2 -2
  65. package/dist/sig/key.test.mjs +1 -1
  66. package/dist/sig/ld.test.mjs +1 -1
  67. package/dist/sig/mitra-receive-interop.test.mjs +4 -4
  68. package/dist/sig/mitra-send-interop.test.mjs +3 -3
  69. package/dist/sig/mod.cjs +2 -2
  70. package/dist/sig/mod.js +2 -2
  71. package/dist/sig/owner.test.mjs +1 -1
  72. package/dist/sig/portable-collection.test.mjs +1 -1
  73. package/dist/sig/portable-interop.test.mjs +3 -3
  74. package/dist/sig/portable-key.test.mjs +5 -5
  75. package/dist/sig/proof.test.mjs +3 -3
  76. package/dist/sig/tootik-request-interop.test.mjs +4 -4
  77. package/dist/sig/tootik-send-interop.test.mjs +3 -3
  78. package/dist/sig/verification.test.mjs +3 -3
  79. package/dist/{temporal-VN9ZA5nL.mjs → temporal-DqYgWPE7.mjs} +1 -1
  80. package/dist/testing/kv.test.mjs +1 -1
  81. package/dist/utils/docloader.test.mjs +2 -2
  82. package/dist/utils/kv-cache.test.mjs +1 -1
  83. package/dist/utils/mod.cjs +1 -1
  84. package/dist/utils/mod.js +1 -1
  85. package/package.json +6 -6
  86. package/skills/fedify/SKILL.md +12 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fedify/fedify",
3
- "version": "2.5.0-dev.2513+d7ab5950",
3
+ "version": "2.5.0-dev.2516+42d3ed0b",
4
4
  "description": "An ActivityPub server framework",
5
5
  "keywords": [
6
6
  "ActivityPub",
@@ -151,10 +151,10 @@
151
151
  "structured-field-values": "^2.0.4",
152
152
  "temporal-polyfill": "^1.0.1",
153
153
  "urlpattern-polyfill": "^10.1.0",
154
- "@fedify/uri-template": "2.5.0-dev.2513+d7ab5950",
155
- "@fedify/vocab": "2.5.0-dev.2513+d7ab5950",
156
- "@fedify/vocab-runtime": "2.5.0-dev.2513+d7ab5950",
157
- "@fedify/webfinger": "2.5.0-dev.2513+d7ab5950"
154
+ "@fedify/uri-template": "2.5.0-dev.2516+42d3ed0b",
155
+ "@fedify/vocab-runtime": "2.5.0-dev.2516+42d3ed0b",
156
+ "@fedify/webfinger": "2.5.0-dev.2516+42d3ed0b",
157
+ "@fedify/vocab": "2.5.0-dev.2516+42d3ed0b"
158
158
  },
159
159
  "devDependencies": {
160
160
  "@std/assert": "npm:@jsr/std__assert@^0.226.0",
@@ -166,7 +166,7 @@
166
166
  "typescript": "^6.0.0",
167
167
  "wrangler": "^4.17.0",
168
168
  "@fedify/fixture": "2.0.0",
169
- "@fedify/vocab-tools": "^2.5.0-dev.2513+d7ab5950"
169
+ "@fedify/vocab-tools": "^2.5.0-dev.2516+42d3ed0b"
170
170
  },
171
171
  "scripts": {
172
172
  "build:self": "tsdown",
@@ -265,6 +265,18 @@ in-tree *src/webfinger*.
265
265
 
266
266
  `fromJsonLd()` and `toJsonLd()` are asynchronous; always `await` them.
267
267
 
268
+ `clone()` is shallow: it copies property arrays but shares nested vocabulary
269
+ objects and URLs. In Fedify 2.5.0 and later, use synchronous `deepClone()` to
270
+ resolve nested properties without hydrating the source's objects. Replacement
271
+ values are copied too. Each copied node keeps its own default loaders and
272
+ verifier; second-argument options override only the root. The copy drops cached
273
+ JSON-LD and retained signed representations, so retain the received document
274
+ when its exact representation matters and sign copies again when needed.
275
+ Keep property arrays stable during copying, including inside custom `clone()`
276
+ overrides: `deepClone()` snapshots the existing indices of large sparse arrays.
277
+ Entries added during copying are not visited, so their nested objects may
278
+ remain shared. Copying preserves array length and holes.
279
+
268
280
  > [!WARNING]
269
281
  > `crossOrigin: "trust"` on vocabulary deserialization trusts embedded
270
282
  > objects without re-fetching. Treat it as you would