Skip to content

Error: Got unexpected undefined #8375

Closed
@chin2km

Description

🐛 bug report

Trying to migrate a very large repository (private to a company) from webpack to parcel, I'm facing this frequent build error Error: Got unexpected undefined when running parcel watch and the error log doesn't say much more than that. After adding some manual error logging at the source in parcel core in node module I have some more info. Its getting thrown when running svg,jpg,png files through the compressors in this function in @pracel/core.

We loved parcel in our tests and plan to use parcel in dev mode as of now (with plan to use in production later), but this error blocks us. Tried several fixes suggestion from various issues in the repo already but none seems to fix this particular issue.

Any suggestions/help to get around this is highly appreciated.

example complete error

 console: >> errorrrr {
   filePath: 'packages/application-desktop/dist/assets/apple-app-store-badge_nl.8fed9113.svg',
   err: Error: Got unexpected undefined
       at nullthrows (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/nullthrows/nullthrows.js:7:15)
       at Object.run (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/@parcel/core/lib/requests/DevDepRequest.js:133:54)
       at RequestTracker.runRequest (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/@parcel/core/lib/RequestTracker.js:725:34)
       at Object.runRequest (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/@parcel/core/lib/RequestTracker.js:777:23)
       at runDevDepRequest (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/@parcel/core/lib/requests/DevDepRequest.js:127:13)
       at runCompressor (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/@parcel/core/lib/requests/WriteBundleRequest.js:240:47)
       at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
       at async Promise.all (index 0)
       at async writeFiles (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/@parcel/core/lib/requests/WriteBundleRequest.js:207:3)
       at async Object.run (/Users/chintu.mohandas/Documents/Company/frontend-web/node_modules/@parcel/core/lib/requests/WriteBundleRequest.js:179:3) {
     framesToPop: 1
   },
   compressors: [
     {
       plugin: [Object],
       version: '2.7.0',
       resolveFrom: 'node_modules/@parcel/config-default/index.json',
       range: undefined,
       name: '@parcel/compressor-raw',
       keyPath: '/compressors/*/0'
     }
   ]
 }

The error happens when the svg,jpg,png files are run through @parcel/compressor-raw. Is there a way to skip using any compressor at all during dev mode?

.parcelrc

{
  "extends": [
    "@parcel/config-default"
  ],

  "resolveFrom": ".",
}

🎛 Configuration (.babelrc, package.json, cli command)

package.json

"scripts": {
    "client:dev": "parcel watch --target=client",
    "server:dev": "parcel watch --target=server",
    "develop:beta": "concurrently 'yarn client:dev' 'yarn server:dev'"
  },
  "targets": {
    "client": {
      "context": "browser",
      "source": "./src/index.html",
      "distDir": "./dist/assets",
      "publicUrl": "/assets/"
    },
    "server": {
      "context": "node",
      "outputFormat": "esmodule",
      "source": "./src/server-entry.tsx",
      "distDir": "./dist/server",
      "publicUrl": "/assets/",
      "includeNodeModules": false,
      "sourceMap": true
    }
  },

🤔 Expected Behavior

No errors in final compression stage

😯 Current Behavior

Described above

💁 Possible Solution

A Way to skip compressors for file globs?

🔦 Context

We are trying a build a very large server rendered react application with parcel.

💻 Code Sample

Happens in a private repo.

🌍 Your Environment

Software Version(s)
Parcel 2.7.0
Node 16.14.2
npm/Yarn yarn 1.22.19
Operating System macOS Mac M1 Pro

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions