@fedify/fedify 1.11.0-dev.92 → 2.0.0-dev.109

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 (276) hide show
  1. package/README.md +34 -20
  2. package/dist/{actor-BSf1RMUB.js → actor-BZTYJWzP.js} +1 -1
  3. package/dist/{actor-B6ovE-4c.js → actor-Cm25mX8I.js} +220 -705
  4. package/dist/{actor-eeONG_sv.d.ts → actor-DqFajh9s.d.ts} +2 -2
  5. package/dist/{actor-DMxe8a2S.cjs → actor-ZEAP42Ry.cjs} +952 -1479
  6. package/dist/{actor-D190nbTD.d.cts → actor-f2NtjyCg.d.cts} +2 -2
  7. package/dist/{assert_rejects-DiIiJbZn.js → assert_rejects-Ce45JcFg.js} +1 -1
  8. package/dist/{assert_is_error-BPGph1Jx.js → assert_throws-BNXdRGWP.js} +31 -1
  9. package/dist/{builder-CvMAl7DC.js → builder-CWMz7B2F.js} +3 -4
  10. package/dist/{client-n6L4GtQL.d.cts → client-94iWEfQa.d.cts} +3 -75
  11. package/dist/{client-B3mQJNO7.d.ts → client-BsGzbnV-.d.ts} +3 -75
  12. package/dist/{client-gwmljOpB.js → client-pY7-3icS.js} +3 -22
  13. package/dist/compat/mod.d.cts +10 -12
  14. package/dist/compat/mod.d.ts +10 -12
  15. package/dist/compat/transformers.test.js +20 -20
  16. package/dist/{context-WJoO0SQs.d.cts → context-DBQ7nMCw.d.cts} +152 -27
  17. package/dist/{context-Cr5DIxq_.d.ts → context-mM0Nu5yo.d.ts} +152 -27
  18. package/dist/{authdocloader-D-v1l7De.js → docloader-BeSgUTFj.js} +17 -8
  19. package/dist/{esm-D55VN1Km.js → esm-bEFTDE2Q.js} +32 -17
  20. package/dist/federation/builder.test.js +9 -12
  21. package/dist/federation/collection.test.js +7 -9
  22. package/dist/federation/handler.test.js +28 -149
  23. package/dist/federation/idempotency.test.js +26 -27
  24. package/dist/federation/inbox.test.js +4 -6
  25. package/dist/federation/keycache.test.js +3 -4
  26. package/dist/federation/kv.test.js +6 -8
  27. package/dist/federation/middleware.test.js +270 -93
  28. package/dist/federation/mod.cjs +9 -11
  29. package/dist/federation/mod.d.cts +10 -12
  30. package/dist/federation/mod.d.ts +10 -12
  31. package/dist/federation/mod.js +9 -11
  32. package/dist/federation/mq.test.js +10 -10
  33. package/dist/federation/negotiation.test.js +26 -0
  34. package/dist/federation/retry.test.js +4 -5
  35. package/dist/federation/router.test.js +6 -8
  36. package/dist/federation/send.test.js +14 -16
  37. package/dist/{http-C9J5l76C.js → http-B8aQ8cUK.js} +256 -6
  38. package/dist/{http-C2x6TpEb.js → http-BF8Z1B-J.js} +2 -2
  39. package/dist/{http-DS9z_HzB.d.ts → http-BbO0ejuk.d.ts} +2 -2
  40. package/dist/{http-DOST1wn2.cjs → http-Dy7ENa6t.cjs} +289 -9
  41. package/dist/{http-C_1RU1U_.d.cts → http-M8k5mKc0.d.cts} +2 -2
  42. package/dist/{inbox-CeWZnS6I.js → inbox-CReikedp.js} +2 -7
  43. package/dist/{key-w6smvEIf.js → key-C85if3Ia.js} +3 -2
  44. package/dist/{keycache-DIPsFeDQ.js → keycache-BjRr5pe2.js} +1 -1
  45. package/dist/{keys-Bkp2oOoh.js → keys-do4GUlRT.js} +2 -1
  46. package/dist/{kv-DipCBaw2.d.ts → kv-BpJND1Hr.d.ts} +2 -1
  47. package/dist/{kv-BqEOXcZv.d.cts → kv-cD_d4hg-.d.cts} +2 -1
  48. package/dist/kv-cache-B4Y86MKl.js +122 -0
  49. package/dist/kv-cache-D7LFlByV.js +107 -0
  50. package/dist/kv-cache-qW5Mv9rV.cjs +134 -0
  51. package/dist/{ld-Dk2eojF9.js → ld-0Wpf83DM.js} +3 -2
  52. package/dist/{lookup-BI5Omd9s.cjs → lookup-Br9_ufLS.cjs} +134 -5
  53. package/dist/{lookup-Fk5eyxDk.js → lookup-Cj543vD4.js} +125 -2
  54. package/dist/{type-DMwrwZj3.js → lookup-D6_9czrD.js} +547 -5409
  55. package/dist/middleware-BPmn8w0u.cjs +15 -0
  56. package/dist/middleware-BXodt-Uj.js +26 -0
  57. package/dist/{middleware-BgI9lQ4P.js → middleware-Bq8dxPN6.js} +43 -146
  58. package/dist/{middleware-YNYjpKML.cjs → middleware-CDzg72dQ.cjs} +58 -104
  59. package/dist/middleware-DvA6x8_h.js +15 -0
  60. package/dist/{middleware-CNMzY5iD.js → middleware-hM1Z5nWM.js} +38 -84
  61. package/dist/{mod-DS4kJskR.d.ts → mod-BlVovdcy.d.ts} +2 -2
  62. package/dist/{mod-D5rfgGFE.d.cts → mod-BxRCHTz-.d.cts} +2 -2
  63. package/dist/{mod-CxMBb_dd.d.cts → mod-C58MZ7Wx.d.cts} +1 -1
  64. package/dist/mod-CAdoBu0x.d.ts +109 -0
  65. package/dist/{mod-BZfdiPBo.d.ts → mod-D5Z2tISD.d.ts} +3 -3
  66. package/dist/{mod-Dz5Y15Uy.d.cts → mod-DgxG-byT.d.cts} +3 -3
  67. package/dist/{mod-ChbckRnC.d.ts → mod-Ds0mpFZU.d.ts} +1 -1
  68. package/dist/{mod-OQfb33eH.d.cts → mod-Dy2fJtmN.d.cts} +2 -2
  69. package/dist/{mod-CnULG6Aa.d.ts → mod-GetHzY6F.d.ts} +2 -2
  70. package/dist/mod-fxr25Gv7.d.cts +107 -0
  71. package/dist/mod.cjs +19 -34
  72. package/dist/mod.d.cts +15 -17
  73. package/dist/mod.d.ts +15 -17
  74. package/dist/mod.js +14 -16
  75. package/dist/negotiation-C4nFufNk.js +71 -0
  76. package/dist/nodeinfo/client.test.js +30 -111
  77. package/dist/nodeinfo/handler.test.js +25 -26
  78. package/dist/nodeinfo/mod.cjs +3 -6
  79. package/dist/nodeinfo/mod.d.cts +3 -5
  80. package/dist/nodeinfo/mod.d.ts +3 -5
  81. package/dist/nodeinfo/mod.js +3 -4
  82. package/dist/nodeinfo/types.test.js +8 -15
  83. package/dist/otel/exporter.test.js +44 -70
  84. package/dist/otel/mod.cjs +17 -34
  85. package/dist/otel/mod.d.cts +5 -6
  86. package/dist/otel/mod.d.ts +5 -6
  87. package/dist/otel/mod.js +17 -34
  88. package/dist/{otel-Chy5T2Xh.js → otel-Bfe_BgOV.js} +1 -2
  89. package/dist/{owner-C_e5oYyI.js → owner-B2ziOXAb.js} +3 -2
  90. package/dist/{owner-AcrG3Xz1.d.cts → owner-B4HbyP8s.d.cts} +3 -3
  91. package/dist/{owner-8NMhXwJd.d.ts → owner-kQRGVXG1.d.ts} +3 -3
  92. package/dist/{proof-GRfyDBRU.js → proof-CN_ohUto.js} +2 -2
  93. package/dist/{proof-C5COc2tW.cjs → proof-CWQ0o-yI.cjs} +18 -17
  94. package/dist/{proof-BWebFnAY.js → proof-CXrz_moF.js} +5 -4
  95. package/dist/{send-Dd4ncQqL.js → send-Bt_ukOqY.js} +2 -2
  96. package/dist/sig/http.test.js +12 -13
  97. package/dist/sig/key.test.js +9 -11
  98. package/dist/sig/ld.test.js +8 -10
  99. package/dist/sig/mod.cjs +9 -11
  100. package/dist/sig/mod.d.cts +5 -7
  101. package/dist/sig/mod.d.ts +5 -7
  102. package/dist/sig/mod.js +5 -7
  103. package/dist/sig/owner.test.js +11 -13
  104. package/dist/sig/proof.test.js +13 -14
  105. package/dist/src/vocab/accept.yaml +1 -1
  106. package/dist/src/vocab/activity.yaml +1 -1
  107. package/dist/src/vocab/add.yaml +1 -1
  108. package/dist/src/vocab/announce.yaml +1 -1
  109. package/dist/src/vocab/application.yaml +1 -1
  110. package/dist/src/vocab/arrive.yaml +1 -1
  111. package/dist/src/vocab/article.yaml +1 -1
  112. package/dist/src/vocab/audio.yaml +1 -1
  113. package/dist/src/vocab/block.yaml +1 -1
  114. package/dist/src/vocab/chatmessage.yaml +1 -1
  115. package/dist/src/vocab/collection.yaml +1 -1
  116. package/dist/src/vocab/collectionpage.yaml +1 -1
  117. package/dist/src/vocab/create.yaml +1 -1
  118. package/dist/src/vocab/dataintegrityproof.yaml +1 -1
  119. package/dist/src/vocab/delete.yaml +1 -1
  120. package/dist/src/vocab/didservice.yaml +1 -1
  121. package/dist/src/vocab/dislike.yaml +1 -1
  122. package/dist/src/vocab/document.yaml +1 -1
  123. package/dist/src/vocab/emoji.yaml +1 -1
  124. package/dist/src/vocab/emojireact.yaml +1 -1
  125. package/dist/src/vocab/endpoints.yaml +1 -1
  126. package/dist/src/vocab/event.yaml +1 -1
  127. package/dist/src/vocab/export.yaml +1 -1
  128. package/dist/src/vocab/flag.yaml +1 -1
  129. package/dist/src/vocab/follow.yaml +1 -1
  130. package/dist/src/vocab/group.yaml +1 -1
  131. package/dist/src/vocab/hashtag.yaml +1 -1
  132. package/dist/src/vocab/ignore.yaml +1 -1
  133. package/dist/src/vocab/image.yaml +1 -1
  134. package/dist/src/vocab/intransitiveactivity.yaml +1 -1
  135. package/dist/src/vocab/invite.yaml +1 -1
  136. package/dist/src/vocab/join.yaml +1 -1
  137. package/dist/src/vocab/key.yaml +1 -1
  138. package/dist/src/vocab/leave.yaml +1 -1
  139. package/dist/src/vocab/like.yaml +1 -1
  140. package/dist/src/vocab/link.yaml +1 -1
  141. package/dist/src/vocab/listen.yaml +1 -1
  142. package/dist/src/vocab/mention.yaml +1 -1
  143. package/dist/src/vocab/move.yaml +1 -1
  144. package/dist/src/vocab/multikey.yaml +1 -1
  145. package/dist/src/vocab/note.yaml +1 -1
  146. package/dist/src/vocab/object.yaml +1 -1
  147. package/dist/src/vocab/offer.yaml +1 -1
  148. package/dist/src/vocab/orderedcollection.yaml +1 -1
  149. package/dist/src/vocab/orderedcollectionpage.yaml +1 -1
  150. package/dist/src/vocab/organization.yaml +1 -1
  151. package/dist/src/vocab/page.yaml +1 -1
  152. package/dist/src/vocab/person.yaml +1 -1
  153. package/dist/src/vocab/place.yaml +1 -1
  154. package/dist/src/vocab/profile.yaml +1 -1
  155. package/dist/src/vocab/propertyvalue.yaml +1 -1
  156. package/dist/src/vocab/question.yaml +1 -1
  157. package/dist/src/vocab/read.yaml +1 -1
  158. package/dist/src/vocab/reject.yaml +1 -1
  159. package/dist/src/vocab/relationship.yaml +1 -1
  160. package/dist/src/vocab/remove.yaml +1 -1
  161. package/dist/src/vocab/service.yaml +1 -1
  162. package/dist/src/vocab/source.yaml +1 -1
  163. package/dist/src/vocab/tentativeaccept.yaml +1 -1
  164. package/dist/src/vocab/tentativereject.yaml +1 -1
  165. package/dist/src/vocab/tombstone.yaml +1 -1
  166. package/dist/src/vocab/travel.yaml +1 -1
  167. package/dist/src/vocab/undo.yaml +1 -1
  168. package/dist/src/vocab/update.yaml +1 -1
  169. package/dist/src/vocab/video.yaml +1 -1
  170. package/dist/src/vocab/view.yaml +1 -1
  171. package/dist/testing/docloader.test.js +6 -8
  172. package/dist/testing/mod.d.ts +10 -119
  173. package/dist/testing/mod.js +2 -3
  174. package/dist/{testing-Dl_uo19c.js → testing-DcJ3qTSi.js} +1 -2
  175. package/dist/{types-CPPQlW2w.js → types-BtUjyi5y.js} +5 -166
  176. package/dist/{types-BIgY6c-l.js → types-C2XVl6gj.js} +1 -3
  177. package/dist/{types-tmeoSVgM.cjs → types-CWgzGaqk.cjs} +6 -179
  178. package/dist/{runtime/authdocloader.test.js → utils/docloader.test.js} +14 -15
  179. package/dist/utils/kv-cache.test.js +212 -0
  180. package/dist/utils/mod.cjs +12 -0
  181. package/dist/utils/mod.d.cts +5 -0
  182. package/dist/utils/mod.d.ts +7 -0
  183. package/dist/utils/mod.js +11 -0
  184. package/dist/vocab/actor.test.js +8 -10
  185. package/dist/vocab/lookup.test.js +8 -10
  186. package/dist/vocab/mod.cjs +3 -4
  187. package/dist/vocab/mod.d.cts +3 -5
  188. package/dist/vocab/mod.d.ts +3 -5
  189. package/dist/vocab/mod.js +3 -4
  190. package/dist/vocab/type.test.js +2 -3
  191. package/dist/vocab/vocab.test.js +7618 -1973
  192. package/dist/{vocab-BASuuzcJ.d.ts → vocab-BCWe1Ih5.d.ts} +9 -25
  193. package/dist/{vocab-DPMmFPJ1.d.cts → vocab-CeDBzu-f.d.cts} +9 -25
  194. package/dist/{vocab-kxSYUP1j.js → vocab-DZvBYZFH.js} +3 -3
  195. package/dist/{vocab-BnNSNBil.cjs → vocab-aeFsUPtk.cjs} +5 -5
  196. package/dist/webfinger/handler.test.js +24 -25
  197. package/dist/webfinger/lookup.test.js +7 -9
  198. package/dist/webfinger/mod.cjs +2 -3
  199. package/dist/webfinger/mod.d.cts +1 -3
  200. package/dist/webfinger/mod.d.ts +1 -3
  201. package/dist/webfinger/mod.js +2 -3
  202. package/package.json +33 -66
  203. package/dist/assert_throws-BOO88avQ.js +0 -39
  204. package/dist/authdocloader-Bn3Jg414.js +0 -52
  205. package/dist/authdocloader-DmTWTYA4.cjs +0 -58
  206. package/dist/denokv-D0nfNQ1x.js +0 -57
  207. package/dist/docloader-BucCRHZI.d.ts +0 -221
  208. package/dist/docloader-CgESja7v.js +0 -4835
  209. package/dist/docloader-ChxNLZAA.d.cts +0 -219
  210. package/dist/docloader-DJCmWQFv.cjs +0 -4901
  211. package/dist/key-BUDjxXee.js +0 -10
  212. package/dist/key-Bl-6W_Cx.cjs +0 -290
  213. package/dist/key-BluX4ryA.js +0 -260
  214. package/dist/key-DWZlSSOl.cjs +0 -10
  215. package/dist/key-zkx54yxw.js +0 -10
  216. package/dist/lookup-DFrFssJ8.js +0 -336
  217. package/dist/middleware-BmGndt7n.cjs +0 -17
  218. package/dist/middleware-CxG8rL1c.js +0 -26
  219. package/dist/middleware-etnOMaDs.js +0 -17
  220. package/dist/mod-CD7gfdq3.d.ts +0 -104
  221. package/dist/mod-JUhOKMHj.d.cts +0 -102
  222. package/dist/mq-B7R1Q-M5.d.cts +0 -140
  223. package/dist/mq-CRGm1e_F.d.ts +0 -143
  224. package/dist/nodeinfo/semver.test.js +0 -143
  225. package/dist/runtime/docloader.test.js +0 -599
  226. package/dist/runtime/key.test.d.ts +0 -3
  227. package/dist/runtime/key.test.js +0 -103
  228. package/dist/runtime/langstr.test.d.ts +0 -3
  229. package/dist/runtime/langstr.test.js +0 -40
  230. package/dist/runtime/link.test.d.ts +0 -3
  231. package/dist/runtime/link.test.js +0 -61
  232. package/dist/runtime/mod.cjs +0 -25
  233. package/dist/runtime/mod.d.cts +0 -6
  234. package/dist/runtime/mod.d.ts +0 -8
  235. package/dist/runtime/mod.js +0 -13
  236. package/dist/runtime/multibase/multibase.test.d.ts +0 -3
  237. package/dist/runtime/multibase/multibase.test.js +0 -358
  238. package/dist/runtime/url.test.d.ts +0 -3
  239. package/dist/runtime/url.test.js +0 -45
  240. package/dist/semver-dArNLkR9.js +0 -149
  241. package/dist/vocab/schema.yaml +0 -247
  242. package/dist/x/cfworkers.cjs +0 -100
  243. package/dist/x/cfworkers.d.cts +0 -59
  244. package/dist/x/cfworkers.d.ts +0 -61
  245. package/dist/x/cfworkers.js +0 -98
  246. package/dist/x/cfworkers.test.d.ts +0 -3
  247. package/dist/x/cfworkers.test.js +0 -179
  248. package/dist/x/hono.cjs +0 -61
  249. package/dist/x/hono.d.cts +0 -54
  250. package/dist/x/hono.d.ts +0 -56
  251. package/dist/x/hono.js +0 -60
  252. package/dist/x/sveltekit.cjs +0 -69
  253. package/dist/x/sveltekit.d.cts +0 -46
  254. package/dist/x/sveltekit.d.ts +0 -48
  255. package/dist/x/sveltekit.js +0 -68
  256. /package/dist/{assert_not_equals-f3m3epl3.js → assert_not_equals-C80BG-_5.js} +0 -0
  257. /package/dist/{collection-CSzG2j1P.js → collection-BzWsN9pB.js} +0 -0
  258. /package/dist/{nodeinfo/semver.test.d.ts → federation/negotiation.test.d.ts} +0 -0
  259. /package/dist/{federation-C15gGOh1.cjs → federation-CoW-KDKv.cjs} +0 -0
  260. /package/dist/{federation-K-xsO03l.js → federation-D0hkM4T7.js} +0 -0
  261. /package/dist/{mod-C2tOeRkN.d.cts → mod-B-hUPT2N.d.cts} +0 -0
  262. /package/dist/{mod-1pDWKvUL.d.ts → mod-CVgZgliM.d.ts} +0 -0
  263. /package/dist/{mod-FZd39qVq.d.cts → mod-CcDPcLJW.d.cts} +0 -0
  264. /package/dist/{mod-g0xFzAP9.d.ts → mod-bjzj5QIb.d.ts} +0 -0
  265. /package/dist/{nodeinfo-DfycQ8Wf.js → nodeinfo-BnthBobC.js} +0 -0
  266. /package/dist/{nodeinfo-Co9lJrWl.cjs → nodeinfo-CdN0rEnZ.cjs} +0 -0
  267. /package/dist/{retry-D4GJ670a.js → retry-CfF8Gn4d.js} +0 -0
  268. /package/dist/{runtime-DPYEDf-o.js → sig-C34-oHBl.js} +0 -0
  269. /package/dist/{runtime-C58AJWSv.cjs → sig-YYj5tCnr.cjs} +0 -0
  270. /package/dist/{std__assert-X-_kMxKM.js → std__assert-DWivtrGR.js} +0 -0
  271. /package/dist/{runtime → utils}/docloader.test.d.ts +0 -0
  272. /package/dist/{runtime/authdocloader.test.d.ts → utils/kv-cache.test.d.ts} +0 -0
  273. /package/dist/{sig-Cj3tk-ig.js → utils-D-Va7aXC.js} +0 -0
  274. /package/dist/{sig-ByHXzqUi.cjs → utils-DyRU1gdZ.cjs} +0 -0
  275. /package/dist/{webfinger-De_bU0iE.js → webfinger-C72Y8lrh.js} +0 -0
  276. /package/dist/{webfinger-BjOEdFPs.cjs → webfinger-vAtLmxOF.cjs} +0 -0
@@ -3,35 +3,34 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-DMwrwZj3.js";
6
+ import "../lookup-D6_9czrD.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-QzKcOQgP.js";
11
- import { createFederation, handleNodeInfo, handleNodeInfoJrd } from "../middleware-BgI9lQ4P.js";
12
- import { parseSemVer } from "../semver-dArNLkR9.js";
13
- import "../client-gwmljOpB.js";
14
- import "../lookup-DFrFssJ8.js";
15
- import "../types-BIgY6c-l.js";
16
- import "../actor-BSf1RMUB.js";
17
- import "../key-w6smvEIf.js";
18
- import "../http-C2x6TpEb.js";
19
- import "../authdocloader-D-v1l7De.js";
20
- import "../ld-Dk2eojF9.js";
21
- import "../owner-C_e5oYyI.js";
22
- import "../proof-GRfyDBRU.js";
23
- import "../inbox-CeWZnS6I.js";
24
- import "../builder-CvMAl7DC.js";
25
- import "../collection-CSzG2j1P.js";
26
- import "../keycache-DIPsFeDQ.js";
27
- import "../retry-D4GJ670a.js";
28
- import "../send-Dd4ncQqL.js";
29
- import { createRequestContext, test } from "../testing-Dl_uo19c.js";
30
- import "../std__assert-X-_kMxKM.js";
31
- import "../assert_rejects-DiIiJbZn.js";
32
- import "../assert_is_error-BPGph1Jx.js";
33
- import "../assert_not_equals-f3m3epl3.js";
34
- import "../assert_throws-BOO88avQ.js";
11
+ import { createFederation, handleNodeInfo, handleNodeInfoJrd } from "../middleware-Bq8dxPN6.js";
12
+ import "../client-pY7-3icS.js";
13
+ import "../types-C2XVl6gj.js";
14
+ import "../actor-BZTYJWzP.js";
15
+ import "../key-C85if3Ia.js";
16
+ import "../http-BF8Z1B-J.js";
17
+ import "../ld-0Wpf83DM.js";
18
+ import "../owner-B2ziOXAb.js";
19
+ import "../proof-CN_ohUto.js";
20
+ import "../docloader-BeSgUTFj.js";
21
+ import "../kv-cache-D7LFlByV.js";
22
+ import "../inbox-CReikedp.js";
23
+ import "../builder-CWMz7B2F.js";
24
+ import "../collection-BzWsN9pB.js";
25
+ import "../keycache-BjRr5pe2.js";
26
+ import "../negotiation-C4nFufNk.js";
27
+ import "../retry-CfF8Gn4d.js";
28
+ import "../send-Bt_ukOqY.js";
29
+ import { createRequestContext, test } from "../testing-DcJ3qTSi.js";
30
+ import "../std__assert-DWivtrGR.js";
31
+ import "../assert_rejects-Ce45JcFg.js";
32
+ import "../assert_throws-BNXdRGWP.js";
33
+ import "../assert_not_equals-C80BG-_5.js";
35
34
 
36
35
  //#region src/nodeinfo/handler.test.ts
37
36
  test("handleNodeInfo()", async () => {
@@ -46,7 +45,7 @@ test("handleNodeInfo()", async () => {
46
45
  const nodeInfoDispatcher = (_ctx) => ({
47
46
  software: {
48
47
  name: "test",
49
- version: parseSemVer("1.2.3")
48
+ version: "1.2.3"
50
49
  },
51
50
  protocols: ["activitypub"],
52
51
  usage: {
@@ -2,12 +2,9 @@
2
2
  const { Temporal } = require("@js-temporal/polyfill");
3
3
  const { URLPattern } = require("urlpattern-polyfill");
4
4
 
5
- require('../docloader-DJCmWQFv.cjs');
6
- const require_types = require('../types-tmeoSVgM.cjs');
7
- require('../nodeinfo-Co9lJrWl.cjs');
5
+ const require_types = require('../types-CWgzGaqk.cjs');
6
+ require('../nodeinfo-CdN0rEnZ.cjs');
8
7
 
9
- exports.formatSemVer = require_types.formatSemVer;
10
8
  exports.getNodeInfo = require_types.getNodeInfo;
11
9
  exports.nodeInfoToJson = require_types.nodeInfoToJson;
12
- exports.parseNodeInfo = require_types.parseNodeInfo;
13
- exports.parseSemVer = require_types.parseSemVer;
10
+ exports.parseNodeInfo = require_types.parseNodeInfo;
@@ -1,5 +1,3 @@
1
- import "../kv-BqEOXcZv.cjs";
2
- import "../docloader-ChxNLZAA.cjs";
3
- import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, SemVer, Services, Software, Usage, formatSemVer, getNodeInfo, nodeInfoToJson, parseNodeInfo, parseSemVer } from "../client-n6L4GtQL.cjs";
4
- import "../mod-FZd39qVq.cjs";
5
- export { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, SemVer, Services, Software, Usage, formatSemVer, getNodeInfo, nodeInfoToJson, parseNodeInfo, parseSemVer };
1
+ import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo } from "../client-94iWEfQa.cjs";
2
+ import "../mod-B-hUPT2N.cjs";
3
+ export { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo };
@@ -1,7 +1,5 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
- import "../kv-DipCBaw2.js";
4
- import "../docloader-BucCRHZI.js";
5
- import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, SemVer, Services, Software, Usage, formatSemVer, getNodeInfo, nodeInfoToJson, parseNodeInfo, parseSemVer } from "../client-B3mQJNO7.js";
6
- import "../mod-1pDWKvUL.js";
7
- export { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, SemVer, Services, Software, Usage, formatSemVer, getNodeInfo, nodeInfoToJson, parseNodeInfo, parseSemVer };
3
+ import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo } from "../client-BsGzbnV-.js";
4
+ import "../mod-CVgZgliM.js";
5
+ export { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo };
@@ -2,8 +2,7 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
- import "../docloader-CgESja7v.js";
6
- import { formatSemVer, getNodeInfo, nodeInfoToJson, parseNodeInfo, parseSemVer } from "../types-CPPQlW2w.js";
7
- import "../nodeinfo-DfycQ8Wf.js";
5
+ import { getNodeInfo, nodeInfoToJson, parseNodeInfo } from "../types-BtUjyi5y.js";
6
+ import "../nodeinfo-BnthBobC.js";
8
7
 
9
- export { formatSemVer, getNodeInfo, nodeInfoToJson, parseNodeInfo, parseSemVer };
8
+ export { getNodeInfo, nodeInfoToJson, parseNodeInfo };
@@ -3,30 +3,23 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-DMwrwZj3.js";
6
+ import "../lookup-D6_9czrD.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
- import "../semver-dArNLkR9.js";
11
- import "../lookup-DFrFssJ8.js";
12
- import { nodeInfoToJson } from "../types-BIgY6c-l.js";
13
- import { test } from "../testing-Dl_uo19c.js";
14
- import "../std__assert-X-_kMxKM.js";
15
- import "../assert_rejects-DiIiJbZn.js";
16
- import "../assert_is_error-BPGph1Jx.js";
17
- import "../assert_not_equals-f3m3epl3.js";
18
- import { assertThrows } from "../assert_throws-BOO88avQ.js";
10
+ import { nodeInfoToJson } from "../types-C2XVl6gj.js";
11
+ import { test } from "../testing-DcJ3qTSi.js";
12
+ import "../std__assert-DWivtrGR.js";
13
+ import "../assert_rejects-Ce45JcFg.js";
14
+ import { assertThrows } from "../assert_throws-BNXdRGWP.js";
15
+ import "../assert_not_equals-C80BG-_5.js";
19
16
 
20
17
  //#region src/nodeinfo/types.test.ts
21
18
  test("nodeInfoToJson()", () => {
22
19
  const validInfo = {
23
20
  software: {
24
21
  name: "software-name",
25
- version: {
26
- major: 1,
27
- minor: 2,
28
- patch: 3
29
- }
22
+ version: "1.2.3"
30
23
  },
31
24
  protocols: ["activitypub"],
32
25
  usage: {
@@ -3,18 +3,16 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-DMwrwZj3.js";
6
+ import "../lookup-D6_9czrD.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-QzKcOQgP.js";
11
- import "../lookup-DFrFssJ8.js";
12
- import { test } from "../testing-Dl_uo19c.js";
13
- import "../std__assert-X-_kMxKM.js";
14
- import "../assert_rejects-DiIiJbZn.js";
15
- import "../assert_is_error-BPGph1Jx.js";
16
- import "../assert_not_equals-f3m3epl3.js";
17
- import { assertThrows } from "../assert_throws-BOO88avQ.js";
11
+ import { test } from "../testing-DcJ3qTSi.js";
12
+ import "../std__assert-DWivtrGR.js";
13
+ import "../assert_rejects-Ce45JcFg.js";
14
+ import "../assert_throws-BNXdRGWP.js";
15
+ import "../assert_not_equals-C80BG-_5.js";
18
16
  import { getLogger } from "@logtape/logtape";
19
17
  import { SpanKind, SpanStatusCode, TraceFlags } from "@opentelemetry/api";
20
18
  import { ExportResultCode } from "@opentelemetry/core";
@@ -43,8 +41,9 @@ import { ExportResultCode } from "@opentelemetry/core";
43
41
  * ttl: Temporal.Duration.from({ hours: 1 }),
44
42
  * });
45
43
  *
46
- * const provider = new BasicTracerProvider();
47
- * provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
44
+ * const provider = new BasicTracerProvider({
45
+ * spanProcessors: [new SimpleSpanProcessor(exporter)],
46
+ * });
48
47
  * ```
49
48
  *
50
49
  * @example Querying stored traces
@@ -69,21 +68,16 @@ var FedifySpanExporter = class {
69
68
  #kv;
70
69
  #ttl;
71
70
  #keyPrefix;
72
- #useList;
73
71
  /**
74
72
  * Creates a new FedifySpanExporter.
75
73
  *
76
- * @param kv The KvStore to persist trace data to. Must support either
77
- * `list()` or `cas()` method.
74
+ * @param kv The KvStore to persist trace data to.
78
75
  * @param options Configuration options.
79
- * @throws {Error} If the KvStore supports neither `list()` nor `cas()`.
80
76
  */
81
77
  constructor(kv, options) {
82
- if (kv.list == null && kv.cas == null) throw new Error("KvStore must support either list() or cas() method to use FedifySpanExporter. Consider using a KvStore implementation that supports these operations, such as MemoryKvStore, RedisKvStore, PostgresKvStore, or SqliteKvStore.");
83
78
  this.#kv = kv;
84
79
  this.#ttl = options?.ttl;
85
80
  this.#keyPrefix = options?.keyPrefix ?? ["fedify", "traces"];
86
- this.#useList = kv.list != null;
87
81
  }
88
82
  /**
89
83
  * Exports spans to the KvStore.
@@ -116,7 +110,7 @@ var FedifySpanExporter = class {
116
110
  const spanContext = span.spanContext();
117
111
  const traceId = spanContext.traceId;
118
112
  const spanId = spanContext.spanId;
119
- const parentSpanId = span.parentSpanId;
113
+ const parentSpanId = span.parentSpanContext?.spanId;
120
114
  for (const event of span.events) if (event.name === "activitypub.activity.received") {
121
115
  const record = this.#extractInboundRecord(event, traceId, spanId, parentSpanId);
122
116
  if (record != null) records.push(record);
@@ -197,15 +191,13 @@ var FedifySpanExporter = class {
197
191
  }
198
192
  async #storeRecord(record) {
199
193
  const options = this.#ttl != null ? { ttl: this.#ttl } : void 0;
200
- if (this.#useList) {
201
- const key = [
202
- ...this.#keyPrefix,
203
- record.traceId,
204
- record.spanId
205
- ];
206
- await this.#kv.set(key, record, options);
207
- await this.#updateTraceSummary(record, options);
208
- } else await this.#storeWithCas(record, options);
194
+ const key = [
195
+ ...this.#keyPrefix,
196
+ record.traceId,
197
+ record.spanId
198
+ ];
199
+ await this.#kv.set(key, record, options);
200
+ await this.#updateTraceSummary(record, options);
209
201
  }
210
202
  async #setWithCasRetry(key, transform, options) {
211
203
  if (this.#kv.cas != null) for (let attempt = 0; attempt < 3; attempt++) {
@@ -240,11 +232,6 @@ var FedifySpanExporter = class {
240
232
  return summary;
241
233
  }, options);
242
234
  }
243
- async #storeWithCas(record, options) {
244
- const key = [...this.#keyPrefix, record.traceId];
245
- await this.#setWithCasRetry(key, (existing) => existing ? [...existing, record] : [record], options);
246
- await this.#updateTraceSummary(record, options);
247
- }
248
235
  /**
249
236
  * Gets all activity records for a specific trace ID.
250
237
  *
@@ -252,16 +239,10 @@ var FedifySpanExporter = class {
252
239
  * @returns An array of activity records belonging to the trace.
253
240
  */
254
241
  async getActivitiesByTraceId(traceId) {
255
- if (this.#useList) {
256
- const prefix = [...this.#keyPrefix, traceId];
257
- const records = [];
258
- for await (const entry of this.#kv.list(prefix)) records.push(entry.value);
259
- return records;
260
- } else {
261
- const key = [...this.#keyPrefix, traceId];
262
- const records = await this.#kv.get(key);
263
- return records ?? [];
264
- }
242
+ const prefix = [...this.#keyPrefix, traceId];
243
+ const records = [];
244
+ for await (const entry of this.#kv.list(prefix)) records.push(entry.value);
245
+ return records;
265
246
  }
266
247
  /**
267
248
  * Gets recent traces with summary information.
@@ -272,7 +253,7 @@ var FedifySpanExporter = class {
272
253
  async getRecentTraces(options) {
273
254
  const summaryPrefix = [...this.#keyPrefix, "_summaries"];
274
255
  const summaries = [];
275
- if (this.#kv.list != null) for await (const entry of this.#kv.list(summaryPrefix)) summaries.push(entry.value);
256
+ for await (const entry of this.#kv.list(summaryPrefix)) summaries.push(entry.value);
276
257
  summaries.sort((a, b) => b.timestamp.localeCompare(a.timestamp));
277
258
  if (options?.limit != null) return summaries.slice(0, options.limit);
278
259
  return summaries;
@@ -298,11 +279,16 @@ function createMockSpan(options) {
298
279
  spanId,
299
280
  traceFlags: TraceFlags.SAMPLED
300
281
  };
282
+ const parentSpanContext = options.parentSpanId ? {
283
+ traceId,
284
+ spanId: options.parentSpanId,
285
+ traceFlags: TraceFlags.SAMPLED
286
+ } : void 0;
301
287
  return {
302
288
  name: options.name ?? "test-span",
303
289
  kind: SpanKind.INTERNAL,
304
290
  spanContext: () => spanContext,
305
- parentSpanId: options.parentSpanId,
291
+ parentSpanContext,
306
292
  startTime: [17e8, 0],
307
293
  endTime: [1700000001, 0],
308
294
  status: { code: SpanStatusCode.OK },
@@ -313,12 +299,14 @@ function createMockSpan(options) {
313
299
  ended: true,
314
300
  resource: {
315
301
  attributes: {},
302
+ getRawAttributes: () => [],
316
303
  merge: () => ({
317
304
  attributes: {},
305
+ getRawAttributes: () => [],
318
306
  merge: () => null
319
307
  })
320
308
  },
321
- instrumentationLibrary: { name: "test" },
309
+ instrumentationScope: { name: "test" },
322
310
  droppedAttributesCount: 0,
323
311
  droppedEventsCount: 0,
324
312
  droppedLinksCount: 0
@@ -349,29 +337,11 @@ function createActivitySentEvent(options) {
349
337
  };
350
338
  }
351
339
  test("FedifySpanExporter", async (t) => {
352
- await t.step("constructor throws if KvStore has neither list() nor cas()", () => {
353
- const kv = {
354
- get: () => Promise.resolve(void 0),
355
- set: () => Promise.resolve(),
356
- delete: () => Promise.resolve()
357
- };
358
- assertThrows(() => new FedifySpanExporter(kv), Error, "KvStore must support either list() or cas()");
359
- });
360
340
  await t.step("constructor accepts KvStore with list()", () => {
361
341
  const kv = new MemoryKvStore();
362
342
  const exporter = new FedifySpanExporter(kv);
363
343
  assertEquals(exporter instanceof FedifySpanExporter, true);
364
344
  });
365
- await t.step("constructor accepts KvStore with cas() only", () => {
366
- const kv = {
367
- get: () => Promise.resolve(void 0),
368
- set: () => Promise.resolve(),
369
- delete: () => Promise.resolve(),
370
- cas: () => Promise.resolve(true)
371
- };
372
- const exporter = new FedifySpanExporter(kv);
373
- assertEquals(exporter instanceof FedifySpanExporter, true);
374
- });
375
345
  await t.step("export() stores inbound activity from span event", async () => {
376
346
  const kv = new MemoryKvStore();
377
347
  const exporter = new FedifySpanExporter(kv);
@@ -568,7 +538,7 @@ test("FedifySpanExporter", async (t) => {
568
538
  const exporter = new FedifySpanExporter(kv);
569
539
  await exporter.shutdown();
570
540
  });
571
- await t.step("works with cas()-only KvStore", async () => {
541
+ await t.step("works with custom KvStore implementation", async () => {
572
542
  const storedData = {};
573
543
  const kv = {
574
544
  get: (key) => {
@@ -585,14 +555,18 @@ test("FedifySpanExporter", async (t) => {
585
555
  delete storedData[k];
586
556
  return Promise.resolve();
587
557
  },
588
- cas: (key, expected, newValue) => {
589
- const k = JSON.stringify(key);
590
- const current = storedData[k];
591
- if (JSON.stringify(current) === JSON.stringify(expected)) {
592
- storedData[k] = newValue;
593
- return Promise.resolve(true);
558
+ async *list(prefix) {
559
+ for (const [encodedKey, value] of Object.entries(storedData)) {
560
+ const key = JSON.parse(encodedKey);
561
+ if (prefix != null) {
562
+ if (key.length < prefix.length) continue;
563
+ if (!prefix.every((p, i) => key[i] === p)) continue;
564
+ }
565
+ yield {
566
+ key,
567
+ value
568
+ };
594
569
  }
595
- return Promise.resolve(false);
596
570
  }
597
571
  };
598
572
  const exporter = new FedifySpanExporter(kv);
package/dist/otel/mod.cjs CHANGED
@@ -30,8 +30,9 @@ const __opentelemetry_core = require_chunk.__toESM(require("@opentelemetry/core"
30
30
  * ttl: Temporal.Duration.from({ hours: 1 }),
31
31
  * });
32
32
  *
33
- * const provider = new BasicTracerProvider();
34
- * provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
33
+ * const provider = new BasicTracerProvider({
34
+ * spanProcessors: [new SimpleSpanProcessor(exporter)],
35
+ * });
35
36
  * ```
36
37
  *
37
38
  * @example Querying stored traces
@@ -56,21 +57,16 @@ var FedifySpanExporter = class {
56
57
  #kv;
57
58
  #ttl;
58
59
  #keyPrefix;
59
- #useList;
60
60
  /**
61
61
  * Creates a new FedifySpanExporter.
62
62
  *
63
- * @param kv The KvStore to persist trace data to. Must support either
64
- * `list()` or `cas()` method.
63
+ * @param kv The KvStore to persist trace data to.
65
64
  * @param options Configuration options.
66
- * @throws {Error} If the KvStore supports neither `list()` nor `cas()`.
67
65
  */
68
66
  constructor(kv, options) {
69
- if (kv.list == null && kv.cas == null) throw new Error("KvStore must support either list() or cas() method to use FedifySpanExporter. Consider using a KvStore implementation that supports these operations, such as MemoryKvStore, RedisKvStore, PostgresKvStore, or SqliteKvStore.");
70
67
  this.#kv = kv;
71
68
  this.#ttl = options?.ttl;
72
69
  this.#keyPrefix = options?.keyPrefix ?? ["fedify", "traces"];
73
- this.#useList = kv.list != null;
74
70
  }
75
71
  /**
76
72
  * Exports spans to the KvStore.
@@ -103,7 +99,7 @@ var FedifySpanExporter = class {
103
99
  const spanContext = span.spanContext();
104
100
  const traceId = spanContext.traceId;
105
101
  const spanId = spanContext.spanId;
106
- const parentSpanId = span.parentSpanId;
102
+ const parentSpanId = span.parentSpanContext?.spanId;
107
103
  for (const event of span.events) if (event.name === "activitypub.activity.received") {
108
104
  const record = this.#extractInboundRecord(event, traceId, spanId, parentSpanId);
109
105
  if (record != null) records.push(record);
@@ -184,15 +180,13 @@ var FedifySpanExporter = class {
184
180
  }
185
181
  async #storeRecord(record) {
186
182
  const options = this.#ttl != null ? { ttl: this.#ttl } : void 0;
187
- if (this.#useList) {
188
- const key = [
189
- ...this.#keyPrefix,
190
- record.traceId,
191
- record.spanId
192
- ];
193
- await this.#kv.set(key, record, options);
194
- await this.#updateTraceSummary(record, options);
195
- } else await this.#storeWithCas(record, options);
183
+ const key = [
184
+ ...this.#keyPrefix,
185
+ record.traceId,
186
+ record.spanId
187
+ ];
188
+ await this.#kv.set(key, record, options);
189
+ await this.#updateTraceSummary(record, options);
196
190
  }
197
191
  async #setWithCasRetry(key, transform, options) {
198
192
  if (this.#kv.cas != null) for (let attempt = 0; attempt < 3; attempt++) {
@@ -227,11 +221,6 @@ var FedifySpanExporter = class {
227
221
  return summary;
228
222
  }, options);
229
223
  }
230
- async #storeWithCas(record, options) {
231
- const key = [...this.#keyPrefix, record.traceId];
232
- await this.#setWithCasRetry(key, (existing) => existing ? [...existing, record] : [record], options);
233
- await this.#updateTraceSummary(record, options);
234
- }
235
224
  /**
236
225
  * Gets all activity records for a specific trace ID.
237
226
  *
@@ -239,16 +228,10 @@ var FedifySpanExporter = class {
239
228
  * @returns An array of activity records belonging to the trace.
240
229
  */
241
230
  async getActivitiesByTraceId(traceId) {
242
- if (this.#useList) {
243
- const prefix = [...this.#keyPrefix, traceId];
244
- const records = [];
245
- for await (const entry of this.#kv.list(prefix)) records.push(entry.value);
246
- return records;
247
- } else {
248
- const key = [...this.#keyPrefix, traceId];
249
- const records = await this.#kv.get(key);
250
- return records ?? [];
251
- }
231
+ const prefix = [...this.#keyPrefix, traceId];
232
+ const records = [];
233
+ for await (const entry of this.#kv.list(prefix)) records.push(entry.value);
234
+ return records;
252
235
  }
253
236
  /**
254
237
  * Gets recent traces with summary information.
@@ -259,7 +242,7 @@ var FedifySpanExporter = class {
259
242
  async getRecentTraces(options) {
260
243
  const summaryPrefix = [...this.#keyPrefix, "_summaries"];
261
244
  const summaries = [];
262
- if (this.#kv.list != null) for await (const entry of this.#kv.list(summaryPrefix)) summaries.push(entry.value);
245
+ for await (const entry of this.#kv.list(summaryPrefix)) summaries.push(entry.value);
263
246
  summaries.sort((a, b) => b.timestamp.localeCompare(a.timestamp));
264
247
  if (options?.limit != null) return summaries.slice(0, options.limit);
265
248
  return summaries;
@@ -1,4 +1,4 @@
1
- import { KvKey, KvStore } from "../kv-BqEOXcZv.cjs";
1
+ import { KvKey, KvStore } from "../kv-cD_d4hg-.cjs";
2
2
  import { ReadableSpan, SpanExporter } from "@opentelemetry/sdk-trace-base";
3
3
  import { ExportResultCode } from "@opentelemetry/core";
4
4
 
@@ -161,8 +161,9 @@ interface GetRecentTracesOptions {
161
161
  * ttl: Temporal.Duration.from({ hours: 1 }),
162
162
  * });
163
163
  *
164
- * const provider = new BasicTracerProvider();
165
- * provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
164
+ * const provider = new BasicTracerProvider({
165
+ * spanProcessors: [new SimpleSpanProcessor(exporter)],
166
+ * });
166
167
  * ```
167
168
  *
168
169
  * @example Querying stored traces
@@ -188,10 +189,8 @@ declare class FedifySpanExporter implements SpanExporter {
188
189
  /**
189
190
  * Creates a new FedifySpanExporter.
190
191
  *
191
- * @param kv The KvStore to persist trace data to. Must support either
192
- * `list()` or `cas()` method.
192
+ * @param kv The KvStore to persist trace data to.
193
193
  * @param options Configuration options.
194
- * @throws {Error} If the KvStore supports neither `list()` nor `cas()`.
195
194
  */
196
195
  constructor(kv: KvStore, options?: FedifySpanExporterOptions);
197
196
  /**
@@ -1,6 +1,6 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
- import { KvKey, KvStore } from "../kv-DipCBaw2.js";
3
+ import { KvKey, KvStore } from "../kv-BpJND1Hr.js";
4
4
  import { ExportResultCode } from "@opentelemetry/core";
5
5
  import { ReadableSpan, SpanExporter } from "@opentelemetry/sdk-trace-base";
6
6
 
@@ -163,8 +163,9 @@ interface GetRecentTracesOptions {
163
163
  * ttl: Temporal.Duration.from({ hours: 1 }),
164
164
  * });
165
165
  *
166
- * const provider = new BasicTracerProvider();
167
- * provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
166
+ * const provider = new BasicTracerProvider({
167
+ * spanProcessors: [new SimpleSpanProcessor(exporter)],
168
+ * });
168
169
  * ```
169
170
  *
170
171
  * @example Querying stored traces
@@ -190,10 +191,8 @@ declare class FedifySpanExporter implements SpanExporter {
190
191
  /**
191
192
  * Creates a new FedifySpanExporter.
192
193
  *
193
- * @param kv The KvStore to persist trace data to. Must support either
194
- * `list()` or `cas()` method.
194
+ * @param kv The KvStore to persist trace data to.
195
195
  * @param options Configuration options.
196
- * @throws {Error} If the KvStore supports neither `list()` nor `cas()`.
197
196
  */
198
197
  constructor(kv: KvStore, options?: FedifySpanExporterOptions);
199
198
  /**