quasarframework/quasar · warning

Skipping unsupported entry type at ${fullPath}

Error message

Skipping unsupported entry type at ${fullPath}

What it means

While walking the BEX package directory to build the extension zip, walkDirectory encounters a filesystem entry that is neither a regular file nor a directory (sockets, symlinks, FIFOs, etc.). It emits this warning and skips the entry instead of adding it to the archive.

Source

Thrown at app-vite/lib/modes/bex/bex-builder.js:107

            reject: localReject
          } = Promise.withResolvers()

          const readStream = fse.createReadStream(fullPath)

          // Node Buffers are Uint8Arrays under the hood, so fflate accepts them directly
          readStream.on('data', chunk => deflater.push(chunk, false))
          readStream.on('error', localReject)
          readStream.on('end', () => {
            // Passing `true` as the second argument signals EOF for this file
            deflater.push(new Uint8Array(0), true)
            localResolve()
          })

          await localPromise
        } else {
          // Ignore things like sockets or symlinks and emit a warning
          if (typeof warn === 'function') {
            warn(`Skipping unsupported entry type at ${fullPath}`)
          }
        }
      }
    }

    // Start the walk then finalize the zip when done
    walkDirectory(dir)
      .then(() => zip.end())
      .catch(err => {
        zip.terminate()
        reject(err)
      })

    return promise
  }
}

View on GitHub (pinned to 4841521b5f)

Solutions

  1. Remove or replace the symlink/special file inside src-bex with a real copy of the target content.
  2. Identify the offending path from the fullPath in the message (find src-bex -type l -o -type s) and delete it.
  3. Move shared assets out of src-bex and copy them at build time via quasar.config > bex.extendBexScriptsJson or a build hook.
  4. Re-run the BEX build and confirm the warning is gone.

Example fix

// before
src-bex/public/assets -> /home/user/shared-assets  (symlink)
// after
cp -rL /home/user/shared-assets src-bex/public/assets  (real directory)
Defensive patterns

Strategy: validation

Validate before calling

// before building the BEX
const { execSync } = require('child_process')
const specials = execSync('find src-bex \( -type l -o -type s -o -type p \)', { encoding: 'utf8' }).trim()
if (specials) throw new Error('Unsupported file types in src-bex:\n' + specials)

Prevention

When it happens

Trigger: A file inside src-bex (or the bundled package folder) is a symlink, unix socket, named pipe, or other special file type; walkDirectory's else branch catches the unsupported fs.Stats type and calls warn(`Skipping unsupported entry type at ${fullPath}`).

Common situations: Symlinked asset folders (e.g. node_modules linked from elsewhere) placed inside src-bex/public or src-bex/www; dev leftovers like .sock files from local servers; cross-platform checkout tools converting symlinks oddly.

Related errors


AI-assisted analysis of quasarframework/quasar@4841521b5f (2026-08-30). Data as JSON: /api/errors/7b0c11d749989d52. Report an issue: GitHub.