-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixup tsc build breakage in test_coverall2.ts #168
Conversation
It looks like TS 5.7.2 made the
|
That's super interesting. Thanks for digging that out! @Johennes As the reviewer and official typescript wonk :), would you prefer I add the type parameter (now breaks in v5.6.3), or my dumb re-write that works in both? |
Wait, I think I'm slightly confused. Do we deliberately support different TS versions? Could we not lock in a specific version by creating a lock file from |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Sorry @Johennes , I was over hasty merging this without responding to your comment.
We currently don't have any nodejs dependencies, just My understanding was that it wasn't a great idea to keep a lock file in version control for libraries. I am very easily persuaded one way or the other, since a) the What about |
No worries at all. Merging this was the right thing to do as it unbreaks the CI. Sorry, I should have approved first and discussed potential future improvements second. It's interesting that the person in that GitHub issue recommends not to include Now that we have no failures anymore, it's not a real problem. I've put in #170 to discuss and possibly take action some time in the future. |
Fixes #167
According to The Big O of Code Reviews, this is a O(n) change.
The build was breaking due to a compilation error in the Typescript test, due to a change in Typescript versions.
You can see the code in this Typescript playground: updating to Typescript v5.7.2 introduces the compile time error.
The fix presented here is the simplest dumbest fix: we no longer are relying on enumerating the type constructors, we now enumerate transitional objects that we provide, with hand written calls into a constructor.