#### Meeting from: May 18th, 2022
# Open RFC Meeting (npm)
### Attendees
- Darcy Clarke (@darcyclarke)
- Gar (@wraithgar)
- Ruy Adorno (@ruyadorno)
- Owen Buckley (@thescientist13)
- Jordan Harband (@ljharb)
### Agenda
1. **Housekeeping**
1. Introduction(s)
1. Code of Conduct Acknowledgement
1. Outline Intentions & Desired Outcomes
1. Announcements
- [**v9 Roadmap**](https://github.com/npm/statusboard/issues/443) (Check it out)
- OpenJS World - https://openjsf.org/openjs-world-2021/
1. **Issue**: [#581 [RRFC] add message (or opt-out support) for non registry tarball URLs](https://github.com/npm/rfcs/issues/581) - @thescientist13
1. **PR**: [#566 RFC: Command Specific Configuration](https://github.com/npm/rfcs/pull/566) - @darcyclarke
1. **PR**: [#564 RFC: Dependency Selector Syntax & `npm query`](https://github.com/npm/rfcs/pull/564) - @darcyclarke
1. **Issue**: [#548 [RRFC] Add flag for running NPM commands in transitive dependencies](https://github.com/npm/rfcs/issues/548) - @zgriesinger
1. **Issue**: [#546 [RRFC] Clean up file ownership story](https://github.com/npm/rfcs/issues/546) - @ruyadorno
1. **Issue**: [#539 [RRFC] Security: audit lockfiles for injection](https://github.com/npm/rfcs/issues/539) - @fritzy
1. **PR**: [#519 RFC: Package Distributions](https://github.com/npm/rfcs/pull/519) - @darcyclarke
1. **Issue**: [#479 BREAKING CHANGE(bin): command should not return non-existent paths](https://github.com/npm/statusboard/issues/479) - @lineus
1. **Issue**: [#575 [FEATURE] run-script with workspaces should short-circuit on script error](https://github.com/npm/rfcs/issues/575) - @johndiiorio
### Notes
- **Issue**: [#581 [RRFC] add message (or opt-out support) for non registry tarball URLs](https://github.com/npm/rfcs/issues/581)
- @thescientist13
- At the last meeting we went over it and it seems ready to turn into a proper RFC
**PR**: [#566 RFC: Command Specific Configuration](https://github.com/npm/rfcs/pull/566)
- @darcyclarke
- Need to document all commands and any configuration options that might affect them
- **PR**: [#564 RFC: Dependency Selector Syntax & `npm query`](https://github.com/npm/rfcs/pull/564)
- @darcyclarke
- Adressed some of the early feedback concerns, adding a dynamic attribute pseudo selector, e.g: `:attr(:scripts([test~=tap]))`
- @ljharb
- Let's chose something else other than the name `Class` for the `.dev`, `.optional`, `.workspace` type of selectors, maybe:
- `Dependency Types` ?
- `Dependency Classifications` ?
- `Dependency Categories` ?
- `Dependency Groups` ?
- **Issue**: [#548 [RRFC] Add flag for running NPM commands in transitive dependencies](https://github.com/npm/rfcs/issues/548)
- @ljharb
- `npm` need to implement a way to determine the topological order in which to run workspaces scripts (or other commands), this order is determined by reading the dependency graph and starting with the leaves
- potentially two different modes:
- run in topological order only including specific workspaces
- run in topological order also including any transitive workspace dependency not specifically determined
- could add flags to implement those, e.g: `--include-workspace-transitive-deps`
- **Issue**: [#546 [RRFC] Clean up file ownership story](https://github.com/npm/rfcs/issues/546)
- @ruyadorno
- Action item is to write the actual RFC
- **Issue**: [#539 [RRFC] Security: audit lockfiles for injection](https://github.com/npm/rfcs/issues/539)
- @darcyclarke
- Going to remove the agenda label, looks like it's already work in progress
- **PR**: [#519 RFC: Package Distributions](https://github.com/npm/rfcs/pull/519)
- @darcyclarke
- Not much in terms of updates
- @ruyadorno
- Might be a good idea to progress with an "expanding optional dependencies support" RFC
- **Issue**: [#479 BREAKING CHANGE(bin): command should not return non-existent paths](https://github.com/npm/statusboard/issues/479)
- @ruyadorno
- from last meeting:
- (@ljharb) Needs to plan for the potential breakage for users using $(npm bin) in their PATH, possibly point users to a npx replacement
- (@nlf) `npx` can start supporting the --location flag in order to support some of these usecases
- @darcyclarke
- **Action item:**
- Remove agenda label
- Backlog the working items
- **Issue**: [#575 [FEATURE] run-script with workspaces should short-circuit on script error](https://github.com/npm/rfcs/issues/575)
- @ljharb
- This is another feature/behavior that can benefit from the previously mentioned "topological order"
- Parallel, parallel short circuiting, topological
- @darcyclarke
- Maybe start the work on supporting a `--fail-fast` flag before tweaking order of execution
- Pipelines, user-defined order of execution for workspaces
- @ljharb
- Expanding on the capabilities from topological order with manually tweaking pipelines for custom order sounds like a powerful feature