David Sherret Profile
David Sherret

@DavidSherret

Followers
1K
Following
3K
Media
130
Statuses
933

Software developer at @deno_land. Also working on ts-morph, dprint, and more.

Toronto, Canada
Joined January 2009
Don't wanna be here? Send us removal request.
@DavidSherret
David Sherret
7 days
RT @SquiggleConf: 🌟 Speaker Spotlight: David Sherret. @DavidSherret will walk us through the JSR package registry: why it exists, how it im….
0
3
0
@DavidSherret
David Sherret
22 days
RT @deno_land: Importing bytes and texts:.✅ adds to your module graph.✅ type checking.✅ works with deno bundle and deno compile. https://t.….
0
4
0
@DavidSherret
David Sherret
30 days
Type checking text and bytes imports is now working.
Tweet media one
@DavidSherret
David Sherret
1 month
Should have importing files as text and bytes ready for Deno 2.4 -- will be unstable because it hasn't been standardized.
Tweet media one
0
1
11
@DavidSherret
David Sherret
1 month
Should have importing files as text and bytes ready for Deno 2.4 -- will be unstable because it hasn't been standardized.
Tweet media one
1
2
38
@DavidSherret
David Sherret
2 months
It's very untested and probably won't work in many scenarios, but it's a start. Bugs can be reported here:
Tweet media one
0
0
1
@DavidSherret
David Sherret
2 months
This is now published to JSR as a rolldown plugin:
jsr.io
@deno/rolldown-plugin on JSR: Rolldown plugin for Deno code.
@DavidSherret
David Sherret
2 months
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.
Tweet media one
1
1
10
@DavidSherret
David Sherret
2 months
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.
Tweet media one
3
0
29
@DavidSherret
David Sherret
2 months
I've had copilot disabled since the beginning of the year though because it makes running `cargo build` way slower due to it watching the target directory and then fighting with cargo (there's an open bug).
0
0
1
@DavidSherret
David Sherret
2 months
No more dealing with this lol
Tweet media one
@code
Visual Studio Code
2 months
Open sourcing the @github Copilot Chat extension was the logical next step for @code. Check out the podcast for more of the history, straight from Erich Gamma and Kai Maetzel!.
1
0
4
@DavidSherret
David Sherret
2 months
RT @bentlegen: 👋 Some news! I've started a software company. Headquartered in Toronto. We're building a product to augment devs for the ne….
0
28
0
@DavidSherret
David Sherret
4 months
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.
Tweet media one
0
0
3
@DavidSherret
David Sherret
4 months
In the past I did something similar for dprint here. basically if there's a graph then it's almost always useful to have an easy way to visualize it:
@DavidSherret
David Sherret
4 years
Finished working on this for now.
0
0
0
@DavidSherret
David Sherret
4 months
Deno's npm resolution uses a one directional graph and maintains a reverse path through the graph for where it's currently resolving (shown as the red line).
1
0
0
@DavidSherret
David Sherret
4 months
It was getting difficult to debug Deno's npm resolution so I wrote a tool to help visualize each step it makes.
1
1
13
@DavidSherret
David Sherret
5 months
RT @MiTypeScript: Doom now runs in @typescript types. What a journey this one's been.
Tweet media one
0
449
0
@DavidSherret
David Sherret
6 months
Another reminder that the npm client just installs dependencies from anywhere:
@DavidSherret
David Sherret
1 year
Many people seem to believe that npm is a centralized registry. That's not exactly the case. Packages can define dependencies pointing at any server and the npm client will happily install them.
0
0
0
@DavidSherret
David Sherret
6 months
I submitted this in a report to npm, but it was closed as being an intentional design decision. Previously I submitted a report about how the dependencies tab showed these dependencies as being npm packages (not remote ones) and I guess the fix was to just not show them at all.
1
0
0
@DavidSherret
David Sherret
6 months
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.
Tweet media one
Tweet media two
1
0
1
@DavidSherret
David Sherret
6 months
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).
Tweet media one
0
0
7