@fedify/fedify 1.3.17 → 1.3.19
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.
- package/CHANGES.md +102 -0
- package/esm/deno.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/equals.js +1 -1
- package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_constants.js +0 -10
- package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/satisfies.js +1 -0
- package/esm/federation/handler.js +20 -7
- package/esm/nodeinfo/client.js +1 -1
- package/esm/nodeinfo/mod.js +1 -1
- package/esm/nodeinfo/types.js +1 -1
- package/esm/runtime/key.js +1 -1
- package/esm/sig/http.js +1 -1
- package/esm/sig/key.js +4 -1
- package/esm/vocab/announce.yaml +3 -1
- package/esm/vocab/create.yaml +3 -1
- package/esm/vocab/delete.yaml +3 -1
- package/esm/vocab/lookup.js +1 -1
- package/esm/vocab/question.yaml +75 -73
- package/esm/vocab/update.yaml +3 -1
- package/esm/vocab/vocab.js +325 -178
- package/package.json +1 -1
- package/types/deps/jsr.io/@std/async/{1.0.12 → 1.0.13}/delay.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.d.ts +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/ends_with.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/equals.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/includes_needle.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/index_of_needle.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/last_index_of_needle.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/mod.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/repeat.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/starts_with.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/common.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/encoding.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/language.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/media_type.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/negotiation.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_constants.d.ts +0 -4
- package/types/deps/jsr.io/@std/semver/1.0.5/_constants.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_shared.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_test_comparator_set.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/can_parse.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/compare.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/difference.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/equals.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format_range.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_or_equal.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than_range.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/increment.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_range.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_semver.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_or_equal.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than_range.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/max_satisfying.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/min_satisfying.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/mod.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/not_equals.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse_range.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/range_intersects.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/1.0.5/satisfies.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse_range.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/types.d.ts.map +1 -1
- package/types/federation/handler.d.ts.map +1 -1
- package/types/nodeinfo/mod.d.ts +1 -1
- package/types/nodeinfo/types.d.ts +1 -1
- package/types/sig/key.d.ts.map +1 -1
- package/types/vocab/vocab.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/semver/1.0.4/_constants.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/semver/1.0.4/satisfies.d.ts.map +0 -1
- /package/esm/deps/jsr.io/@std/async/{1.0.12 → 1.0.13}/delay.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/concat.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/ends_with.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/includes_needle.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/index_of_needle.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/last_index_of_needle.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/mod.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/repeat.js +0 -0
- /package/esm/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/starts_with.js +0 -0
- /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/common.js +0 -0
- /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/encoding.js +0 -0
- /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/language.js +0 -0
- /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/media_type.js +0 -0
- /package/esm/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/negotiation.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_shared.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_test_comparator_set.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/can_parse.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/compare.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/difference.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/equals.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format_range.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_or_equal.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than_range.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/increment.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_range.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_semver.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_or_equal.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than_range.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/max_satisfying.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/min_satisfying.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/mod.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/not_equals.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse_range.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/range_intersects.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse_range.js +0 -0
- /package/esm/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/types.js +0 -0
- /package/types/deps/jsr.io/@std/async/{1.0.12 → 1.0.13}/delay.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/_types.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/copy.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/ends_with.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/equals.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/includes_needle.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/index_of_needle.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/last_index_of_needle.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/mod.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/repeat.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.5 → 1.0.6}/starts_with.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/common.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/encoding.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/language.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/_negotiation/media_type.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.13 → 1.0.18}/negotiation.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_shared.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/_test_comparator_set.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/can_parse.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/compare.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/difference.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/equals.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/format_range.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_or_equal.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/greater_than_range.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/increment.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_range.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/is_semver.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_or_equal.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/less_than_range.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/max_satisfying.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/min_satisfying.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/mod.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/not_equals.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/parse_range.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/range_intersects.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/satisfies.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse.d.ts +0 -0
- /package/types/deps/jsr.io/@std/semver/{1.0.4 → 1.0.5}/try_parse_range.d.ts +0 -0
- /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,31 @@
|
|
|
3
3
|
Fedify changelog
|
|
4
4
|
================
|
|
5
5
|
|
|
6
|
+
Version 1.3.19
|
|
7
|
+
--------------
|
|
8
|
+
|
|
9
|
+
Released on June 30, 2025.
|
|
10
|
+
|
|
11
|
+
- Fixed JSON-LD serialization of the `Question.voters` property to correctly
|
|
12
|
+
serialize as a plain number (e.g., `"votersCount": 123`) instead of as a
|
|
13
|
+
typed literal object (e.g., `"votersCount":{"type":"xsd:nonNegativeInteger",
|
|
14
|
+
"@value":123}`).
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
Version 1.3.18
|
|
18
|
+
--------------
|
|
19
|
+
|
|
20
|
+
Released on May 16, 2025.
|
|
21
|
+
|
|
22
|
+
- Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
|
|
23
|
+
caused a `500 Internal Server Error` when the received activity had
|
|
24
|
+
an invalid JSON-LD syntax. Now it logs the error and responds with
|
|
25
|
+
a `400 Bad Request` error instead. [[#232]]
|
|
26
|
+
|
|
27
|
+
- The `exportJwk()` function now populates the `alg` property of a returned
|
|
28
|
+
`JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
|
|
29
|
+
|
|
30
|
+
|
|
6
31
|
Version 1.3.17
|
|
7
32
|
--------------
|
|
8
33
|
|
|
@@ -343,6 +368,31 @@ Released on November 30, 2024.
|
|
|
343
368
|
[#193]: https://github.com/fedify-dev/fedify/issues/193
|
|
344
369
|
|
|
345
370
|
|
|
371
|
+
Version 1.2.23
|
|
372
|
+
--------------
|
|
373
|
+
|
|
374
|
+
Released on June 30, 2025.
|
|
375
|
+
|
|
376
|
+
- Fixed JSON-LD serialization of the `Question.voters` property to correctly
|
|
377
|
+
serialize as a plain number (e.g., `"votersCount": 123`) instead of as a
|
|
378
|
+
typed literal object (e.g., `"votersCount":{"type":"xsd:nonNegativeInteger",
|
|
379
|
+
"@value":123}`).
|
|
380
|
+
|
|
381
|
+
|
|
382
|
+
Version 1.2.22
|
|
383
|
+
--------------
|
|
384
|
+
|
|
385
|
+
Released on May 16, 2025.
|
|
386
|
+
|
|
387
|
+
- Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
|
|
388
|
+
caused a `500 Internal Server Error` when the received activity had
|
|
389
|
+
an invalid JSON-LD syntax. Now it logs the error and responds with
|
|
390
|
+
a `400 Bad Request` error instead. [[#232]]
|
|
391
|
+
|
|
392
|
+
- The `exportJwk()` function now populates the `alg` property of a returned
|
|
393
|
+
`JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
|
|
394
|
+
|
|
395
|
+
|
|
346
396
|
Version 1.2.21
|
|
347
397
|
--------------
|
|
348
398
|
|
|
@@ -731,6 +781,31 @@ Released on October 31, 2024.
|
|
|
731
781
|
[#118]: https://github.com/fedify-dev/fedify/issues/118
|
|
732
782
|
|
|
733
783
|
|
|
784
|
+
Version 1.1.23
|
|
785
|
+
--------------
|
|
786
|
+
|
|
787
|
+
Released on June 30, 2025.
|
|
788
|
+
|
|
789
|
+
- Fixed JSON-LD serialization of the `Question.voters` property to correctly
|
|
790
|
+
serialize as a plain number (e.g., `"votersCount": 123`) instead of as a
|
|
791
|
+
typed literal object (e.g., `"votersCount":{"type":"xsd:nonNegativeInteger",
|
|
792
|
+
"@value":123}`).
|
|
793
|
+
|
|
794
|
+
|
|
795
|
+
Version 1.1.22
|
|
796
|
+
--------------
|
|
797
|
+
|
|
798
|
+
Released on May 16, 2025.
|
|
799
|
+
|
|
800
|
+
- Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
|
|
801
|
+
caused a `500 Internal Server Error` when the received activity had
|
|
802
|
+
an invalid JSON-LD syntax. Now it logs the error and responds with
|
|
803
|
+
a `400 Bad Request` error instead. [[#232]]
|
|
804
|
+
|
|
805
|
+
- The `exportJwk()` function now populates the `alg` property of a returned
|
|
806
|
+
`JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
|
|
807
|
+
|
|
808
|
+
|
|
734
809
|
Version 1.1.21
|
|
735
810
|
--------------
|
|
736
811
|
|
|
@@ -1160,6 +1235,33 @@ Released on October 20, 2024.
|
|
|
1160
1235
|
[#150]: https://github.com/fedify-dev/fedify/issues/150
|
|
1161
1236
|
|
|
1162
1237
|
|
|
1238
|
+
Version 1.0.26
|
|
1239
|
+
--------------
|
|
1240
|
+
|
|
1241
|
+
Released on June 30, 2025.
|
|
1242
|
+
|
|
1243
|
+
- Fixed JSON-LD serialization of the `Question.voters` property to correctly
|
|
1244
|
+
serialize as a plain number (e.g., `"votersCount": 123`) instead of as a
|
|
1245
|
+
typed literal object (e.g., `"votersCount":{"type":"xsd:nonNegativeInteger",
|
|
1246
|
+
"@value":123}`).
|
|
1247
|
+
|
|
1248
|
+
|
|
1249
|
+
Version 1.0.25
|
|
1250
|
+
--------------
|
|
1251
|
+
|
|
1252
|
+
Released on May 16, 2025.
|
|
1253
|
+
|
|
1254
|
+
- Fixed a bug where inbox handler had thrown a `jsonld.SyntaxError` which
|
|
1255
|
+
caused a `500 Internal Server Error` when the received activity had
|
|
1256
|
+
an invalid JSON-LD syntax. Now it logs the error and responds with
|
|
1257
|
+
a `400 Bad Request` error instead. [[#232]]
|
|
1258
|
+
|
|
1259
|
+
- The `exportJwk()` function now populates the `alg` property of a returned
|
|
1260
|
+
`JsonWebKey` object with `"Ed25519"` if the input key is an Ed25519 key.
|
|
1261
|
+
|
|
1262
|
+
[#232]: https://github.com/fedify-dev/fedify/issues/232
|
|
1263
|
+
|
|
1264
|
+
|
|
1163
1265
|
Version 1.0.24
|
|
1164
1266
|
--------------
|
|
1165
1267
|
|
package/esm/deno.js
CHANGED
|
@@ -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/
|
|
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,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.
|
|
3
|
+
import { accepts } from "../deps/jsr.io/@std/http/1.0.18/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
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
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) {
|
package/esm/nodeinfo/client.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getLogger } from "@logtape/logtape";
|
|
2
|
-
import { parse } from "../deps/jsr.io/@std/semver/1.0.
|
|
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 = {}) {
|
package/esm/nodeinfo/mod.js
CHANGED
|
@@ -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.
|
|
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";
|
package/esm/nodeinfo/types.js
CHANGED
package/esm/runtime/key.js
CHANGED
|
@@ -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.
|
|
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
|
+
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
|
-
|
|
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.
|
package/esm/vocab/announce.yaml
CHANGED
|
@@ -16,7 +16,9 @@ defaultContext:
|
|
|
16
16
|
misskey: "https://misskey-hub.net/ns#"
|
|
17
17
|
fedibird: "http://fedibird.com/ns#"
|
|
18
18
|
sensitive: "as:sensitive"
|
|
19
|
-
votersCount:
|
|
19
|
+
votersCount:
|
|
20
|
+
"@id": "toot:votersCount"
|
|
21
|
+
"@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
|
|
20
22
|
Emoji: "toot:Emoji"
|
|
21
23
|
Hashtag: "as:Hashtag"
|
|
22
24
|
quoteUrl: "as:quoteUrl"
|
package/esm/vocab/create.yaml
CHANGED
|
@@ -13,7 +13,9 @@ defaultContext:
|
|
|
13
13
|
misskey: "https://misskey-hub.net/ns#"
|
|
14
14
|
fedibird: "http://fedibird.com/ns#"
|
|
15
15
|
sensitive: "as:sensitive"
|
|
16
|
-
votersCount:
|
|
16
|
+
votersCount:
|
|
17
|
+
"@id": "toot:votersCount"
|
|
18
|
+
"@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
|
|
17
19
|
Emoji: "toot:Emoji"
|
|
18
20
|
Hashtag: "as:Hashtag"
|
|
19
21
|
ChatMessage: "http://litepub.social/ns#ChatMessage"
|
package/esm/vocab/delete.yaml
CHANGED
|
@@ -15,7 +15,9 @@ defaultContext:
|
|
|
15
15
|
misskey: "https://misskey-hub.net/ns#"
|
|
16
16
|
fedibird: "http://fedibird.com/ns#"
|
|
17
17
|
sensitive: "as:sensitive"
|
|
18
|
-
votersCount:
|
|
18
|
+
votersCount:
|
|
19
|
+
"@id": "toot:votersCount"
|
|
20
|
+
"@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
|
|
19
21
|
Emoji: "toot:Emoji"
|
|
20
22
|
Hashtag: "as:Hashtag"
|
|
21
23
|
ChatMessage: "http://litepub.social/ns#ChatMessage"
|
package/esm/vocab/lookup.js
CHANGED
|
@@ -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.
|
|
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";
|
package/esm/vocab/question.yaml
CHANGED
|
@@ -14,85 +14,87 @@ description: |
|
|
|
14
14
|
used to express possible answers, but a Question object *must not* have both
|
|
15
15
|
properties.
|
|
16
16
|
defaultContext:
|
|
17
|
-
- "https://w3id.org/identity/v1"
|
|
18
|
-
- "https://www.w3.org/ns/activitystreams"
|
|
19
|
-
- "https://w3id.org/security/data-integrity/v1"
|
|
20
|
-
- toot: "http://joinmastodon.org/ns#"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
17
|
+
- "https://w3id.org/identity/v1"
|
|
18
|
+
- "https://www.w3.org/ns/activitystreams"
|
|
19
|
+
- "https://w3id.org/security/data-integrity/v1"
|
|
20
|
+
- toot: "http://joinmastodon.org/ns#"
|
|
21
|
+
misskey: "https://misskey-hub.net/ns#"
|
|
22
|
+
fedibird: "http://fedibird.com/ns#"
|
|
23
|
+
sensitive: "as:sensitive"
|
|
24
|
+
votersCount:
|
|
25
|
+
"@id": "toot:votersCount"
|
|
26
|
+
"@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
|
|
27
|
+
Emoji: "toot:Emoji"
|
|
28
|
+
Hashtag: "as:Hashtag"
|
|
29
|
+
quoteUrl: "as:quoteUrl"
|
|
30
|
+
_misskey_quote: "misskey:_misskey_quote"
|
|
31
|
+
quoteUri: "fedibird:quoteUri"
|
|
30
32
|
|
|
31
33
|
properties:
|
|
32
|
-
- pluralName: exclusiveOptions
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
34
|
+
- pluralName: exclusiveOptions
|
|
35
|
+
singularName: exclusiveOption
|
|
36
|
+
singularAccessor: false
|
|
37
|
+
compactName: oneOf
|
|
38
|
+
uri: "https://www.w3.org/ns/activitystreams#oneOf"
|
|
39
|
+
description: |
|
|
40
|
+
Identifies an exclusive option for a Question. Use of `exclusiveOptions`
|
|
41
|
+
implies that the Question can have only a single answer. To indicate that
|
|
42
|
+
a Question can have multiple answers, use `inclusiveOptions`.
|
|
43
|
+
range:
|
|
44
|
+
- "https://www.w3.org/ns/activitystreams#Object"
|
|
43
45
|
|
|
44
|
-
- pluralName: inclusiveOptions
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
46
|
+
- pluralName: inclusiveOptions
|
|
47
|
+
singularName: inclusiveOption
|
|
48
|
+
singularAccessor: false
|
|
49
|
+
compactName: anyOf
|
|
50
|
+
uri: "https://www.w3.org/ns/activitystreams#anyOf"
|
|
51
|
+
description: |
|
|
52
|
+
Identifies an inclusive option for a Question. Use of `inclusiveOptions`
|
|
53
|
+
implies that the Question can have multiple answers. To indicate that
|
|
54
|
+
a Question can have only one answer, use `exclusiveOptions`.
|
|
55
|
+
range:
|
|
56
|
+
- "https://www.w3.org/ns/activitystreams#Object"
|
|
55
57
|
|
|
56
|
-
- singularName: closed
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
58
|
+
- singularName: closed
|
|
59
|
+
functional: true
|
|
60
|
+
compactName: closed
|
|
61
|
+
uri: "https://www.w3.org/ns/activitystreams#closed"
|
|
62
|
+
description: |
|
|
63
|
+
Indicates that a question has been closed, and answers are no longer
|
|
64
|
+
accepted.
|
|
65
|
+
range:
|
|
66
|
+
- "http://www.w3.org/2001/XMLSchema#dateTime"
|
|
67
|
+
- "http://www.w3.org/2001/XMLSchema#boolean"
|
|
66
68
|
|
|
67
|
-
- singularName: voters
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
69
|
+
- singularName: voters
|
|
70
|
+
functional: true
|
|
71
|
+
compactName: votersCount
|
|
72
|
+
uri: "http://joinmastodon.org/ns#votersCount"
|
|
73
|
+
description: |
|
|
74
|
+
How many people have voted in the poll. Distinct from how many votes have
|
|
75
|
+
been cast (in the case of multiple-choice polls).
|
|
76
|
+
range:
|
|
77
|
+
- "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
|
|
76
78
|
|
|
77
|
-
- singularName: quoteUrl
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
79
|
+
- singularName: quoteUrl
|
|
80
|
+
functional: true
|
|
81
|
+
compactName: quoteUrl
|
|
82
|
+
uri: "https://www.w3.org/ns/activitystreams#quoteUrl"
|
|
83
|
+
redundantProperties:
|
|
84
|
+
- compactName: _misskey_quote
|
|
85
|
+
uri: "https://misskey-hub.net/ns#_misskey_quote"
|
|
86
|
+
- compactName: quoteUri
|
|
87
|
+
uri: "http://fedibird.com/ns#quoteUri"
|
|
88
|
+
description: |
|
|
89
|
+
The URI of the ActivityStreams object that this object quotes.
|
|
88
90
|
|
|
89
|
-
|
|
91
|
+
This property sets three JSON-LD properties at once under the hood:
|
|
90
92
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
93
|
+
1. https://www.w3.org/ns/activitystreams#quoteUrl
|
|
94
|
+
2. https://misskey-hub.net/ns#_misskey_quote
|
|
95
|
+
3. http://fedibird.com/ns#quoteUri
|
|
94
96
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
When a JSON-LD object is parsed, this property is filled with one of
|
|
98
|
+
the values of those three properties in order.
|
|
99
|
+
range:
|
|
100
|
+
- "fedify:url"
|
package/esm/vocab/update.yaml
CHANGED
|
@@ -37,7 +37,9 @@ defaultContext:
|
|
|
37
37
|
suspended: "toot:suspended"
|
|
38
38
|
memorial: "toot:memorial"
|
|
39
39
|
indexable: "toot:indexable"
|
|
40
|
-
votersCount:
|
|
40
|
+
votersCount:
|
|
41
|
+
"@id": "toot:votersCount"
|
|
42
|
+
"@type": "http://www.w3.org/2001/XMLSchema#nonNegativeInteger"
|
|
41
43
|
Emoji: "toot:Emoji"
|
|
42
44
|
Hashtag: "as:Hashtag"
|
|
43
45
|
schema: "http://schema.org#"
|