Isn't direct eval working like this only in sloppy mode (and modules are always strict)?
On 16 Dec 2017 6:20 am, "Jordan Harband" <[email protected]> wrote: > If you intend to use both Rollup and `import *`, be aware that when > rollup's current approach, as I understand it, is either a) it statically > knows with confidence which names off a ModuleRecord you use, and > treeshakes the rest out; or b) it knows with confidence that you're > reflecting on the ModuleRecord, and treeshakes nothing, or c) it's not > certain, so it treeshakes out named exports that you may be relying on. > > On Fri, Dec 15, 2017 at 9:00 PM, Isiah Meadows <[email protected]> > wrote: > >> And Rollup already does this (although with less dramatic renaming). >> >> On Fri, Dec 15, 2017, 23:40 Jérémy Judéaux <[email protected]> >> wrote: >> >>> One of the first assumptions in this discussion is that “Star imports >>> prevent treeshaking” >>> >>> >>> >>> But thinking about it, I don’t see why tools cannot transform >>> >>> ```js >>> >>> import * as L from './lib'; >>> >>> console.log(L.foo, L.bar()); >>> >>> ``` >>> >>> To >>> >>> ```js >>> >>> import {foo as $$generated$$1$$foo$$, bar as $$generated$$1$$bar$$} from >>> './lib'; >>> >>> console.log($$generated$$1$$foo$$, $$generated$$1$$bar$$()); >>> >>> ``` >>> >>> And then apply tree-shaking. As long as the code doesn’t contain >>> something like `Object.keys(L)` it should be fine. >>> >>> >>> >>> At least that’s for the concept, maybe tools have better ways to do it. >>> >>> So I tried, webpack 3 + babel 7 beta. And it works. A very big function >>> I put inside my lib.js only get exported if I use `Object.keys(L)` >>> >>> >>> >>> With treeshaking working with star imports, are there still benefits of >>> the proposed syntax? >>> >>> >>> _______________________________________________ >>> es-discuss mailing list >>> [email protected] >>> https://mail.mozilla.org/listinfo/es-discuss >>> >> >> _______________________________________________ >> es-discuss mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/es-discuss >> >> > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > >
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

