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

Node.js Loaders Team Meeting 2022-11-08 #117

Closed
mhdawson opened this issue Nov 4, 2022 · 11 comments · Fixed by #118
Closed

Node.js Loaders Team Meeting 2022-11-08 #117

mhdawson opened this issue Nov 4, 2022 · 11 comments · Fixed by #118
Assignees

Comments

@mhdawson
Copy link
Member

mhdawson commented Nov 4, 2022

Time

UTC Tue 08-Nov-2022 19:00 (07:00 PM):

Timezone Date/Time
US / Pacific Tue 08-Nov-2022 11:00 (11:00 AM)
US / Mountain Tue 08-Nov-2022 12:00 (12:00 PM)
US / Central Tue 08-Nov-2022 13:00 (01:00 PM)
US / Eastern Tue 08-Nov-2022 14:00 (02:00 PM)
EU / Western Tue 08-Nov-2022 19:00 (07:00 PM)
EU / Central Tue 08-Nov-2022 20:00 (08:00 PM)
EU / Eastern Tue 08-Nov-2022 21:00 (09:00 PM)
Moscow Tue 08-Nov-2022 22:00 (10:00 PM)
Chennai Wed 09-Nov-2022 00:30 (12:30 AM)
Hangzhou Wed 09-Nov-2022 03:00 (03:00 AM)
Tokyo Wed 09-Nov-2022 04:00 (04:00 AM)
Sydney Wed 09-Nov-2022 06:00 (06:00 AM)

Or in your local time:

Links

Agenda

Extracted from loaders-agenda labelled issues and pull requests from the nodejs org prior to the meeting.

Invited

  • Loaders team: @nodejs/loaders

Observers/Guests

Notes

The agenda comes from issues labelled with loaders-agenda across all of the repositories in the nodejs org. Please label any additional issues that should be on the agenda before the meeting starts.

Joining the meeting

@mhdawson mhdawson self-assigned this Nov 4, 2022
@arcanis
Copy link
Contributor

arcanis commented Nov 4, 2022

Can we rediscuss landing nodejs/node#43772? I don't see a lot of reasons why it should be blocked by nodejs/node#44710, which seems to still require back and forth discussions around performances. Meanwhile, ESM ts-node with PnP cannot work 😕

@GeoffreyBooth
Copy link
Member

Sure, we can discuss it. I wouldn't want to release one PR separately from the other, to minimize disruptions caused by breaking changes; but we can merge it into main and mark it as blocked for release until the other PR also lands (or is abandoned). Though I'm not sure if merging without releasing helps the PnP situation much.

@JakobJingleheimer
Copy link
Contributor

Are we meeting today?

@GeoffreyBooth
Copy link
Member

I can meet.

@JakobJingleheimer
Copy link
Contributor

Sorry, I meant: Do we need/want to meet?

(I can also meet)

@arcanis
Copy link
Contributor

arcanis commented Nov 8, 2022

The discussion above can be done async if preferred, it's just something that I think is worth talking about, in zoom or not.

to minimize disruptions caused by breaking changes

My PR isn't exactly a breaking change - it makes possible something that wasn't. Even if it's a breaking change, I can't imagine the user base of people using multiple loaders being very large at the moment (in no small part because of the bug my diff attempts to address).

And given that loaders are experimental, why is it necessary to wait 4+ months between two (possibly) breaking changes? Especially when the current release line is Node 19+, which is an odd release, ie already assumed to be more experimental than others?

@GeoffreyBooth
Copy link
Member

@arcanis If you’re free, can we chat today? It would be good to catch up regardless.

I think the other concern regarding the “affect subsequent loaders” PR is whether it might interfere with or block the effort to move things off-thread. Like if each loader ends up in its own worker thread, would one loader be able to influence another? Hopefully the two features aren’t incompatible, but at the time I was thinking that the off-thread one was the more important of the two if we were forced to choose.

@arcanis
Copy link
Contributor

arcanis commented Nov 8, 2022

If you’re free, can we chat today? It would be good to catch up regardless.

Sure, I should be free around the time of the meeting 👍

Like if each loader ends up in its own worker thread, would one loader be able to influence another?

My understanding was that "moving loaders off-threads" only involves moving the full chain of loaders to a separate thread shielded from userland, not each individual loader to a different one. Is it correct, @JakobJingleheimer ?

@JakobJingleheimer
Copy link
Contributor

Each loader would not be in its own thread. All loaders would co-exist in the same separate thread; however, if user-land spawned its own thread, a different loader thread would also be spawned (eg loader thread count = user-land threads + 1).

If a loader is stateful, that means separate/multiple states with no point of commonality, unless we specifically connect them (eg via a shared buffer or a MessageChannel), which IMHO sounds like a very bad day, but without it, you have chaos. I think this is likely the scenario for an ambient loader?

@arcanis
Copy link
Contributor

arcanis commented Nov 8, 2022

The use case for ambient loaders is to make loaders affect subsequent ones. Statefullness isn't related (for all intent and purposes, the PnP loader is stateless).

@JakobJingleheimer
Copy link
Contributor

🤔

Would anyone mind if I poke Gil to join? I think it would cause problems for the likes of testdouble.

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 a pull request may close this issue.

4 participants