webpack 5 why breaking changes? - github...• todos • plan future features • preparations •...

Post on 23-Feb-2020

6 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

WHY BREAKING CHANGES?

• @sokra

• @wSokra

• WEBPACK

• FULL-TIME CORE TEAM

• YEAH WEBPACK 5

• BREAKING CHANGES

• BREAK MY BUILD

• INVEST TIME

• WHY

• WHY LARGEST BREAKING CHANGES

• BONUS KNOW PREPARED

• BONUS BENEFITS

• DISLIKE BREAKING

CHANGES

• IT’S WORTH IT

• 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0 4.5.0 4.6.0 4.7.0 4.8.04.9.0 4.10.0 4.11.0 4.12.0

4.13.0 4.14.0 4.15.0 4.16.0 4.17.04.18.0 4.19.0 4.20.0 4.21.0

4.22.0 4.23.0 4.24.0 4.25.0 4.26.0 4.27.0 4.28.04.29.0

4.30.0 4.31.0 4.32.0 4.33.0

• MINOR

• TECHNICAL DEPT

• TODOS

• PLAN FUTURE FEATURES

• PREPARATIONS

• NON-BREAKING WAY

• LARGE PLUGIN API SURFACE

• LONG TERM GOALS

• FEATURES

• CLEANUP WORK

• REFACTORING MODERNIZATION

webpack.js.org/vote

• BETTER PERFORMANCE

• DISK

• LONG TERM CACHING

• EASIER RELIABLE

• FRONTEND MODULES

• LARGE

• UNAWARE

• ACCIDENTALLY

• BROWSER LIMITATIONS

• NATIVE WEB

• RESERVE NAMES

• OUTDATED

• AVOID USING

• PREFER FRONTEND-COMPATIBLE MODULES

• INSTALLING MANUALLY

• MUCH LARGER

• TEAMS ARE LARGER

• DEPLOYED MORE OFTEN

• BUNDLE SIZE BY DEFAULT

INVALIDATES ALL ASSETS

• DETERMINISTIC ALGORITHMS LONG TERM VALIDITY

• LONG TERM CACHING RELEVANT

• IN-MEMORY CACHING SYSTEM

• HOW TO PERSIST

• Module

• NOT SERIALIZABLE

• SUBCLASSES

• NON-PRIMITIVE NESTED OBJECTS

→ SERIALIZATION SYSTEM

→ SERIALIZABLE

• MODULE GRAPH

→ SEPARATE CLASS

• SYNCHRONOUS

ASYNC

• MORE EXPENSIVE

→ IDLE

→ close

• MINIMUM NODE.JS

• Set

• Map

• PURE-JS WATCHING

• QUEUES

• PLUGINS

https://github.com/sokra/slides

• USELESS FILENAMES

• ALGORITHM

• src_lazy-loaded_js

• react_react-dom

• DIFFERENT FILENAMES

• NOTHING TO DO

• /* webpackChunkName: "name" */

• EXTENSIBLE BY PLUGINS

• NEW KINDS OF PLUGINS

• EXTENSIBLE BY PLUGINS

• OTHER MODULE TYPES

• import from b.x

• import as from export

• export

https://github.com/sokra/slides

• EXPERIMENTS

• RELAXED SEMVER

• MOVE FASTER

• CHANGELOGS

• MULTIPLE WORKERS

• WITHOUT TOP-LEVEL RUNTIME

• ESM

• CSS

• HTML

• WASM-ESM-INTEGRATION

• TOP-LEVEL-AWAIT

https://github.com/sokra/slides

top related