vite-pwa / sveltekit

Zero-config PWA Plugin for SvelteKit
https://vite-pwa-org.netlify.app/frameworks/sveltekit
MIT License
304 stars 15 forks source link

One of the glob patterns doesn't match any files #80

Open leonwang908 opened 5 months ago

leonwang908 commented 5 months ago

here is log from console.

mode      generateSW
precache  91 entries (1653.86 KiB)
files generated
  .svelte-kit/output/server/sw.js
  .svelte-kit/output/server/workbox-f3e6b16a.js
warnings
  One of the glob patterns doesn't match any files. Please remove or fix the following: {
  "globDirectory": "/home/hogehoge/.svelte-kit/output",
  "globPattern": "prerendered/**/*.html",
  "globIgnores": [
    "server/*.*",
    "server/sw.js",
    "server/workbox-*.js"
  ]
}

here is log from brower

    at O.createHandlerBoundToURL (https://snaplnk.net/workbox-f3e6b16a.js:1:13245)
    at Object.createHandlerBoundToURL (https://snaplnk.net/workbox-f3e6b16a.js:1:14916)
    at https://snaplnk.net/sw.js:1:6473
    at https://snaplnk.net/sw.js:1:565

here is my setting

import { sveltekit } from '@sveltejs/kit/vite';
import { defineConfig } from 'vitest/config';
import { SvelteKitPWA } from '@vite-pwa/sveltekit'

export default defineConfig({
    plugins: [
        sveltekit(),
        SvelteKitPWA({
            registerType: 'autoUpdate',
            strategies: 'generateSW',
            devOptions: {
                enabled: true,
                type: 'module',
                navigateFallback: '/',
            },
            manifest: {
                name: 'hogehoge,
                short_name: 'hogehoge',
                description: 'hogehoge',
                theme_color: '#808080',
                display: 'standalone',
                icons: [
                    {
                        src: 'pwa.png',
                        sizes: '512x512',
                        type: 'image/png',
                        purpose: 'masked any'
                    },
                ],
                start_url: '/',
            },
            workbox: {
                globPatterns: ['client/**/*.{js,css,ico,png,svg,webp,woff,woff2}']
            },
        }),
    ],
});
userquin commented 5 months ago

You should prerender navigate fallback page for offline support, I guess the warning is about missing html entries in prerendered folder.

You sw will fail when registeribg since there is no navigate fallback in sw precache manifest.

leonwang908 commented 5 months ago

My apps is forum app and it's no need to work under offline. is that any option to disable offline support?

userquin commented 5 months ago

https://github.com/vite-pwa/vite-plugin-pwa/issues/402#issuecomment-1295168405 (you also need to exclude html files, include globIgnores: ["prerendered/**/*.html" iirc glob ignores takes preferences over glog includes)

leonwang908 commented 5 months ago

understand. let me try in maintenance time

leonwang908 commented 5 months ago
workbox: {
                globPatterns: ['client/**/*.{js,css,ico,png,svg,webp,woff,woff2}'],
                globIgnores: ["prerendered/**/*.html"]
            },

I added globIgnores: ["prerendered/*/.html"] to vite.config.ts and it looks not effected. it show me warning like

PWA v0.19.7
mode      generateSW
precache  91 entries (1656.24 KiB)
files generated
  .svelte-kit/output/server/sw.js
  .svelte-kit/output/server/workbox-f3e6b16a.js
warnings
  One of the glob patterns doesn't match any files. Please remove or fix the following: {
  "globDirectory": "/home/hogehoge/.svelte-kit/output",
  "globPattern": "prerendered/**/*.html",
  "globIgnores": [
    "prerendered/**/*.html",
    "server/*.*",
    "server/sw.js",
    "server/workbox-*.js"
  ]
}
homerjam commented 5 months ago

I have this error too, it seems like the options in vite.config.js are ignored 🤔