3 ms·
Here's a couple specific examples I just saw within the last couple days. `immer` is an immutable update library based on ES6 proxies. In addition to safely a
by acemarke 8y ago
Here's a couple specific examples I just saw within the last couple days.
`immer` is an immutable update library based on ES6 proxies. In addition to safely applying "mutative" code immutably, it also freezes the output to keep you from accidentally mutating it elsewhere.
An Immer maintainer just added some kind of a `DeepReadOnly` tag to its typings in a patch release, which broke things for a bunch of people:
https://github.com/mweststrate/immer/issues/289 https://github.com/mweststrate/immer/issues/289
This specifically broke our PR to convert `redux-starter-kit` to TS, with this lovely error message:
https://github.com/reduxjs/redux-starter-kit/pull/73#issuecomment-453887310 https://github.com/reduxjs/redux-starter-kit/pull/73#issueco...
I'm not saying every use of TS is that complex, but I do absolutely think that TS types can get ridiculously complex (and that people can get sucked into spending _way_ too much time trying to model dynamic JS behavior in static types).