CHANGELOG
:information_source: For all later changes, please see https://github.com/NekR/offline-plugin/releases
4.8.1
4.8.0
- [Internals]: Async
waitUntil is now a thing (polyfilled)
- Added
TypeScript definitions
- RegExp support in cache paths #205
- Added
ServiceWorker.minify option to force to minify #204 & #206
- Allow ServiceWorker to be installed on any local IP (
127.*.*.*) #251
- Ship
ServiceWorker.minify option which controls if ServiceWorker's code will be minified or not
4.7.0
- ServiceWorker can now be registered at
127.0.0.1 #188
- New
ServiceWorker.navigateFallbackForRedirects option which is true by default (compatibility reasons) #230
- Fixed new security restriction introduced in browsers regardless navigation requests and redirects #231
4.6.2
- Wrap
applicationCache.update() with try..catch #189
4.6.1
- Fixed syntax error in
runtime-template.js
4.6.0
- Fixed compatibility with
hard-source-webpack-plugin #148
- Added
autoUpdate option and runtime.update() method #169
4.5.5
- Fix
request.headers typo in validatePrefetch which was preventing setting custom headers for prefetch requests
4.5.4
- Use
compilation.errors instead of callback(new Error('...')) when runtime is missing
4.0.0 - 4.5.3
relativePaths is now automatically set to false when publicPath is used
publicPath now uses webpack.config.js's output.publicPath by default (when not set in OfflinePlugin itself)
- Added
AppCache.output which is replacement for AppCache.directory. The last is deprecated now
- Added
ServiceWorker.publicPath and AppCache.publicPath
- Added
:externals: keyword for caches. When used, keyword is replaced with URLs listed in externals option
caches: 'all' is now equivalent of caches: { main: [':rest:', ':externals:'] }. In other words, externals URLs are now included in caches by default
- Default options of
offline-plugin are now exposed as require('offline-plugin').defaultOptions
ignoreSearch isn't applied to assets added with externals anymore. i.e. full URLs with ?query can now be added to the caches
- Added
responseStrategy option. Thanks to @MoOx. #112
- Added
ServiceWorker.cacheName option. Useful (but very dangerous) when you need to run more than one project on the same domain
- Make
updateStrategy default to 'changed'
- Added
ServiceWorker.prefetchRequest option
- Plugin now outputs its version to generated
ServiceWorker/AppCache files
- Implemented
cacheMaps option
- Made AppCache to not include cross origin URLs by default (because they don't work there on HTTPS). Could be returned back with
AppCache.includeCrossOrigin = true
- Dropped Node 0.10, Node 0.12 and IO.js support
- Updated
minimatch to 3.*
- Add AppVeyor CI tests
3.4.0
- Added
ServiceWorker.navigateFallbackURL option (see #71)
- Added warning about development mode in
runtime.js when used without OfflinePlugin in webpack.config.js (see #74)
3.3.0
- Fixed absolute URLs being prefixed with relative path when
relativePaths: true is used (#39, #60)
- Added
scope option to ServiceWorker (#19). See ServiceWorker.register docs.
3.0.0 - 3.2.0
- All assets are now requested cache-bust query parameter (
__uncache=${ Date.now() })
- Assets matching in caches now ignores search (query) path of URLs
- Rename
scope option to publicPath (scope is deprecated now and will produce warnings upon use)
- Make
publicPath: '' (empty string) by default
- Make
relativePaths: true by default
- Cache sections
'additional' and 'optional' are now allowed only when updateStrategy option is set to 'changed'
changed is now default updateStrategy and hash strategy is gone. offline-plugin now uses webpack's build hashes to apply change update strategy even when generate file names are the same. Issue 6. More details about change in docs.
- Any of
updateStrategy is now using version option for its version tag
version now is not set by default and returns (when not set, e.g. default) compilation hash for updateStrategy: 'changed' and version for updateStrategy: 'all'
version now has interpolation value, use [hash] to insert compilation hash to your version string
install() method signature now is install(options) (callbacks are removed)
- Runtime events are not implemented for ServiceWorker (and some for AppCache):
onUpdating, onUpdateReady, onUpdated, onInstalled.
Example: runtime.install({ onInstalled: () => ... })
- Added
applyUpdate() method to runtime
- Absolute URLs can now be specified in
caches as any other assets (they are required to be marked as externals)
- Added basic test and Travis CI
2.2.0
- Disallow pattern matching in
externals
2.1.0
- Allow pattern matching in
externals
2.0.0
- Added
relativePaths option. When true, all generated paths are relative to ServiceWorker file or AppCache folder. Useful in cases when app isn't in the root of domain, e.g. Github Pages. Setting scope to '' (empty string) is the same now as relativePaths: true.
- Added
excludes option to exclude assets from caches. Exclusion is global and is performed before any assets added to cache sections.
- Not specified sections in caches now equals to empty selection. Previously,
:rest: keyword was added automatically, now isn't.
- ':rest:' keyword is now handled after all caches sections were handled. Previously it was handled immediately when found.
- Plugin now throws an error when keyword
:rest: is used more than once.
ServiceWorker generation now used Child Compilation instead weird hacks with entry injections.
1.3.1
Improved ServiceWorker entry generation: use compilation.namedChunks instead of compilation.assets to access service-entry and replace it. See #10 for more details.
1.3
Added FALLBACK back section for AppCache and fixed generation of a NETWORK section.
1.2
Remove support of multi-stage caching from AppCache. Reason is that files cached in second manifest cannot be accessed from page cached by first one, since NETWORK section can only dictate to use network (*) or nothing (pretend offline), but not fallback to browser defaults. This means that any attempt to access files of second manifest goes to the network or fails immediately, instead of reading from cache.
1.1
Fix ServiceWorker login to not cache additional's section assets on activate event, instead, cache them without blocking any events. Other ServiceWorker logic fixes.
1.0
Release