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

Incompatible dependency: glob requires Node 20+ #508

Open
bmish opened this issue Dec 5, 2024 · 12 comments
Open

Incompatible dependency: glob requires Node 20+ #508

bmish opened this issue Dec 5, 2024 · 12 comments

Comments

@bmish
Copy link

bmish commented Dec 5, 2024

markdownlint-cli depends on glob.

glob v11 requires Node 20+: https://github.com/isaacs/node-glob/blob/main/changelog.md#110

But markdownlint-cli currently specifies that it supports Node >= 18:

https://github.com/igorshubovych/markdownlint-cli/blob/0d9fcb51a54f3b750b911c054b4bd1a590f1b592/package.json#L10C16-L10C18

So the solution would be to downgrade glob until requiring Node 20+.

@DavidAnson
Copy link
Collaborator

True, but that was 6 months ago and this doesn't seem to have been a problem for CI or users. (I wish Dependabot wouldn't offer updates like this that are semi-incompatible.)

@DavidAnson
Copy link
Collaborator

@bmish, do you know of a tool that validates this (and could run in CI) or did you just happen to spot this manually?

@bmish
Copy link
Author

bmish commented Dec 5, 2024

Here's a CI fix that would catch it:

I will note that this isn't really an urgent problem, so I don't mind if you want to:

  • Downgrade glob
  • Or just wait until 2025-04-30 to drop support for Node 18 and merge the CI fix so it doesn't happen again

@DavidAnson
Copy link
Collaborator

My current thinking is to wait, but leave the issue open for visibility. :)

@DavidAnson
Copy link
Collaborator

@bmish, FYI that markdownlint library and CLI2 now both have engine-strict enabled (without issue on Node 18) in their "next" branches.

@lsh-0
Copy link

lsh-0 commented Jan 8, 2025

My current thinking is to wait, but leave the issue open for visibility. :)

If we could get a 0.44.0 with a downgraded glob that would be helpful, thank you

@DavidAnson
Copy link
Collaborator

@lsh-0, versions 0.41.0 and earlier of markdownlint-cli use the older version of glob that declares support for Node 18. Node 20 and later are supported by glob with the latest version of markdownlint-cli. (And there have been no reported issues due to this in 6 months.) Is there a compelling case to downgrade?

@lsh-0
Copy link

lsh-0 commented Jan 8, 2025

Is there a compelling case to downgrade?

The set of dependencies described by markdownlint-lint are incompatible. It doesn't support node18 any more because of [email protected].

Downgrading glob seems the most natural fix but I guess you could also change this line and remove support for node18:

"node": ">=18"

@DavidAnson
Copy link
Collaborator

I'm not familiar with markdownlint-lint, I don't see it on npm? But because there are two different ways to address this issue today (see my comment above) and no known problems with the current (inconsistent) configuration, how necessary is it to downgrade glob within this project?

@lsh-0
Copy link

lsh-0 commented Jan 8, 2025

I'm not familiar with markdownlint-lint, I don't see it on npm

Typo, I meant markdownlint-cli, this project.

and no known problems with the current (inconsistent) configuration, how necessary is it to downgrade glob within this project?

There are problems. We are having problems. There are two solutions or you can do nothing.

@DavidAnson
Copy link
Collaborator

Please give an example of a problem that is happening because of this situation along with the steps to reproduce it.

@bmish
Copy link
Author

bmish commented Jan 8, 2025

I would suggest just using an older version of markdownlint-cli until the problem is solved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants