-
e5f1d14Thanks @DuCanhGH! - fix(core): fixed invalid precache manifest and scope withbasePath- A fast backport of serwist/serwist#56.
- This is caused by "/_next/../public" in modifyURLPrefix not being matched when basePath is set, since the URL is actually "${basePath}/_next/../public/**/*". We now use
manifestTransformsinstead ofmodifyURLPrefix. - Also, with the refactor to using a context, we mistakenly changed
scopefrom "${scope}" (suffixed with / if originally not) to "${basePath}/${scope}". This reverts that change. Sorry for the inconvenience!
-
e583be6Thanks @DuCanhGH! - fix(disable): fixeddisablenot working properly- In 10.2.0 and 10.2.1, when
disablewas set, certain unexpected parts were still processed, causing the resulting app to contain some erroneous JavaScript. - This has been fixed in 10.2.2. Although we still run
parseOptions, we only do so to get the default options.
- In 10.2.0 and 10.2.1, when
-
aeb0dc9Thanks @DuCanhGH! - fix(mjs): fixed the ESM build crashing- This was due to us referencing
__dirname, which wasundefinedin the ESM build...
- This was due to us referencing
-
f65e6abThanks @DuCanhGH! - refactor(core): create a context- We now leverage a context to share the user's options for Webpack, Next.js,
next-pwa, TypeScript, etc. across the codebase. This is better than the old approach, which was similar to props drilling, in that it is more readable and less error-prone.- I'd like to extend my thanks to the
vite-pwateam for this approach! Learned a lot through forkingvite-plugin-pwa, that's for sure.
- I'd like to extend my thanks to the
- Additionally, the codebase now leverages Biome.js instead of Prettier and ESLint. For now, pre-commit hooks using Husky are not available.
- We now leverage a context to share the user's options for Webpack, Next.js,
-
#130
9ff6c29Thanks @DuCanhGH! - feat(next-pwa): re-adjustworkboxOptions.excludedefaults- This was long overdue, so here we are.
- Why?
- This proves to be more sensible than the old defaults.
- Would this incur a breaking change?
- Technically yes according to my definitions of a breaking change. It will cause a behavioural change in the built app, unexpectedly so for those who don't pinpoint their dependencies' versions. However, I don't believe this has an impact big enough. This... simply improves the user experience, and it won't cause any build to suddenly fail.
-
#127
a4b8926Thanks @DuCanhGH! - fix(cache-on-front-end-nav): fixed error 'URL object could not be cloned.'- This was due to us trying to send the URL object to our worker through
postMessage.
- This was due to us trying to send the URL object to our worker through
-
52d2390Thanks @DuCanhGH! - chore(backporting): backported some changes from@serwist/next@8.0.0- Removed
buildExcludes.- Simply use
workboxOptions.excludeas a replacement.
- Simply use
- Removed
customWorkerDir.- Use
customWorkerSrcinstead.
- Use
- Removed
browserslist,swcMinify,watchWorkersInDev.- We now create child compilers on Next.js's compiler instead of starting separate Webpack processes.
- This also means you don't need to have
@swc/coreinstalled anymore.
- Change the default value for
destfrom".next"to"public".- You should change it to
".next"in your project if there's demand, but I'd recommend using"public"instead.
- You should change it to
- Fixed the custom worker and the fallback worker not working...
- I'm seriously sorry... This was caused by
next-pwa'simportScriptsnot being passed to Workbox.
- I'm seriously sorry... This was caused by
- Moved the minimum supported Next.js version from 11.0.0 to 14.0.0.
- This is to remove the appDir check.
- Removed
- #115
974326eThanks @vlad-yakovlev! - fix(next-auth): allow users to use the application offline