Releases: FredKSchott/snowpack
[email protected]
[skip ci] [email protected]
v3.5.0
[skip ci] [email protected]
v3.4.0
v3.3.7
[skip ci] [email protected]
v3.3.6
[skip ci] [email protected]
[email protected]
New App Template: Preact + TypeScript
- f1ec251 - new: Add app-template-preact-typescript (#1238) @smashercosmo
New Official Plugin: Sass
Add Svelte "Fast Reload"
- 00e724e - feat: adding svelte-hmr (#1223) @rixo
- 2c3e152 - feat: add bubbled esm-hmr property (#1232)
Bug fixes and other improvements
- f269fa6 - new: add testFiles support (#1196)
- d61d7d7 - feat: support partial HTML to not get hmr scripts injected
- f57ca8a - feat: Adding SRI hash(es) for HMR script resources (#1268) @marpme
- fa4e76a - feat: add logger.debug calls to dev and build
- 5da777b - feat: add option to show hmr error overlay, update docs (#1239) @brianjacobs-natgeo
- 30dfc5c - feat: allow configuring the top level
this
value (#1219) @fubhy - 442ad85 - fix: support files with no extension
- 1f476b2 - fix: dev route match load orderdon't reach for fallback immediately
- 1bfc48c - fix: check if preact is being used in tsx (#1275) @intrnl
- 627aa2e - fix: hmr bug in react/preact update code
- b6df4e1 - fix: scanImports() function reads all files at once, can cause EMFILE in larger projects #1245 (#1256) @N8-B
- 899dd10 - fix: favicon 404 ignore error
- 55fb2f7 - fix: Recovers webpack magic comments and adds to import (#1243) @N8-B
- 1faf063 - [plugin-svelte] fix: Svelte plugin SSR bug; add test (#1241) @drwpow
- d34c194 - [react-refresh] feat: add private property support to react-refesh plugin
- 1ef62f0 - [build-script] fix: do not assume a build script failed completely if there's stderr (#1255) @fubhy
- 75ad503 - test: Writing the first docs test and fixing the broken anchor link errors it found (#1233) @melissamcewen
[email protected]
Fixes and improvements
- 9a9c3ac - docs: update tailwind import path (#1205) @stefanfrede
- 04bed2b - snowpack: partition the build cache (#1195)
- a4ef47c - snowpack: support dev streaming logs (#1203)
- 2b3670f - snowpack: add cli flag support for "experiments.ssr" (--ssr)
- d03cb5c - esinstall: handle cjs auto-named-exports with deep reexports (#1194)
- 710262d - esinstall: move trivial warnings to debug (#1193)
- d86e495 - [plugin-typescript] New plugin! (#1211)
- f515365 - [plugin-svelte] simplify svelte plugin (#1221) @Rich-Harris
- d4b21d3 - [plugin-webpack] Use default name behavior. (#1215) @heikkilamarko
- f61a703 - [template-svelte] remove outdated babel config file
- 3ab3842 - [template-svelte] update svelte templates to match react, preact
[email protected]
Bug fixes & improvements
- 0f50082 - Add homepage and repository properties for all published package.json files (#1198) @patdx
- 1df4e16 - fix: cjs<>esm auto interop needed a duplicate "default" export filter
- 09ec6b5 - fix: snowpack would fail to run if no node_modules/ directory existed
- 339a47f - fix: Snowpack HMR error reporter now reports more useful errors
- 86f1c16 - fix: add chai to default esinstall namedExports list
Snowpack v2.13 - The Developer Experience Update
Note: v2.13.0 was skipped. v2.13.1 is the first official v2.13 release!
Introducing Snowpack v2.13 - The DX Update. This entire release focused on developer quality-of-life with new features to simplify config, update error logging, and remove all unnecessary friction from your dev environment. It's genuinely one of my favorite releases so far, so I hope you enjoy an even better dev experience with Snowpack.
-- @FredKSchott
Simplified CSA Templates + Fast Refresh Improvements
All of our Create Snowpack App (CSA) templates have been improved this week, but the React & Preact templates got the biggest upgrades. They both sport a new design with a basic counter, perfect for testing that Fast Refresh is working (change the file, and see that the counter doesn't lose state). Behind the scenes, both Fast Refresh plugins have been updated to no longer require Babel externally, which means you can take advantage of our faster, built-in esbuild-powered pipeline.
- 55bbc83 - add example usage of fast refresh to react/preact templates (#1188)
- d69dbfe - refactor react-refresh plugin, babel user-dependency no longer needed (#1178)
- 2f19fd0 - update to latest prefresh/snowpack plugin
- 54fadca - CSA - move config back into templates, out of app-scripts-* packages (#1137)
Automatic "New Dependency" Handling
Tired of having to use that dumb --reload
flag? We were too! Snowpack now automatically re-installs dependencies when a new import is added. This feature keeps your work flowing with fewer unnecessary interruptions.
Automatic CJS "namedExport" Detection
Node.js recently announced that they were attempting automatic CJS<>ESM named export interop. Not to be outdone, we announced that we'd do the same :) This feature means no more manual namedExport
entries needed for most packages. Instead, Snowpack will attempt to automatically scan CJS packages for exports.
Snowpack uses the exact same internal lexer as Node.js to implement this, so expect to see the same results as Node.js v14 when you import a CJS npm package in ESM. However, this is a new idea that may still have some rough edges. If you see mixed results, remember that you can still use a manual "namedExports" config entry to use our more powerful runtime CJS detection.
Logging/Debugging Improvements
Snowpack v2.12 added our first ever Error Overlays. Snowpack v2.13 improves on that work with a full suite of improvements to logging, log formatting, and making sure that all reported errors contain relevant info. Our favorite subtle-but-great feature: Multiple "File Changed..." logs in a row are now counted and collapsed, giving you a cleaner dev console overall.
- 93e3478 - reduce verbose file changed events in the logs (#1190)
- f2279c8 - cleanup hmr error logging
- a809fcc - improve error handing (#1180)
- e59ae05 - add default favicon to dev server, if none exists (#1177)
Better Sourcemap Support
No matter what I try to do to stop you, y'all keep improving our source map support! This release featured work by @pkaminski to add compose multiple source maps together, allowing for source maps in multi-step build pipelines. We have more improvements to add inside of Snowpack to really tighten this story up, but this is a huge step in the right direction 👍
[email protected]
Note: v2.12.0 was skipped. v2.12.1 is the first official v2.12 release!
New: Live Error Overlays
Snowpack v2.12 now includes Live Error Overlays to surface build & runtime errors immediately during development. No more searching around for what exactly went wrong. Instead, you'll see every problem surfaced right in the application itself.
To see the new error overlays, just upgrade Snowpack in your project and run snowpack dev
!
A huge thanks to the Next.js team for the beautiful “react-dev-overlay” package template that these overlays are based on!
- Twitter sneak preview from last week: https://twitter.com/pikapkg/status/1308099900538679297
- e373499 - add runtime error overlay reporting (#1142)
- 6ed5359 - Advanced HMR Error Handling (2 of 2: Error Overlay) (#1073)
New: Vue 3.0 templates (incl. TypeScript!)
Vue 3.0 was released last week! To celebrate, we updated our Vue + Snowpack template to the latest version AND launched a new template for building Vue sites with TypeScript. Run create-snowpack-app
with the new @snowpack/app-template-vue-typescript
template to see it in action.
- 2a94ff1 - Feature/app-template-vue-typescript (#1088) @Akimyou
- 3a7b097 - updating to vue 3.0.0 @melissamcewen
- 4329d56 - remove bad vue template compiler option (#1101) @coolzjy
A new look for the docs site!
Exploring SSR
We've been exploring a better Server-Side Rendering (SSR) support story for Snowpack (in collaboration with members of the Svelte community) and this release marks the first features & improvements merged into Snowpack for SSR!
This is still an experimental area for us, but it's one we're really excited about investing in. More to come over the next several releases!
Want to get involved? Join us on Discord!
- eba63e3 - Fixes #970 by adding middleware dev config option. (#1062) @joshwilsonvu
- 05b2a9e - Add experimental SSR support for the dev server (#1086) @FredKSchott
A ton of other bug fixes and improvements!
- 95857f0 - [esinstall] add dts package handling (#1133) @FredKSchott
- 20388e4 - [esinstall] enable native esm for node v12+ (#1093) @FredKSchott
- af3c6c5 - [plugin-svelte] fix the dev option for dependencies (#1134) @FredKSchott
- 9891763 - [plugin-webpack] fix unnamed import scanning @FredKSchott
- f2dad02 - [plugin-react-refresh] add plugin error message if setup script not run (#1123) @FredKSchott
- 439d3f4 - [csa:app-scripts-react] add back react typescript support (#1071) @FredKSchott
- 42e48f3 - [csa:app-scripts-preact] add new babel plugin to enable context HMR (#1080) @JoviDeCroock
- 5056a69 - configure hmr port @MoonBall
- 884e4ab - configure run jobs to run in watch mode on build --watch (#1091) @FredKSchott
- 636443d - rethrow error of transform phase (#1095) @MoonBall
- 21610bc - Ensure that the import resolver respects installOptions.externalPackage. (#1070) @pkaminski
- 11c0eb5 - Add live reload delay (#998) @jaredramirez
- 9b7ad5c - Add .avif format to static types (#1066) @stramel