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
Hi guys! Thank you for all your great work here, I really think babel-polyfills is the good path to follow. It just took me some time to find it.
Yesterday I started the migration in one library from a @babel/preset-env/@babel/plugin-transform-runtime setup. I carefully read all your notes and some of the source code involved, however, I wrote down some doubts that I would like to clarify before making my changes definitive.
(Having @babel/runtime as a runtime dependency and @babel/preset-env, @babel/plugin-transform-runtime and babel-plugin-polyfill-corejs3 as development dependencies, after migration.)
The following doubts arise:
Will @babel/runtime helpers be transpiled/polyfilled? Since we are not referencing them from the corejs source anymore (@babel/runtime-corejs3). For example, if @babel/runtime/helpers/asyncToGenerator is used, will Promise be polyfilled inside it? (Without polluting the global scope). (Maybe this could be a problem because I think it is not possible anymore to disable general polyfills in @babel/plugin-transform-runtime while still importing helpers from @babel/runtime-corejs3.)
With babel-plugin-polyfill-corejs3, is it possible to use a specific version of core-js? (like 3.18.1). Should/can we add core-js-pure (or other flavor) as a runtime dependency explicitly in our library?
Can proposals be 'opt-in', like with proposals option in @babel/plugin-transform-runtime?
Will ES6 modules always be used? How does the plugin decide when to use ES6 or CJS?
Is this new system beta? Can it be reliably used in critical projects? With proper testing, etc.
Hope I am not missing or confusing anything. I would really appreciate any insights.
Thank you again!
The text was updated successfully, but these errors were encountered:
Reading some previous issues/questions I have found the following possible answers so far:
Unsure how usage-pure and transform-runtime should work #32: however, in the case of a library, like ours, which is shipped only transpiled/polyfilled (not bundled), we cannot apply this solution and we are failing to achieve our proposed compatibility target for our consumers. From this point of view @babel/runtime-corejs3 might still be necessary, but just for Babel helpers and not for general polyfilling, could this be achieved somehow? For these helpers, targets support would not be possible though.
Hi guys! Thank you for all your great work here, I really think
babel-polyfills
is the good path to follow. It just took me some time to find it.Yesterday I started the migration in one library from a
@babel/preset-env
/@babel/plugin-transform-runtime
setup. I carefully read all your notes and some of the source code involved, however, I wrote down some doubts that I would like to clarify before making my changes definitive.Considering the following situation:
(Having
@babel/runtime
as a runtime dependency and@babel/preset-env
,@babel/plugin-transform-runtime
andbabel-plugin-polyfill-corejs3
as development dependencies, after migration.)The following doubts arise:
@babel/runtime
helpers be transpiled/polyfilled? Since we are not referencing them from the corejs source anymore (@babel/runtime-corejs3
). For example, if@babel/runtime/helpers/asyncToGenerator
is used, willPromise
be polyfilled inside it? (Without polluting the global scope). (Maybe this could be a problem because I think it is not possible anymore to disable general polyfills in@babel/plugin-transform-runtime
while still importing helpers from@babel/runtime-corejs3
.)babel-plugin-polyfill-corejs3
, is it possible to use a specific version ofcore-js
? (like3.18.1
). Should/can we addcore-js-pure
(or other flavor) as a runtime dependency explicitly in our library?proposals
option in@babel/plugin-transform-runtime
?Hope I am not missing or confusing anything. I would really appreciate any insights.
Thank you again!
The text was updated successfully, but these errors were encountered: