Giter Site home page Giter Site logo

Issues with `strong-globalize` about ncc HOT 15 CLOSED

vercel avatar vercel commented on August 15, 2024
Issues with `strong-globalize`

from ncc.

Comments (15)

gijo-varghese avatar gijo-varghese commented on August 15, 2024 3

Looks like strong-globalize errors are fixed, but Loopback is still doesn't work. It's not detecting a few packages (they're built inside Loopback)

/home/gijo/workspace/hyperloop/dist/index.js:424268
    throw err;
    ^

Error: Cannot resolve path "compression"
    at resolveAppPath (/home/gijo/workspace/hyperloop/dist/index.js:424266:15)
    at resolveAppScriptPath (/home/gijo/workspace/hyperloop/dist/index.js:424597:22)
    at resolveMiddlewarePath (/home/gijo/workspace/hyperloop/dist/index.js:424469:20)
    at /home/gijo/workspace/hyperloop/dist/index.js:424387:24
    at Array.forEach (<anonymous>)
    at /home/gijo/workspace/hyperloop/dist/index.js:424386:18
    at Array.forEach (<anonymous>)
    at /home/gijo/workspace/hyperloop/dist/index.js:424381:30
    at Array.forEach (<anonymous>)
    at buildMiddlewareInstructions (/home/gijo/workspace/hyperloop/dist/index.js:424379:15)
    at compile (/home/gijo/workspace/hyperloop/dist/index.js:423961:5)
    at bootLoopBackApp (/home/gijo/workspace/hyperloop/dist/index.js:395285:22)
    at Object.<anonymous> (/home/gijo/workspace/hyperloop/dist/index.js:285412:1)
    at Object.<anonymous> (/home/gijo/workspace/hyperloop/dist/index.js:285445:30)
    at __webpack_require__ (/home/gijo/workspace/hyperloop/dist/index.js:21:30)
    at /home/gijo/workspace/hyperloop/dist/index.js:85:18

from ncc.

jbcpollak avatar jbcpollak commented on August 15, 2024

I'm not sure if this is the same issue, but we are natively using globalize in some of our code and get the following error when we run ncc build (I'm happy to file as a separate ticket or delete the comment if this is unrelated to the original issue):

ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist" attempted to require "cldr/event" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/supplemental" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/event" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/supplemental" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/event" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/supplemental" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/event" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/supplemental" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/event" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/supplemental" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/event" but could not be resolved, assuming external.
ncc: Module directory "/Users/jpollak/src/project/node_modules/globalize/dist/globalize" attempted to require "cldr/event" but could not be resolved, assuming external.

from ncc.

gijo-varghese avatar gijo-varghese commented on August 15, 2024

@jbcpollak Yes, I'm getting similar errors

from ncc.

guybedford avatar guybedford commented on August 15, 2024

The root cause of this seems to be that Webpack is detecting globalize/dist/globalize.js as an AMD module instead of a JS module, resulting in it trying it trying to load the "cldr" dependency which does not exist.

The fix would be to disable the AMD detection in Webpack entirely. I just have no idea how to do that yet... !

from ncc.

guybedford avatar guybedford commented on August 15, 2024

Ok with the AMD detection disabled in #79, the remaining bug on this one is a directory asset emission case, which seems like it might be solved by #58.

from ncc.

gijo-varghese avatar gijo-varghese commented on August 15, 2024

Tried the latest version, same error

from ncc.

rauchg avatar rauchg commented on August 15, 2024

Seems indeed that it's still broken with 0.3.0 @guybedford

▲  tmp/ cat index.js
require('strong-globalize')
▲  tmp/ ncc run index.js
1078kB  index.js   [2136ms]
Error: ENOENT: no such file or directory, lstat '/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/cldr'
    at Object.realpathSync (fs.js:1477:7)
    at alreadyScanned (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/helper.js:196:1)
    at enumerateFilesSyncPriv (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/helper.js:213:1)
    at enumerateFilesSync (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/helper.js:192:1)
    at getSupportedLanguages (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/helper.js:673:1)
    at Object.isSupportedLanguage (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/helper.js:663:1)
    at osLanguage (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/globalize.js:43:1)
    at Object.<anonymous> (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/globalize.js:37:1)
    at __webpack_require__ (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/webpack/bootstrap:19:1)
    at Object.<anonymous> (/private/var/folders/bm/grflgmxs62g01cd9m8sjjm740000gn/T/aec16dbf5934f/webpack:/node_modules/strong-globalize/lib/strong-globalize.js:8:1)

from ncc.

guybedford avatar guybedford commented on August 15, 2024

Unfortunately it seems like #58 won't actually solve this as the code that does the lookup for "cldr" is beyond the reach of static analysis (for now).

Strong globalize should work if the "cldr" directory from "node_modules/strong-globalize/cldr" is just emitted in the build.

One option here might be to even hard-code the "cldr" directory emission for the specific version ranges of strong-globalize. We could create a custom ".json" manifest file to track these kinds of custom emissions. I know it sounds daft, but it would provide a path.

from ncc.

guybedford avatar guybedford commented on August 15, 2024

Actually it turns out directory emission can work... should have a PR up soon.

from ncc.

gijo-varghese avatar gijo-varghese commented on August 15, 2024

@guybedford I'm still getting errors. I'm not sure whether its due to globalize

Emitting directory /home/gijo/workspace/hyperloop/node_modules/loopback/server/middleware as middleware
Emitting directory /home/gijo/workspace/hyperloop/node_modules/strong-globalize/cldr as cldr
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/strong-remoting/lib" attempted to require "socket.io" but could not be resolved, assuming external.
Emitting directory /home/gijo/workspace/hyperloop/node_modules/strong-error-handler/views as views
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/mysql" attempted to require "mysql2" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/mssql" attempted to require "tedious" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/mssql" attempted to require "tedious" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/pg/lib/native" attempted to require "pg-native" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/postgres" attempted to require "pg-hstore" but could not be resolved, assuming external.
Emitting directory /home/gijo/workspace/hyperloop/node_modules/loopback-boot/node_modules/strong-globalize/cldr as cldr
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/sqlite" attempted to require "sqlite3" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/useragent/lib" attempted to require "yamlparser" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/loopback-boot/node_modules/cross-spawn" attempted to require "spawn-sync" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib/util" attempted to require "npm" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib/util" attempted to require "node-gyp" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib" attempted to require "aws-sdk" but could not be resolved, assuming external.
Emitting directory /home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib/util/nw-pre-gyp as nw-pre-gyp
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib" attempted to require "aws-sdk" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib" attempted to require "aws-sdk" but could not be resolved, assuming external.
(node:8502) UnhandledPromiseRejectionWarning: Error: ENOENT: no such file or directory, open '/tmp/d8c26a4fda9c5/middleware/context.js'
    at Object.openSync (fs.js:451:3)
    at Object.writeFileSync (fs.js:1213:35)
    at module.exports.ncc.then (/home/gijo/.nvm/versions/node/v11.3.0/lib/node_modules/@zeit/ncc/dist/ncc/cli.js:2410:14)
(node:8502) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:8502) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

from ncc.

gijo-varghese avatar gijo-varghese commented on August 15, 2024

I'm still getting the error with latest version:

Emitting directory /home/gijo/workspace/hyperloop/server/models as models
Emitting directory /home/gijo/workspace/hyperloop/node_modules/loopback/server/middleware as middleware
Emitting directory /home/gijo/workspace/hyperloop/node_modules/loopback-boot/node_modules/strong-globalize/cldr as cldr
Emitting directory /home/gijo/workspace/hyperloop/node_modules/strong-globalize/cldr as cldr
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/mssql" attempted to require "tedious" but could not be resolved, assuming external.
Emitting directory /home/gijo/workspace/hyperloop/node_modules/strong-error-handler/views as views
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/strong-remoting/lib" attempted to require "socket.io" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/useragent/lib" attempted to require "yamlparser" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/sqlite" attempted to require "sqlite3" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/postgres" attempted to require "pg-hstore" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/mysql" attempted to require "mysql2" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/sequelize/lib/dialects/mssql" attempted to require "tedious" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/pg/lib/native" attempted to require "pg-native" but could not be resolved, assuming external.
Emitting directory /home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib/util/nw-pre-gyp as nw-pre-gyp
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/loopback-boot/node_modules/cross-spawn" attempted to require "spawn-sync" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib" attempted to require "aws-sdk" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib" attempted to require "aws-sdk" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib/util" attempted to require "npm" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib/util" attempted to require "node-gyp" but could not be resolved, assuming external.
ncc: Module directory "/home/gijo/workspace/hyperloop/node_modules/bcrypt/node_modules/node-pre-gyp/lib" attempted to require "aws-sdk" but could not be resolved, assuming external.
    0kB  user_agent.after.yaml
    0kB  user_agent.before.yaml
    0kB  verify.ejs
    0kB  nw-pre-gyp/package.json
    0kB  middleware/favicon.js
    0kB  middleware/error-handler.js
    0kB  middleware/context.js
    1kB  donotedit
    1kB  views/style.css
    1kB  views/default-error.ejs
    1kB  nw-pre-gyp/index.html
    1kB  favicon.ico
    1kB  middleware/url-not-found.js
    1kB  middleware/status.js
    1kB  middleware/static.js
    2kB  package.json
    2kB  middleware/rest.js
    5kB  middleware/token.js
   31kB  syslog.node
   68kB  bcrypt_lib.node
 2331kB  cldr/cldr_29.0.1.json
 2620kB  cldr/cldr_32.0.1.json
16786kB  index.js
21853kB  [18118ms]

/tmp/c933c4bb689bd/webpack:/node_modules/strong-globalize/lib/helper.js:80
    assert(validPath, '*** setRootDir: Intl dir not found under: ' + rootPath.toString());
^
AssertionError [ERR_ASSERTION]: *** setRootDir: Intl dir not found under: /tmp
    at Object.setRootDir (/tmp/c933c4bb689bd/webpack:/node_modules/strong-globalize/lib/helper.js:80:1)
    at Function.SetRootDir (/tmp/c933c4bb689bd/webpack:/node_modules/strong-globalize/lib/strong-globalize.js:62:1)
    at Object.<anonymous> (/tmp/c933c4bb689bd/webpack:/node_modules/loopback/lib/globalize.js:10:1)
    at __webpack_require__ (/tmp/c933c4bb689bd/webpack:/webpack/bootstrap:19:1)
    at Object.<anonymous> (/tmp/c933c4bb689bd/webpack:/node_modules/loopback/lib/server-app.js:7:1)
    at __webpack_require__ (/tmp/c933c4bb689bd/webpack:/webpack/bootstrap:19:1)
    at Object.<anonymous> (/tmp/c933c4bb689bd/webpack:/node_modules/loopback/lib/loopback.js:12:1)
    at __webpack_require__ (/tmp/c933c4bb689bd/webpack:/webpack/bootstrap:19:1)
    at Object.<anonymous> (/tmp/c933c4bb689bd/webpack:/node_modules/loopback/index.js:11:1)
    at __webpack_require__ (/tmp/c933c4bb689bd/webpack:/webpack/bootstrap:19:1)

from ncc.

guybedford avatar guybedford commented on August 15, 2024

Note the loopback bug fixes in PR #122 still haven't been merged.

from ncc.

gijo-varghese avatar gijo-varghese commented on August 15, 2024

Oh ok

from ncc.

Jwalin-Thaker avatar Jwalin-Thaker commented on August 15, 2024

Any update?
I am still experiencing the issue @guybedford
Error: ENOENT: no such file or directory, lstat '/cldr' at Object.realpathSync (fs.js:1457:7)

from ncc.

bhanu-affinidi avatar bhanu-affinidi commented on August 15, 2024

I am still facing this with loopback
REPORT RequestId: d2599b9e-2472-4a22-98bd-13ed607caade Init Duration: 0.13 ms Duration: 324.74 ms Billed Duration: 325 ms Memory Size: 256 MB Max Memory Used: 256 MB {"errorType":"Error","errorMessage":"ENOENT: no such file or directory, lstat '/var/cldr'","trace":["Error: ENOENT: no such file or directory, lstat '/var/cldr'"," at Object.realpathSync (node:fs:2580:7)"," at alreadyScanned (/var/task/index.js:16120:60)"," at enumerateFilesSyncPriv (/var/task/index.js:16136:11)"," at enumerateFilesSync (/var/task/index.js:16116:14)"," at getSupportedLanguages (/var/task/index.js:16551:7)"," at Object.isSupportedLanguage (/var/task/index.js:16544:24)"," at osLanguage (/var/task/index.js:20138:18)"," at node_modules/strong-globalize/lib/globalize.js (/var/task/index.js:20132:19)"," at __require (/var/task/index.js:12:50)"," at node_modules/strong-globalize/lib/strong-globalize.js (/var/task/index.js:20524:21)"]}%

from ncc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.