@fedify/fedify 1.5.7 → 1.5.9
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 +140 -0
- package/esm/deno.js +1 -1
- package/esm/runtime/key.js +5 -2
- package/esm/sig/ld.js +2 -2
- package/esm/sig/proof.js +1 -1
- package/esm/vocab/vocab.js +266 -186
- package/package.json +1 -1
- package/types/runtime/key.d.ts.map +1 -1
- package/types/vocab/vocab.d.ts.map +1 -1
package/CHANGES.md
CHANGED
|
@@ -3,6 +3,29 @@
|
|
|
3
3
|
Fedify changelog
|
|
4
4
|
================
|
|
5
5
|
|
|
6
|
+
Version 1.5.9
|
|
7
|
+
-------------
|
|
8
|
+
|
|
9
|
+
Released on September 17, 2025.
|
|
10
|
+
|
|
11
|
+
- Improved the AT Protocol URI workaround to handle all DID methods and
|
|
12
|
+
edge cases. The fix now properly percent-encodes any authority component
|
|
13
|
+
in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
|
|
14
|
+
beyond just `did:plc`. Also handles URIs without path components
|
|
15
|
+
correctly. [[#436]]
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
Version 1.5.8
|
|
19
|
+
-------------
|
|
20
|
+
|
|
21
|
+
Released on September 17, 2025.
|
|
22
|
+
|
|
23
|
+
- Added a temporary workaround for invalid AT Protocol URIs from BridgyFed.
|
|
24
|
+
URIs like `at://did:plc:...` that violate RFC 3986 URI syntax are now
|
|
25
|
+
automatically URL-encoded to `at://did%3Aplc%3A...` to prevent parsing
|
|
26
|
+
failures when processing bridged Bluesky content. [[#436]]
|
|
27
|
+
|
|
28
|
+
|
|
6
29
|
Version 1.5.7
|
|
7
30
|
-------------
|
|
8
31
|
|
|
@@ -214,6 +237,29 @@ Released on March 28, 2025.
|
|
|
214
237
|
[multibase]: https://github.com/multiformats/js-multibase
|
|
215
238
|
|
|
216
239
|
|
|
240
|
+
Version 1.4.17
|
|
241
|
+
--------------
|
|
242
|
+
|
|
243
|
+
Released on September 17, 2025.
|
|
244
|
+
|
|
245
|
+
- Improved the AT Protocol URI workaround to handle all DID methods and
|
|
246
|
+
edge cases. The fix now properly percent-encodes any authority component
|
|
247
|
+
in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
|
|
248
|
+
beyond just `did:plc`. Also handles URIs without path components
|
|
249
|
+
correctly. [[#436]]
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
Version 1.4.16
|
|
253
|
+
--------------
|
|
254
|
+
|
|
255
|
+
Released on September 17, 2025.
|
|
256
|
+
|
|
257
|
+
- Added a temporary workaround for invalid AT Protocol URIs from BridgyFed.
|
|
258
|
+
URIs like `at://did:plc:...` that violate RFC 3986 URI syntax are now
|
|
259
|
+
automatically URL-encoded to `at://did%3Aplc%3A...` to prevent parsing
|
|
260
|
+
failures when processing bridged Bluesky content. [[#436]]
|
|
261
|
+
|
|
262
|
+
|
|
217
263
|
Version 1.4.15
|
|
218
264
|
--------------
|
|
219
265
|
|
|
@@ -500,6 +546,29 @@ Released on February 5, 2025.
|
|
|
500
546
|
[#195]: https://github.com/fedify-dev/fedify/issues/195
|
|
501
547
|
|
|
502
548
|
|
|
549
|
+
Version 1.3.24
|
|
550
|
+
--------------
|
|
551
|
+
|
|
552
|
+
Released on September 17, 2025.
|
|
553
|
+
|
|
554
|
+
- Improved the AT Protocol URI workaround to handle all DID methods and
|
|
555
|
+
edge cases. The fix now properly percent-encodes any authority component
|
|
556
|
+
in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
|
|
557
|
+
beyond just `did:plc`. Also handles URIs without path components
|
|
558
|
+
correctly. [[#436]]
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
Version 1.3.23
|
|
562
|
+
--------------
|
|
563
|
+
|
|
564
|
+
Released on September 17, 2025.
|
|
565
|
+
|
|
566
|
+
- Added a temporary workaround for invalid AT Protocol URIs from BridgyFed.
|
|
567
|
+
URIs like `at://did:plc:...` that violate RFC 3986 URI syntax are now
|
|
568
|
+
automatically URL-encoded to `at://did%3Aplc%3A...` to prevent parsing
|
|
569
|
+
failures when processing bridged Bluesky content. [[#436]]
|
|
570
|
+
|
|
571
|
+
|
|
503
572
|
Version 1.3.22
|
|
504
573
|
--------------
|
|
505
574
|
|
|
@@ -904,6 +973,29 @@ Released on November 30, 2024.
|
|
|
904
973
|
[#193]: https://github.com/fedify-dev/fedify/issues/193
|
|
905
974
|
|
|
906
975
|
|
|
976
|
+
Version 1.2.27
|
|
977
|
+
--------------
|
|
978
|
+
|
|
979
|
+
Released on September 17, 2025.
|
|
980
|
+
|
|
981
|
+
- Improved the AT Protocol URI workaround to handle all DID methods and
|
|
982
|
+
edge cases. The fix now properly percent-encodes any authority component
|
|
983
|
+
in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
|
|
984
|
+
beyond just `did:plc`. Also handles URIs without path components
|
|
985
|
+
correctly. [[#436]]
|
|
986
|
+
|
|
987
|
+
|
|
988
|
+
Version 1.2.26
|
|
989
|
+
--------------
|
|
990
|
+
|
|
991
|
+
Released on September 17, 2025.
|
|
992
|
+
|
|
993
|
+
- Added a temporary workaround for invalid AT Protocol URIs from BridgyFed.
|
|
994
|
+
URIs like `at://did:plc:...` that violate RFC 3986 URI syntax are now
|
|
995
|
+
automatically URL-encoded to `at://did%3Aplc%3A...` to prevent parsing
|
|
996
|
+
failures when processing bridged Bluesky content. [[#436]]
|
|
997
|
+
|
|
998
|
+
|
|
907
999
|
Version 1.2.25
|
|
908
1000
|
--------------
|
|
909
1001
|
|
|
@@ -1341,6 +1433,29 @@ Released on October 31, 2024.
|
|
|
1341
1433
|
[#118]: https://github.com/fedify-dev/fedify/issues/118
|
|
1342
1434
|
|
|
1343
1435
|
|
|
1436
|
+
Version 1.1.27
|
|
1437
|
+
--------------
|
|
1438
|
+
|
|
1439
|
+
Released on September 17, 2025.
|
|
1440
|
+
|
|
1441
|
+
- Improved the AT Protocol URI workaround to handle all DID methods and
|
|
1442
|
+
edge cases. The fix now properly percent-encodes any authority component
|
|
1443
|
+
in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
|
|
1444
|
+
beyond just `did:plc`. Also handles URIs without path components
|
|
1445
|
+
correctly. [[#436]]
|
|
1446
|
+
|
|
1447
|
+
|
|
1448
|
+
Version 1.1.26
|
|
1449
|
+
--------------
|
|
1450
|
+
|
|
1451
|
+
Released on September 17, 2025.
|
|
1452
|
+
|
|
1453
|
+
- Added a temporary workaround for invalid AT Protocol URIs from BridgyFed.
|
|
1454
|
+
URIs like `at://did:plc:...` that violate RFC 3986 URI syntax are now
|
|
1455
|
+
automatically URL-encoded to `at://did%3Aplc%3A...` to prevent parsing
|
|
1456
|
+
failures when processing bridged Bluesky content. [[#436]]
|
|
1457
|
+
|
|
1458
|
+
|
|
1344
1459
|
Version 1.1.25
|
|
1345
1460
|
--------------
|
|
1346
1461
|
|
|
@@ -1819,6 +1934,31 @@ Released on October 20, 2024.
|
|
|
1819
1934
|
[#150]: https://github.com/fedify-dev/fedify/issues/150
|
|
1820
1935
|
|
|
1821
1936
|
|
|
1937
|
+
Version 1.0.30
|
|
1938
|
+
--------------
|
|
1939
|
+
|
|
1940
|
+
Released on September 17, 2025.
|
|
1941
|
+
|
|
1942
|
+
- Improved the AT Protocol URI workaround to handle all DID methods and
|
|
1943
|
+
edge cases. The fix now properly percent-encodes any authority component
|
|
1944
|
+
in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
|
|
1945
|
+
beyond just `did:plc`. Also handles URIs without path components
|
|
1946
|
+
correctly. [[#436]]
|
|
1947
|
+
|
|
1948
|
+
|
|
1949
|
+
Version 1.0.29
|
|
1950
|
+
--------------
|
|
1951
|
+
|
|
1952
|
+
Released on September 17, 2025.
|
|
1953
|
+
|
|
1954
|
+
- Added a temporary workaround for invalid AT Protocol URIs from BridgyFed.
|
|
1955
|
+
URIs like `at://did:plc:...` that violate RFC 3986 URI syntax are now
|
|
1956
|
+
automatically URL-encoded to `at://did%3Aplc%3A...` to prevent parsing
|
|
1957
|
+
failures when processing bridged Bluesky content. [[#436]]
|
|
1958
|
+
|
|
1959
|
+
[#436]: https://github.com/fedify-dev/fedify/issues/436
|
|
1960
|
+
|
|
1961
|
+
|
|
1822
1962
|
Version 1.0.28
|
|
1823
1963
|
--------------
|
|
1824
1964
|
|
package/esm/deno.js
CHANGED
package/esm/runtime/key.js
CHANGED
|
@@ -94,11 +94,14 @@ export async function importMultibaseKey(key) {
|
|
|
94
94
|
format: "der",
|
|
95
95
|
type: "pkcs1",
|
|
96
96
|
});
|
|
97
|
-
const
|
|
97
|
+
const exported = keyObject.export({ type: "spki", format: "der" }).buffer;
|
|
98
|
+
const spki = exported instanceof Uint8Array
|
|
99
|
+
? exported
|
|
100
|
+
: new Uint8Array(exported);
|
|
98
101
|
return await dntShim.crypto.subtle.importKey("spki", new Uint8Array(spki), { name: "RSASSA-PKCS1-v1_5", hash: "SHA-256" }, true, ["verify"]);
|
|
99
102
|
}
|
|
100
103
|
else if (code === 0xed) { // ed25519-pub
|
|
101
|
-
return await dntShim.crypto.subtle.importKey("raw", content, "Ed25519", true, ["verify"]);
|
|
104
|
+
return await dntShim.crypto.subtle.importKey("raw", content.slice(), "Ed25519", true, ["verify"]);
|
|
102
105
|
}
|
|
103
106
|
else {
|
|
104
107
|
throw new TypeError("Unsupported key type: 0x" + code.toString(16));
|
package/esm/sig/ld.js
CHANGED
|
@@ -184,7 +184,7 @@ export async function verifySignature(jsonLd, options = {}) {
|
|
|
184
184
|
const encoder = new TextEncoder();
|
|
185
185
|
const message = sigOptsHash + docHash;
|
|
186
186
|
const messageBytes = encoder.encode(message);
|
|
187
|
-
const verified = await dntShim.crypto.subtle.verify("RSASSA-PKCS1-v1_5", key.publicKey, signature, messageBytes);
|
|
187
|
+
const verified = await dntShim.crypto.subtle.verify("RSASSA-PKCS1-v1_5", key.publicKey, signature.slice(), messageBytes);
|
|
188
188
|
if (verified)
|
|
189
189
|
return key;
|
|
190
190
|
if (cached) {
|
|
@@ -200,7 +200,7 @@ export async function verifySignature(jsonLd, options = {}) {
|
|
|
200
200
|
});
|
|
201
201
|
if (key == null)
|
|
202
202
|
return null;
|
|
203
|
-
const verified = await dntShim.crypto.subtle.verify("RSASSA-PKCS1-v1_5", key.publicKey, signature, messageBytes);
|
|
203
|
+
const verified = await dntShim.crypto.subtle.verify("RSASSA-PKCS1-v1_5", key.publicKey, signature.slice(), messageBytes);
|
|
204
204
|
return verified ? key : null;
|
|
205
205
|
}
|
|
206
206
|
logger.debug("Failed to verify with the fetched key {keyId}; " +
|
package/esm/sig/proof.js
CHANGED
|
@@ -209,7 +209,7 @@ async function verifyProofInternal(jsonLd, proof, options) {
|
|
|
209
209
|
"Ed25519 key:\n{keyId}", { proof, keyId: proof.verificationMethodId.href });
|
|
210
210
|
return null;
|
|
211
211
|
}
|
|
212
|
-
const verified = await dntShim.crypto.subtle.verify("Ed25519", publicKey.publicKey, proof.proofValue, digest);
|
|
212
|
+
const verified = await dntShim.crypto.subtle.verify("Ed25519", publicKey.publicKey, proof.proofValue.slice(), digest);
|
|
213
213
|
if (!verified) {
|
|
214
214
|
if (fetchedKey.cached) {
|
|
215
215
|
logger.debug("Failed to verify the proof with the cached key {keyId}; retrying " +
|