Kasper
Kasper
Explore posts from servers
DDeno
Created by Kasper on 1/13/2025 in #help
Typescript monorepo LSP performance
I recently converted a node and typescript monorepo to deno as an experiment to try out the monorepo support in deno. To my disappointment i noticed a severe slowdown in LSP performance in vscode with the deno extension for a medium sized monorepo (~15 packages, tens of thousands of lines of code, and LSP response times went from from a barely noticeable fraction of a second to a consistent 3-5 seconds delay) This got me wondering, how does deno actually instrument the LSP for monorepos? Does it use one or several typescript projects under the hood, does it use project references? My guess would be that deno just makes one typescript project, instead of one per package in the monorepo. At least that would explain the huge difference in performance compared to using multiple node and tsc based packages with project references. Another thing this made me wonder about is what the ambition of deno is when it comes to typescript monorepo LSP performance. Is it within the scope of deno to have good LSP performance for large monorepos, or is this a problem that is meant to be solved by avoiding large codebases in deno?
9 replies
DDeno
Created by Kasper on 12/13/2024 in #help
env vars interpolation across multiple --env-file
I have two env files: .env1 .env2 .env1 contains FOO=foo .env2 contains BAR=${FOO}bar My example program.ts:
console.log(Deno.env.get("FOOBAR"))
console.log(Deno.env.get("FOOBAR"))
If I run deno run --env-file=.env1 --env-file=.env2 program.ts I expect to see "foobar" as the output Instead I see bar, which means ${FOO} was clearly interpolated, but the value was missing. So this leads me to believe that the variables from previous env files are not available in subsequent env files. is this true? Is this a bug or intentionally designed this way?
1 replies