@fedify/fedify 1.2.10 → 1.2.12
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 +110 -0
- package/esm/deps/jsr.io/@std/async/{1.0.9 → 1.0.10}/delay.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/1.0.5/_types.js +2 -0
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/concat.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/copy.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/ends_with.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/equals.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/includes_needle.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/index_of_needle.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/last_index_of_needle.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/mod.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/repeat.js +1 -1
- package/esm/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/starts_with.js +1 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.7/_types.js +2 -0
- package/esm/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/_validate_binary_like.js +1 -1
- package/esm/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/base64.js +1 -1
- package/esm/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/base64url.js +1 -1
- package/esm/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/hex.js +1 -1
- package/esm/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/common.js +1 -1
- package/esm/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/encoding.js +1 -1
- package/esm/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/language.js +1 -1
- package/esm/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/media_type.js +1 -1
- package/esm/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/negotiation.js +1 -1
- package/esm/federation/collection.js +1 -1
- package/esm/federation/handler.js +1 -1
- package/esm/runtime/key.js +4 -4
- package/esm/runtime/url.js +7 -1
- package/esm/sig/http.js +2 -2
- package/esm/sig/ld.js +2 -2
- package/esm/vocab/lookup.js +1 -1
- package/esm/vocab/vocab.js +408 -264
- package/esm/webfinger/lookup.js +21 -1
- package/package.json +3 -3
- package/types/deps/jsr.io/@std/async/1.0.10/delay.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/bytes/1.0.5/_types.d.ts +9 -0
- package/types/deps/jsr.io/@std/bytes/1.0.5/_types.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/concat.d.ts +3 -1
- package/types/deps/jsr.io/@std/bytes/1.0.5/concat.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/copy.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/ends_with.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/equals.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/includes_needle.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/index_of_needle.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/last_index_of_needle.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/mod.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/repeat.d.ts +3 -1
- package/types/deps/jsr.io/@std/bytes/1.0.5/repeat.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/starts_with.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/encoding/1.0.7/_types.d.ts +9 -0
- package/types/deps/jsr.io/@std/encoding/1.0.7/_types.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/_validate_binary_like.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/base64.d.ts +3 -1
- package/types/deps/jsr.io/@std/encoding/1.0.7/base64.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/base64url.d.ts +3 -1
- package/types/deps/jsr.io/@std/encoding/1.0.7/base64url.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/hex.d.ts +3 -1
- package/types/deps/jsr.io/@std/encoding/1.0.7/hex.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/common.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/encoding.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/language.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/media_type.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/negotiation.d.ts.map +1 -1
- package/types/runtime/url.d.ts.map +1 -1
- package/types/vocab/vocab.d.ts +18 -38
- package/types/vocab/vocab.d.ts.map +1 -1
- package/types/webfinger/lookup.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/async/1.0.9/delay.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/bytes/1.0.4/concat.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/bytes/1.0.4/repeat.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/encoding/1.0.6/base64.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/encoding/1.0.6/base64url.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/encoding/1.0.6/hex.d.ts.map +0 -1
- /package/types/deps/jsr.io/@std/async/{1.0.9 → 1.0.10}/delay.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/copy.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/ends_with.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/equals.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/includes_needle.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/index_of_needle.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/last_index_of_needle.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/mod.d.ts +0 -0
- /package/types/deps/jsr.io/@std/bytes/{1.0.4 → 1.0.5}/starts_with.d.ts +0 -0
- /package/types/deps/jsr.io/@std/encoding/{1.0.6 → 1.0.7}/_validate_binary_like.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/common.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/encoding.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/language.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/_negotiation/media_type.d.ts +0 -0
- /package/types/deps/jsr.io/@std/http/{1.0.12 → 1.0.13}/negotiation.d.ts +0 -0
package/CHANGES.md
CHANGED
@@ -3,6 +3,42 @@
|
|
3
3
|
Fedify changelog
|
4
4
|
================
|
5
5
|
|
6
|
+
Version 1.2.12
|
7
|
+
--------------
|
8
|
+
|
9
|
+
Released on February 10, 2025.
|
10
|
+
|
11
|
+
- Fixed a bug with nested object hydration in Activity Vocabulary API where
|
12
|
+
deeply nested properties (like `Object.getAttribution()` on
|
13
|
+
`Activity.getObject()`) were't being properly hydrated during `toJsonLd()`
|
14
|
+
calls. Previously, subsequent calls to `toJsonLd()` on nested objects could
|
15
|
+
result in inconsistent JSON-LD output where nested objects remained as URLs
|
16
|
+
instead of being fully expanded.
|
17
|
+
|
18
|
+
|
19
|
+
Version 1.2.11
|
20
|
+
--------------
|
21
|
+
|
22
|
+
Released on January 21, 2025.
|
23
|
+
|
24
|
+
- Fixed several security vulnerabilities of the `lookupWebFinger()` function.
|
25
|
+
[[CVE-2025-23221]]
|
26
|
+
|
27
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
28
|
+
had followed the infinite number of redirects, which could lead to
|
29
|
+
a denial of service attack. Now it follows up to 5 redirects.
|
30
|
+
|
31
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
32
|
+
had followed the redirects to other than the HTTP/HTTPS schemes, which
|
33
|
+
could lead to a security breach. Now it follows only the same scheme
|
34
|
+
as the original request.
|
35
|
+
|
36
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
37
|
+
had followed the redirects to the private network addresses, which
|
38
|
+
could lead to a SSRF attack. Now it follows only the public network
|
39
|
+
addresses.
|
40
|
+
|
41
|
+
|
6
42
|
Version 1.2.10
|
7
43
|
--------------
|
8
44
|
|
@@ -227,6 +263,42 @@ Released on October 31, 2024.
|
|
227
263
|
[#118]: https://github.com/dahlia/fedify/issues/118
|
228
264
|
|
229
265
|
|
266
|
+
Version 1.1.12
|
267
|
+
--------------
|
268
|
+
|
269
|
+
Released on February 10, 2025.
|
270
|
+
|
271
|
+
- Fixed a bug with nested object hydration in Activity Vocabulary API where
|
272
|
+
deeply nested properties (like `Object.getAttribution()` on
|
273
|
+
`Activity.getObject()`) were't being properly hydrated during `toJsonLd()`
|
274
|
+
calls. Previously, subsequent calls to `toJsonLd()` on nested objects could
|
275
|
+
result in inconsistent JSON-LD output where nested objects remained as URLs
|
276
|
+
instead of being fully expanded.
|
277
|
+
|
278
|
+
|
279
|
+
Version 1.1.11
|
280
|
+
--------------
|
281
|
+
|
282
|
+
Released on January 21, 2025.
|
283
|
+
|
284
|
+
- Fixed several security vulnerabilities of the `lookupWebFinger()` function.
|
285
|
+
[[CVE-2025-23221]]
|
286
|
+
|
287
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
288
|
+
had followed the infinite number of redirects, which could lead to
|
289
|
+
a denial of service attack. Now it follows up to 5 redirects.
|
290
|
+
|
291
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
292
|
+
had followed the redirects to other than the HTTP/HTTPS schemes, which
|
293
|
+
could lead to a security breach. Now it follows only the same scheme
|
294
|
+
as the original request.
|
295
|
+
|
296
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
297
|
+
had followed the redirects to the private network addresses, which
|
298
|
+
could lead to a SSRF attack. Now it follows only the public network
|
299
|
+
addresses.
|
300
|
+
|
301
|
+
|
230
302
|
Version 1.1.10
|
231
303
|
--------------
|
232
304
|
|
@@ -492,6 +564,44 @@ Released on October 20, 2024.
|
|
492
564
|
[#150]: https://github.com/dahlia/fedify/issues/150
|
493
565
|
|
494
566
|
|
567
|
+
Version 1.0.15
|
568
|
+
--------------
|
569
|
+
|
570
|
+
Released on February 10, 2025.
|
571
|
+
|
572
|
+
- Fixed a bug with nested object hydration in Activity Vocabulary API where
|
573
|
+
deeply nested properties (like `Object.getAttribution()` on
|
574
|
+
`Activity.getObject()`) were't being properly hydrated during `toJsonLd()`
|
575
|
+
calls. Previously, subsequent calls to `toJsonLd()` on nested objects could
|
576
|
+
result in inconsistent JSON-LD output where nested objects remained as URLs
|
577
|
+
instead of being fully expanded.
|
578
|
+
|
579
|
+
|
580
|
+
Version 1.0.14
|
581
|
+
--------------
|
582
|
+
|
583
|
+
Released on January 21, 2025.
|
584
|
+
|
585
|
+
- Fixed several security vulnerabilities of the `lookupWebFinger()` function.
|
586
|
+
[[CVE-2025-23221]]
|
587
|
+
|
588
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
589
|
+
had followed the infinite number of redirects, which could lead to
|
590
|
+
a denial of service attack. Now it follows up to 5 redirects.
|
591
|
+
|
592
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
593
|
+
had followed the redirects to other than the HTTP/HTTPS schemes, which
|
594
|
+
could lead to a security breach. Now it follows only the same scheme
|
595
|
+
as the original request.
|
596
|
+
|
597
|
+
- Fixed a security vulnerability where the `lookupWebFinger()` function
|
598
|
+
had followed the redirects to the private network addresses, which
|
599
|
+
could lead to a SSRF attack. Now it follows only the public network
|
600
|
+
addresses.
|
601
|
+
|
602
|
+
[CVE-2025-23221]: https://github.com/dahlia/fedify/security/advisories/GHSA-c59p-wq67-24wx
|
603
|
+
|
604
|
+
|
495
605
|
Version 1.0.13
|
496
606
|
--------------
|
497
607
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
// Copyright 2009 The Go Authors. All rights reserved.
|
2
2
|
// https://github.com/golang/go/blob/master/LICENSE
|
3
|
-
// Copyright 2018-
|
3
|
+
// Copyright 2018-2025 the Deno authors. MIT license.
|
4
4
|
// This module is browser compatible.
|
5
5
|
/**
|
6
6
|
* Port of the Go
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import * as dntShim from "../_dnt.shims.js";
|
2
2
|
import { getLogger } from "@logtape/logtape";
|
3
|
-
import { accepts } from "../deps/jsr.io/@std/http/1.0.
|
3
|
+
import { accepts } from "../deps/jsr.io/@std/http/1.0.13/negotiation.js";
|
4
4
|
import { verifyRequest } from "../sig/http.js";
|
5
5
|
import { detachSignature, verifyJsonLd } from "../sig/ld.js";
|
6
6
|
import { doesActorOwnKey } from "../sig/owner.js";
|
package/esm/runtime/key.js
CHANGED
@@ -1,9 +1,9 @@
|
|
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.
|
4
|
-
import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.
|
5
|
-
import { decodeBase64Url } from "../deps/jsr.io/@std/encoding/1.0.
|
6
|
-
import { decodeHex } from "../deps/jsr.io/@std/encoding/1.0.
|
3
|
+
import { concat } from "../deps/jsr.io/@std/bytes/1.0.5/concat.js";
|
4
|
+
import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.7/base64.js";
|
5
|
+
import { decodeBase64Url } from "../deps/jsr.io/@std/encoding/1.0.7/base64url.js";
|
6
|
+
import { decodeHex } from "../deps/jsr.io/@std/encoding/1.0.7/hex.js";
|
7
7
|
import { Integer, Sequence } from "asn1js";
|
8
8
|
import { decode, encode } from "multibase";
|
9
9
|
import { addPrefix, getCodeFromData, rmPrefix } from "multicodec";
|
package/esm/runtime/url.js
CHANGED
@@ -38,7 +38,13 @@ export async function validatePublicUrl(url) {
|
|
38
38
|
}
|
39
39
|
// To prevent SSRF via DNS rebinding, we need to resolve all IP addresses
|
40
40
|
// and ensure that they are all public:
|
41
|
-
|
41
|
+
let addresses;
|
42
|
+
try {
|
43
|
+
addresses = await lookup(hostname, { all: true });
|
44
|
+
}
|
45
|
+
catch {
|
46
|
+
addresses = [];
|
47
|
+
}
|
42
48
|
for (const { address, family } of addresses) {
|
43
49
|
if (family === 4 && !isValidPublicIPv4Address(address) ||
|
44
50
|
family === 6 && !isValidPublicIPv6Address(address) ||
|
package/esm/sig/http.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import * as dntShim from "../_dnt.shims.js";
|
2
2
|
import { getLogger } from "@logtape/logtape";
|
3
|
-
import { equals } from "../deps/jsr.io/@std/bytes/1.0.
|
4
|
-
import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.
|
3
|
+
import { equals } from "../deps/jsr.io/@std/bytes/1.0.5/mod.js";
|
4
|
+
import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.7/base64.js";
|
5
5
|
import { CryptographicKey } from "../vocab/vocab.js";
|
6
6
|
import { fetchKey, validateCryptoKey } from "./key.js";
|
7
7
|
/**
|
package/esm/sig/ld.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import * as dntShim from "../_dnt.shims.js";
|
2
2
|
import { getLogger } from "@logtape/logtape";
|
3
|
-
import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.
|
4
|
-
import { encodeHex } from "../deps/jsr.io/@std/encoding/1.0.
|
3
|
+
import { decodeBase64, encodeBase64 } from "../deps/jsr.io/@std/encoding/1.0.7/base64.js";
|
4
|
+
import { encodeHex } from "../deps/jsr.io/@std/encoding/1.0.7/hex.js";
|
5
5
|
// @ts-ignore TS7016
|
6
6
|
import jsonld from "jsonld";
|
7
7
|
import { fetchDocumentLoader, } from "../runtime/docloader.js";
|
package/esm/vocab/lookup.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import * as dntShim from "../_dnt.shims.js";
|
2
2
|
import { getLogger } from "@logtape/logtape";
|
3
|
-
import { delay } from "../deps/jsr.io/@std/async/1.0.
|
3
|
+
import { delay } from "../deps/jsr.io/@std/async/1.0.10/delay.js";
|
4
4
|
import { fetchDocumentLoader, } from "../runtime/docloader.js";
|
5
5
|
import { lookupWebFinger } from "../webfinger/lookup.js";
|
6
6
|
import { Object } from "./vocab.js";
|