webpack freelancing log book (week 2/3)

2017/04/10–2017/04/23

Tobias Koppers
webpack
2 min readApr 24, 2017

--

It looks like when merging more PRs, more people create new PRs. This points out how important it is to maintain an OpenSource project.

These two week I found some time to make my own PRs. I concentrated on bugfixes and performance changes that need bigger refactorings. But this also means some of the PRs are breaking changes.

I promised for webpack 2 that we will shorten our release cycle and release major versions more often. So best don’t call it webpack 3, webpack 4, webpack 5, but just webpack.

I already published a version 2.4 which includes many merged bugfixes and features. Best new feature: Now you can pass a chunk name to import(). So there is no reason to use require.ensure anymore. Actually there is no reason to use CommonJs/AMD anymore. So please upgrade your code base to ECMAScript modules if you haven’t already.

Ed Morley from Mozilla reported a security issue for the webpack-dev-server. So I took a detailed look at webpack-dev-server and webpack-dev-middleware and discovered a few more problems. These were fixed in the latest version now. Please upgrade! I’ve published a detailed explanation of the issues in a separate post.

I rebased and continued my PR (number 3333) that allows async script tags, but this feature probably don’t make it into the next version. I need to experiment with it to check what’s the performance effect. Theoretically this should allow to evaluate the bundle earlier (out of order instead of in order).

Here is the plan for the next weeks:

  • Create a small change to loader-runner to expose dependencies in the loaders API
  • Add some new features to import()
  • Release a new webpack major version with some breaking changes
  • Fix bugs released with the major version
  • Tell somebody how to implement a cache-loader for persistent caching for modules.
  • Tell somebody how to implement a thread-loader for executing the loader pipeline in a thread pool.
  • Start implementing scope hoisting…

< week 1 week 4 >

--

--