ts-ast-viewer.com now supports TypeScript 7 along with nightly builds of the typescript-go repository. It's not selected by default, but available in the dropdown.
David Sherret
@dsherret.dev
Software developer. Prev @deno.land. Working on ts-morph, dprint, and more (https://github.com/dsherret)
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.
beautiful new docs site at dax.land for @dsherret.bsky.social's dax, one of my very favorite tools. I write nearly all my scripts in TypeScript because of it
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.
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.
Due to terrible GitHub availability, dprint formatting plugins on plugins.dprint.dev are now served directly instead of redirecting to GH assets. Additionally, the plugins are now cached indefinitely by the server, which eliminates the risk of a repo disappearing.
Plugins - dprint
Latest plugin versions for dprint.
plugins.dprint.dev
Released jsonc-parser 0.32, which allows deserializing via serde to a concrete type. It's also much faster.
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.
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!
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!
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!
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!
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.
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.
Yesterday I updated my bio as I'm no longer with the #1 🦕-themed javascript company. I'm sad to go but excited to see what's next. I've spent the last few years designing exclusively in code, building agent skills, working on command-line tools, and crafting dev docs experiences. Hit me up.
Yesterday I updated my bio as I'm no longer with the #1 🦕-themed javascript company. I'm sad to go but excited to see what's next. I've spent the last few years designing exclusively in code, building agent skills, working on command-line tools, and crafting dev docs experiences. Hit me up.
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)
...and we've optimized postinstall scripts for npm packages to run in parallel for a 100% speed up. Also shipping in v2.7.6 next week. github.com/denoland/den...
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 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.
It's good npmx.dev shows git and https dependencies. I still think it's crazy npmjs.org doesn't.
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.
I didn't want a terminal based solution, so I vibe coded a desktop app to give the status of all my AI sessions regardless of where they're running and I can click to quickly jump to them.
Additionally, pnpm 11 will block dependencies from exotic sources (like Git) in subdependencies.
How to bypass minimum dependency/release age: 1. Publish an npm package with an unpinned git dependency. 2. Get usage and wait many months. 3. Push a malicious commit to the git dependency's repo.
The deno and dprint vscode extensions now prompt when a custom executable path is set in the workspace configuration. I believe this should help reduce the chance of malicious config launching an executable in a trusted workspace.
Vibe coded a website to give a summary of our frequently failing and flaky tests on the CI.
dprint 0.51 (code formatter) is out. This release adds initial support for formatting with a global config file. github.com/dprint/dprin...
Release 0.51.0 · dprint/dprint
dprint is a pluggable, configurable code formatting platform written in Rust. It aims to unify all your code formatters in one tool. Features Global Configuration File dprint now supports a global ...
github.com
In the Deno repo, we have a custom Rust test runner for our tests in order to support file/directory-based tests and improve stability on the CI. I just refactored the code to have a pty reporter that surfaces some useful information. It seems better than having failures whizz by.
Did something fun; used @tinygo.org to shove @mvdan.cc's wonderful gofumpt into @dsherret.bsky.social's amazing dprint formatter via a Wasm plugin. We previously used an "exec" plugin to do this with go tool, but it was slow to run, and worse in parallel (and... Windows 😑). Now it's fast!