GitShow/denoland/deno
denoland

deno

A modern runtime for JavaScript and TypeScript.

by denoland
denojavascriptrusttypescript
Star on GitHubForkWebsite

Rust

108.3k stars6.3k forks1.3k contributorsActive · 1d agoSince 2018v2.9.5MIT

Meet the team

See all 1272 on GitHub →
bartlomieju
bartlomieju3.2k contributions
dsherret
dsherret1.8k contributions
ry
ry1.4k contributions
littledivy
littledivy852 contributions
nayeemrmn
nayeemrmn628 contributions
lucacasonato
lucacasonato514 contributions
nathanwhit
nathanwhit501 contributions
kt3k
kt3k452 contributions

Languages

View on GitHub →
Rust62.1%
TypeScript26.1%
JavaScript10.4%
C1.3%
HTML0%
CSS0%

Commit activity

Last 12 weeks · 1137 commits

Full graph →

Community health

5 of 6 standards met

Community profile →
100
✓README✓License✓Contributing✓Code of Conduct○Issue Template✓PR Template

Recent PRs & issues

Active · Last activity 1d ago
See all on GitHub →
Thyra
Packages using the Node-API crash on Deno Desktop (Linux + Windows)OpenIssue

This crashes when built with but interestingly works with and also . Error message: I compiled this on Linux and also cross-compiled to Windows and macOS and tested on these systems; interestingly the macOS one runs fine but the Windows one crashes with the same problem. My use case is that I'd like to use an SQLite library with encryption but they all use the Node-API (Turso does, too); I'm assuming this affects some other packages, too. Claude has a suggestion what it thinks the reason is which I have pasted here: Claude's Thoughts Likely cause Node-API addons resolve by against the main executable. produces a single binary that exports them. produces a thin launcher plus a sibling holding the runtime, and the launcher exports nothing — so the lookup cannot succeed even though the symbols are present in the process. Exported symbol counts (): The runtime is not a link-time dependency of the launcher — it does not appear in : So the launcher s it at startup. A plain defaults to , which keeps the loaded object's symbols out of the global lookup scope — which is exactly why for fails despite the symbols being present in the process. Loading the runtime with **** should be sufficient. Platforms macOS passing is consistent with the cause above rather than an exception to it: when is called with neither nor , dyld's default on macOS is , so the runtime's symbols land in the global scope automatically. glibc's default is , and Windows has no global symbol namespace at all — needs the handle of the module that actually exports the symbol, and the launcher does not. In other words the only platform that works is the one whose loader already does implicitly what the fix below asks for explicitly. Version: deno 2.9.5 (stable, release, x86_64-unknown-linux-gnu) v8 15.0.245.2-rusty typescript 6.0.3 I think this is related to #35269 / #33441 .

Thyra · 2h ago
wahajahmed010
fix(ext/node): gate process.debugPort (op_inspector_port) behind --allow-sys=inspectorOpenPR

Summary Fixes #36519. (which backs Node's ) was missing the permission check that the other inspector-state entry points gained in #36465 (, , and ). Without this fix a script that has been granted but not can read the actual bound inspector port (including the ephemeral port chosen by ) via , even though from the same script is correctly rejected with . That port together with already reveals everything 's check is meant to protect, so this op looks like it was missed in the original consistency sweep rather than deliberately exempted. Changes : add to , mirroring the call sites in and . Switch the op to take since the permission check needs a mutable borrow. : add two regression tests: : runs with and (no ) and asserts that falls back to Node's default instead of leaking the bound port. : runs with and asserts that reflects the actual ephemeral port (not ). Implementation note is declared and returns a plain , so it cannot propagate a . On denial the op silently returns , and the existing polyfill (in ) already falls through to the default when the op returns . So the property stays readable and matches Node's semantics, while the real bound port is no longer leaked. AI assistance Parts of this contribution (the patch structure, the test scaffolding, and this description) were drafted with the assistance of an AI coding tool, which I then reviewed and adjusted before submitting.

wahajahmed010 · 12h ago
petamoriken
fix(dts): restore dom.extras and drop types now shipped by TypeScriptOpenPR

TypeScript's bundled libs now cover several APIs we were forwarding, and TypeScript 6 ignores . This drops the duplicate declarations (, , base64/hex, ), restores so includes it again (same regression as #24489), and removes the now-dead lines from Deno-owned libs. / stay in both and extras. Schema examples add and drop the empty iterable libs. AI Disclosure AI agents write the code, and I review and edit it myself.

petamoriken · 12h ago
Structured data for AI agents

Repository: denoland/deno. Description: A modern runtime for JavaScript and TypeScript. Stars: 108254, Forks: 6340. Primary language: Rust. Languages: Rust (62.1%), TypeScript (26.1%), JavaScript (10.4%), C (1.3%), HTML (0%). License: MIT. Homepage: https://deno.com Topics: deno, javascript, rust, typescript. Latest release: v2.9.5 (1w ago). Open PRs: 100, open issues: 1401. Last activity: 1d ago. Community health: 100%. Top contributors: bartlomieju, dsherret, ry, littledivy, nayeemrmn, lucacasonato, nathanwhit, kt3k, divybot, kitsonk and others.

·@ofershap

Replace github.com with gitshow.dev