- Enable sourcemaps in dev mode only by default (#590)
- Don't silently ignore unknown options passed to CLI (again) (#729)
- Revert erroring on unknown options passed to CLI, pending upstream bug investigation
- Various fixes for CSS sourcemaps (#421, #537, #808)
- Add
exportoption--entryfor specifying multiple entry points (#749) - Fix paths to component CSS in legacy build (#775)
- Fix exported sites with links to static files (#572)
- Properly update manifest data during changes in dev mode (#713)
- Don't silently ignore unknown options passed to CLI (#729)
- Add
hostvalue topagestore, giving uniform access toreq.headers.host/location.host(#735) - Log uncaught exceptions in server routes (#782)
- Fix default error template (#817)
- Update devalue
- Accommodate Svelte 3.5.0
- Prevent infinite loop if
preloaderrors (#677) - Allow disabling of live reload (#683)
- Let browser handle initial scroll (#331)
- Allow custom route file extensions via
--ext(#632) - Wait for server to restart before attaching debugger (#694)
- Fix export queue (#698)
- Rerun
preloadfunctions when query changes (#701) - Navigate when spread route changes (#688)
- Handle skipped segments (#663)
- Update to Svelte 3
- Slot-based nested routes (#573)
- Make
page,preloadingandsessionstores available to components (#642) - Handle missing/empty refs when exporting (#602)
- Prevent race condition when exporting (#585)
- Fix redirects with base path (#589)
- Add
<link rel="preload">to exported HTML (#568) - Handle deep links that are invalid selectors on initial load (#516)
- Use shared queue for exporting (#604)
- Handle
+character in query string (#618) - Spread routes (#545)
- Fix navigation from
/a/[id]to/b/[id](#610) - Allow
preloadfunctions to return falsy values (#587) - Mount error pages correctly (#620)
- Force refresh on
goto(current_url)(#484) - Fix preloading navigation bug (#532)
- Don't mutate opts.headers (#528)
- Don't crawl hundreds of pages simultaneously (#369)
- Support Rollup 1.0 (#541)
- Include CSS chunks in webpack build info to avoid duplication (#529)
- Fix preload
asfor styles (#530)
- Handle external URLs in
this.redirect(#490) - Strip leading
/from basepath (#495) - Treat duplicate query string parameters as arrays (#497)
- Don't buffer
stdoutandstderr(#305) - Posixify
build_dir(#498) - Use
page[XY]Offsetinstead ofscroll[XY](#480)
- Include lazily-imported CSS in main CSS chunk (#492)
- Make search param decoding spec-compliant (#493)
- Handle async route errors (#488)
- Ignore empty anchors when exporting (#491)
- Clear
errorandstatuson successful render (#477)
- Fix entry point CSS (#471)
- Overhaul internal APIs (#468)
- Remove unused
sapper startandsapper upgrade(#468) - Remove magic environment variables (#469)
- Preserve SSI comments (#470)
- Fix legacy builds (#462)
- Ensure CSS placeholders are overwritten (#462)
- Fix cookies (#460)
- Fix
sapper dev. Oops.
- Ensure launcher does not overwrite a module (#455)
- Prevent server from accidentally importing dev client
- Make paths in generated code relative to project
- Fix
pkg.files
- Move generated files into
__sapper__(#453) - Change default build and export directories to
__sapper__/buildand__sapper__/export(#453)
- Read template from build directory in production
- Inject
nonceattribute ifres.locals.nonceis present (#424) - Prevent service worker caching (#428)
- Consistent caching for HTML responses (#429)
- Add
immutablecache control header for hashed assets (#425) - Handle value-less query string params (#426)
- Update shimport
- Decode
req.paramsandreq.query(#417) - Decode URLs before writing files in
sapper export(#414) - Generate server sourcemaps for Rollup apps in dev mode (#418)
- Better unicode route handling (#347)
- Ignore editor tmp files (#220)
- Ignore clicks an
<a>element withouthref(#235) - Allow routes that are reserved JavaScript words (#315)
- Print out webpack errors (#403)
- Don't include local origin in export redirects (#409)
- Support differential bundling for Rollup apps via a
--legacyflag (#280)
- Bundle missing dependency
- Bugfix
- Fix service worker Rollup build config
- Update
pkg.files
- Add live reloading (#385)
- Print which file is causing build errors/warnings (#371)
- Use
cheap-watchinstead ofchokidar(#364)
- Fix file watching regression in previous version
- Slim down installed package (#363)
- Only set
preloading: trueon navigation, not prefetch (#352) - Provide fallback for missing preload errors (#361)
- Fix exporting with custom basepath (#342)
- Faster
exportwith more explanatory output (#335) - Only blur
activeElementif it exists (#332) - Don't emit
client_info.jsonorserver_info.json(#318)
- Add
ignoreoption (#326)
- Collapse component chains where no intermediate layout component is specified (#312)
- Prevent confusing error when no root layout is specified
- Nested routes (consult migration guide and docs on layouts) (#262)
- Prevent unsafe replacements (#307)
- Route parameters can be qualified with regex characters (#283)
4xx.htmland5xx.htmlare replaced with_error.html(#209)- Treat
foo/index.json.jsandfoo.json.jsas equivalents (#297) - Return a promise from
goto(#270) - Use store when rendering error pages (#293)
- Prevent console errors when visiting an error page (#279)
- Fix
baseUrlsynthesis (#296)
- Fix handling of fatal errors (#289)
- Focus
<body>after navigation (#287) - Fix timing of hot reload updates
- Emit
fatalevent if server crashes (#285) - Emit
stdoutandstderrevents on dev watcher (#285) - Always refresh client assets in dev (#286)
- Correctly initialise rebuild stats
- Make
fatalevents clonable for IPC purposes
- Emit a
basepathevent (#284)
- Reinstate ten-second interval between dev server heartbeats (#276)
- Expose
dev,build,exportandfind_pageAPIs (#272)
- Each app has a single
<App>component. See the migration guide for more information (#157) - Process exits with error code 1 if build/export fails (#208)
- Limit routes with leading dots to
.well-knownURIs (#252) - Allow server routes to sit in front of pages (#236)
- Create launcher file (#240)
- Only keep necessary parts of webpack stats (#251)
- Allow
NODE_ENVto be overridden when building (#241)
- Allow routes to have a leading
.(#243) - Only encode necessary characters in routes (#234)
- Preserve existing
process.envwhen exporting (#245)
- Fix error reporting in
sapper start
- Fix missing service worker (#231)
- Upgrade chokidar, this time with a fix (#227)
- Downgrade chokidar (#212)
- Attach
storeto error pages - Fix sorting edge case (#215)
- Fix server-side
fetchpaths (#207)
- Support mounting on a path (this requires
app/template.htmlto include%sapper.base%) (#180) - Support per-request server-side
Storewith client-side hydration (#178) - Add
this.fetchtopreload, with credentials support (#178) - Exclude sourcemaps from preload links and
<script>block (#204) - Register service worker in
<script>block
- Whoops —
tslibis a runtime dependency
- Stringify clorox output (#197)
- Add
SAPPER_BASEandSAPPER_APPenvironment variables (#181) - Minify template in
sapper build(#15) - Minify all HTML files in
sapper export(#172) - Log exported files (#195)
- Add
--open/-oflag tosapper devandsapper start(#186)
- Fix path to
sapper-dev-client
- Include
distfiles in package
- Include
sapperbin
- Use
devalueinstead ofserialize-javascript, allowingpreloadto return non-POJOs and cyclical/repeated references, but not functions (#112) - Kill child process if webpack crashes (#177)
- Support HMR on remote devices (#165)
- Remove hard-coded port ((#169))
- Allow non-JS files, e.g. TypeScript to be used as entry points and server routes (#57)
- Faster startup (#173)
- Fix route sorting (#175)
- Automatically select available port, or use
--portflag fordevandstart(#169) - Show stats after build/export (#168)
- Various CLI improvements (#170)
- Rename
preloadRoutestoprefetchRoutes(#166)
- Add
sapper startcommand, for running an app built withsapper build(#163)
- Update to webpack 4
- Add
preloadRoutesfunction — secondary routes are no longer automatically preloaded (#160) sapper buildoutputs tobuild,sapper build custom-diroutputs tocustom-dir(#150)sapper exportoutputs toexport,sapper export custom-diroutputs tocustom-dir(#150)- Improved logging (#158)
- URI-encode routes (#103)
- Various performance and stability improvements (#152)
- Prevent client-side navigation to server route (#145)
- Don't serve error page for server route errors (#138)
- Allow dynamic parameters inside route parts (#139)
- Handle webpack assets that are arrays instead of strings (#131)
- Wait for new server to start before broadcasting HMR update (#129)
- Add
hmr-client.jsto package - Wait until first successful client build before creating service-worker.js
- Add missing
tslibdependency
- Restructure app layout (see migration guide) (#126)
- Support
this.redirect(status, location)andthis.error(status, error)inpreloadfunctions (#127) - Add
sapper devcommand - Add
sapper --helpcommand
- Prevent phantom HMR requests in production mode (#114)
- Ignore non-HTML responses when crawling during
export - Build in prod mode for
export
- Handle unspecified type in
sapper export
- Fix
pkg.filesandpkg.bin
- Hydrate on first load, and only on first load (#93)
- Identify clashes between page and server routes (#96)
- Remove Express-specific utilities, for compatbility with Polka et al (#94)
- Return a promise from
initwhen first page has rendered (#99) - Handle invalid hash links (#104)
- Avoid
URLSearchParams(#107) - Don't automatically set
Content-Typefor server routes (#111) - Handle empty query string routes, e.g.
/?(#105)
- Only write service-worker.js to filesystem in dev mode (#90)
%sapper.main%has been replaced with%sapper.scripts%(#86)- Node 6 support (#67)
- Explicitly load css-loader and style-loader (#72)
- DELETE requests are handled with
delexports (#77) - Send preloaded data for first route to client, where possible (#3)
- Expose
prefetchfunction (#61)
- Fix missing
runtime.js
- Move
sapper/runtime/app.jstosapper/runtime.js - Cancel navigation if overtaken by second navigation (#48)
- Store preloaded data, to avoiding double prefetching (#49)
- Pass server request object to
preload(#54) - Nested routes (#55)
- Handle deep links correctly (#44)
- Don't write files to disk in prod mode
- Add
gotofunction (#29) - Don't use
/tmpas destination in Now environments
- Fix streaming bug
- Render main.js back to templates, to allow relative imports (#40)
- Fix nested routes on Windows (#39)
- Rebundle when routes and main.js change (#34)
- Add
Link...preloadheaders for JavaScript assets (#2) - Stream document up to first dynamic content (#19)
- Error if routes clash (#33)
- Posixify path to HMR client
- Posixify import paths, even on Windows (#31)
- Pass
urlto 404 handler
- Create destination directory when building, don't assume it's already there from dev mode
- We have tests now!
- Inject HMR logic in dev mode
- Separate
sapper buildfrom prod server (#21)
- Fix typo
- Use
atime.getTime()andmtime.getTime()instead ofatimeMsandmtimeMs(#11) - Make dest dir before anyone tries to write to it (#18)
- Expose resolved pathname to
sapper/runtime/app.jsas__app__inside main.js
- First public preview