Skip to content

Commit d271ec5

Browse files
committed
chore: add meeting notes
1 parent 18320c4 commit d271ec5

14 files changed

+797
-0
lines changed

.DS_Store

-6 KB
Binary file not shown.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.DS_Store

meetings/2019-09-04.md

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#### Meeting from: September 4th, 2019
2+
# Open RFC Meeting (npm)
3+
4+
### Attendees:
5+
6+
- Darcy Clarke (@darcyclarke)
7+
- Isaac Z. Schlueter (@isaacs)
8+
- Claudia Hernández (@claudiahdz)
9+
- Tierney Cyren (@bnb)
10+
- Wes Todd (@wesleytodd)
11+
- Andrew Eleunterio
12+
13+
### Agenda:
14+
15+
- Welcome & Introductions
16+
- #43 Peer dependencies installation
17+
- #47 Unlisted dependency support
18+
- Review/converse on sustainability & support drafts
19+
- Carry-over: #1 Display package size information postinstall
20+
- Carry-over: #48 Link .hook scripts
21+
- Carry-over: #27 Package overrides
22+
- Carry-over: #36 Script-shell config
23+
24+
### Notes:
25+
26+
1. Welcome & Introductions
27+
Tierney: Want to discuss RFCs accepted but not implemented
28+
Isaac: How do we address backlog of RFCs (including ratification)
29+
Next steps:
30+
Darcy to create an issue on npm/rfcs to highlight & discuss acceptance criteria (ie. ratification) & backlog
31+
32+
2. #43 Peer dependencies installation
33+
34+
Tierney: Issues with how npm handled ordering (ex. acorn deduping/resolution)
35+
Isaac: Options...
36+
Potentially open to other RFC around singletons
37+
should identify dependencies vs.
38+
package identifier (ie. https://github.com/npm/rfcs/pull/23/)
39+
Tierney: Potentially hide features behind feature flags to play nice with pnpm, yarn etc.
40+
Isaac: `--auto-install-peer-deps` -esque flag
41+
Next steps:
42+
Modifications coming to RFC (Isaac)
43+
Support might be able to land with npm v7
44+
45+
3. #47 Unlisted dependency support
46+
47+
Isaac:
48+
Don’t want to break other package managers (ex. pnpm)
49+
Onus on npm to fix
50+
Community is already working around this (ex. Angular flattens /w config flag, npm-doctor etc.)
51+
Tierney:
52+
Advocating for explicit command
53+
Next steps:
54+
RFC: check code for unlisted deps in `npm doctor`
55+
RFC: print warnings at runtime for `npm test` under tink (npm >= v8)
56+
57+
4. Review/converse on sustainability & support drafts
58+
59+
Wesley:
60+
package maintenance WG looking at how to better support the maintainer that wants to communicate *support*
61+
`backing` overlap with *sustainability* proposal
62+
Isaac:
63+
Schema itself looks perfect
64+
Problems with number of changes that object may see
65+
Next steps:
66+
npm to provide feedback on existing issues/drafted spec
67+
Draft an RFC on npm/rfcs once there is consensus from Package Maintenance WG

meetings/2019-10-02.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
#### Meeting from: October 2nd, 2019
2+
# Open RFC Meeting (npm)
3+
4+
### Attendees:
5+
6+
- Darcy Clarke (@darcyclarke)
7+
- Ruy Adorno (@ruyadorno)
8+
- Claudia Hernández (@claudiahdz)
9+
- Daniel Sauble (@djsauble)
10+
- Wes Todd (@wesleytodd)
11+
12+
### Agenda:
13+
14+
- Housekeeping (introductions, outlining intentions & desired outcomes)
15+
- Discuss proposals & ideas on the PRs/issues outlined
16+
- Open PRs, Templates & labels
17+
- npm support subcommand
18+
- npm cache list
19+
- docs: scoped names can begin with '.' & '_'
20+
- #48 Link .hook scripts
21+
- #1 Display package size information postinstall
22+
- #51 Expose arborist metadata to lifecycle scripts
23+
- #43 Peer dependencies installation
24+
- Document the discussion & next steps
25+
26+
### Notes:
27+
- Darcy: Create public calendar with recurring event
28+
- Darcy: Create livestream integration for these calls
29+
- Agenda overview
30+
- Standardizing labels
31+
- Good first issue
32+
- Needs discussion (?)
33+
- Try to set common standards across the communities
34+
- Support subcommand
35+
- Schema conversation in the package maintenance group
36+
- PR open in the cli: https://github.com/npm/cli/pull/246
37+
- Support from other cli clients
38+
- Intention to land asap in the npm cli
39+
- Possible confusion with the name “Support” from users (is this related to the npm Inc. support team?)
40+
- Concerns about the schema consensus, it’s going to be hard to change it after landing an initial implementation
41+
- Package maintenance team is more concerned about a long term solution
42+
- Loop back with the package maintenance working group
43+
- Segment the conversation
44+
- Then the current PR can tackle only that specific part (monetary) of the problem that the working group is currently tackling
45+
- npm cache list
46+
- Ping Isaacs about it in order to get feedback
47+
- labeled as semver-minor so it can potentially be a part of next release
48+
- PR open in the cli: https://github.com/npm/cli/pull/194
49+
- Docs: scoped names can begin with '.' & '_'
50+
- Seems to be wip
51+
- Open PR: https://github.com/npm/cli/pull/134
52+
- Link .hook scripts
53+
- Seems to have a concern from Isaacs
54+
- Open PR: https://github.com/npm/rfcs/pull/48
55+
- Display package info post-install
56+
- Open PR: https://github.com/npm/rfcs/pull/1
57+
- Concerns about it being a misleading metric for end users
58+
- Hide it behind a flag or create a separate command (?)
59+
- Expose arborist metadata to lifecycle scripts
60+
- Need input from Isaacs
61+
- Open PR: https://github.com/npm/rfcs/pull/51
62+
- Peer dependencies installation
63+
- Maybe have a session with the rest of the team to explain to the team the background history here and why do we want to do it again
64+
- Meta: make sure we have a livestream next time in order to help increase awareness of the open rfc calls

meetings/2019-10-16.md

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
#### Meeting from: October 16th, 2019
2+
# Open RFC Meeting (npm)
3+
4+
### Attendees:
5+
6+
- Darcy Clarke (@darcyclarke)
7+
- Ruy Adorno (@ruyadorno)
8+
- Claudia Hernández (@claudiahdz)
9+
- Michael Perrotte (@mikemimik)
10+
- Daniel Sauble (@djsauble)
11+
12+
### Agenda:
13+
14+
- Housekeeping (introductions, outlining intentions & desired outcomes)
15+
- Funding Package Maintainers (note: this needs RFC, Issue or PR)
16+
- #51 Expose arborist metadata to lifecycle scripts
17+
- npm cache list
18+
- #43 Peer dependencies installation
19+
- docs: scoped names can begin with '.' & '_'
20+
- #48 Link .hook scripts
21+
- https://github.com/npm/bin-links/pull/5
22+
- Open RFC Meeting @ Collab Summit
23+
- Discuss new day/time for meeting
24+
- Discuss announcements (When? Where? How?)
25+
- https://github.com/nodejs/create-node-meeting-artifacts
26+
27+
### Notes:
28+
29+
#### Housekeeping (introductions, outlining intentions & desired outcomes)
30+
- Introduction, open rfc goal is to interact with the community
31+
- Feel free to send proposals
32+
33+
#### Funding Package Maintainers (note: this needs RFC, Issue or PR)
34+
- Package Maintenance working group from OpenJS foundation is putting up work towards a spec
35+
- Draft spec: https://gist.github.com/darcyclarke/dd77c8f1fb895c5063bf39723a27d0fa
36+
- Goal is to have monetary means to maintainers to be supported by the community
37+
- We're going to focus on "funding" aspect
38+
- Planning to integrate it on both website and cli
39+
- Ruy is going to be championing the development for the work on the cli
40+
- Idea is to have a post install highlight the funding metadata results
41+
- `npm fund` command similar to (or adapted from) draft work from: https://github.com/npm/cli/pull/246
42+
- opt-out flag `--no-fund`
43+
- Intent is to land on next minor version `6.13.0`, 2 - 3 weeks from now
44+
- Idea is to loop back with package maintenance group in order to validate spec
45+
- We would like to have an actionable way to "resolve" funding for projects already backed in the future
46+
- Takeaways:
47+
- Create PR against npm RFC repo with the result from the WG formalized spec
48+
49+
#### Expose arborist metadata to lifecycle scripts
50+
- RFC: https://github.com/npm/rfcs/pull/51
51+
- Would require input from Isaac
52+
- Wants to expose metadata from arborist into env variables
53+
- Seems to build upon work on https://github.com/npm/rfcs/pull/38
54+
- Needs discussion
55+
56+
#### npm cache list
57+
- PR: https://github.com/npm/cli/pull/194
58+
- Would be nice to have input from Isaac or Jacobs
59+
- Seems to be very useful in order to take a peek into the current cache
60+
- Has no tests right now
61+
62+
#### Peer dependencies installation
63+
- RFC: https://github.com/npm/rfcs/pull/43
64+
- Need Isaac
65+
- Semver major, would land on npm@7
66+
67+
#### docs: scoped names can begin with '.' & '_'
68+
- Just docs wording
69+
- Should land on next release
70+
- Also be picked up for new docs website
71+
72+
#### Link .hook scripts
73+
- RFC: https://github.com/npm/rfcs/pull/48
74+
- Creates a `package.json` syntax to declare hooks without necessarily using `.hooks/` folder
75+
- PR: https://github.com/npm/bin-links/pull/5
76+
- Needs code review
77+
- Isaac expressed concerns in the RFC
78+
- Semver major
79+
80+
#### Open RFC Meeting @ Collab Summit
81+
- Have a live session during the OpenJS Foundation collaboration Summit 13-14 in Montreal
82+
- Action item: Propose the meeting at the OpenJS Foundation collab summit repo
83+
- To be confirmed if the Community & Open Source team will be all there
84+
- Action item: Ruy proposes the summit session at the Github repo
85+
86+
#### Discuss new day/time for meeting
87+
- Find a meet time/day in which more folks can attend
88+
- Many options of time in a given day
89+
- Post an issue in which we can run polls to define the time for the next meeting
90+
- Publish agenda in advance
91+
- Action item: Claudia will create the issue on the rfcs repo to coordinate that
92+
93+
#### Discuss announcements (When? Where? How?)
94+
- Get the agenda into people's radar sooner
95+
- Reach out to folks that have open rfcs in the repo currently
96+
- Can we automate this process?
97+
- Use attendants from the community as a way to promote the open rfc calls
98+
- Going forward we should have livestream and hopefully more social media traction
99+
- Action item: Mike will automate creation of the agenda
100+
- Agenda can be generated 1 week prior to the next OpenRFC call

meetings/2019-10-30.md

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#### Meeting from: October 30th, 2019
2+
# Open RFC Meeting (npm)
3+
4+
### Attendees:
5+
6+
- Darcy Clarke (@darcyclarke)
7+
- Daniel Sauble (@djsauble)
8+
- Isaac Z. Schlueter (@isaacs)
9+
- Ruy Adorno (@ruyadorno)
10+
- Claudia Hernández (@claudiahdz)
11+
- Michael Perrotte (@mikemimik)
12+
13+
### Agenda:
14+
15+
- Housekeeping (introductions, outlining intentions & desired outcomes)
16+
- Review results of meeting time change poll #55
17+
- Review Standardizing Labeling Issues & PRs as "Agenda" items
18+
- Issue: #56 [FEATURE] Create RFC for Yarn Resolutions
19+
- Issue: #14 Fix up & improve statusboard
20+
- Issue: #55 What time should we run the Open RFC calls?
21+
- Issue: #3 Add settings.yml file and extend from npm defaults
22+
- Issue: #3 Add monitoring/benchmarking tools
23+
- Issue: #2 Add funding to package.json
24+
- Issue: #1 Default template files for projects
25+
- PR: #43 Let's install peer deps again!
26+
- PR: #36 Allow script-shell config in package.json
27+
- PR: #35 rfc: @pika/pack available in stock npm
28+
- PR: #34 RFC for dependencies change script addition
29+
- PR: #24 Unpublished modules should return 410 Gone
30+
- PR: #23 Add Singleton Packages RFC.
31+
- PR: #22 Add feature to show dependencies of a particular dependency
32+
- PR: #20 powershell scripts for installed binaries
33+
- PR: #18 Interactive audit resolver
34+
35+
#### Notes:
36+
37+
- [2] Darcy will shift one of these calls to 2PM EST and propose another set of times for another time slot that can capture another audience.
38+
- [3] Going forward, Darcy has automated the agenda compilation for this meeting. Add the “agenda” label to issues and PRs in the CLI repo to get them added to this meeting’s agenda automatically (via a cron job).
39+
- [4] In npm@7, we intend to add better interoperability between Yarn and npm. We might not have a package-lock.json file, so the ability to use the Yarn or pnpm equivalents is important.
40+
- [4] There’s an overlapping/non-identical set of data we can get from the various files, so the plan is to have arborist be clever enough to pull what information it can and turn it into a representation of all the packages in the project.
41+
- [4] Probably a different format of the lock file that arborist can use. Not a new file in your project, but a new file in your node_modules. Format of that file tbd.
42+
- [4] Adding resolutions isn’t a breaking change, so we could do it in [email protected] for example.
43+
- [7] The engineering org ratified some baseline PR templates, and created a .github project which maps those templates across all of our projects. You can override them on a per-project level, so we’re creating a new settings.yml that our projects can extend from as our standard.
44+
- [7] The org-wide .github project might not be the right approach for the OSS team, not surgical enough.
45+
- [8] In addition to 100% test coverage, we want to add some benchmarks (no cache, no lockfile, etc).
46+
- [8] pnpm started a project which runs each of the package managers against the same set of scenarios, so we want to adopt this internally.
47+
- [8] We rejiggered this so it’s easier to set up scenarios, and we intend to merge it into the CLI project. In v1 we’re going to start generating results, and in v2 we intend to start comparing against other package managers.
48+
- [8] Performance of publishing isn’t super important. People don’t generally complain that publishes take too long (they complain about installs instead, because there’s a (couple) order of magnitude more operations involved).
49+
- [8] Isaacs wants this so we can benchmark npm@7 against npm@6.
50+
- [9] Ruy is shepherding the implementation of the `npm fund` command. He’s starting with examples of how we do things already in the CLI (e.g. how we open links in the browser).
51+
- [9] There are three parts, finding packages with the funding attribute set in the package.json, listing the funding URLs on the CLI, and opening individual URLs in the browser.
52+
- [10] The engineering org ratified some default templates which don’t really work for our OSS projects, so this issue is about creating a new set of default templates that all of our OSS projects can extend.
53+
- [10] This is related to (but different from) [7]
54+
- [11] This is at a point where we’ve talked through all disagreements and gathered all the data we can, so Isaac locked the issue to recognize that there’s no point in continuing to discuss.
55+
- [11] If the concerns that were brought up in the PR are real, we’ll fix them in the beta of npm@7.
56+
- [11] There’s a good chance that the first version of npm@7 that people start using widely is not 7.0, but rather 7.3. Walking back peerDependencies if needed after the npm@7 beta is available shouldn’t be a big deal.
57+
- [11] Darcy will queue up an internal discussion around this
58+
- [12] Calling the field “npm” is kind of weird since the whole package.json is technically part of npm. Should think about renaming it, or moving it to “scripts”.
59+
- [12] Potentially we could add logic where you check the .npmrc first, and if the key is not found, check your package.json (or vice-versa).
60+
- [12] The question is whether we want to respect this setting on a per-package basis. If the answer is ‘no’, we need to consider adding support for this to the packuments as well.
61+
- [12] Creating a one-off for script config will create an expectation that you can do this for other config settings as well, which seems bad.
62+
- [12] Isaacs will give this feedback on the PR and create an issue for addressing this issue in a more holistic manner.
63+
- [13] Isaacs thinks we should let this lie until post-npm@7. The team has a lot on their plate right now. Darcy is moving this to the backlog.
64+
- [14] Should bikeshed the name a bit, we don’t currently use camel casing.
65+
- [14] Other questions: when do we run the script and what information is available to it? (e.g. pre-scripts don’t know what the filename is)
66+
- [14] Isaacs doesn’t see this landing prior to npm@7, it will be an order of magnitude easier to do later.
67+
- [18] We’ve already shipped this! Isaacs moved the RFC to the implemented folder.

meetings/2019-11-13.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
#### Meeting from: November 13th, 2019
2+
# Open RFC Meeting (npm)
3+
4+
### Attendees:
5+
6+
- Darcy Clarke (@darcyclarke)
7+
- Daniel Sauble (@djsauble)
8+
- Ruy Adorno (@ruyadorno)
9+
- Claudia Hernández (@claudiahdz)
10+
- Michael Perrotte (@mikemimik)
11+
- Jordan Harband (@ljharb)
12+
13+
### Agenda:
14+
15+
- Housekeeping (introductions, outlining intentions & desired outcomes)
16+
- Issue: #58 What day/time should the alternating Open RFC call be?
17+
- PR: #24 Unpublished modules should return 410 Gone
18+
- PR: #23 Add Singleton Packages RFC.
19+
- PR: #22 Add feature to show dependencies of a particular dependency
20+
- PR: #20 powershell scripts for installed binaries
21+
- PR: #18 Interactive audit resolver
22+
- Issue: #65 [RRFC] turn off file name scrubbing for your own private registry
23+
24+
### Notes:
25+
26+
- [2] The poll showed that 2pm EST on Wednesday seems to be the best day/time for everyone (we won’t add alternating time slots for now)
27+
- [3] Changing the response for unpublished packages from a 404 to a 410 will involve changes to the registry, but seems like a reasonable change. If an entire package name has been unpublished, we should still return a 404.
28+
- [3] Deleting your lockfile and running npm install from scratch is not ideal because you should keep as much of your dependency tree locked as possible.
29+
- [3] This is probably an npm@7 type thing, because if we get a 410, we’d have to unroll to figure out the ideal tree structure, which isn’t the end of the world but additional work.
30+
- [3] If we have to create a new dependency tree that differs from what’s defined in your lockfile, we should fail so we don’t accidentally introduce dependencies you don’t want.
31+
- [3] Instead of doing this automatically, we should add a new command that will update the lockfile for you.
32+
- [4] Singleton on a package would cause dependency hell for all of my users.
33+
- [4] React already does this, but there hasn’t been programmatic support in npm.
34+
- [4] It would be really tempting if we added this feature to add the singleton property to React, because it breaks at runtime if you have multiple copies.
35+
- [4] Potentially a better approach to this is peerDependencies, for which there’s another RFC already.
36+
- [4] This comes down to who should own the tree shape of an application, the application developer or the module developer? Isaac thinks it should be the application developer since they have more context.
37+
- [4] Isaac will close this RFC and move the conversation over to the peerDependencies RFC.
38+
- [5] We’re going to need to make some deeper changes to `npm ls` in npm@7 (it’s slow). There’s no need to fully load in the package tree every time we run `npm ls`.
39+
- [5] `npm ls` will tell you if something is extraneous or an unmet dependency, but there’s no need to read the node_modules folder to get that info, we can get that from the lockfile instead.
40+
- [5] pnpm has a lockfile that is in the root of your project, and a separate lockfile in the root of your node_modules. Even if you install with --no-save, it always updates the node_modules lockfile.
41+
- [5] The pnpm approach is appealing because then you just need to compare the two lockfiles, instead of traversing the node_modules folder.
42+
- [5] Isaac is going to write an RFC describing how `npm ls` should change in npm@7.
43+
- [5] Isaac is also going to write an RFC for lockfile v2 (which is partially implemented already).
44+
- [6] PowerShell scripts require system permissions whereas CMD scripts did not, hence the prompt.
45+
- [6] Isaac is unsure whether it’s a feature or a bug in PowerShell
46+
- [6] See also: https://github.com/npm/cli/issues/470
47+
- [7] Majority of CVEs are false positives, so the desire is to be more surgical in deciding which advisories/packages to not flag.
48+
- [7] Cool feature, not a priority right now.
49+
- [7] Arborist will give us a better way to load a tree, so the security microservice can be more specific in deciding how to treat the tree. At that point, an interactive resolver would be much easier to do.
50+
- [7] The application author should be the one to drive the interaction, not module maintainers.
51+
- [7] Let’s table it until after npm@7.
52+
- Jordan wants to see funding take an array of things, because some packages have multiple maintainers and having to spin up a landing page kinda sucks.
53+
- Jordan is going to write an RFC for this.

0 commit comments

Comments
 (0)