electron-userland / electron-builder

A complete solution to package and build a ready for distribution Electron app with “auto update” support out of the box
https://www.electron.build
MIT License
13.61k stars 1.74k forks source link

Cannot find module during afterSign #4771

Closed Suhail closed 4 years ago

Suhail commented 4 years ago

I am curious if anyone knows why the relative path of the root dir might not be respected here?

$ tree build2/
build2/
├── icon.png
└── mac
    ├── entitlements.mac.plist
    ├── notarize.js
    └── patch-dpi.js

1 directory, 4 files

"electron-builder": "^22.4.1", "electron-notarize": "^0.2.1",

Error:

 electron-builder Error: Cannot find module '/Users/suhail/Desktop/workspace/cloudbox/dist/mac/Mighty.app/Contents/Frameworks/Mighty Helper.app/Contents/build2/mac/notarize.js'
  electron-builder Require stack:
  electron-builder - /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/platformPackager.js
  electron-builder - /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/macPackager.js
  electron-builder - /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/packager.js
  electron-builder - /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/index.js
  electron-builder - /Users/suhail/Desktop/workspace/cloudbox/node_modules/electron-builder/out/builder.js
  electron-builder - /Users/suhail/Desktop/workspace/cloudbox/node_modules/electron-builder/out/cli/cli.js
  electron-builder     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:772:15)
  electron-builder     at Function.resolve (internal/modules/cjs/helpers.js:74:19)
  electron-builder     at resolveFunction (/Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/src/platformPackager.ts:646:17)
  electron-builder     at MacPackager.doPack (/Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/src/platformPackager.ts:245:23)
  electron-builder     at MacPackager.pack (/Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/src/macPackager.ts:127:7)
  electron-builder     at Packager.doBuild (/Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/src/packager.ts:444:9)
  electron-builder     at executeFinally (/Users/suhail/Desktop/workspace/cloudbox/node_modules/builder-util/src/promise.ts:12:14)
  electron-builder     at Packager._build (/Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/src/packager.ts:373:31)
  electron-builder     at Packager.build (/Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/src/packager.ts:337:12)
  electron-builder     at executeFinally (/Users/suhail/Desktop/workspace/cloudbox/node_modules/builder-util/src/promise.ts:12:14) +0ms
  ⨯ Cannot find module '/Users/suhail/Desktop/workspace/cloudbox/dist/mac/Mighty.app/Contents/Frameworks/Mighty Helper.app/Contents/build2/mac/notarize.js'
Require stack:
- /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/platformPackager.js
- /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/macPackager.js
- /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/packager.js
- /Users/suhail/Desktop/workspace/cloudbox/node_modules/app-builder-lib/out/index.js
- /Users/suhail/Desktop/workspace/cloudbox/node_modules/electron-builder/out/builder.js
- /Users/suhail/Desktop/workspace/cloudbox/node_modules/electron-builder/out/cli/cli.js  stackTrace=
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Error: Cannot find module '/Users/suhail/Desktop/workspace/cloudbox/dist/mac/Mighty.app/Contents/Frameworks/Mighty Helper.app/Contents/build2/mac/notarize.js'

Full package.json:

{
  "name": "mighty",
  "productName": "Mighty",
  "version": "0.0.22",
  "description": "Mighty makes Google Chrome faster & use 10x less memory.",
  "main": "./vapp/index.js",
  "scripts": {
    "start": "yarn electron .",
    "install-all": "(cd firebase/functions && yarn install) && (cd addons/vapp && yarn install) && yarn install",
    "build:dev": "yarn lint && yarn clean && yarn tsc -p tsconfig.json && (cd addons/vapp && yarn build:dev)",
    "build": "yarn lint && yarn tsc -p tsconfig.json && (cd addons/vapp && yarn build)",
    "lint": "yarn tslint -p tsconfig.json -c tslint.json",
    "clean": "rm -rf ./vapp/*.js* && rm -f ./addons/vapp/addon.node && rm -rf ./addons/vapp/build",
    "watch": "yarn tsc -p tsconfig.json -w",
    "pkg:dir": "yarn build && (cd addons/vapp && yarn test:client) && yarn electron-builder --dir",
    "pkg:dmg": "yarn electron-builder",
    "pkg:start-bin": "./dist/mac/$npm_package_name.app/Contents/MacOS/$npm_package_name",
    "wifi": "yarn wifi --current",
    "rebuild": "npm_config_disturl=https://electronjs.org/headers npm rebuild --target=8.0.3 --runtime=electron --scripts-prepend-node-path",
    "prod:deploy-hosts": "(cd devops/ansible && ansible-playbook -i hosts deploy.yml -K)",
    "prod:deploy-vm": "sh -c '(cd devops/ansible && ansible-playbook -i hosts --limit ${0} deploy.yml -K)'",
    "create-machine": "(cd firebase && node index.js --create-machine)"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/Suhail/cloudbox.git"
  },
  "author": "",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/Suhail/cloudbox/issues"
  },
  "homepage": "https://github.com/Suhail/cloudbox#readme",
  "devDependencies": {
    "@firebase/testing": "^0.16.3",
    "@types/react": "^16.9.11",
    "@types/react-dom": "^16.9.3",
    "copyfiles": "^2.1.1",
    "dotenv": "^8.2.0",
    "electron": "8.0.3",
    "electron-builder": "^22.4.1",
    "electron-notarize": "^0.2.1",
    "electron-reload": "^1.5.0",
    "firebase-admin": "^8.8.0",
    "fs-extra": "^8.1.0",
    "globby": "^10.0.1",
    "node-addon-api": "^1.6.2",
    "prettier": "1.19.1",
    "prompt": "^1.0.0",
    "run-script-os": "^1.0.5",
    "shelljs": "^0.8.3",
    "tslint": "^5.20.1",
    "tslint-config-airbnb": "^5.11.1",
    "tslint-config-prettier": "^1.18.0",
    "tslint-config-standard": "^8.0.1",
    "tspath": "^1.3.7",
    "typescript": "^3.7.4",
    "yarn": "^1.22.0"
  },
  "dependencies": {
    "@sentry/cli": "^1.51.1",
    "@sentry/electron": "1.2.1",
    "@sentry/node": "5.13.0",
    "electron-store": "^5.0.0",
    "firebase": "^7.6.0",
    "jwt-decode": "^2.2.0",
    "minimist": "^1.2.0",
    "mixpanel": "^0.11.0",
    "moment": "^2.24.0",
    "node-gyp": "^5.0.7",
    "node-wifi": "^2.0.12",
    "promise.allsettled": "^1.0.1",
    "queue": "^6.0.1",
    "react": "^16.11.0",
    "react-dom": "^16.11.0",
    "reconnecting-websocket": "^4.2.0",
    "request": "^2.88.0",
    "request-promise": "^4.2.4",
    "winston": "^3.2.1",
    "ws": "^7.0.0",
    "zeromq": "^6.0.0-beta.6"
  },
  "build": {
    "appId": "com.mighty.app",
    "asar": false,
    "npmRebuild": false,
    "mac": {
      "category": "public.app-category.productivity",
      "extendInfo": {
        "CFBundleURLSchemes": [
          "http",
          "https"
        ]
      }
    },
    "afterPack": "./build2/mac/patch-dpi.js",
    "afterSign": "./build2/mac/notarize.js",
    "extraFiles": {
      "from": "./bin",
      "to": "Resources/bin"
    },
    "dmg": {
      "sign": false
    },
    "files": [
      "**/*",
      "!*",
      "!addons/",
      "!addons/vapp/keys/",
      "addons/vapp/keys/rootCA.crt",
      "addons/vapp/src/",
      "addons/vapp/assets/",
      "addons/vapp/addon.node",
      "!addons/vapp/src/host/",
      "vapp/",
      "!build/mac/**/*",
      "!vapp/*.{ts,js.map}",
      "!addons/vapp/**/*.{ts,js.map}",
      "!**/{CHANGELOG.md,README.md,README,readme.md,readme}",
      "!**/node_modules/*/{test,__tests__,tests,powered-test,example,examples}",
      "!**/node_modules/*.d.ts",
      "!**/node_modules/.bin",
      "!**/*.{iml,o,hprof,orig,pyc,pyo,rbc,swp,csproj,sln,xproj}",
      "!.editorconfig",
      "!**/._*",
      "!**/{.env,.DS_Store,.git,.hg,.svn,CVS,RCS,SCCS,.gitignore,.gitattributes}",
      "!**/{__pycache__,thumbs.db,.flowconfig,.idea,.vs,.nyc_output}",
      "!**/{appveyor.yml,.travis.yml,circle.yml}",
      "!**/{npm-debug.log,yarn.lock,.yarn-integrity,.yarn-metadata.json}"
    ]
  }
}
Kilian commented 4 years ago

I don't think you need the relative path and can just do "afterSign": "build2/mac/notarize.js", provided that your package.json in in the same dir as build2. Is there a particular reason why you want that?

Edit: you're not excluding the build2 folder from your files. the error is in the buildPack function which comes before the sign function so it might be that.

stale[bot] commented 4 years ago

Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward?

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

Suhail commented 4 years ago

Still relevant

scil commented 3 years ago

after packaging, I got error Cannot find module 'react', because I wrongly installed a package in src\package.json, instead of .\package.json