-
-
Notifications
You must be signed in to change notification settings - Fork 878
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
Replace uri-js
with fast-uri
#2415
Replace uri-js
with fast-uri
#2415
Conversation
Less dependencies. Better performance. This is the way! |
I would be very happy if there were an initial review or at least a comment from the AJV team. |
how progress of this? |
how progress of this? |
No feedback from maintainers, can't move forward :( |
I see that there is still a version of this library released recently, |
Yes, other pull requests are getting merged and I believe this one is just ignored. Some feedback - any feedback - from the maintainers would be appreciated |
Hi all, I will try and get some guidance from @epoberezkin on this one. Sorry I missed your activity here. |
Haha, merge and release a version as soon as possible 😁 |
Ready |
Update: After discussing with @epoberezkin, we want to get one more minor release out with some bug fixes and then will release this change as 9.0.0. |
Actually after discussing with EP and understanding the swap, we've decided this can go out as a minor release. I'm going to give it all one last check and do that next. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. I have verified:
- that uri-js and fast-uri are both built to the same standard RFC 3986
- that there are test for URNs which was a concern as we have had issues with them in the past
- that both fast-uri and uri-js are still both being run in tests, we have just swapped what is the default
Hmm, something broke the build to master, I think it's related to a bug in the get_contributors script. Investigating. |
Well I did just publish 8.15.0 with fast-uri but it's failing to build browser bundles because for some reason fast-uri has this line |
FYI Webpack error message
|
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [ajv](https://ajv.js.org) ([source](https://togithub.com/ajv-validator/ajv)) | [`8.14.0` -> `8.15.0`](https://renovatebot.com/diffs/npm/ajv/8.14.0/8.15.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ajv/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ajv/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ajv/8.14.0/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ajv/8.14.0/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>ajv-validator/ajv (ajv)</summary> ### [`v8.15.0`](https://togithub.com/ajv-validator/ajv/releases/tag/v8.15.0) [Compare Source](https://togithub.com/ajv-validator/ajv/compare/v8.14.0...v8.15.0) #### What's Changed - Replace `uri-js` with `fast-uri` by [@​vixalien](https://togithub.com/vixalien) in [https://github.com/ajv-validator/ajv/pull/2415](https://togithub.com/ajv-validator/ajv/pull/2415) - Bump to 8.15.0 by [@​jasoniangreen](https://togithub.com/jasoniangreen) in [https://github.com/ajv-validator/ajv/pull/2442](https://togithub.com/ajv-validator/ajv/pull/2442) #### New Contributors - [@​vixalien](https://togithub.com/vixalien) made their first contribution in [https://github.com/ajv-validator/ajv/pull/2415](https://togithub.com/ajv-validator/ajv/pull/2415) **Full Changelog**: ajv-validator/ajv@v8.14.0...v8.15.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Canary-nextjs).
Related: fastify/fast-uri#21 |
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [ajv](https://ajv.js.org) ([source](https://togithub.com/ajv-validator/ajv)) | [`8.14.0` -> `8.15.0`](https://renovatebot.com/diffs/npm/ajv/8.12.0/8.15.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ajv/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ajv/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ajv/8.12.0/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ajv/8.12.0/8.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ajv-validator/ajv (ajv)</summary> ### [`v8.15.0`](https://togithub.com/ajv-validator/ajv/releases/tag/v8.15.0) [Compare Source](https://togithub.com/ajv-validator/ajv/compare/v8.14.0...v8.15.0) #### What's Changed - Replace `uri-js` with `fast-uri` by [@​vixalien](https://togithub.com/vixalien) in [https://github.com/ajv-validator/ajv/pull/2415](https://togithub.com/ajv-validator/ajv/pull/2415) - Bump to 8.15.0 by [@​jasoniangreen](https://togithub.com/jasoniangreen) in [https://github.com/ajv-validator/ajv/pull/2442](https://togithub.com/ajv-validator/ajv/pull/2442) #### New Contributors - [@​vixalien](https://togithub.com/vixalien) made their first contribution in [https://github.com/ajv-validator/ajv/pull/2415](https://togithub.com/ajv-validator/ajv/pull/2415) **Full Changelog**: ajv-validator/ajv@v8.14.0...v8.15.0 ### [`v8.14.0`](https://togithub.com/ajv-validator/ajv/releases/tag/v8.14.0) [Compare Source](https://togithub.com/ajv-validator/ajv/compare/v8.13.0...v8.14.0) #### What's Changed - readme: build badge by [@​epoberezkin](https://togithub.com/epoberezkin) in [https://github.com/ajv-validator/ajv/pull/2424](https://togithub.com/ajv-validator/ajv/pull/2424) - Update workflows by [@​rotu](https://togithub.com/rotu) in [https://github.com/ajv-validator/ajv/pull/2410](https://togithub.com/ajv-validator/ajv/pull/2410) - docs: add warning to maxLength / minLength by [@​jasoniangreen](https://togithub.com/jasoniangreen) in [https://github.com/ajv-validator/ajv/pull/2428](https://togithub.com/ajv-validator/ajv/pull/2428) - fix: broken link in docs warning by [@​jasoniangreen](https://togithub.com/jasoniangreen) in [https://github.com/ajv-validator/ajv/pull/2431](https://togithub.com/ajv-validator/ajv/pull/2431) - compileAsync a schema with discriminator and $ref, fixes [#​2427](https://togithub.com/ajv-validator/ajv/issues/2427) by [@​jasoniangreen](https://togithub.com/jasoniangreen) in [https://github.com/ajv-validator/ajv/pull/2433](https://togithub.com/ajv-validator/ajv/pull/2433) - bump version to 8.14.0 for publishing by [@​jasoniangreen](https://togithub.com/jasoniangreen) in [https://github.com/ajv-validator/ajv/pull/2440](https://togithub.com/ajv-validator/ajv/pull/2440) #### New Contributors - [@​rotu](https://togithub.com/rotu) made their first contribution in [https://github.com/ajv-validator/ajv/pull/2410](https://togithub.com/ajv-validator/ajv/pull/2410) **Full Changelog**: ajv-validator/ajv@v8.13.0...v8.14.0 ### [`v8.13.0`](https://togithub.com/ajv-validator/ajv/releases/tag/v8.13.0) [Compare Source](https://togithub.com/ajv-validator/ajv/compare/v8.12.0...v8.13.0) - add named exports - update dependencies - update node.js </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Nextjs).
We are having the same issue with 8.15.0. Since pulling this package our builds have been failing with the following error: Module build failed: UnhandledSchemeError: Reading from "node:url" |
What issue does this pull request resolve?
This PR fixes issues #2350 and #2343. It removes the (deep) dependency on
punycode
, a deprecated module.What changes did you make?
I replaced the default uriResolver to fast-uri instead of uri-js.
Is there anything that requires more attention while reviewing?
This PR supersedes #2377.
It is also worth considering using the web API
URL
which is defined in URL Living Standard instead ofURI
which is defined in RFC 3986 and is less prevalent and can resolve the issue raised by @jasoniangreen in the above linked PR:We can use the native
URL
API as it is supported with node 10+ and all major browsers and it has 97.68% caniuse score whileURI
is not standardized afaict.Thanks!
TODO: