Skip to content

refactor: use pathe instead of node:path in core and plugins - #3353

Open
kovsu wants to merge 2 commits into
flint-fyi:mainfrom
kovsu:pathe
Open

refactor: use pathe instead of node:path in core and plugins#3353
kovsu wants to merge 2 commits into
flint-fyi:mainfrom
kovsu:pathe

Conversation

@kovsu

@kovsu kovsu commented Sep 1, 2026

Copy link
Copy Markdown
Member

PR Checklist

Overview

Replaces every `node:path` / `node:path/posix` import in core, utils,
typescript-language, ts, yaml, spelling and rule-tester with `pathe`,
which always emits POSIX separators and accepts Windows input.

`normalizePath` no longer needs its manual backslash replacement since
`pathe.normalize` already does that; a test pins the one observable
difference (lowercase drive letters are uppercased).

`pathe` is pinned once in a new `prod` pnpm catalog and referenced as
`catalog:prod` from each package.

Refs flint-fyi#1269
@changeset-bot

changeset-bot Bot commented Sep 1, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 12feeac

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@netlify

netlify Bot commented Sep 1, 2026

Copy link
Copy Markdown

Deploy Preview for flint-fyi ready!

Name Link
🔨 Latest commit 12feeac
🔍 Latest deploy log https://app.netlify.com/projects/flint-fyi/deploys/6a96ef0e88d3490008ed0f41
😎 Deploy Preview https://deploy-preview-3353--flint-fyi.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@pkg-pr-new

pkg-pr-new Bot commented Sep 1, 2026

Copy link
Copy Markdown

Open in StackBlitz

@flint.fyi/astro

pnpm add https://pkg.pr.new/@flint.fyi/astro@12feeac -D

@flint.fyi/astro-language

pnpm add https://pkg.pr.new/@flint.fyi/astro-language@12feeac -D

@flint.fyi/browser

pnpm add https://pkg.pr.new/@flint.fyi/browser@12feeac -D

@flint.fyi/cli

pnpm add https://pkg.pr.new/@flint.fyi/cli@12feeac -D

@flint.fyi/core

pnpm add https://pkg.pr.new/@flint.fyi/core@12feeac -D

@flint.fyi/css

pnpm add https://pkg.pr.new/@flint.fyi/css@12feeac -D

@flint.fyi/css-language

pnpm add https://pkg.pr.new/@flint.fyi/css-language@12feeac -D

flint

pnpm add https://pkg.pr.new/flint@12feeac -D

@flint.fyi/json

pnpm add https://pkg.pr.new/@flint.fyi/json@12feeac -D

@flint.fyi/json-language

pnpm add https://pkg.pr.new/@flint.fyi/json-language@12feeac -D

@flint.fyi/jsx

pnpm add https://pkg.pr.new/@flint.fyi/jsx@12feeac -D

@flint.fyi/markdown-language

pnpm add https://pkg.pr.new/@flint.fyi/markdown-language@12feeac -D

@flint.fyi/md

pnpm add https://pkg.pr.new/@flint.fyi/md@12feeac -D

@flint.fyi/next

pnpm add https://pkg.pr.new/@flint.fyi/next@12feeac -D

@flint.fyi/node

pnpm add https://pkg.pr.new/@flint.fyi/node@12feeac -D

@flint.fyi/nuxt

pnpm add https://pkg.pr.new/@flint.fyi/nuxt@12feeac -D

@flint.fyi/package-json

pnpm add https://pkg.pr.new/@flint.fyi/package-json@12feeac -D

@flint.fyi/performance

pnpm add https://pkg.pr.new/@flint.fyi/performance@12feeac -D

@flint.fyi/plugin-flint

pnpm add https://pkg.pr.new/@flint.fyi/plugin-flint@12feeac -D

@flint.fyi/react

pnpm add https://pkg.pr.new/@flint.fyi/react@12feeac -D

@flint.fyi/rule-data

pnpm add https://pkg.pr.new/@flint.fyi/rule-data@12feeac -D

@flint.fyi/rule-tester

pnpm add https://pkg.pr.new/@flint.fyi/rule-tester@12feeac -D

@flint.fyi/solid

pnpm add https://pkg.pr.new/@flint.fyi/solid@12feeac -D

@flint.fyi/spelling

pnpm add https://pkg.pr.new/@flint.fyi/spelling@12feeac -D

@flint.fyi/svelte

pnpm add https://pkg.pr.new/@flint.fyi/svelte@12feeac -D

@flint.fyi/svelte-language

pnpm add https://pkg.pr.new/@flint.fyi/svelte-language@12feeac -D

@flint.fyi/text-language

pnpm add https://pkg.pr.new/@flint.fyi/text-language@12feeac -D

@flint.fyi/ts

pnpm add https://pkg.pr.new/@flint.fyi/ts@12feeac -D

@flint.fyi/ts-patch

pnpm add https://pkg.pr.new/@flint.fyi/ts-patch@12feeac -D

@flint.fyi/typescript-language

pnpm add https://pkg.pr.new/@flint.fyi/typescript-language@12feeac -D

@flint.fyi/utils

pnpm add https://pkg.pr.new/@flint.fyi/utils@12feeac -D

@flint.fyi/vitest

pnpm add https://pkg.pr.new/@flint.fyi/vitest@12feeac -D

@flint.fyi/volar-language

pnpm add https://pkg.pr.new/@flint.fyi/volar-language@12feeac -D

@flint.fyi/vue

pnpm add https://pkg.pr.new/@flint.fyi/vue@12feeac -D

@flint.fyi/vue-language

pnpm add https://pkg.pr.new/@flint.fyi/vue-language@12feeac -D

@flint.fyi/yaml

pnpm add https://pkg.pr.new/@flint.fyi/yaml@12feeac -D

@flint.fyi/yaml-language

pnpm add https://pkg.pr.new/@flint.fyi/yaml-language@12feeac -D

commit: 12feeac

@codecov

codecov Bot commented Sep 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@michaelfaith

Copy link
Copy Markdown
Member

This PR needs a description

@kovsu

kovsu commented Sep 1, 2026

Copy link
Copy Markdown
Member Author

This PR needs a description

Emm, I didn't do anything especially here. I don't think I need a description here, you can get what I do in the PR's title.

@michaelfaith

Copy link
Copy Markdown
Member

This PR needs a description

Emm, I didn't do anything especially here. I don't think I need a description here, you can get what I do in the PR's title.

But it's a courtesy to reviewers. Without a description then you're putting it on their shoulders to determine the motivation and nature of the change on their own. A description gives you the opportunity to explain the change and what you think they should know about the change. I've said previously, I don't plan on review changes without a PR description. So, I guess I'll let others review this one 🤷‍♂️

@michaelfaith

Copy link
Copy Markdown
Member

It's also in our contributing guidelines

Be sure to fill out the pull request template’s requested information — otherwise your PR will likely be closed.

And I would encourage all maintainers to hold the same line. Having empty PRs descriptions puts everything on the shoulders of the reviewer to figure out and is not a precedent I would like for us to set.

@kovsu

kovsu commented Sep 1, 2026

Copy link
Copy Markdown
Member Author

But it's a courtesy to reviewers.

I don't agree with this.

This PR contains a straightforward mechanical change. The title states exactly what it does, and the diff makes the scope clear. My agent initially added a description, but I removed it because it merely repeated the title and changes. I don't think I can describe the change any more clearly than the title already does.

CleanShot 2026-09-01 at 23 09 16@2x

Descriptions are useful when they provide context that cannot be inferred from the title and diff. Requiring reviewers to read redundant prose does not reduce their burden; it wastes their time.

I did not mean any disrespect toward reviewers. When I contribute to open source, I leave comments in Files changed and submit them for review whenever I run into something difficult or a decision that needs discussion. I know everyone's time is valuable, which is why I try to provide context where it helps and avoid making reviewers read information they already have.

CleanShot 2026-09-01 at 23 21 49@2x

@michaelfaith

michaelfaith commented Sep 1, 2026

Copy link
Copy Markdown
Member

My agent initially added a description, but I removed it because it merely repeated the title and changes.

Agreed that it would be objectively worse to leave the agent description in (and also against our AI Contribution guidelines)

The title states exactly what it does

But that's not what's important. I can see in the diff that you've swapped node:path for pathe. What I don't get from the diff is why you chose pathe instead of some other package, what motivated this change in the first place, etc. The decisions that you made that are beyond what's in the diff or what an agent can tell me. Just because you think something is self-explanatory doesn't necessarily mean that another reviewer will think so or know all of the context that you have. That's where the description can be helpful: explaining the choices you made and an overall summary of the change in your own words. I feel like it's the bare minimum we can ask of people. Once you start accepting no descriptions on "purely mechanical changes" then where do you draw the line? It opens the door to an enormous gray area. So, I just treat it as black and white: if my chance is meant for someone else's eyes, I'm going to include a description. I think it's a reasonable expectation for everyone, and in line with our documented contributing guidelines.

@lishaduck lishaduck mentioned this pull request Sep 3, 2026
3 tasks
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

Successfully merging this pull request may close these issues.

2 participants