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

repl: fix referrer for dynamic import #30609

Closed
wants to merge 1 commit into from

Conversation

coreyfarrell
Copy link
Member

The ESM loader does not accept a directory as the referrer, it requires
a path within the directory. Add /repl to ensure relative dynamic
imports can succeed.

Fixes: #19570

Checklist

@nodejs-github-bot nodejs-github-bot added the repl Issues and PRs related to the REPL subsystem. label Nov 23, 2019
lib/repl.js Outdated Show resolved Hide resolved
@devsnek devsnek added the esm Issues and PRs related to the ECMAScript Modules implementation. label Nov 23, 2019
Copy link
Member

@devsnek devsnek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you put in a comment explaining why the path is being modified?

@coreyfarrell
Copy link
Member Author

@devsnek sure but to clarify are you asking for a comment about why /repl is being added or about why the test spawns using cwd in the fixtures (or both)?

@devsnek
Copy link
Member

devsnek commented Nov 23, 2019

I am talking about the /repl

@addaleax addaleax added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Nov 27, 2019
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

The ESM loader does not accept a directory as the referrer, it requires
a path within the directory.  Add `/repl` to ensure relative dynamic
imports can succeed.

Fixes: nodejs#19570
@nodejs-github-bot

This comment has been minimized.

@bcoe bcoe self-requested a review November 30, 2019 20:39
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot
Copy link
Collaborator

@bcoe
Copy link
Contributor

bcoe commented Dec 1, 2019

Windows tests have been quite flaky today, but I don't believe it's related to this PR the most recent failure was test-worker-prof.js (which does not appear to involve the repl in any manner).

bcoe pushed a commit that referenced this pull request Dec 1, 2019
The ESM loader does not accept a directory as the referrer, it requires
a path within the directory.  Add `/repl` to ensure relative dynamic
imports can succeed.

Fixes: #19570

PR-URL: #30609
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Coe <bencoe@gmail.com>
@bcoe
Copy link
Contributor

bcoe commented Dec 1, 2019

Landed in 49fb529

@bcoe bcoe closed this Dec 1, 2019
@bcoe
Copy link
Contributor

bcoe commented Dec 1, 2019

Congrats on your contribution to the project @coreyfarrell; thanks for helping perfect the ESM functionality.

targos pushed a commit that referenced this pull request Dec 1, 2019
The ESM loader does not accept a directory as the referrer, it requires
a path within the directory.  Add `/repl` to ensure relative dynamic
imports can succeed.

Fixes: #19570

PR-URL: #30609
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Coe <bencoe@gmail.com>
@coreyfarrell coreyfarrell deleted the repl-dynamic-import branch December 1, 2019 16:40
@coreyfarrell
Copy link
Member Author

A backport of this PR is needed for 12.x. I'm a little unclear from https://github.com/nodejs/node/blob/master/doc/guides/backporting-to-release-lines.md, should I wait 2 weeks before posting a PR against v12.x-staging or do I just post now and it gets blocked for 2 weeks?

@targos
Copy link
Member

targos commented Dec 2, 2019

@coreyfarrell This change doesn't apply cleanly to 12.x because we haven't unflagged ESM there yet. I think we should try to land things in order or it will be difficult to correctly backport everything related to ESM.

@coreyfarrell
Copy link
Member Author

@targos I'm aware it doesn't apply cleanly, I've done the backport in a local branch. Are you saying that ESM will get unflagged in a future 12.x? Is a list being collected of ESM stuff that needs backport to 12.x?

@targos
Copy link
Member

targos commented Dec 2, 2019

There's no list only for ESM stuff, but many PRs related to ESM are semver-minor will have to wait at least for 12.14.0 in January 2020.

@MylesBorins
Copy link
Contributor

hey @coreyfarrell fyi I just backported this to 12.x in 2ccfcd3fab

MylesBorins pushed a commit that referenced this pull request Jan 12, 2020
The ESM loader does not accept a directory as the referrer, it requires
a path within the directory.  Add `/repl` to ensure relative dynamic
imports can succeed.

Fixes: #19570

PR-URL: #30609
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Coe <bencoe@gmail.com>
BethGriggs pushed a commit that referenced this pull request Feb 6, 2020
The ESM loader does not accept a directory as the referrer, it requires
a path within the directory.  Add `/repl` to ensure relative dynamic
imports can succeed.

Fixes: #19570

PR-URL: #30609
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Coe <bencoe@gmail.com>
@MylesBorins MylesBorins mentioned this pull request Feb 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. esm Issues and PRs related to the ECMAScript Modules implementation. repl Issues and PRs related to the REPL subsystem.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

dynamic import can't be used in the REPL
7 participants