Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions doc/meetings/2021-10-26.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Node.js Loaders Team Meeting 2021-10-26

## Links

* **Recording**: https://www.youtube.com/watch?v=3V3ldxn6iV0
* **GitHub Issue**: https://github.com/nodejs/loaders/issues/45

## Present

* Geoffrey Booth: @GeoffreyBooth
* Bradley Farias: @bmeck
* Jacob Smith: @JakobJingleheimer

## Agenda

## Announcements

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

### nodejs/loaders

* update to support chaining & incorporate short-circuit as a return flag [#41](https://github.com/nodejs/loaders/pull/41)
* Iterative chaining design [#32](https://github.com/nodejs/loaders/pull/32)


Discussion of the two proposals side-by-side. We found that the “iterative” version needed several things added to it to regain the equivalent functionality of the “recursive” version, such as needing to pass a mutated `context` from one hook to another, and signal not just when a hook is intending to short circuit (like a `for` loop’s `break`) but also when it’s intending to skip (like a `continue`). Based on this increased complexity, the three of us are leaning toward the “recursive” design.

Next steps are to finish cleaning up the two design docs (add information about Node erroring if `shortCircuit: true` is not passed, add the above stuff about `context` to the iterative design) and merge in the PRs for both design docs. Then, assuming we’re still leaning toward “recursive,” ask the whole loaders team for feedback on that design doc. If the feedback is negative, possibly ask them to review the other design doc, or a third one that Bradley might write that uses `super` and `extends`. Hopefully the feedback is positive and Jacob can go forward and implement chaining.

Also on the to-do list: break up some of the longer files in the `esm/` folder, such as `loader.js` and `resolve.js`, to split out many functions into their own files. Moving some functions from `ESMLoader` class methods into pure functions will also fulfill a prerequisite of making those functions available as utility functions, which is another loaders feature request.