rework.js
Edit page
IntroductionGetting StartedRoutingCSS & StylingPublic ResourcesPage Metadata (head)Internationalization (i18n)Server Side Rendering
JavaScript flavors
Advanced Topics
APICommand Line InterfaceBuild time parametersChangelog0.35.0 (2021-03-08)0.34.0 (2021-01-05)0.33.0 (2020-07-16)0.32.0 (2020-04-15)0.31.0 (2020-03-12)0.30.0 (2020-02-19)0.29.0 (2019-11-16)0.28.0 (2019-11-08)0.27.0 (2019-10-24)0.26.0 (2019-08-06)0.25.0 (2019-07-09)0.24.0 (2019-06-18)0.23.0 (2019-06-14)0.22.0 (2019-05-28)0.21.0 (2019-05-27)0.20.0 (2019-04-26)0.19.0 (2019-04-23)0.18.0 (2019-04-23)0.17.0 (2019-02-11)0.16.0 (2019-02-07)0.15.0 (2019-01-08)0.14.0 (2018-06-12)0.13.0 (2018-05-09)0.12.0 (2018-04-18)0.11.0 (2018-04-11)LicensePwa

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

0.35.3 (2021-04-30)

Bug Fixes

  • disable warning about loose private methods (a2daa1d)
  • don't pass images loaded with ?url to image-webpack-loader (ce345f1)

0.35.2 (2021-04-27)

Features

  • allow loading any file with 'import' as url or raw by adding ?raw or ?url (b82d22d)

0.35.1 (2021-04-19)

Features

  • update asset loading & allow loading .md files (431877b)

0.35.0 (2021-03-08)

⚠ BREAKING CHANGES

  • Due to moving away from babel-plugin-react-intl-auto, using strings in defineMessages instead of an object is not supported. You can add babel-plugin-react-intl-auto back to your local babel config to restore previous behavior.

Features

  • disable hot reloading until issues have been resolved (527d4b1)
  • replace babel-plugin-react-intl-auto with babel-plugin-formatjs (64ff650)

Bug Fixes

  • return to style-loader during dev & disable sri (fad902a)

0.34.9 (2021-02-02)

Features

  • mute InjectManifest in watch (4dda53c)

0.34.8 (2021-01-19)

Bug Fixes

  • revert service worker file name so old versions can still update (679d3db)

0.34.7 (2021-01-19)

Bug Fixes

  • don't register serviceWorker if not supported (763f3ca)

0.34.6 (2021-01-13)

Features

  • disable warning spam from mini-css-extract-plugin (df68928)

0.34.5 (2021-01-08)

Features

  • disable workbox cache in development (39433c9)

Bug Fixes

  • copy dotfiles from /public (9a42454)
  • prevent watch mode crash when accessing path other than / (c1f0f5c)

0.34.0 (2021-01-05)

Features

  • add new CSS class ident generator (dev) (51317ba)
  • replace offline-plugin with workbox (f88f864)
  • update dependencies (2619157)
  • update to webpack 5 (93a384a)

0.33.3 (2020-11-09)

Features

  • add option to disable subresource integrity (5b74257)

0.33.2 (2020-08-31)

⚠ BREAKING CHANGES

  • server-side rendering requires node 12+

Features

  • html - add integrity hashes in production (adaea1e)
  • rjs init - print message hinting at next step (1d4faa7)
  • update default lintstaged to include ts & remove git add (784eec8)
  • update intl polyfills (2229ac7)

Bug Fixes

  • fix how intl polyfills are imported (33ac3cb)
  • send error page if initial build failed instead of crashing (da6af5b)

0.33.1 (2020-08-05)

Features

  • replace react-hot with react-refresh 🎉 (b2f1b5f)

0.33.0 (2020-07-16)

⚠ BREAKING CHANGES

  • sass is now using dart-sass

Features

Bug Fixes

  • install sass instead of dart-sass (4eb97ab)

0.32.2 (2020-04-23)

Bug Fixes

  • fix intl-plural-rules polyfill not loading locales (446177b)

0.32.1 (2020-04-23)

Bug Fixes

  • make globalThis ponyfill work in safari (f3f6854)

0.32.0 (2020-04-15)

⚠ BREAKING CHANGES

  • react-intl has been upgraded to v4, you might have to update your messages

Features

  • add dev 404 route (a07a742)
  • include wrapped comp name in withContext name (91e2e13)
  • load ts route files by default (ada189f)

Bug Fixes

  • fix how dev 404 route is loaded (1457794)

0.31.1 (2020-03-18)

Features

  • css classes are now minified instead of hashed in production (b82c9c4)

0.31.0 (2020-03-12)

⚠ BREAKING CHANGES

  • Framework now requires a minimum of Safari 10.3, as the base "Intl" object is no longer polyfilled

Features

  • drop Intl polyfill, polyfill ListFormat & Unit Number Format (344742e)

0.30.0 (2020-02-19)

Features

  • replace HashHistory with BrowserHistory with hash prefix (7be8b00)

Bug Fixes

  • attempt correcting location in hash routing (3c8e766)
  • hash - fix hash router breaking if there is a search query (41ad219)
  • hash routing - clean url through history (e35a9a6)

0.29.5 (2020-02-10)

Features

  • replace style-loader with extract-css-plugin in development (6009bcd)

0.29.4 (2020-01-20)

Features

  • expose API to know if a new SW has been installed (c5b47c5)

0.29.3 (2019-12-03)

Bug Fixes

  • properly dispatch service-worker lifecycle events (8a91712)
  • replace intl-pluralrules with formatjs as the former is buggy (dae6b40)

0.29.2 (2019-11-20)

Bug Fixes

  • fix helmet data being discarded in ssr (906a4dc)

0.29.1 (2019-11-20)

Features

  • add new getPluginInstance API (22db85e)
  • expose service worker events (28ad2fd)
  • reduce logging spam, add webpackbar (b697d12)
  • replace react-helmet with react-helmet-async (161bee1)
  • update react-hot-loader (9839f2e)

0.29.0 (2019-11-16)

⚠ BREAKING CHANGES

  • usage of --prerendering flag must be changed to --ssr
  • you will now need either move the files to a subfolder or adapt references to public resources

Features

  • allow js webpack type to be extended by plugins (6af9698)
  • always purge unused react-intl polyfills & add relativetime (9c226bc)
  • copy files from resource directory to root of dist (6cab5b7)
  • default lint-staged now autofixes (d0fd508)
  • expose APIs to access react-router context & set http status (f154214)
  • parse typescript as javascript files (78ef8b9)
  • rename prerendering -> ssr (7ead843)

Bug Fixes

  • accept extra args in build (e78e0f8)

0.28.1 (2019-11-08)

Bug Fixes

0.28.0 (2019-11-08)

Features

  • improve & update rjs init (0474666)

Bug Fixes

  • fix logs being persisted to "undefined" dir (9cae513)
  • require proper version of react-dom (c0edf3f)

0.27.0 (2019-10-24)

Features

  • drop srcset-loader as it is dead (ab4e1ea)

⚠ BREAKING CHANGES

  • Any usage of srcset-loader will need to be updated

0.26.0 (2019-08-06)

Features

  • update react-intl to 3.x.x & remove react-intl workaround (d870528)

0.25.2 (2019-08-02)

Bug Fixes

0.25.1 (2019-07-12)

Bug Fixes

  • force app refresh after intl change (24c15f2)
  • minify css in production (c298003)
  • resolve webpack deprecation warnings (29f1908)

Features

  • enable "removeAvailableModules" webpack opti (31b30b2)

0.25.0 (2019-07-09)

Bug Fixes

  • create new Chalk instance using Chalk.constructor (4815551)
  • fix init ignoring errors (5e2f06b)
  • lazy load server-hooks (30036ce)
  • make babel cache env & side aware (b5e1b3e)

0.24.1 (2019-07-03)

Bug Fixes

  • fix useLocation having undefined in its url (9084cd5)

0.24.0 (2019-06-18)

Bug Fixes

  • resolve adhoc hook based on config file directory (4bd941a)

Features

  • allow providing ad-hoc hooks (8cb50bc)
  • provide hook to configure express (a66100c)

0.23.0 (2019-06-14)

Bug Fixes

  • don't inject babel-runtime inside of core-js (833b3c7)
  • replace WebpackClean with CleanWebpack (d9021f5), closes #55

Features

  • add config option to use the react-router HashRouter (840a185)
  • allow people to define a custom path to the configuration file (5f5b98f)
  • validate configuration using Joi (9eb9c65)

⚠ BREAKING CHANGES

  • default config file is now <project_dir>/.reworkrc
  • relative files & directories specified in config file are now relative to folder containing the config file.

0.22.0 (2019-05-28)

Bug Fixes

  • make exported hooks use non-ssr version by default (79ededf)

0.21.0 (2019-05-27)

Bug Fixes

  • make server-side use /lib to avoid esm in modules (4f607e3)
  • prevent dev SSR server from crashing if front is ready before back-end (ebed78c)
  • prevent server from crashing in dev mode if an exception occurs during build (48a64c2)

Features

  • add experimental SSR resource loading (bb34439)
  • add support for @loadable (6b2cbcb)
  • add usePersistentValue (472813c)
  • load .browser.ext over .ext on browser, .server.ext on server if present (422af5e)
  • make use-location return URL & cause re-render on change (40b23c8)

0.20.2 (2019-05-13)

Bug Fixes

  • prevent lodash feature from using babel.config.js when compiling node_modules (c57cb87)

0.20.1 (2019-05-07)

Bug Fixes

  • disable using babel.config.js as we load it manually (b336ba0)

0.20.0 (2019-04-26)

Bug Fixes

  • don't parse node_modules with remove-prop-types (9ce4429)

Features

  • add ssr ready use-dnt, use-user-agent, use-location (5c808c2)
  • expose request and response through context when in SSR (8225d26)
  • remove compression (8a76d19)
  • replace uglify with terser & update deps (1537111)

0.19.0 (2019-04-23)

Features

  • replace with-context-consumer with with-context (59600f1)

0.18.0 (2019-04-23)

Bug Fixes

  • babel presets - use NODE_ENV if BABEL_ENV is not set (2198063)
  • cancel redirect if same url, fix redirect crashing (b60b536)
  • make "server" build use /lib instead of /es (adae823)

Features

  • remove "webpack" from build folder name (33d4c28)

0.17.4 (2019-03-05)

Bug Fixes

  • don't resolve main-component so webpack is the one resolving files (04a33c1)
  • remove .react.js from special file extension (.js is enough) (798d10a)

0.17.3 (2019-02-22)

Bug Fixes

  • update dependencies & remove explicit regeneratorRuntime (b40e61f)

0.17.2 (2019-02-12)

Bug Fixes

  • stringify argv so webpack can replace it in built files (29dae67)

0.17.1 (2019-02-12)

Bug Fixes

  • make @reworkjs/core/argv work on node processes (018cfc1)

0.17.0 (2019-02-11)

Bug Fixes

  • expose context for use in react hooks (a577078)
  • update usage of old babel plugin (a2726ee)

Features

0.16.0 (2019-02-07)

Bug Fixes

  • disable css-loader minimize, move to postcss (c501eed)

Features

  • remove build-in ngrok support (3f05ca2)
  • remove intl locales not matching available translations (06e1f1a)

⚠ BREAKING CHANGES

  • use ngrok externally

0.15.1 (2019-01-08)

Bug Fixes

  • config: fix setting react-entry crashing the app (bebefa4)

0.15.0 (2019-01-08)

Bug Fixes

  • fix crash when persisting locale in cookies (278abbb)
  • Store prefered locale on change (a348e8d)
  • babel: do not run react preset on node_modules (b912832)
  • babel: fix crashes related to babel update (deca477)
  • locale: enable react-intl locale after it has been loaded (5ef4818)
  • react-intl: create locale alias when framework finds one that does not exist in react-intl (0f1e5c8)
  • route: add key to top level routes (2d7e693)

Features

  • allow plugins to hook client and server rendering (d6c2eb0)
  • completely replace redux with new plugin system (1170ddf)
  • expose singleton instance on plugins (5dc23ed)
  • hydrate react tree if its container has content, render otherwise (776ef82)
  • move public modules from index.js to individual sub-modules (05d241b)
  • Prevent ReworkJsWrapper from generating a new Div (20231ba)
  • Remove all usages of Redux (will add them through plugins) (2566067)
  • update to react-router v4 (61d0860)
  • babel: update to babel 7, update hot reload system, transpile node_modules (stable only) (c489349)
  • i18n: make translations local to a single react tree (921dec8)

0.14.1 (2018-08-09)

Bug Fixes

  • make get-translations node mock work on non-unix filesystems (a4424b3)

0.14.0 (2018-06-12)

Bug Fixes

  • Fix crash when loading a project without an existing configuration file (48aaf40)
  • Make render-html & pre-init optional (81c5cf2)

Features

  • Add a way to append a script to the service worker (5baeb49)

0.13.0 (2018-05-09)

Bug Fixes

  • Compress CSS files with gzip (572b59f)
  • Fix sending a corrupted response when trying to access a precompressed resource with a query parameter (0d9ca5d)
  • Make SW cache root route (5c77e0e)
  • Make the built server able to run from a different directory than the one it was built in (4f1480c)
  • only import framework-config in bundle in development mode (fc2c95e)
  • Use log directory to store app logs instead of build directory (cb6837d)

Features

  • Add brotli pre-compress support (c43844b)

0.12.0 (2018-04-18)

Bug Fixes

  • Disable removeAvailableModules in development (c7ec6ee)
  • Disable webp minification (2832d19)
  • Fix injecting cookies into BaseHelmet when building the app (faefd8d)

Features

  • Disable eslint by default (f1f9e4b)

⚠ BREAKING CHANGES

  • Enable eslint using --features=eslint

0.11.0 (2018-04-11)

Bug Fixes

  • Bump required webpack-bundle-analyzer version to solve issue with concat modules (de8494a)
  • Don't ss-render context style tags in production (d9f28b2)
  • Fix app builder crashing in watch mode when initial build failed and an user tries to access it (fa274bb)
  • Fix react not being able to display errors due to cross-origin issues (49dfbcb)
  • Fix server-side loading of CSS (fd27864)
  • Launch pre-rendering server on correct port in prod (38003c3)
  • Make render-html config entry work with SSR (d9c5a73)
  • Migrate optimization plugins to webpack.optimization (bd8152d)
  • Only pre-render CSS as <style> tags in development (71ce71b)
  • Only pre-serve named bundles for reliability (7d4f6ae)
  • Optimize images on the server too so their hash is identical to the front-end (8a6af49)
  • Prevent passing webp files to file-loader twice (c072796)
  • Remove --no-prerendering warning as prerendering is now off by default (a605987)
  • Replace deprecated webpack.optimize.UglifyJsPlugin with uglifyjs-webpack-plugin (f0eac80)
  • Set lang html attribute to loaded language (f64c6b2)

Features

  • Add support for loading .mjs files (2c80a58)
  • Add support for webp (06843a5)
  • Don't generate chunk names in splitChunks for long term caching (fa82439)
  • CSS is now split per chunk (43554a3)
  • webpack: Pass WebP to imagemin, configure mozjpeg&gifsicle (1660ad3)
  • Update dependencies (a4265af)
  • Update peer dependencies (32646bb)
  • Migrate to React 16.3.1

⚠ Breaking Changes

  • Drop support for node < latest LTS (= 8) (80b76be)