fix: Bun + Deno runtime compatibility audit#37
Conversation
|
@isaacCodes1 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
|
COMPAT.md, the edge runtime guide, the git fetch origin
git rebase origin/develop
git push --force-with-leaseResolve by keeping develop's versions for the files you didn't intend to touch, keep your |
c7590e2 to
8f7085b
Compare
8f7085b to
1ccbbb6
Compare
|
Rebased onto upstream/develop and resolved the Stellar announcements conflict by keeping the new range/cursor logic while preserving the edge-safe lazy import fix. @truthixify |
|
Clean rebase, COMPAT.md + edge-runtime guide + the announcements.ts dynamic-import fix all land cleanly. Merging. Thanks @isaacCodes1. |
Overview
This PR adds a runtime compatibility audit for Bun, Deno, Cloudflare Workers, and Vercel Edge, and fixes the Stellar announcement parser so it no longer uses
require()inside ESM. It also documents the current runtime matrix and adds an edge-runtime guide for using the SDK outside Node.Related Issue
Closes #23
Changes
⚙️ Stellar Runtime Fix
[MODIFY]
src/chains/stellar/announcements.tsReplaced the inline
require('@stellar/stellar-sdk')path with a lazyimport()loader.Kept the parser compatible with ESM and edge runtimes.
[ADD]
test/chains/stellar/scan.test.tsAdded a regression test that exercises
fetchAnnouncements().Verified the Stellar parser path works without
require().🌐 Compatibility Documentation
[ADD]
COMPAT.mdAdded a runtime matrix for Node 20/22, Bun, Deno, Cloudflare Workers, and Vercel Edge.
Documented working, partial, and caveated runtime states.
[ADD]
docs/running-on-the-edge.mdAdded guidance for Bun, Deno, Cloudflare Workers, and Vercel Edge.
Included import examples and notes about optional peer dependencies.
[MODIFY]
README.mdLinked the new compatibility matrix and edge-runtime guide from the main README.
🧪 CI
.github/workflows/ci.ymlVerification Results
require()inside ESMHow to Test