#### Meeting from: November 4th, 2020
# Open RFC Meeting (npm)
### Attendees
- Darcy Clarke (@darcyclarke)
- Ruy Adorno (@ruyadorno)
- Christian Siebmanns (@christian24)
- Isaac Z. Schlueter (@isaacs)
- Wes Todd (@wesleytodd)
- Jordan Harband (@ljharb)
- Nathan LaFreniere (@nlf)
### Agenda
1. **Housekeeping**
1. Introduction(s)
1. [Code of Conduct Acknowledgement](https://www.npmjs.com/policies/conduct)
1. Announcements
1. **PR**: [#273 RFC: npm workspaces - Config management](https://github.com/npm/rfcs/pull/273) - @ruyadorno
1. **PR**: [#272 RFC: add preferDev field to package.json](https://github.com/npm/rfcs/pull/272) - @Ginden
1. **Issue**: [#264 [RRFC] Optional files key in package-lock.json to specify the files to include in node_modules on specified package](https://github.com/npm/rfcs/issues/264) - @Rafi993
1. **Issue**: [#250 [RRFC] Provide possibility to reference license file](https://github.com/npm/rfcs/issues/250) - @papiando
1. **PR**: [#217 RFC: add registry per package per organisation](https://github.com/npm/rfcs/pull/217) - @baloran
1. **PR**: [#138 RFC: Add configurable data to HTTP header](https://github.com/npm/rfcs/pull/138) - @Mykyta
### Notes
#### **PR**: [#273 RFC: npm workspaces - Config management](https://github.com/npm/rfcs/pull/273) - @ruyadorno
* @ruyadorno `add`, `list` & `remove` workspaces proposal
* @ruyadorno want to start collecting feedback
* @ljharb wondering what happens when using globs as config for workspaces
* @ljharb prefer if `packages/*` becomes`"packages/*", "!packages/foo"` when removing a workspace `npm workspace remove packages/foo`
* @isaacs don't want to paint ourselves into a corner with solving this
* @darcyclarke what would `npm init --workspaces=foo` do?
* @ruyadorno `files` is also a similar pattern, maybe if we solve the glob-problem for this one we can also provide a helper for `files`
* @ljharb want to know how we can execute arbitrary commands inside workspaces
* @isaacs `npm ws exec ...`
#### **PR**: [#272 RFC: add preferDev field to package.json](https://github.com/npm/rfcs/pull/272) - @Ginden
* @ljharb this proposal extrapolates, it's hard even for an package author to predict _how_ the package is going to be consumed
* @isaacs there are examples of packages such as webpack that will declare all its dependencies as prod deps and have a build step to publish a dist version
* @ljharb there was also a binDependencies proposal that was relevant, ref: https://github.com/npm/rfcs/discussions/115
* @isaacs this would be a semver-minor change for the cli
#### **Issue**: [#264 [RRFC] Optional files key in package-lock.json to specify the files to include in node_modules on specified package](https://github.com/npm/rfcs/issues/264) - @Rafi993
* @isaacs really like the idea but the fact that it gets put in package-lock file since it's an ephemeral file
* @isaacs one hazard is to disallow deduping dependencies since other nodes in the install tree might declare different `files`
* @ljharb sounds like a bad idea to provide end users with the decision to declare what files matter in one of their dependencies, maybe a better alternative is to provide a way for package authors do declare a `filesGroup` or something to declare that set of files
* @isaacs we do have `files` which is a property that enables package authors to declare a set of files to be consumed
* @darcy wouldn't `overrides` also provide a solution to the problem?
* @isaacs maybe it's not that much of a great idea after all, will follow up with a comment to that issue - let's point to `overrides` as a possible alternative
#### **Issue**: [#250 [RRFC] Provide possibility to reference license file](https://github.com/npm/rfcs/issues/250) - @papiando
* @isaacs we talked about adding a `license-file` field
* @ljharb brought up the possibility of managing multiple license files at the last call
* @isaacs we could make it so that the `license` field also accepts an array, for a new field we should pb start from a single file
* @ljharb if we allow users to define something else we also enables more confusing behavior since the various providers out there will not recognize the licenses anymore
* @ljharb an alternative would be to have the default `LICENSE.md` file link to the other involved licenses within the project
* @ljharb given that the ecosystem already settled for the single-value `license` field pointing to a SPDX valid value it sounds like a lot of churn for the ecosystem to enable multiple values and support pointing to files at this point in time
* @darcy sounds like we're not going to move forward with this one, should we just leave feedback in the issue?
* @isaacs :+1:
#### **PR**: [#217 RFC: add registry per package per organisation](https://github.com/npm/rfcs/pull/217) - @baloran
* @ruyadorno let's leave the PR open and wait for more feedback
#### **PR**: [#138 RFC: Add configurable data to HTTP header](https://github.com/npm/rfcs/pull/138) - @Mykyta
* @isaacs haven't had the time to start work on the implementation yet
* @darcy we may accept it
* @isaacs we might want to try a little of the implementation just to get an idea of what we're getting into