David Sherret
dsherret.bsky.social
David Sherret
@dsherret.bsky.social
Software developer at Deno. Also working on ts-morph, dprint, and more (https://github.com/dsherret)
Type checking text and bytes imports is now working.
June 25, 2025 at 5:56 PM
Yup.
June 20, 2025 at 8:42 PM
Should have importing files as text and bytes ready for Deno 2.4 -- will be unstable because it hasn't been standardized.
June 20, 2025 at 8:23 PM
It's very untested and probably won't work in many scenarios, but it's a start. Bugs can be reported here: github.com/denoland/rol...
June 4, 2025 at 9:34 PM
Got bundling JSR/Deno code with Rolldown working.

This is using Rolldown's and Deno's crates respecting Deno's lockfile, config discovery, and resolution. Finally Deno's crates have been refactored enough for this to be feasible (~500 LOC). I'll update with more details later.
May 31, 2025 at 2:19 AM
I've come across so many bugs caused by using wildcard matches in Rust. Even though it can be verbose, I think it's better to avoid them in most cases so that adding a new enum variant causes compiler errors, forcing you to re-evaluate each match.
March 27, 2025 at 9:50 PM
It was getting difficult to debug Deno's npm resolution so I wrote a tool to help visualize each step it makes.
March 20, 2025 at 7:35 PM
Neat to see software I used to work on and features I helped implement in Severance.
February 25, 2025 at 1:37 AM
Beware: npm doesn't show non-npm dependencies in the dependencies tab. Check out this package—npm lists it as having zero dependencies, but if you look at the package.json, it definitely has dependencies.
February 7, 2025 at 9:58 PM
Did some work on the url Rust crate the past two days and got it parsing a 400 character URL more than twice as fast (still have a few PRs not merged).
February 7, 2025 at 9:34 PM
When it's only that they're all the same, but when there's __esModule = true then Bun behaves incompatibly with Node.
February 5, 2025 at 10:11 PM
It's a confusing topic. Just to be clear, Deno used to do that, but decided to align with Node for better Node compatibility. Here's the output of that today.
February 5, 2025 at 4:19 PM
I feel like making node resolution "just work" leaves the JS ecosystem in a worse place.
February 5, 2025 at 1:28 AM
@kt3k.org thought of a clever way to get a Uint8Array type in TS 5.7 and Uint8Array type in
January 30, 2025 at 5:46 PM
This seems to work in all 5.x versions with all script targets.
January 29, 2025 at 4:41 PM
TypeScript <5.7 on left, TypeScript 5.7 on right. Glad this seems to work lol. Anyone have a better solution for dealing with Uint8Array being generic now?
January 28, 2025 at 5:34 PM
Worked on this slowly over 5 months, but Deno's config discovery and module resolution logic has been extracted out of the CLI and into a re-usable crate (not yet published). Also a few days ago this setup code was hundreds of lines, but now it's only a few.
January 24, 2025 at 2:13 AM
Wasmbuild is getting simpler thanks to Wasm imports.
January 8, 2025 at 12:20 AM
It's been a few months so let's bring this up again with an example of what other languages do—unawaited async function call detection is standard in other languages, but missing in TypeScript. So many bugs could be prevented if this were built-in and didn't require separate tooling.
November 29, 2024 at 6:39 PM
Another example of waiting to implement the standard vs an aggressive "it just works"

It default exports the WebAssembly module instead of exporting the module instance's exports. They'll probably have to do a breaking change for their users.
November 23, 2024 at 2:25 PM
Unfortunately, this regression existed since WebGPU was re-introduced almost a year ago. I've been working on better tooling for tracking the performance of Deno across operating systems, which is how this was caught. It should be much harder for something like this to happen in the future.
November 21, 2024 at 5:48 AM
Fixed a performance regression in Deno's shutdown time on Windows. We were accidentally doing a lot of WebGPU stuff on every run.
November 21, 2024 at 5:34 AM
A CommonJS module importing a Wasm module now works and is type checked.
November 19, 2024 at 8:59 PM
Wasm modules importing JavaScript/TypeScript also now works.

(In the screenshot, the Rust code is the source code for math.wasm)
November 15, 2024 at 11:20 PM
Demo of Wasm modules in the upcoming Deno release. It has type checking and editor support.
November 15, 2024 at 8:54 PM