David Sherret

David Sherret

@dsherret.dev

Software developer. Prev @deno.land. Working on ts-morph, dprint, and more (https://github.com/dsherret)

1.4K followers81 following167 posts

It's actually not faster when strictly looking at how long it takes to format text, but dprint traverses files really fast and the Wasm scales better on multiple threads (this chart is JS warmed up, which the Wasm doesn't need to do).

It's very hard to innovate on module resolution in JS because the TS user experience would be bad. TypeScript needs something like content mappers, but for module resolution—you specify an npm package in a tsconfig and then TS sends it the raw specifier and referrer info to resolve.

Current progress compiling Prettier to Wasm.

David Sherret@dsherret.dev

I've been looking into getting prettier compiled as Wasm the past week with equivalent performance to v8... initially had some poor investigation into it (github.com/dprint/dprin...), but I resurrected an idea I had in the past and it's looking more promising.

After many years, finally got the Roslyn (C#/VB) formatting plugin for dprint (dprint.dev) compiled to Wasm so it runs sandboxed instead of launching an executable. Amazing how far C# has come.

David Sherret reposted

It’s sad to see Deno being discontinued. However, I think it’s not all terrible. Deno pushed server side JS forward for everyone - Node copied many the standout features Deno had at launch in 2020, bringing them to the masses. Fetch, web sockets, web crypto, direct TypeScript execution, and more. 🫡

David Sherret reposted

bit of an update, it's been a few months now since I parted ways with Deno, and I'm starting to actively look for jobs again! I'm pretty good with big systems, compilers, and embedded. especially if rust or elixir are involved :)

Released dprint 0.55—a pluggable and configurable code formatting platform that unifies all your formatters behind a single command. This substantial release lets you specify formatting plugins from npm.

Reporting the same security issue to pnpm vs bun: pnpm acknowledged it quickly, shipped a fix, backported it, and published an advisory. bun never acknowledged, silently fixed this and another issue I reported, has not published advisories. One takes security more seriously.

The latest version of dax (dax.land) can show a scrolling view of the last N lines when executing a command. This is especially useful when running multiple commands in parallel.

View full thread

The latest version of dax (dax.land) can show a scrolling view of the last N lines when executing a command. This is especially useful when running multiple commands in parallel.

Released gagen 0.5, which simplifies the output to match dependabot.

David Sherret@dsherret.dev

I've found maintaining GitHub Actions workflow files is much easier when it's generated from Typescript. The latest realization is that the output yaml file can act like a lockfile. So I maintain `actions/checkout@v6`, but the generated output gets locked to a hash.

I've found maintaining GitHub Actions workflow files is much easier when it's generated from Typescript. The latest realization is that the output yaml file can act like a lockfile. So I maintain `actions/checkout@v6`, but the generated output gets locked to a hash.

For the official process plugins, I was unfortunately using absolute URLs in the plugin manifests, so you'll need to run `dprint config update` to get better reliability for those.

I'm also working on support for plugins distributed on npm and support for using node resolution to resolve plugins. This should help users who have IT/compliance constraints.

David Sherret reposted

Last Monday was my last day at Deno. It was a privilege to work with such talented colleagues. The standard library has been my passion for years. I've reviewed all PRs since 2023 and learned a lot from them. Proud to see it often mentioned as one of the best parts of Deno.

David Sherret reposted

My last day at Deno was this week. I really enjoyed maintaining the language server and working with the CLI team, and I'm sure they will keep building great things. Looking for new work in the space of native-backed JS/TS tooling, or something new!

David Sherret reposted

Yesterday was my last day at Deno. I'm sad to leave but I'm proud of everything the team and I were able to build. I'm glad I had the opportunity to work with some of the most talented people I've met. I wish them all the best! I'm actively looking for my next challenge, my DMs are open!

David Sherret reposted

Today is my last day with the Deno team 🦕💖💔 I know they're gonna keep making awesome things. But now *I* need to make awesome things for someone else! If you're looking for a DevRel with a JS focus and extra sparkle, get in touch!

David Sherret reposted

Marvin is another lovely talented person I had the pleasure to work with who you should try and snag for your company if you can!

Marvin Hagemeister@marvinh.dev

Yesterday was my last day at Deno. It's rare you get to work with so many highly skilled peers in one place, but I'll be now cheering from the sidelines. Not sure yet what comes yet. I'm officially looking for a job now!

Yesterday was my last day at Deno. I'm going to transition from two days a week to full time on a business I cofounded in the auto glass industry. My plan is to increase my contributions to my personal open source projects and keep contributing features/fixes to Deno that I need or want.

It's been an incredible privilege to have been paid to spend these last five years working with extremely talented colleagues designing, implementing, and refactoring a large portion of Deno.

There's so many cool things under Deno's hood that we haven't talked about so I'll also take some time to blog or post about them soon.

David Sherret reposted

John is an absolutely incredible UX design expert. If you are looking for someone who can come up with, implement, and test your UX flows, you should hire him.

This post is unavailable.

David Sherret reposted

Snap him up

Phil Hawksworth@philhawksworth.dev

Yesterday was my last day at Deno. From today, I'll be cheering the talented team on from outside the org. This also means that I'm now considering my next move in the DX/DevRel/Technical marketing space.

Also merged a perf improvement to the sharp pkg's install script. Once released, it will make all pkg managers faster installing Next.js with lifecycle scripts when brew is installed (except Bun because it overrides the maintainer's decision and always skips the install script)

David Sherret reposted

I've wanted this for so long - and @kettmeir.dev has finally implemented it! View changes in the public API of packages between versions: - what methods were added, changed (type signature), or removed In the future we could even indicate if you are about to publish a breaking change

JSR@jsr.io

JSR now lets you diff the generated documentation between released versions of a package, making it easy and clear what has changed in a visual manner! Example: jsr.io/@david/gagen...

dprint's incremental formatter is incredibly fast and happens without needing an opt-in. You can use both oxc and biome via dprint for faster performance.