Skip to content

Commit 364af49

Browse files
joshgavMylesBorins
authored andcommitted
doc: add CTC meeting minutes 2016-06-22
closes #7366 PR-URL: #7390 Reviewed-By: Bradley Farias <[email protected]> Reviewed-By: Rod Vagg <[email protected]> Reviewed-By: James M Snell <[email protected]>
1 parent 21c1b84 commit 364af49

File tree

1 file changed

+151
-0
lines changed

1 file changed

+151
-0
lines changed

doc/ctc-meetings/2016-06-22.md

+151
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
# Node Foundation CTC Meeting 2016-06-22
2+
3+
## Links
4+
5+
* **Audio Recording**: TBP
6+
* **GitHub Issue**: https://github.com/nodejs/node/issues/7366
7+
* **Minutes Google Doc**: <https://docs.google.com/document/d/1X9PTcpYgTKJO-PRKOLBrL4fIV-7XDR0x71FAxJWn0II>
8+
* _Previous Minutes Google Doc: <https://docs.google.com/document/d/1e7JdFHVtMtW9_o0Gi3NNz6g7TK50q4u9LYKFzBeHOQ8>_
9+
10+
## Present
11+
12+
* Bradley Meck @bmeck (observer/GoDaddy/TC39)
13+
* Chris Dickinson @chrisdickinson (CTC)
14+
* Evan Lucas @evanlucas (CTC)
15+
* James M Snell @jasnell (CTC)
16+
* John-David Dalton @jdalton (observer/Lodash/Microsoft)
17+
* Yuval Brik @jhamhader (observer)
18+
* Josh Gavant @joshgav (observer/Microsoft)
19+
* Michael Dawson @mhdawson (CTC)
20+
* Brian White @mscdex (CTC)
21+
* Ali Ijaz Sheikh @ofrobots (CTC)
22+
* Shigeki Ohtsu @shigeki (CTC)
23+
* Steven R. Loomis @srl295 (observer/IBM/ICU)
24+
* Trevor Norris @trevnorris (CTC)
25+
* Rich Trott @Trott (CTC)
26+
27+
## Agenda
28+
29+
Extracted from **ctc-agenda** labelled issues and pull requests from the **nodejs org** prior to the meeting.
30+
31+
### nodejs/node
32+
33+
* Node 6 fs.realpath behavior changes [#7175](https://github.com/nodejs/node/issues/7175)
34+
35+
## Standup
36+
37+
* Bradley Meck @bmeck (observer/GoDaddy/TC39)
38+
* Need for APM / JIT Cache hooks investigation
39+
* Investigation into VM support for V8 and ES Modules
40+
* Chris Dickinson @chrisdickinson (CTC)
41+
* Keeping track of ES Modules proposals
42+
* tooling gn to be npm installable
43+
* Evan Lucas @evanlucas (CTC)
44+
* working on security fixes
45+
* looking for ways to streamline landing commits
46+
* James M Snell @jasnell (CTC)
47+
* Vacation last week (worked on an experimental http/2 impl)
48+
* Working on WHATWG URL implementation
49+
* Various other performance related and doc PRs
50+
* And a heads up.. Will be on vacation again the 2nd and 3rd weeks of July.
51+
* John-David Dalton @jdalton (observer/Lodash/Microsoft)
52+
* Retooled proposal to simplify it and make it more generic so it will work with things other than just script and module
53+
* Babel now supports export {} and therefore supports Unambiguous Modules proposal
54+
* Pinged some v8 devs to ask about impact there
55+
* Met with TypeScript folks too to discuss things that are a bit out of the scope of Unambiguous JavaScript but still modules
56+
* Initial round of feedback on Unambiguous JavaScript. Will be in JavaScript Weekly tomorrow.
57+
* Josh Gavant @joshgav (observer/Microsoft)
58+
* hacking on inspector and tracing stuff
59+
* es6 modules a bit
60+
* monitoring issues, PRs, etc.
61+
* Michael Dawson @mhdawson (CTC)
62+
* Chasing PPC machine issues
63+
* Chasing new AIX machines (expect this month)
64+
* Contributing to ABI stable module API PoC (NaN examples 1-8 now work)
65+
* Misc reviews/commenting
66+
* misc PRs/lands
67+
* Keeping up with issues
68+
* Brian White @mscdex (CTC)
69+
* Reviewing PRs/issues
70+
* Shigeki Ohtsu @shigeki (CTC)
71+
* Reviewing just one PR for root cert update.
72+
* Steven R. Loomis @srl295 (observer/IBM/ICU)
73+
* helping @jasnell (a little) with https://github.com/nodejs/node/pull/7355
74+
* Trevor Norris @trevnorris (CTC)
75+
* Additional work on the AsyncWrap EP
76+
* Misc PR reviews
77+
* Rich Trott @Trott (CTC)
78+
* CO: Continuous Onboarding (welcome @RReverser!)
79+
* CI: Investigating and fixing flaky tests as time allows
80+
* Ali Ijaz Sheikh @ofrobots(CTC)
81+
* Working on FFI, and other miscellaneous things.
82+
83+
84+
## Minutes
85+
86+
### Review of last meeting
87+
88+
* url: return valid file: urls fom url.format() [#7234](https://github.com/nodejs/node/pull/7234)
89+
* http: don't inherit from Object.prototype [#6102](https://github.com/nodejs/node/pull/6102)
90+
* ES6 Modules
91+
92+
### fs.realpath
93+
94+
- https://github.com/nodejs/node/issues/7175
95+
- https://github.com/nodejs/CTC/issues/9
96+
- https://github.com/nodejs/node/issues/7192
97+
- https://github.com/nodejs/node/issues/7044
98+
- https://github.com/nodejs/node/issues/7294
99+
100+
When we made changes to rely on libuv realpath it was a semver-major change which introduced new errors and removed `cache` argument. This broke some ecosystem modules, notably `glob`. Also broke some path-related stuff in Windows.
101+
102+
We chose libuv realpath because it’s much more performant.
103+
104+
Options:
105+
- Revert to old behavior. Would lose perf gains. Would be semver-major change.
106+
- Add new method e.g. `realpath2` which uses old behavior.
107+
- **Keep new behavior and add logic in Node to handle new/unexpected errors.**
108+
109+
@jasnell - We did a semver-major revert for the symlink issue.<br />
110+
@trevnorris - No need to revert, just handle the errors.<br />
111+
@jasnell - Do we really know what the errors are so we can be sure we’re handling all of them?<br />
112+
@trevnorris - we can compare to old impl.<br />
113+
@jasnell - Add an option to the options object to suppress errors, turn on by default.<br />
114+
115+
**@trevnorris will work on option 3.**
116+
117+
Post-mortem: https://github.com/nodejs/CTC/issues/9
118+
- Postpone till Rod is present.
119+
- @jasnell - We didn’t follow typical deprecation path for `cache` parameter change.
120+
121+
122+
### ES6 modules
123+
124+
- https://github.com/bmeck/UnambiguousJavaScriptGrammar
125+
126+
- Any code with `import` or `export` is a module, otherwise a script.
127+
- `modules.root` aspect removed, so “fat packages” (i.e. incl. both ES6 and CJS) are not addressed. Recommendation is to use one or the other and transpile as needed. Or discuss `modules.root` separately.
128+
- Users can explicitly specify module goal in package.json. This way even if dev removes all `import/export` from their code it’s still treated as a module.
129+
- TC39 could provide a “recommendation” or endorsement supporting this. They may suggest a spec extension.
130+
131+
@bradleymeck - still need modules.root for fat packages.
132+
133+
What about bytecode caching? Provide hooks to allow user to handle as desired. That means caching is in userland. Might split this into separate proposal.
134+
135+
@trevnorris analyzed perf hit of double parsing and found max 25% perf hit.
136+
137+
In-band detection (from the code itself) is preferable to out-of-band detections (e.g. package.json, file extension).
138+
139+
CJS and ES6 semantic interoperability: Bradley is working on this, working with WHATWG Loader spec and V8.
140+
- `this` value
141+
- live bindings for getters (get updated values) (?)
142+
- immutability - hooks for APM providers to wrap original functions. To be handled by WHATWG Loader spec.
143+
144+
**@jdalton - How do we finalize consensus on this?**
145+
- **PR to change [node-eps:/002-es6-modules.md](https://github.com/nodejs/node-eps/blob/master/002-es6-modules.md)**
146+
147+
### Q/A on public fora
148+
None.
149+
150+
### Next Meeting
151+
2016-06-29

0 commit comments

Comments
 (0)