#ReleaseMonday Yesterday, I took the plunge and updated all 215 https://thi.ng/umbrella packages (plus examples) for TypeScript 6.0, then released new versions just now this morning. After previous preparations and some initial struggles, it thankfully only involved updates to tsconfig.json files (accompanied by a lot of head scratching).
I'm still confused about the new behavior of TS6 now defaulting to an empty types array[1] in compilerOptions, meaning one has to explicitly state, e.g. "types": ["node"] now, seemingly for any dependent package as well. The latter is the confusing part to me!
For example, the https://thi.ng/errors package requires NodeJS type definitions for doing some pre-checks, but because of that, any dependent package has to specify the "types": ["node"] option too now (so it seems...), even if the dependent package itself does not use NodeJS types... If this compiler option isn't given, you'll get errors like Cannot find namespace 'NodeJS' when compiling the downstream package. I find this transitive requirement super weird & nonsense! I also mention it, because it will likely impact your own codebase as well... Please report back, if you could! ๐







