You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
New releases for updated peer dependency on eslint-plugin-react #3075
There has not been an update for eslint-config-airbnb and eslint-config-airbnb-base for 3 years. The peer dependencies declarations are quite far behind the latest, however on master these peer dependencies have been updated to newer versions. Can we release the latest on master in new packages so we get rid of peer dependency mismatch warnings?
For example:
> yarn
➤ YN0000: · Yarn 4.2.2
➤ YN0000: ┌ Resolution step
➤ YN0000: └ Completed
➤ YN0000: ┌ Post-resolution validation
➤ YN0060: │ eslint-plugin-react-hooks is listed by your project with version 5.1.0, which doesn't satisfy what eslint-config-airbnb (pfeef2) requests (^4.3.0).
You say "for example", but I'm quite certain that's the only one that would need a release here to update - all the others are in-range. Is that accurate?
changed the title [-]New releases for updated peer dependencies[/-][+]New releases for updated peer dependency on eslint-plugin-react[/+]on Jan 9, 2025
@ljharb Given that eslint 8 is deprecated and no longer supported, does it make sense to just create a major version of this library that only supports eslint 9 rather than dealing with the pain of having to be backwards compatible with 8 and 7? Breaking changes are always expected in a major version.
I see this in all my NPM installs since I'm waiting for this one library to support eslint 9 before I can upgrade.
npm warn deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
Before a major release, we're definitely going to have a version that supports both 8 and 9. At some undetermined point after that, we'll drop 8, and go flat-config only.
I get it... Why not just bump the major release now with 9 support only? Is it your policy to add major version upgrades of internal dependencies in a minor release first?
what if the major version upgrade of an peer dependency has extreme breaking changes? As a maintainer of the rjsf project, once we reach a point where a major version of a peer dependency has breaking changes that are really hard to accommodate in a simple way, we tend to cut our losses and cut a major version ourself with a breaking change indicating that we don't support earlier versions of the peer dependency
Activity
ljharb commentedon Jan 9, 2025
You say "for example", but I'm quite certain that's the only one that would need a release here to update - all the others are in-range. Is that accurate?
mikevoets commentedon Jan 9, 2025
Yes, that is actually correct. I didn't notice that until now.
[-]New releases for updated peer dependencies[/-][+]New releases for updated peer dependency on eslint-plugin-react[/+]ljharb commentedon Jan 9, 2025
I believe we're still waiting on them to support eslint 9 and flat config, at which point we're basically ready to publish updates.
mikevoets commentedon Jan 9, 2025
It looks like they support eslint 9 now:
ljharb commentedon Jan 9, 2025
yes, but not flat config - react/react#28313
fix: temporarily remove eslint-config-airbnb
stalkerg commentedon Jan 23, 2025
@ljharb seems like flat config as well now.
ljharb commentedon Jan 23, 2025
yep, thanks, i'm aware.
heath-freenome commentedon Jan 27, 2025
@ljharb Given that eslint 8 is deprecated and no longer supported, does it make sense to just create a major version of this library that only supports eslint 9 rather than dealing with the pain of having to be backwards compatible with 8 and 7? Breaking changes are always expected in a major version.
I see this in all my NPM installs since I'm waiting for this one library to support eslint 9 before I can upgrade.
stalkerg commentedon Jan 29, 2025
ljharb commentedon Jan 29, 2025
ljharb commentedon Jan 29, 2025
@heath-freenome nope, it doesn't make sense - yet.
heath-freenome commentedon Jan 29, 2025
@ljharb Say more about...
yetplease? What are your thoughts?ljharb commentedon Jan 29, 2025
Before a major release, we're definitely going to have a version that supports both 8 and 9. At some undetermined point after that, we'll drop 8, and go flat-config only.
heath-freenome commentedon Jan 30, 2025
I get it... Why not just bump the major release now with 9 support only? Is it your policy to add major version upgrades of internal dependencies in a minor release first?
ljharb commentedon Jan 30, 2025
Yes.
heath-freenome commentedon Jan 30, 2025
what if the major version upgrade of an peer dependency has extreme breaking changes? As a maintainer of the rjsf project, once we reach a point where a major version of a peer dependency has breaking changes that are really hard to accommodate in a simple way, we tend to cut our losses and cut a major version ourself with a breaking change indicating that we don't support earlier versions of the peer dependency
ljharb commentedon Jan 30, 2025
In the past, we've just done the work rather than cut losses. "What if" isn't really worth asking until it happens, and it's not happening now.
heath-freenome commentedon Jan 30, 2025
Fair enough. So where are you at in supporting eslint 9?
ljharb commentedon Jan 30, 2025
See #2961, which is pinned on the repo.
heath-freenome commentedon Jan 30, 2025
So close...
birdofpreyru commentedon Feb 22, 2025
ljharb commentedon Feb 23, 2025