Mateusz Burzyński
Mateusz Burzyński
@jakebailey I synced this with `main`. I also don't see any reason why this would be hard to port to the Go codebase. I could prepare a porting PR there...
@jakebailey could you run the extended test suite here? :)
@jakebailey synced with main
String objects are really rare in JavaScript (this is the first time it has been requested) and I'm not ready to add support for them on a hot path of...
I ran a different set of tests locally and missed this before opening the PR. I'll look into the reported failure soon. FWIW, the failures are related to this piece...
@dgozman I already included the constraint fix here too :) not in as many places though, I chose to be conservative with my change
> Per the linked issue, this only works if downstream users use TS 5.6+, right? Yes. I don't think there is a suitable way to rewrite those types that would...
I came up with this *beautiful* hack that makes it work: [TS playground](https://www.typescriptlang.org/play/?ts=5.8.0-dev.20241127#code/CYUwxgNghgTiAEYD2A7AzgF0ajIAeGArlBACoCeADgJYoDmAElGANYBc8hK1AjoQmnIBbAEZIIAKAkYqCANIhyANRL94AXngBveAG0Wijphi06AXQ5QU5eAF8A3FPyUkMLDMoJSITADFqBIRwADwASgA08ACCMHRo8Pi4KMDxCsqqIAB8GvAAFBLw8LBxHDFx4QWcaCAcuTAcoQCUGtkACjBIQtTVwQBuSNTAmRXN6tlW5I7SsvD+gXBowaQJBCDJqYoqEGqaWraRrcuJaynwaVs72rbZu5W6cvC08AbkSABm8IdmAPxslYUAH3g3j8ASIIUO9zMkWWADJPqRMv94EDdCCMHNwSBgpC5NDgfB4Ydhtp4BhqEIQEhCBhfvAUIRRCAYCjOMkQG9aCBgHYzI5bITtHcHk8Xu8CVBUqyPFSPsgULhAiQKDR6ExWD8-oVAcCfBiwUFsaQoTDBcTkaj0ZjDUsTQSiYjIjpyZTqbSOAymSygVxQJyUNzefyprRcDA3swvHqVUa9WV4sd1mdNhlslpKongEsVklTudU-ltfBOfMfBxrQsljC47E0MNKo0OOiY0sa3FBYj+VJQ8yI2AEK0oHQEOnCiBeqooLhasYjBgTPRRm0Ol0elwWCgkAB3FCZLsSUCQWAIeWYeAiSU1XWYFs6ShDq+D4d2PdSC-VAB0mdyo-g9+HliCCgYB5HeD52EuVwVLYjRTM4rhYHsjhAA). Further testing would be required to make sure that it doesn't break anything but it looks really...
> That said, we have to support at least TypeScript 5.0, so I'd prefer to avoid typesVersions if possible. I mean, `typesVersions` is how you can support many different TS...
The new error might be a positive change but I'm not entirely sure. Module augmentation is a weird beast. Test case: ```ts // @strict: true // @module: nodenext // @moduleResolution:...