Skip to content
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

Ensure that URL constructor is globally available #18

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

vladimyr
Copy link
Contributor

WHATWG URL API has been implemented since v7 but global URL constructor was added later as part of v10 release.

  • Tests pass
  • Appropriate changes to README are included in PR

WHATWG URL API has been implemented since v7 but global URL
constructor was added later as part of v10 release.
@janicklas-ralph
Copy link
Collaborator

Hi @vladimyr . Thanks for the PR!

Just wondering if there is a need to export URL and URLSearchParams, since we are proving methods around it? Also URL and URLSearchParams will be available globally in all cases (with the new changes).

@vladimyr
Copy link
Contributor Author

Strictly speaking, there is no need to export it but it is neat in case you have existing node codebase and you are trying to update it by swapping usages of node's builtin url module with native-url. Due to URL and URLSearchParams being first implemented as module exports of url module and later introduced as globals it is pretty common to find snippets like this one:

const { URL } = require('url');

I understand that the primary intention of this package is to implement legacy URL API on top of WHATWG's work and not producing a replacement for the node's builtin url module. That being said node's url is literally made of WHATWG API plus legacy one. First is now globally available, the latter is being phased out. So from a practical point of view, there is a strong incentive of supporting the seamless and backward compatible transition from url to native-url.

@vladimyr
Copy link
Contributor Author

@janicklas-ralph What do you think?

@janicklas-ralph
Copy link
Collaborator

Sorry about the late response! Thats a very valid point. Let me check out and test the changes before merging this

@roderickhsiao
Copy link

roderickhsiao commented Apr 25, 2022

Hi, want to check if there is some update for the changes :) We tried to globally replace node url with native-url, but found out it's common for other libraries to import constructor from the module.
Thanks!

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.

3 participants