-
-
Notifications
You must be signed in to change notification settings - Fork 5k
Change Request: Fork Ajv #19369
Copy link
Copy link
Closed as not planned
Labels
acceptedThere is consensus among the team that this change meets the criteria for inclusionThere is consensus among the team that this change meets the criteria for inclusioncoreRelates to ESLint's core APIs and featuresRelates to ESLint's core APIs and featuresenhancementThis change enhances an existing feature of ESLintThis change enhances an existing feature of ESLint
Metadata
Metadata
Assignees
Labels
acceptedThere is consensus among the team that this change meets the criteria for inclusionThere is consensus among the team that this change meets the criteria for inclusioncoreRelates to ESLint's core APIs and featuresRelates to ESLint's core APIs and featuresenhancementThis change enhances an existing feature of ESLintThis change enhances an existing feature of ESLint
Type
Projects
Status
Complete
ESLint version
HEAD
What problem do you want to solve?
ESLint is currently using Ajv v6.12.6 while the most recent version is v8.17.1. We've been stuck on v6.12.6 because breaking changes caused too many problems when we tried before. This mostly hasn't been a problem because v6.12.6 has been solid for us and it's more important not to break the ecosystem of rules than it is to be up-to-date with the latest JSON Schema spec.
However, Ajv v6.12.6 uses the native
punycodemodule, which is now deprecated and will be removed, resulting in people seeing deprecation notices whenever ESLint is executed.Eventually, when
punycodeis removed, ESLint will crash because of this.What do you think is the correct solution?
Because upgrading Ajv seems like it's not an option at this point, the best solution we have is to fork Ajv v6.12.6 and use the userland
punycodepackage instead. This will also give us the opportunity to upgrade other dependencies as necessary.Participation
Additional comments
No response