It has been a while since the previous release and quite a bit has happened. As you might have noticed, there's actually a new book about webpack out there now. The idea is that I will split this one in two.
This book will continue as something React focused while I'll push all the webpack bits to the other one. All current readers will receive a free coupon to the webpack book once I complete this transition. To get a preview, check out the online version.
A part of the income (around ~30%) goes to Tobias Koppers, the author of webpack, to support its development. That's the least I can do to support his efforts.
This release, 2.1, can be considered a bug fix release. There isn't any major new content. In fact, I dropped the JSCS section as it was announced that the project has reached end of life. The core team will join ESLint efforts.
Even though getting this release out there took longer than I would have liked, I feel we are on the right track. I've managed to take care of certain necessary things, such as setting up a proper business entity (waiting for the government now). I even got a nomination for an award, but I have no high hopes for that of course.
Splitting the book will allow me to provide more focused content. I got into touch with my old editor and we'll be working especially on the webpack book to push it further. During the week I actually discovered a neater way to structure webpack configuration.
The solution relies on webpack-merge, a tool I developed earlier for the purposes of this book. The approach allows you to split your configuration into easily reusable functions. The next version of the webpack book will cover it in detail.
I have agreed to a training day at May. This will give me a good excuse to research further. Particularly Redux will receive attention. During the past few weeks I've spent a lot of time with it so I know the pros/cons and related patterns quite well now. This will pay off in the coming weeks.
I hope to complete the split in the next release. That will make room for more content and make it easier to maintain it.
In total 112 commits went to book since the last release. Given PDF generation was sketchy at best and didn't even work on certain systems, I ended up scrapping it for now. GitBook doesn't support the custom syntax the book relies on so the output was not optimal.
It might be feasible to fix the situation in the future by rendering the site to PDF through something like html-pdf. This is an approach I used successfully in my React based invoice generator and it worked beautifully there.
Even though I did my best to avoid mistakes with the Amazon version, a few smaller issues managed to find their way into the book. Fortunately nothing major, though. I've listed these issues at the Amazon errata. The errors listed there have been fixed in the paper version.
You can find the important changes below. See GitHub for all changes. Especially the "Files changed" tab is highly useful.
-Eshortcut for those who want to install exact versions of their dependencies.
document.body.appendChild(component());after the import does the trick.
deleteNotein order to avoid bubbling to edit.
onValueClickidea to see how they work.
isDraggingcheck. The current version of React DnD doesn't need it anymore.
HtmlWebpackPluginconfiguration to make it work with the template.
resolve.aliasidea in greater detail.
postinstallscripts can be potentially dangerous.
()with simple fat arrow functions. I.e.,
const square = a => a * a;is valid.
Even though I have managed to tackle some of my goals, there is still work left. The split took some time, and will take still, but I believe it was a good move. Upon completion it will make room for more development.
I still have improvements planned. I've listed these based on priority:
Currently I'm in authoring/consulting/training mode. Even though consulting and training take time out of authoring, they feed back in terms of experience. I'm particularly excited about the upcoming training case. It will force me to simplify and focus.
Possible service model is possible still. If you would be interested in becoming a supporter and gaining early access to content, and even one-on-one time with me, sign up to the supporter mailing list. Signing up doesn't bind you to anything and it's more of a signal for me to do something about it.
I hope you enjoy this release. Thanks for support. That's what makes this worth doing.
Remember that you can find up to date code from the book repository. The stable version of the book is available at the