Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Node 22 has warning in every cli command (eslint error) #679

Open
purplecabbage opened this issue Oct 23, 2024 · 15 comments · Fixed by #704
Open

Node 22 has warning in every cli command (eslint error) #679

purplecabbage opened this issue Oct 23, 2024 · 15 comments · Fixed by #704
Labels
bug Something isn't working

Comments

@purplecabbage
Copy link
Member

purplecabbage commented Oct 23, 2024

All commands include this output ....

aio report -b
(node:61566) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)

Running with --trace-deprecation flag:

node --trace-deprecation ~/.nvm/versions/node/v22.10.0/bin/aio info 
(node:64405) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
    at node:punycode:3:9
    at BuiltinModule.compileForInternalLoader (node:internal/bootstrap/realm:399:7)
    at BuiltinModule.compileForPublicLoader (node:internal/bootstrap/realm:338:10)
    at loadBuiltinModule (node:internal/modules/helpers:114:7)
    at Function._load (node:internal/modules/cjs/loader:1100:17)
    at TracingChannel.traceSync (node:diagnostics_channel:315:14)
    at wrapModuleLoad (node:internal/modules/cjs/loader:218:24)
    at Module.require (node:internal/modules/cjs/loader:1340:12)
    at require (node:internal/modules/helpers:141:16)
    at Object.<anonymous> (/Users/jessem/.nvm/versions/node/v22.10.0/lib/node_modules/@adobe/aio-cli/node_modules/whatwg-url/lib/url-state-machine.js:2:18)

Environment Info

  System:
    OS: macOS 14.6.1
    CPU: (10) arm64 Apple M1 Max
    Memory: 1.65 GB / 32.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 22.10.0 - ~/.nvm/versions/node/v22.10.0/bin/node
    Yarn: 1.22.19 - ~/.bun/bin/yarn
    npm: 10.9.0 - ~/.nvm/versions/node/v22.10.0/bin/npm
  Virtualization:
    Docker: 20.10.17 - /usr/local/bin/docker
  npmGlobalPackages:
    @adobe/aio-cli: 10.3.1
@purplecabbage purplecabbage added the bug Something isn't working label Oct 23, 2024
@aiojbot
Copy link

aiojbot commented Oct 23, 2024

JIRA issue created: https://jira.corp.adobe.com/browse/ACNA-3249

@adobe adobe deleted a comment from aiojbot Nov 6, 2024
@shazron
Copy link
Member

shazron commented Nov 7, 2024

❯ npm root -g
/Users/shazron/.nvm/versions/node/v22.11.0/lib/node_modules
❯ cd /Users/shazron/.nvm/versions/node/v22.11.0/lib/node_modules
❯ cd @adobe/aio-cli
❯ npm ls punycode
@adobe/[email protected] /Users/shazron/.nvm/versions/node/v22.11.0/lib/node_modules/@adobe/aio-cli
├─┬ @adobe/[email protected]
│ └─┬ @adobe/[email protected]
│   └─┬ [email protected]
│     └─┬ [email protected]
│       └─┬ [email protected]
│         └─┬ [email protected]
│           └── [email protected]
└─┬ @adobe/[email protected]
  └─┬ @adobe/[email protected]
    └─┬ [email protected]
      └─┬ [email protected]
        └── [email protected]

Unfortunately punycode is dependency of a dependency, will have to investigate whether they have been updated.

@shazron
Copy link
Member

shazron commented Nov 7, 2024

[email protected] (the latest) does not have punycode as a dependency.
[email protected] (the latest) still has the [email protected] dependency.

@shazron
Copy link
Member

shazron commented Nov 7, 2024

  1. [email protected] has updated the ajv that has the required updates. However, webpack needs to have a new release that uses the new schema-utils, and that timeline for update is unknown. For now, I recommend the app-dev plugin do this: https://github.com/eslint/eslint/pull/18762/files
  2. Update swagger-client for the @adobe/aio-lib-console

@shazron
Copy link
Member

shazron commented Nov 8, 2024

webpack can't update to the latest schema-utils because of node version support reasons: webpack/schema-utils#191

@shazron
Copy link
Member

shazron commented Nov 8, 2024

PR adobe/aio-lib-console#87

@shazron
Copy link
Member

shazron commented Nov 8, 2024

@shazron
Copy link
Member

shazron commented Nov 15, 2024

PRs merged and released.

@shazron shazron closed this as completed Nov 15, 2024
@shazron shazron reopened this Jan 7, 2025
@shazron
Copy link
Member

shazron commented Jan 7, 2025

Re-opening since the releases don't totally solve the issue yet.

@shazron
Copy link
Member

shazron commented Jan 7, 2025

See adobe/aio-lib-core-networking#84
See #704

@RemoLiechti
Copy link

Hey @shazron , thanks for overriding the dependencies with n22 compatible ones!
Can we expect this to be released soon? Just asking, as we plan to release a new version of our aio plugin, we may want to wait for the n22 compatibility and do this in the same go.

@shazron
Copy link
Member

shazron commented Jan 17, 2025

I'm scheduling it for next week.

@shazron shazron reopened this Jan 21, 2025
@shazron
Copy link
Member

shazron commented Jan 21, 2025

Re-opened. In local testing the overrides works but under certain circumstances listed here: npm/cli#5850

But when installing via npm install -g @adobe/aio-cli the overrides do not work unfortunately because we have a package-lock.json. We need to find a workaround.

This is an npm issue (Jan, Nov 2022):

This PR purportedly will fix the issue (Nov 2023):

@shazron
Copy link
Member

shazron commented Jan 21, 2025

possible fixes:

  1. use dynamic import to use [email protected] which is ESM
  2. use the built in global fetch in node (experimental in node-18, stable in node-22). Experimental might be fine if we test it properly

@shazron
Copy link
Member

shazron commented Jan 22, 2025

Doing fix 2 since mixing ESM with CJS in Jest tests is not trivial.

Done:

Pending:

  • @adobe/aio-lib-core-networking
  • @adobe/aio-lib-events

However, there are sub-dependencies out of our control (like octokit), not sure if it affects things yet:

├─┬ @adobe/[email protected]
│ ├─┬ @adobe/[email protected]
│ │ └── [email protected]
│ ├─┬ @adobe/[email protected]
│ │ └─┬ [email protected]
│ │   └─┬ [email protected]
│ │     └─┬ @octokit/[email protected]
│ │       └─┬ @octokit/[email protected]
│ │         └─┬ @octokit/[email protected]
│ │           └── [email protected] deduped
│ └─┬ @octokit/[email protected]
│   └─┬ @octokit/[email protected]
│     └─┬ @octokit/[email protected]
│       └── [email protected] deduped
└─┬ @adobe/[email protected]
  └─┬ @adobe/[email protected]
    └── [email protected] deduped

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants