{"record":{"id":"7b0c11d749989d52","repo":"quasarframework/quasar","slug":"skipping-unsupported-entry-type-at-fullpath","errorCode":null,"errorMessage":"Skipping unsupported entry type at ${fullPath}","messagePattern":"Skipping unsupported entry type at (.+?)","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"app-vite/lib/modes/bex/bex-builder.js","lineNumber":107,"sourceCode":"            reject: localReject\n          } = Promise.withResolvers()\n\n          const readStream = fse.createReadStream(fullPath)\n\n          // Node Buffers are Uint8Arrays under the hood, so fflate accepts them directly\n          readStream.on('data', chunk => deflater.push(chunk, false))\n          readStream.on('error', localReject)\n          readStream.on('end', () => {\n            // Passing `true` as the second argument signals EOF for this file\n            deflater.push(new Uint8Array(0), true)\n            localResolve()\n          })\n\n          await localPromise\n        } else {\n          // Ignore things like sockets or symlinks and emit a warning\n          if (typeof warn === 'function') {\n            warn(`Skipping unsupported entry type at ${fullPath}`)\n          }\n        }\n      }\n    }\n\n    // Start the walk then finalize the zip when done\n    walkDirectory(dir)\n      .then(() => zip.end())\n      .catch(err => {\n        zip.terminate()\n        reject(err)\n      })\n\n    return promise\n  }\n}\n","sourceCodeStart":89,"sourceCodeEnd":124,"githubUrl":"https://github.com/quasarframework/quasar/blob/4841521b5f635a971eb9e2710e5542efd194691b/app-vite/lib/modes/bex/bex-builder.js#L89-L124","documentation":"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.","triggerScenarios":"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}`).","commonSituations":"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.","solutions":["Remove or replace the symlink/special file inside src-bex with a real copy of the target content.","Identify the offending path from the fullPath in the message (find src-bex -type l -o -type s) and delete it.","Move shared assets out of src-bex and copy them at build time via quasar.config > bex.extendBexScriptsJson or a build hook.","Re-run the BEX build and confirm the warning is gone."],"exampleFix":"// before\nsrc-bex/public/assets -> /home/user/shared-assets  (symlink)\n// after\ncp -rL /home/user/shared-assets src-bex/public/assets  (real directory)","handlingStrategy":"validation","validationCode":"// before building the BEX\nconst { execSync } = require('child_process')\nconst specials = execSync('find src-bex \\( -type l -o -type s -o -type p \\)', { encoding: 'utf8' }).trim()\nif (specials) throw new Error('Unsupported file types in src-bex:\\n' + specials)","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Never symlink directories inside src-bex; use build-time copy scripts instead.","Add a prebuild check for sockets/FIFOs/symlinks in src-bex.","Keep node_modules and generated artifacts out of src-bex."],"tags":["bex","filesystem","packaging","symlink"],"backgroundTag":"unsupported-file-type","analyzedSha":"4841521b5f635a971eb9e2710e5542efd194691b","analyzedAt":"2026-08-30T01:13:14.944Z","schemaVersion":2},"datasetVersion":"2026-08-30T03:17:51.788Z"}