You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The most recent 7.5.5 release which includes #6842, introduces usage of Array.from() in Subject.prototype.next().
It may have been present in other areas of the codebase previously, but our codebase hits this path regularly, so it was noticed immediately on upgrade to this version.
We have to support older ES5 runtimes back to circa 2015 webkit browsers (for smart TVs), and avoid excessive polyfilling for performance and bundlesize reasons. Due to the fact RxJS is transpiled to ES5 by default, we've never had runtime issues on these platforms before. However on upgrade to 7.5.5 the absence of these more modern APIs now require that we polyfill around RxJS. Because we do not know which non ES5 APIs are in use, this is a somewhat difficult and risky task (if we miss something, we may experience fatal runtime errors).
What is the intention here? Should ES5 output be limited to ES5 APIs only, or should we be polyfilling?
Thanks!
Expected behavior
RxJS ES5 output should be limited to usage of ES5 language features and APIs only.
Reproduction code
No response
Reproduction URL
No response
Version
7.5.5
Environment
ES5 runtimes
Additional context
No response
The text was updated successfully, but these errors were encountered:
patrickkunka
changed the title
Introduction of non-es5 APIs in #6842
Introduction of Non-ES5 APIs in ES5 Output in 7.5.5
Apr 21, 2022
In my opinion, this looks unexpected mistake - we are supposed to support IE11 with version 7, and actual deprecation would be in v8. @benlesh thoughts?
Describe the bug
The most recent 7.5.5 release which includes #6842, introduces usage of
Array.from()
inSubject.prototype.next()
.It may have been present in other areas of the codebase previously, but our codebase hits this path regularly, so it was noticed immediately on upgrade to this version.
We have to support older ES5 runtimes back to circa 2015 webkit browsers (for smart TVs), and avoid excessive polyfilling for performance and bundlesize reasons. Due to the fact RxJS is transpiled to ES5 by default, we've never had runtime issues on these platforms before. However on upgrade to 7.5.5 the absence of these more modern APIs now require that we polyfill around RxJS. Because we do not know which non ES5 APIs are in use, this is a somewhat difficult and risky task (if we miss something, we may experience fatal runtime errors).
What is the intention here? Should ES5 output be limited to ES5 APIs only, or should we be polyfilling?
Thanks!
Expected behavior
RxJS ES5 output should be limited to usage of ES5 language features and APIs only.
Reproduction code
No response
Reproduction URL
No response
Version
7.5.5
Environment
ES5 runtimes
Additional context
No response
The text was updated successfully, but these errors were encountered: