ES6 modules are widely supported natively now, and HTTP/2 as well, but apparently it's still wildly more performant to bundle (e.g. webpack). Is that because tree shaking and code splitting, or other reasons?

Also... linking to third-party CDNs stuff...

Make very clear: this is about URL's likeĀ CDNjs.com, not "using a CDN you set up and use for all your assets"

There are a couple reasons you'd use a third-party CDN hosted asset:

Otherwise... probably not a great idea. Bundling is a good idea. Reduced requests. Or is it with H2?

What are the chances users actually have that exact lib/version cached?