Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to master, this PR will be updated.
Releases
@preact/async-loader@4.0.0
Major Changes
03b8f9dThanks @rschristian! - Drops support for Preact v8preact-cli@4.0.0
Major Changes
#1647
03b8f9dThanks @rschristian! - Drops support for Preact v8#1647
03b8f9dThanks @rschristian! - Alters CSS Module detection to instead rely upon file names, rather than directory names.Treating all CSS files found within
routes/andcomponents/as CSS Modules was not obvious, nor did it offer an easy way to opt out (or in) without editing the Webpack config itself.This change makes is so that users can opt into CSS Modules from anywhere in their app by instead naming their CSS files according to the pattern
*.module.css.Anyone using CSS Modules within
routes/orcomponents/will need to alter their CSS files to bex.module.css. If you've disabled CSS Modules in yourpreact.config.js, you can remove that bit of configuration and use file names to instead determine behavior.#1647
03b8f9dThanks @rschristian! - Reduces theenvparameter ofpreact.config.jsto only contain 3 values:isProd,isWatch, andisServer.Previously,
envcontained many semi-duplicated values (productionandisProd, etc) as well as values that were unlikely to be of much use to many users (what flags were set, for instance). Because of this, the signal-to-noise ratio was rather low which we didn't like. As such, we reducedenvdown to the most basic environment info: what type of build ispreact-clidoing and for which environement?If you customize your Webpack config using a
preact.config.js, please be aware that you may need to update which values you consume fromenv.#1647
03b8f9dThanks @rschristian! - To increase transparency and user control over thetemplate.html,<% preact.headEnd %>and<% preact.bodyEnd %>will no longer be supported; instead, users should directly adopt the EJS and keep it in their templates.In the past, these were abstracted away as they were a bit unwieldy; EJS might be unfamiliar with users and the way data was retrieved from
html-webpack-pluginwas somewhat less than elegant. However, this has much improved over the years and the abstraction only makes simple edits less than obvious, so it is no longer fulfilling it's purpose.New projects will have a
template.ejscreated in place of the oldtemplate.html, containing the full EJS template. For existing projects, you can copy the defaulttemplate.ejsinto your project or adapt it as you wish.#1647
03b8f9dThanks @rschristian! - HMR / the--refreshflag is now enabled by default in dev mode.#1647
03b8f9dThanks @rschristian! - Changes the JSX transform from 'classic' to the newer 'automatic'Users will no longer need to add
import { h } from 'preact'in their components; it will be done automatically for them.#1647
03b8f9dThanks @rschristian! - Removes--preloadflag and functionality from build command.#1647
03b8f9dThanks @rschristian! - Removes--json&--brotliflags frompreact build. Also removes--rhlalias for--refreshfrompreact watch.#1647
03b8f9dThanks @rschristian! - Updates to use html-webpack-plugin v4#1647
03b8f9dThanks @rschristian! - - Upgrades to Webpack v5Any custom configuration you do in your
preact.config.jsmay need to be altered to account for this. Plugins may need replacements or different option formats.--esmflag has been removed.babelrcno longer overwrites matching keyspreact.config.jsif you want to edit or remove default plugins or presets.#1647
03b8f9dThanks @rschristian! - Minimum supported Node version forpreact-cliis now v14.14.0. Please upgrade if you are on an older version.buildandwatchcommands will no longer take an optionalsrcdirectory argument; if you want to change the source directory from the default (./src), please instead use the--srcflag (i.e.,--src differentSrc).Upon rebuild, the output directory will no longer be outright deleted; instead, it will be emptied. This has the benefit of better supporting containerized environments where specific directories are mounted. Emptying the directory, rather than deleting and recreating it, ensures a stable reference for those tools.
#1647
03b8f9dThanks @rschristian! - Extracts project creation functionality frompreact-cliintocreate-preact-cliSetting up new
preact-cliprojects withnpxis slow, as all dependencies ofpreact-cliwould need to be installed, even though only a handful are used for project initialization. On the other hand, suggesting global installs is less than attractive due to NPM's poor default install location (requiressudo) and this can get out of sync over time.By extracting project initialization into its own package, we can provide much, much faster project setup times.
To setup a new project, users will use
npm init preact-cli ...oryarn create preact-cli ....Additionally, the
--yarnflag has been removed in favour of using the yarn initializer (yarn create).Patch Changes
#1816
372d8faThanks @rschristian! - Removedoptimize-plugin, now a single bundle will be output.#1647
03b8f9dThanks @rschristian! - Disables hash in CSS file names for the SSR build#1814
1777c90Thanks @rschristian! - Fix for incorrect minification in some specific circumstances. Files should now minify slightly better too.Updated dependencies [
03b8f9d]:create-preact-cli@1.0.0
Major Changes
#1647
03b8f9dThanks @rschristian! - Extracts project creation functionality frompreact-cliintocreate-preact-cliSetting up new
preact-cliprojects withnpxis slow, as all dependencies ofpreact-cliwould need to be installed, even though only a handful are used for project initialization. On the other hand, suggesting global installs is less than attractive due to NPM's poor default install location (requiressudo) and this can get out of sync over time.By extracting project initialization into its own package, we can provide much, much faster project setup times.
To setup a new project, users will use
npm init preact-cli ...oryarn create preact-cli ....Additionally, the
--yarnflag has been removed in favour of using the yarn initializer (yarn create).Patch Changes
372d8faThanks @rschristian! - Removedoptimize-plugin, now a single bundle will be output.@preact/prerender-data-provider@4.0.0
Major Changes
03b8f9dThanks @rschristian! - Updates to use html-webpack-plugin v4