Skip to content

test: ensure @eslint/markdown works with both ESLint v9 and v10#593

Merged
nzakas merged 32 commits intomainfrom
chore-update-eslint-core-plugin-kit
Mar 13, 2026
Merged

test: ensure @eslint/markdown works with both ESLint v9 and v10#593
nzakas merged 32 commits intomainfrom
chore-update-eslint-core-plugin-kit

Conversation

@lumirlumir
Copy link
Copy Markdown
Member

@lumirlumir lumirlumir commented Dec 2, 2025

Prerequisites checklist

What is the purpose of this pull request?

This PR was motivated by eslint/json#187 (comment).

Currently, when updating @eslint/core to v1.0.0, CI fails because @eslint/core@1.0.0 does not match ESLint v9

@eslint/core@1.0.0 includes type information for ESLint v10, which causes the type mismatch.

So, I've updated ESLint to >=10.0.0-alpha.0 <10.0.0 || ^10.0.1. (Ref: https://github.com/eslint/eslint/blob/main/packages/eslint-config-eslint/package.json#L66)


When I update ESLint to >=10.0.0-alpha.0 <10.0.0 || ^10.0.1, the following error occurs, so I added the legacy-peer-deps option to .npmrc.

This change follows the approach in eslint/eslint#20281

image

What changes did you make? (Give an overview)

In this PR, I've updated @eslint/core, add legacy-peer-deps, and use ESLint v10 pre-release.

Related Issues

Fixes: #621
Ref: #584, #586, eslint/json#187 (comment), eslint/eslint#20281

Is there anything you'd like reviewers to focus on?

N/A

@eslintbot eslintbot added this to Triage Dec 2, 2025
@github-project-automation github-project-automation Bot moved this to Needs Triage in Triage Dec 2, 2025
@lumirlumir
Copy link
Copy Markdown
Member Author

Unlike the PRs in JSON and CSS, the Markdown plugin needs further investigation to support ESLint v10. I'm marking this as a draft for now and will investigate it soon.

@lumirlumir lumirlumir moved this from Needs Triage to Implementing in Triage Dec 2, 2025
Comment thread package.json Outdated
"dependencies": {
"@eslint/core": "^0.17.0",
"@eslint/plugin-kit": "^0.4.1",
"@eslint/core": "^1.0.0",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same question as eslint/json#190 (comment). We can clarify there, just wanted to leave a note here as well so that we don't merge until this is clarified.

Comment thread .github/workflows/ci.yml
@lumirlumir lumirlumir changed the title chore: update @eslint/* dep, add legacy-peer-deps, use ESLint v10 fix: update @eslint/* dep, support ESLint v10 Feb 8, 2026
@eslint-github-bot eslint-github-bot Bot added the bug label Feb 8, 2026
@lumirlumir
Copy link
Copy Markdown
Member Author

lumirlumir commented Feb 15, 2026

While working on this, I've found a v9 type compatibility issue, so I'm marking this as a draft until a decision is reached in eslint/json#213.

I used the JSON plugin as an example because newer major versions of CSS and Markdown haven't been released yet.

Note to myself: This PR also need to address #605 (comment).

@lumirlumir lumirlumir marked this pull request as draft February 15, 2026 14:54
@bricss
Copy link
Copy Markdown

bricss commented Feb 19, 2026

Perhaps this nickdeis/eslint-plugin-no-secrets#44 may help 🚑 with fixes 🪛

@bricss
Copy link
Copy Markdown

bricss commented Feb 19, 2026

Note: Currently, the only way to make Markdown plugin 🔌 work with ESLint v10 is to use the following config:

import markdown from '@eslint/markdown';
import { defineConfig } from 'eslint/config';

export default defineConfig([
  ...markdown.configs.processor,
]);

@lumirlumir lumirlumir force-pushed the chore-update-eslint-core-plugin-kit branch from 26895f7 to 34c2553 Compare March 2, 2026 14:11
Comment thread package.json
"dedent": "^1.7.1",
"eslint": "^9.39.2",
"eslint": "^9.39.3",
"eslint-v9": "npm:eslint@9.x",
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've followed the same pattern used for the ESLint v9 jiti library installation.

Ref: https://github.com/eslint/eslint/blob/v9.39.3/package.json#L178-L179

This also addresses the comment mentioned in #605 (comment).

@lumirlumir lumirlumir changed the title fix: update @eslint/* dep, support ESLint v10 test: ensure @eslint/markdown works with both ESLint v9 and v10 Mar 2, 2026
@lumirlumir lumirlumir marked this pull request as ready for review March 2, 2026 14:30
@lumirlumir lumirlumir removed the bug label Mar 2, 2026
@nzakas
Copy link
Copy Markdown
Member

nzakas commented Mar 12, 2026

Can you take a look at the merge conflicts?

@lumirlumir
Copy link
Copy Markdown
Member Author

I’ve updated the PR to resolve the merge conflicts.

Copy link
Copy Markdown
Member

@nzakas nzakas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks.

@nzakas nzakas merged commit faadc59 into main Mar 13, 2026
32 checks passed
@nzakas nzakas deleted the chore-update-eslint-core-plugin-kit branch March 13, 2026 19:54
@github-project-automation github-project-automation Bot moved this from Implementing to Complete in Triage Mar 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Complete

Development

Successfully merging this pull request may close these issues.

Bug: plugins: { markdown },

6 participants