@fedify/fedify 1.3.17 → 1.3.18

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 (157) hide show
  1. package/CHANGES.md +58 -0
  2. package/esm/deno.js +1 -1
  3. package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/equals.js +1 -1
  4. package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_constants.js +0 -10
  5. package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/satisfies.js +1 -0
  6. package/esm/federation/handler.js +20 -7
  7. package/esm/nodeinfo/client.js +1 -1
  8. package/esm/nodeinfo/mod.js +1 -1
  9. package/esm/nodeinfo/types.js +1 -1
  10. package/esm/runtime/key.js +1 -1
  11. package/esm/sig/http.js +1 -1
  12. package/esm/sig/key.js +4 -1
  13. package/esm/vocab/lookup.js +1 -1
  14. package/esm/vocab/vocab.js +305 -173
  15. package/package.json +1 -1
  16. package/types/deps/jsr.io/@std/async/{1.0.12 → 1.0.13}/delay.d.ts.map +1 -1
  17. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.d.ts.map +1 -1
  18. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.d.ts +1 -1
  19. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.d.ts.map +1 -1
  20. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts.map +1 -1
  21. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/ends_with.d.ts.map +1 -1
  22. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/equals.d.ts.map +1 -1
  23. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/includes_needle.d.ts.map +1 -1
  24. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/index_of_needle.d.ts.map +1 -1
  25. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/last_index_of_needle.d.ts.map +1 -1
  26. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/mod.d.ts.map +1 -1
  27. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/repeat.d.ts.map +1 -1
  28. package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/starts_with.d.ts.map +1 -1
  29. package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/common.d.ts.map +1 -1
  30. package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/encoding.d.ts.map +1 -1
  31. package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/language.d.ts.map +1 -1
  32. package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/media_type.d.ts.map +1 -1
  33. package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/negotiation.d.ts.map +1 -1
  34. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_constants.d.ts +0 -4
  35. package/types/deps/jsr.io/@std/semver/1.0.5/_constants.d.ts.map +1 -0
  36. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_shared.d.ts.map +1 -1
  37. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_test_comparator_set.d.ts.map +1 -1
  38. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/can_parse.d.ts.map +1 -1
  39. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/compare.d.ts.map +1 -1
  40. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/difference.d.ts.map +1 -1
  41. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/equals.d.ts.map +1 -1
  42. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format.d.ts.map +1 -1
  43. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format_range.d.ts.map +1 -1
  44. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_or_equal.d.ts.map +1 -1
  45. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than.d.ts.map +1 -1
  46. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than_range.d.ts.map +1 -1
  47. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/increment.d.ts.map +1 -1
  48. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_range.d.ts.map +1 -1
  49. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_semver.d.ts.map +1 -1
  50. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_or_equal.d.ts.map +1 -1
  51. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than.d.ts.map +1 -1
  52. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than_range.d.ts.map +1 -1
  53. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/max_satisfying.d.ts.map +1 -1
  54. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/min_satisfying.d.ts.map +1 -1
  55. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/mod.d.ts.map +1 -1
  56. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/not_equals.d.ts.map +1 -1
  57. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse.d.ts.map +1 -1
  58. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse_range.d.ts.map +1 -1
  59. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/range_intersects.d.ts.map +1 -1
  60. package/types/deps/jsr.io/@std/semver/1.0.5/satisfies.d.ts.map +1 -0
  61. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse.d.ts.map +1 -1
  62. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse_range.d.ts.map +1 -1
  63. package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/types.d.ts.map +1 -1
  64. package/types/federation/handler.d.ts.map +1 -1
  65. package/types/nodeinfo/mod.d.ts +1 -1
  66. package/types/nodeinfo/types.d.ts +1 -1
  67. package/types/sig/key.d.ts.map +1 -1
  68. package/types/vocab/vocab.d.ts.map +1 -1
  69. package/types/deps/jsr.io/@std/semver/1.0.4/_constants.d.ts.map +0 -1
  70. package/types/deps/jsr.io/@std/semver/1.0.4/satisfies.d.ts.map +0 -1
  71. /package/esm/deps/jsr.io/@std/async/{1.0.12 → 1.0.13}/delay.js +0 -0
  72. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.js +0 -0
  73. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.js +0 -0
  74. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.js +0 -0
  75. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/ends_with.js +0 -0
  76. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/includes_needle.js +0 -0
  77. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/index_of_needle.js +0 -0
  78. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/last_index_of_needle.js +0 -0
  79. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/mod.js +0 -0
  80. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/repeat.js +0 -0
  81. /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/starts_with.js +0 -0
  82. /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/common.js +0 -0
  83. /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/encoding.js +0 -0
  84. /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/language.js +0 -0
  85. /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/media_type.js +0 -0
  86. /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/negotiation.js +0 -0
  87. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_shared.js +0 -0
  88. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_test_comparator_set.js +0 -0
  89. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/can_parse.js +0 -0
  90. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/compare.js +0 -0
  91. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/difference.js +0 -0
  92. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/equals.js +0 -0
  93. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format.js +0 -0
  94. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format_range.js +0 -0
  95. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_or_equal.js +0 -0
  96. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than.js +0 -0
  97. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than_range.js +0 -0
  98. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/increment.js +0 -0
  99. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_range.js +0 -0
  100. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_semver.js +0 -0
  101. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_or_equal.js +0 -0
  102. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than.js +0 -0
  103. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than_range.js +0 -0
  104. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/max_satisfying.js +0 -0
  105. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/min_satisfying.js +0 -0
  106. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/mod.js +0 -0
  107. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/not_equals.js +0 -0
  108. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse.js +0 -0
  109. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse_range.js +0 -0
  110. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/range_intersects.js +0 -0
  111. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse.js +0 -0
  112. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse_range.js +0 -0
  113. /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/types.js +0 -0
  114. /package/types/deps/jsr.io/@std/async/{1.0.12 → 1.0.13}/delay.d.ts +0 -0
  115. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.d.ts +0 -0
  116. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts +0 -0
  117. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/ends_with.d.ts +0 -0
  118. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/equals.d.ts +0 -0
  119. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/includes_needle.d.ts +0 -0
  120. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/index_of_needle.d.ts +0 -0
  121. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/last_index_of_needle.d.ts +0 -0
  122. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/mod.d.ts +0 -0
  123. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/repeat.d.ts +0 -0
  124. /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/starts_with.d.ts +0 -0
  125. /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/common.d.ts +0 -0
  126. /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/encoding.d.ts +0 -0
  127. /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/language.d.ts +0 -0
  128. /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/_negotiation/media_type.d.ts +0 -0
  129. /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.16}/negotiation.d.ts +0 -0
  130. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_shared.d.ts +0 -0
  131. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_test_comparator_set.d.ts +0 -0
  132. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/can_parse.d.ts +0 -0
  133. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/compare.d.ts +0 -0
  134. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/difference.d.ts +0 -0
  135. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/equals.d.ts +0 -0
  136. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format.d.ts +0 -0
  137. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format_range.d.ts +0 -0
  138. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_or_equal.d.ts +0 -0
  139. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than.d.ts +0 -0
  140. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than_range.d.ts +0 -0
  141. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/increment.d.ts +0 -0
  142. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_range.d.ts +0 -0
  143. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_semver.d.ts +0 -0
  144. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_or_equal.d.ts +0 -0
  145. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than.d.ts +0 -0
  146. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than_range.d.ts +0 -0
  147. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/max_satisfying.d.ts +0 -0
  148. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/min_satisfying.d.ts +0 -0
  149. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/mod.d.ts +0 -0
  150. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/not_equals.d.ts +0 -0
  151. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse.d.ts +0 -0
  152. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse_range.d.ts +0 -0
  153. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/range_intersects.d.ts +0 -0
  154. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/satisfies.d.ts +0 -0
  155. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse.d.ts +0 -0
  156. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse_range.d.ts +0 -0
  157. /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/types.d.ts +0 -0
package/CHANGES.md CHANGED
@@ -3,6 +3,20 @@
3
3
  Fedify changelog
4
4
  ================
5
5
 
6
+ Version 1.3.18
7
+ --------------
8
+
9
+ Released on May 16, 2025.
10
+
11
+ - Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
12
+ caused a `500 Internal Server Error` when the received activity had
13
+ an invalid JSON-LD syntax. Now it logs the error and responds with
14
+ a `400 Bad Request` error instead. [[#232]]
15
+
16
+ - The `exportJwk()` function now populates the `alg` property of a returned
17
+ `JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
18
+
19
+
6
20
  Version 1.3.17
7
21
  --------------
8
22
 
@@ -343,6 +357,20 @@ Released on November 30, 2024.
343
357
  [#193]: https://github.com/fedify-dev/fedify/issues/193
344
358
 
345
359
 
360
+ Version 1.2.22
361
+ --------------
362
+
363
+ Released on May 16, 2025.
364
+
365
+ - Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
366
+ caused a `500 Internal Server Error` when the received activity had
367
+ an invalid JSON-LD syntax. Now it logs the error and responds with
368
+ a `400 Bad Request` error instead. [[#232]]
369
+
370
+ - The `exportJwk()` function now populates the `alg` property of a returned
371
+ `JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
372
+
373
+
346
374
  Version 1.2.21
347
375
  --------------
348
376
 
@@ -731,6 +759,20 @@ Released on October 31, 2024.
731
759
  [#118]: https://github.com/fedify-dev/fedify/issues/118
732
760
 
733
761
 
762
+ Version 1.1.22
763
+ --------------
764
+
765
+ Released on May 16, 2025.
766
+
767
+ - Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
768
+ caused a `500 Internal Server Error` when the received activity had
769
+ an invalid JSON-LD syntax. Now it logs the error and responds with
770
+ a `400 Bad Request` error instead. [[#232]]
771
+
772
+ - The `exportJwk()` function now populates the `alg` property of a returned
773
+ `JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
774
+
775
+
734
776
  Version 1.1.21
735
777
  --------------
736
778
 
@@ -1160,6 +1202,22 @@ Released on October 20, 2024.
1160
1202
  [#150]: https://github.com/fedify-dev/fedify/issues/150
1161
1203
 
1162
1204
 
1205
+ Version 1.0.25
1206
+ --------------
1207
+
1208
+ Released on May 16, 2025.
1209
+
1210
+ - Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
1211
+ caused a `500 Internal Server Error` when the received activity had
1212
+ an invalid JSON-LD syntax. Now it logs the error and responds with
1213
+ a `400 Bad Request` error instead. [[#232]]
1214
+
1215
+ - The `exportJwk()` function now populates the `alg` property of a returned
1216
+ `JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
1217
+
1218
+ [#232]: https://github.com/fedify-dev/fedify/issues/232
1219
+
1220
+
1163
1221
  Version 1.0.24
1164
1222
  --------------
1165
1223
 
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "@fedify/fedify",
3
- "version": "1.3.17",
3
+ "version": "1.3.18",
4
4
  "license": "MIT",
5
5
  "exports": {
6
6
  ".": "./mod.ts",
@@ -48,7 +48,7 @@ function equals32Bit(a, b) {
48
48
  * Byte length threshold for when to use 32-bit comparisons, based on
49
49
  * benchmarks.
50
50
  *
51
- * @see {@link https://github.com/denoland/deno_std/pull/4635}
51
+ * @see {@link https://github.com/denoland/std/pull/4635}
52
52
  */
53
53
  const THRESHOLD_32_BIT = 160;
54
54
  /**
@@ -1,14 +1,4 @@
1
1
  // Copyright 2018-2025 the Deno authors. MIT license.
2
- /**
3
- * The minimum valid SemVer object. Equivalent to `0.0.0`.
4
- */
5
- export const MIN = {
6
- major: 0,
7
- minor: 0,
8
- patch: 0,
9
- prerelease: [],
10
- build: [],
11
- };
12
2
  /**
13
3
  * ANY is a sentinel value used by some range calculations. It is not a valid
14
4
  * SemVer object and should not be used directly.
@@ -1,4 +1,5 @@
1
1
  // Copyright 2018-2025 the Deno authors. MIT license.
2
+ // This module is browser compatible.
2
3
  import { testComparatorSet } from "./_test_comparator_set.js";
3
4
  /**
4
5
  * Test to see if the SemVer satisfies the range.
@@ -1,6 +1,6 @@
1
1
  import { getLogger } from "@logtape/logtape";
2
2
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
3
- import { accepts } from "../deps/jsr.io/@std/http/1.0.13/negotiation.js";
3
+ import { accepts } from "../deps/jsr.io/@std/http/1.0.16/negotiation.js";
4
4
  import metadata from "../deno.js";
5
5
  import { verifyRequest } from "../sig/http.js";
6
6
  import { detachSignature, verifyJsonLd } from "../sig/ld.js";
@@ -322,12 +322,25 @@ async function handleInboxInternal(request, { recipient, context: ctx, inboxCont
322
322
  });
323
323
  }
324
324
  const keyCache = new KvKeyCache(kv, kvPrefixes.publicKey, ctx);
325
- const ldSigVerified = await verifyJsonLd(json, {
326
- contextLoader: ctx.contextLoader,
327
- documentLoader: ctx.documentLoader,
328
- keyCache,
329
- tracerProvider,
330
- });
325
+ let ldSigVerified;
326
+ try {
327
+ ldSigVerified = await verifyJsonLd(json, {
328
+ contextLoader: ctx.contextLoader,
329
+ documentLoader: ctx.documentLoader,
330
+ keyCache,
331
+ tracerProvider,
332
+ });
333
+ }
334
+ catch (error) {
335
+ if (error instanceof Error && error.name === "jsonld.SyntaxError") {
336
+ logger.error("Failed to parse JSON-LD:\n{error}", { recipient, error });
337
+ return new Response("Invalid JSON-LD.", {
338
+ status: 400,
339
+ headers: { "Content-Type": "text/plain; charset=utf-8" },
340
+ });
341
+ }
342
+ ldSigVerified = false;
343
+ }
331
344
  const jsonWithoutSig = detachSignature(json);
332
345
  let activity = null;
333
346
  if (ldSigVerified) {
@@ -1,5 +1,5 @@
1
1
  import { getLogger } from "@logtape/logtape";
2
- import { parse } from "../deps/jsr.io/@std/semver/1.0.4/mod.js";
2
+ import { parse } from "../deps/jsr.io/@std/semver/1.0.5/mod.js";
3
3
  import { getUserAgent, } from "../runtime/docloader.js";
4
4
  const logger = getLogger(["fedify", "nodeinfo", "client"]);
5
5
  export async function getNodeInfo(url, options = {}) {
@@ -5,6 +5,6 @@
5
5
  * @module
6
6
  * @since 0.2.0
7
7
  */
8
- export { format as formatSemVer, parse as parseSemVer, } from "../deps/jsr.io/@std/semver/1.0.4/mod.js";
8
+ export { format as formatSemVer, parse as parseSemVer, } from "../deps/jsr.io/@std/semver/1.0.5/mod.js";
9
9
  export { getNodeInfo, parseNodeInfo, } from "./client.js";
10
10
  export * from "./types.js";
@@ -1,4 +1,4 @@
1
- import { format } from "../deps/jsr.io/@std/semver/1.0.4/mod.js";
1
+ import { format } from "../deps/jsr.io/@std/semver/1.0.5/mod.js";
2
2
  /**
3
3
  * Converts a {@link NodeInfo} object to a JSON value.
4
4
  * @param nodeInfo The {@link NodeInfo} object to convert.
@@ -1,6 +1,6 @@
1
1
  import * as dntShim from "../_dnt.shims.js";
2
2
  import { createPublicKey } from "node:crypto";
3
- import { concat } from "../deps/jsr.io/@std/bytes/1.0.5/concat.js";
3
+ import { concat } from "../deps/jsr.io/@std/bytes/1.0.6/concat.js";
4
4
  import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.7/base64.js";
5
5
  import { decodeBase64Url } from "../deps/jsr.io/@std/encoding/1.0.7/base64url.js";
6
6
  import { decodeHex } from "../deps/jsr.io/@std/encoding/1.0.7/hex.js";
package/esm/sig/http.js CHANGED
@@ -2,7 +2,7 @@ import * as dntShim from "../_dnt.shims.js";
2
2
  import { getLogger } from "@logtape/logtape";
3
3
  import { SpanStatusCode, trace, } from "@opentelemetry/api";
4
4
  import { ATTR_HTTP_REQUEST_HEADER, ATTR_HTTP_REQUEST_METHOD, ATTR_URL_FULL, } from "@opentelemetry/semantic-conventions";
5
- import { equals } from "../deps/jsr.io/@std/bytes/1.0.5/mod.js";
5
+ import { equals } from "../deps/jsr.io/@std/bytes/1.0.6/mod.js";
6
6
  import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.7/base64.js";
7
7
  import { encodeHex } from "../deps/jsr.io/@std/encoding/1.0.7/hex.js";
8
8
  import metadata from "../deno.js";
package/esm/sig/key.js CHANGED
@@ -70,7 +70,10 @@ export function generateCryptoKeyPair(algorithm) {
70
70
  */
71
71
  export async function exportJwk(key) {
72
72
  validateCryptoKey(key);
73
- return await dntShim.crypto.subtle.exportKey("jwk", key);
73
+ const jwk = await dntShim.crypto.subtle.exportKey("jwk", key);
74
+ if (jwk.crv === "Ed25519")
75
+ jwk.alg = "Ed25519";
76
+ return jwk;
74
77
  }
75
78
  /**
76
79
  * Imports a key from JWK format.
@@ -1,7 +1,7 @@
1
1
  import * as dntShim from "../_dnt.shims.js";
2
2
  import { getLogger } from "@logtape/logtape";
3
3
  import { SpanStatusCode, trace } from "@opentelemetry/api";
4
- import { delay } from "../deps/jsr.io/@std/async/1.0.12/delay.js";
4
+ import { delay } from "../deps/jsr.io/@std/async/1.0.13/delay.js";
5
5
  import metadata from "../deno.js";
6
6
  import { getDocumentLoader, } from "../runtime/docloader.js";
7
7
  import { lookupWebFinger } from "../webfinger/lookup.js";