#### 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