Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

docs: 2017-03-08 weekly meeting #78

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
230 changes: 230 additions & 0 deletions meetings/2017-03-08.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,230 @@
# Node Foundation CTC Meeting 2017-03-08

## Links

* **Audio recording**: <https://www.youtube.com/watch?v=2h6lBVSiTp8>
* **GitHub Issue**: [CTC#77](/~https://github.com/nodejs/CTC/issues/77)
* **Minutes Google Doc**:
<https://docs.google.com/document/d/1yTsNRUQ8hO0LvaquRx4TDsJMakDxKfVIRidViemZFmQ>
* _Previous Minutes Google Doc:
<https://docs.google.com/document/d/1xoSIVTwNoOfOf0NSajbZudD2HX4PvYQ5V9eVqfDu0qs>_

## Present

* Bradley Meck @bmeck (observer/GoDaddy/TC39)
* Ben Noordhuis @bnoordhuis (CTC)
* Сковорода Никита Андреевич @ChALkeR (CTC)
* Evan Lucas @evanlucas (CTC)
* Franziska Hinkelmann @fhinkel (observer/Google)
* Jeremiah Senkpiel @Fishrock123 (CTC)
* James M Snell @jasnell (CTC)
* Josh Gavant @joshgav (observer/Microsoft)
* Michael Dawson @mhdawson (CTC)
* Ali Ijaz Sheikh @ofrobots (CTC)
* Jenn Turner @renrutnnej (observer/Node.js Foundation)


## Standup

* Bradley Meck @bmeck (observer/GoDaddy/TC39)
* Started porting loader impl to C++
* Ben Noordhuis @bnoordhuis (CTC)
* same as always, nothing of note
* Сковорода Никита Андреевич @ChALkeR (CTC)
* Buffer-related things mostly
* Evan Lucas @evanlucas (CTC)
* Cutting v7.7.2 release
* Franziska Hinkelmann @fhinkel (observer/Google)
* Final week of Outreachy mentoring (vm module)
* Jeremiah Senkpiel @Fishrock123 (CTC)
* Nothing particularly notable
* James M Snell @jasnell (CTC)
* VM Summit
* Landing backports for v6 and v4
* Josh Gavant @joshgav (observer/Microsoft)
* N-API, VM Summit
* diag stuff
* Michael Dawson @mhdawson (CTC)
* VM Summit
* Ongoing work on N-API
* Build WG meeting
* Keeping up to date on issue, commenting, etc.
* Brian White @mscdex (CTC)
* Continued work on optimizations in node core
* Commented on issues, reviewed PRs
* Ali Ijaz Sheikh @ofrobots (CTC)
* VM Summit, participated in the presentation on FFI.
* Jenn Turner @renrutnnej (observer/Node.js Foundation)
* No update, just observing


## Agenda

* governance: add Franziska Hinkelmann to the CTC
[node#11488](/~https://github.com/nodejs/node/pull/11488) @rvagg
* Symbol key props visible in inspection by default
[node#9726](/~https://github.com/nodejs/node/pull/9726) @Trott
* Updating the Copyright [TSC#174](/~https://github.com/nodejs/TSC/issues/174)
@jasnell
* 002 - web compat of file extension/index searching
[node-eps#51](/~https://github.com/nodejs/node-eps/issues/51) @bmeck


## Previous Meeting Review

* tracking issue: async loader for module interop @trott
[node#11233](/~https://github.com/nodejs/node/issues/11233)

WIP: /~https://github.com/nodejs/sketchy-as-heck-loader-impl

Will open to all Collaborators.

* Updating the Copyright @jasnell
[TSC#174](/~https://github.com/nodejs/TSC/issues/174)

---

## Minutes

### governance: add Franziska Hinkelmann to the CTC [node#11488](/~https://github.com/nodejs/node/pull/11488)

**VOTE**

* In favor (15): @addaleax, @bnoordhuis, @ChALkeR, @cjihrig, @evanlucas,
@Fishrock123, @jasnell, @mhdawson, @misterdjules, @MylesBorins, @ofrobots,
@targos, @thefourtheye, @Trott, @rvagg
* Opposed (0):
* Abstain (0):
* Not yet voted (4): @indutny, @mscdex, @shigeki, @trevnorris

**Next steps**

* No objections, have sufficient votes, so land as proposed.

---

### Symbol key props visible in inspection by default [node#9726](/~https://github.com/nodejs/node/pull/9726) @Trott

**CTC MEMBERS: PLEASE RECORD YOUR VOTE IN
[node#9726\_comment](/~https://github.com/nodejs/node/pull/9726#issuecomment-285158804)**

@joshgav: How will we represent Symbols as keys to make clear they’re not
regular properties/strings? @Fishrock123: Probably `Symbol(symbol\_name)`.

@Fishrock123: Is concern actually about `console.log` rather than
`util.inspect`?

@jasnell: Prefer hiding symbols on output from console.log. Symbols are a simple
way to store hidden state, so prefer not exposing.

Could still hide these props by marking them non-enumerable. Symbol props are
enumerable by default.

@vkurchatkin (in GitHub issue): not meant to be public per spec; non-enumerable
properties would still not be displayed.

For objects output through `console.log`, are symbol props displayed?
* Chromium displays.
* Firefox hides.
* Edge hides.

Would be a semver-major change.

**Next steps**

* Take back one more time to GitHub for discussion, bring to vote next week if
necessary.

---

### Updating the Copyright [TSC#174](/~https://github.com/nodejs/TSC/issues/174) @jasnell

James to update PR and land, still pending. No update re follow-on updated
copyright PR, James to follow up with Board/Legal in next couple weeks.

---

### web compat of file extension/index searching [node-eps#51](/~https://github.com/nodejs/node-eps/issues/51) @bmeck

Concerns from Polymer devs about searching additional path extensions like
`.js`, `.node`, and `/index.js` when `import` is given a path, either absolute
or relative. The extra searches require additional fetch attempts and delay
complete resolution of path till all those extra attempts have completed.
Algorithm doesn't account for network access and so want URL to be fully
resolved or errored before fetch is attempted.

Okay with additional path searches for scheme-less, "bare" URLs, like
`require('lodash/defaults')`. One reason this is different is it refers to
internal module structure, which generally is unknown to the user.

Concern on Twitter that modules will be written expecting search behavior,
which would break on Web.

@Fishrock123: Prefer not to break ecosystem expectations.

@bmeck: Already some effects because we agreed to treat module specifiers as
URLs. For example, characters invalid in URLs but valid in filenames can no
longer be used.

**Next steps**

* Continue discussion on GitHub.

Module loader WIP: </~https://github.com/nodejs/sketchy-as-heck-loader-impl>

@bmeck is porting from JS to C++

---

## Q&A, Other

### What version of V8 (5.7 or 5.8) will land in Node 8.0.0?

@jasnell will cut first beta for 8 on Monday Mar-12. RCs starting Apr-4. All
semver-majors should be in before first RC.

5.8 planned to go stable week of 4/21 ([Chromium
calendar](https://www.chromium.org/developers/calendar)). But will remove old
JSON debug interface, so might be better to stay with 5.7.

@joshgav: Old interface has only been deprecated for a few weeks, landing 5.8
will fully remove it. Some tools (e.g. Visual Studio, node-inspector) depend on
this interface and may not have had time to update.

It will be hard to bump V8 from 5.7 midstream in 8 because we’d lose the old
debug protocol, a semver-major change. If we start with 5.7 we’ll have to
forward-port the old debug protocol if/when we bump to 5.8+ within 8 timeline.

@ofrobots: 5.8 may not include significant changes, Ignition is planned for 5.9.

@jasnell: Initial plan is to include 5.7 and make effort to include 5.8 if not
risky.

---

### N-API, FFI

Plan to submit PR shortly with N-API to include in 8 as experimental, behind a
runtime flag. Work in progress on FFI, no timeline.

Review N-API: /~https://github.com/nodejs/abi-stable-node/tree/api-prototype-8.x

Changes to core are minimal and introduce no breaking changes.

Places to start:

* src/node\_api\_helpers.h
* src/node\_asyncapi.h
* src/node\_jsvmapi.h

---

## Upcoming Meetings

Note: The US starts Daylight Savings Time on Mar-12, meetings will start 1 hour
later on clock (e.g. 8am -> 9am; 12pm -> 1pm; 9pm -> 10pm).

Node.js Foundation Calendar:
<https://calendar.google.com/calendar/embed?src=kap.co_i17i575te0aes6kaanfjr2e4hs%40group.calendar.google.com>

* CTC: March 15, 2000 UTC TSC: March 9, 2000 UTC