/irc-logs / w3c / #webapps / 2015-04-24 / end
Options:
Previous day, Next day
- # Session Start: Fri Apr 24 00:00:00 2015
- # Session Ident: #webapps
- # [00:01] * Joins: fjh (~fhirsch3@public.cloak)
- # [00:07] * Joins: jcraig_ (~jcraig@public.cloak)
- # [00:08] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
- # [00:08] * Joins: fjh (~fhirsch3@public.cloak)
- # [00:10] * Quits: jcraig (~jcraig@public.cloak) (Ping timeout: 180 seconds)
- # [00:10] * jcraig_ is now known as jcraig
- # [00:11] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
- # [00:11] * Joins: estellevw (~estellevw@public.cloak)
- # [00:17] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [00:25] * Joins: jcraig (~jcraig@public.cloak)
- # [00:26] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [00:28] * Joins: jcraig (~jcraig@public.cloak)
- # [00:37] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [00:39] * Joins: tantek_ (~tantek@public.cloak)
- # [00:42] * Joins: jcraig (~jcraig@public.cloak)
- # [00:42] * Quits: tantek (~tantek@public.cloak) (Ping timeout: 180 seconds)
- # [00:42] * tantek_ is now known as tantek
- # [01:00] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [01:01] * heycam|away is now known as heycam
- # [01:04] * Joins: jcraig (~jcraig@public.cloak)
- # [01:09] * heycam is now known as heycam|away
- # [01:11] * Quits: dka (~dka@public.cloak) (dka)
- # [01:14] * Joins: fjh (~fhirsch3@public.cloak)
- # [01:14] * Joins: jcraig_ (~jcraig@public.cloak)
- # [01:16] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
- # [01:16] * Quits: jcraig (~jcraig@public.cloak) (Ping timeout: 180 seconds)
- # [01:16] * jcraig_ is now known as jcraig
- # [01:19] * Joins: fjh (~fhirsch3@public.cloak)
- # [01:20] * Joins: shepazu (schepers@public.cloak)
- # [01:27] * Quits: shepazu (schepers@public.cloak) (Ping timeout: 180 seconds)
- # [01:28] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [01:30] * Quits: tantek (~tantek@public.cloak) (tantek)
- # [01:32] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
- # [01:33] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [01:36] * heycam|away is now known as heycam
- # [01:37] * Joins: smaug (~chatzilla@public.cloak)
- # [01:41] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [01:53] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [01:54] * Joins: jcraig (~jcraig@public.cloak)
- # [02:11] * Joins: fjh (~fhirsch3@public.cloak)
- # [02:13] * Quits: jsbell (~jsbell@public.cloak) ("There's no place like home...")
- # [02:22] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [02:28] * Joins: marcosc (~marcosc@public.cloak)
- # [02:29] * terri is now known as terri_offline
- # [02:33] * Joins: jcraig (~jcraig@public.cloak)
- # [02:34] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [02:36] * Quits: marcosc (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [02:36] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
- # [02:40] * Joins: chaals (~Adium@public.cloak)
- # [02:45] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
- # [02:59] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
- # [03:01] * Joins: estellevw (~estellevw@public.cloak)
- # [03:07] * Joins: fjh (~fhirsch3@public.cloak)
- # [03:08] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [03:11] * Joins: estellevw (~estellevw@public.cloak)
- # [03:15] * Quits: kochi (~kochi@public.cloak) ("Leaving.")
- # [03:18] * Joins: kochi (~kochi@public.cloak)
- # [03:18] * Quits: fjh (~fhirsch3@public.cloak) (fjh)
- # [03:25] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [03:44] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [04:30] * Joins: marcosc (~marcosc@public.cloak)
- # [04:30] * Quits: marcosc__ (~marcosc@public.cloak) (Client closed connection)
- # [04:42] * Joins: jcraig (~jcraig@public.cloak)
- # [04:59] * Joins: smaug (~chatzilla@public.cloak)
- # [05:05] * heycam is now known as heycam|away
- # [05:18] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [05:19] * Joins: dka (~dka@public.cloak)
- # [05:49] * Joins: jcraig (~jcraig@public.cloak)
- # [05:49] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [05:50] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [05:58] * Joins: smaug (~chatzilla@public.cloak)
- # [05:58] * Joins: tantek (~tantek@public.cloak)
- # [06:16] * Quits: dka (~dka@public.cloak) (dka)
- # [06:38] * Joins: smaug_ (~chatzilla@public.cloak)
- # [06:42] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [06:43] * smaug_ is now known as smaug
- # [06:50] * Quits: smaug (~chatzilla@public.cloak) ("Reconnecting…")
- # [06:50] * Joins: smaug (~chatzilla@public.cloak)
- # [07:38] * Joins: marcosc_ (~marcosc@public.cloak)
- # [07:42] * heycam|away is now known as heycam
- # [07:42] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [07:45] * Quits: marcosc_ (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [09:13] * heycam is now known as heycam|away
- # [09:20] * Joins: dom (dom@public.cloak)
- # [09:20] * Joins: JonathanJ2 (~hollobit@public.cloak)
- # [09:24] * Quits: JonathanJ2 (~hollobit@public.cloak) (Client closed connection)
- # [09:31] * Disconnected
- # [09:32] * Attempting to rejoin channel #webapps
- # [09:32] * Rejoined channel #webapps
- # [09:33] * Joins: cabanier (~sid15093@public.cloak)
- # [09:55] * Joins: jcraig (~jcraig@public.cloak)
- # [10:06] * Joins: darobin (rberjon@public.cloak)
- # [11:52] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [12:32] * Quits: tantek (~tantek@public.cloak) (tantek)
- # [12:47] * Quits: jmajnert (~quassel@public.cloak) ("No Ping reply in 180 seconds.")
- # [12:48] * Joins: jmajnert (~quassel@public.cloak)
- # [13:03] * Joins: marcosc_ (~marcosc@public.cloak)
- # [13:11] * Quits: marcosc_ (~marcosc@public.cloak) (Ping timeout: 180 seconds)
- # [13:27] * Quits: darobin (rberjon@public.cloak) (Client closed connection)
- # [13:27] * Joins: darobin (rberjon@public.cloak)
- # [15:36] * Joins: smaug (~chatzilla@public.cloak)
- # [15:49] * Joins: shepazu (schepers@public.cloak)
- # [15:51] * Quits: shepazu (schepers@public.cloak) (Client closed connection)
- # [15:51] * Joins: shepazu (schepers@public.cloak)
- # [15:56] * Quits: jmajnert (~quassel@public.cloak) (Client closed connection)
- # [16:06] * Quits: shepazu (schepers@public.cloak) (Ping timeout: 180 seconds)
- # [16:20] * Joins: z_ (~z_@public.cloak)
- # [16:21] * Joins: shepazu (schepers@public.cloak)
- # [16:23] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [16:25] * Joins: shepazu (schepers@public.cloak)
- # [16:27] * Parts: z_ (~z_@public.cloak)
- # [16:30] * Joins: marcosc_ (~marcosc@public.cloak)
- # [16:30] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [16:34] * Joins: othree (~sid16133@public.cloak)
- # [16:34] * Joins: shepazu_ (schepers@public.cloak)
- # [16:35] * Quits: shepazu_ (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [16:41] * Quits: shepazu (schepers@public.cloak) (Ping timeout: 180 seconds)
- # [16:47] * Joins: jyasskin (~textual@public.cloak)
- # [16:49] * Quits: smaug (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [16:50] * Joins: marcosc (~marcosc@public.cloak)
- # [16:51] * Joins: shepazu (schepers@public.cloak)
- # [17:04] * Joins: yubo (~yubo@public.cloak)
- # [17:15] * Joins: ebryn (~sid2895@public.cloak)
- # [17:15] <ebryn> chillin' on google's stoop
- # [17:37] * Joins: timdream (~sid186@public.cloak)
- # [17:43] * Joins: chaals (~Adium@public.cloak)
- # [17:49] * Joins: smaug (~chatzilla@public.cloak)
- # [17:52] * terri_offline is now known as terri
- # [17:57] * Quits: darobin (rberjon@public.cloak) (Client closed connection)
- # [17:57] * Joins: tantek (~tantek@public.cloak)
- # [17:59] * terri is now known as terri_offline
- # [18:00] * Joins: RRSAgent (rrsagent@public.cloak)
- # [18:00] <RRSAgent> logging to http://www.w3.org/2015/04/24-webapps-irc
- # [18:01] * chaals changes topic to 'Web Components meeting - https://www.w3.org/wiki/Webapps/WebComponentsApril2015Meeting'
- # [18:01] <hober> could a googler come collect sam, maciej, & me? we're in the 1875 lobby
- # [18:02] * chaals notes there is one on the way…
- # [18:02] * hober thanks
- # [18:02] * Joins: Zakim (zakim@public.cloak)
- # [18:02] <chaals> Meeting: Web apps Web COmponents meeting
- # [18:03] <chaals> Agenda: https://www.w3.org/wiki/Webapps/WebComponentsApril2015Meeting
- # [18:04] <chaals> Present+ Chaals, Léonie, Mike™, AnnevK, Arron, Travis, Hayato, Smaug
- # [18:04] * Joins: LJWatson (~chatzilla@public.cloak)
- # [18:05] <chaals> Present+ DGlazkov, CWilso
- # [18:05] * Joins: annevk (~annevk@public.cloak)
- # [18:05] <chaals> Present+ AlexR
- # [18:07] <chaals> agenda+ intros
- # [18:07] * Zakim notes agendum 1 added
- # [18:07] <chaals> agenda+ agenda bashing
- # [18:07] * Zakim notes agendum 2 added
- # [18:07] * Joins: joannawu (~JoannaWu@public.cloak)
- # [18:07] <chaals> agenda+ state of the consensus
- # [18:07] * Zakim notes agendum 3 added
- # [18:09] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [18:09] * Joins: Travis (~Travis@public.cloak)
- # [18:11] * Joins: wchen (~sid45@public.cloak)
- # [18:11] * Joins: arronei (~arronei@public.cloak)
- # [18:12] <chaals> zakim, agenda?
- # [18:12] <Zakim> I see 3 items remaining on the agenda:
- # [18:12] <Zakim> 1. intros [from chaals]
- # [18:12] <Zakim> 2. agenda bashing [from chaals]
- # [18:12] <Zakim> 3. state of the consensus [from chaals]
- # [18:12] * Joins: aklein (~sid4454@public.cloak)
- # [18:14] * Quits: dom (dom@public.cloak) ("")
- # [18:15] * Joins: taylor (~taylor@public.cloak)
- # [18:15] * Joins: matthew (~uid82748@public.cloak)
- # [18:16] * Joins: kevin_ (~uid82749@public.cloak)
- # [18:16] * Joins: wilsonpage (~wilsonpage@public.cloak)
- # [18:18] * Joins: estellevw (~estellevw@public.cloak)
- # [18:19] * Joins: misko (~uid82751@public.cloak)
- # [18:19] * Joins: jan (~jan@public.cloak)
- # [18:20] <chaals> scribe: chaals
- # [18:21] * Joins: mjs (~mjs@public.cloak)
- # [18:22] * chaals notes expected start time 12.30
- # [18:22] * chaals W3C standard Boston time…
- # [18:22] <MikeSmith> s/Arron/Aaron
- # [18:23] <chaals> Present+ SamW, Maciej, TedOC
- # [18:23] * Quits: jan (~jan@public.cloak) (jan)
- # [18:23] * Joins: dglazkov_ (~sid4270@public.cloak)
- # [18:24] * dglazkov_ is now known as dglazkov
- # [18:24] <MikeSmith> Present?
- # [18:24] <chaals> DG: Lots of people here… that's good.
- # [18:25] <chaals> … goal of the meeting is to make sure we move Web Components closer to being interoperable standard (actually shipped…)
- # [18:25] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [18:25] * Joins: justin (~uid82754@public.cloak)
- # [18:25] <chaals> … There are some contentious bits on Shadow DOM, and we aim to resolve that here.
- # [18:26] * Joins: cdata (~uid82755@public.cloak)
- # [18:26] <chaals> … We need to determine what goes into v1 that we can all live with and ship - and put the rest into a v2
- # [18:26] * Joins: misko_ (~misko@public.cloak)
- # [18:26] * cwilso notes logistics: bathroom is to the left down the hall, if you need any other logistics things just ask me.
- # [18:27] <chaals> … I would like to leave here not just feeling happy, but actually going to do work and knowing what it will be.
- # [18:27] * Quits: misko_ (~misko@public.cloak) (misko_)
- # [18:27] * chaals we are the champions my friend
- # [18:27] * Joins: misko_ (~misko@public.cloak)
- # [18:27] * Joins: SteveF (~chatzilla@public.cloak)
- # [18:28] * Parts: misko (~uid82751@public.cloak)
- # [18:28] <chaals> … would like to have champions for the things that we have to do still.
- # [18:28] * Quits: yubo (~yubo@public.cloak) (Ping timeout: 180 seconds)
- # [18:28] * Parts: misko_ (~misko@public.cloak)
- # [18:28] * Joins: misko_ (~misko@public.cloak)
- # [18:28] * SteveF waves at LJWatson:
- # [18:29] * Parts: misko_ (~misko@public.cloak)
- # [18:29] * chaals hears LJWatson harrumph…
- # [18:29] * Joins: misko_ (~misko@public.cloak)
- # [18:29] * annevk wonders if waving is appropriate if the person is blind
- # [18:29] * chaals thinks so…
- # [18:30] <chaals> … The goal is to get browsers implementing, but we need experts from the rest of the ecosystem to tell us about their experience too.
- # [18:30] * SteveF i usually wave close enough to leonie so i connect
- # [18:31] <chaals> CW: Chris Wilson - mostly here to find the tea… (Googler)
- # [18:31] <chaals> RN: Ryosuke Niwa, Apple
- # [18:31] <chaals> AB: Alice Boxhall, Google accessibility - chrome
- # [18:31] <chaals> Misko: work on angluar.js
- # [18:32] <chaals> OP: Smaug from mozilla
- # [18:32] * Joins: jan (~JanMiksovsky@public.cloak)
- # [18:32] <chaals> WC: William Chen, firefox
- # [18:32] <chaals> EO: Ted OConnor, Apple
- # [18:32] * hober waves
- # [18:32] <chaals> HI: Hayato Ito, work on shadow dom for google and spec it
- # [18:32] <chaals> Justin: Work on polymer
- # [18:32] <chaals> AvK: Anne, work for moz on standards
- # [18:33] <chaals> SW: Sam Weinig, Apple
- # [18:33] <chaals> MS: Mike™ Smith, W3C
- # [18:33] <chaals> LJW: Léonie Watson, Paciello Group.
- # [18:33] <annevk> CMN: Chaals, Yandex
- # [18:33] <chaals> CMN: Chaals from Yandex
- # [18:33] <chaals> AE: Arron Eicholz, MS - work on webapps
- # [18:34] <chaals> TL: Travis Leithead - the MS guy
- # [18:34] * misko_ is now known as misko
- # [18:34] * Joins: Guest21 (~textual@public.cloak)
- # [18:34] <chaals> EB: Eric Bryn
- # [18:34] * Guest21 is here
- # [18:34] <ebryn> *Erik ;)
- # [18:34] <chaals> MG: Mark Giffin, writing web components docs for MDN
- # [18:34] * Guest21 oops
- # [18:34] * ebryn waves
- # [18:34] <chaals> WP: Wilson Paige, working with WC on firfox OS
- # [18:34] <chaals> Jan: Founder of compnentn kitchen
- # [18:34] <wilsonpage> *wilsonpage
- # [18:34] * Guest21 is now known as rniwa
- # [18:34] <chaals> MJS: Maciej, webkit at Apple
- # [18:34] <wilsonpage> * waves *
- # [18:35] * rniwa joins
- # [18:35] <chaals> AR: Alex Russel, googler on web platform
- # [18:35] <chaals> AK: Adam Klein, V8 at google
- # [18:35] <chaals> SM: Scott Miles, work on polymer team
- # [18:35] <chaals> TS: Savage, google
- # [18:35] <chaals> SA: Steve ?? google
- # [18:35] * Joins: weinig (~weinig@public.cloak)
- # [18:36] * Joins: darobin (rberjon@public.cloak)
- # [18:36] <cwilso> s/??/Orvell/
- # [18:36] * Joins: aboxhall (~uid20617@public.cloak)
- # [18:36] <cwilso> s/Savage/Taylor Savage/
- # [18:36] <chaals> [polymer team people listening on the phone - we don't let them speak]
- # [18:36] <cwilso> s/Russel/Russell/
- # [18:36] <dfreedm> here in irc as well
- # [18:36] * chaals thanks cwilso for corrections
- # [18:37] * cwilso np
- # [18:37] * chaals thanks anyone who helps correct
- # [18:37] <chaals> agenda?
- # [18:37] * Zakim sees 3 items remaining on the agenda:
- # [18:37] * Zakim 1. intros [from chaals]
- # [18:37] * Zakim 2. agenda bashing [from chaals]
- # [18:37] * Zakim 3. state of the consensus [from chaals]
- # [18:37] <chaals> zakim, close item 1
- # [18:37] <Zakim> agendum 1, intros, closed
- # [18:37] <Zakim> I see 2 items remaining on the agenda; the next one is
- # [18:37] <Zakim> 2. agenda bashing [from chaals]
- # [18:37] <chaals> Topic: State of consensus and contention
- # [18:37] <chaals> zakim, close item 3
- # [18:37] <Zakim> agendum 3, state of the consensus, closed
- # [18:37] <Zakim> I see 1 item remaining on the agenda:
- # [18:37] <Zakim> 2. agenda bashing [from chaals]
- # [18:37] * Joins: Mark (~chatzilla@public.cloak)
- # [18:38] * chaals wonders if someone has the URL handier
- # [18:38] <chaals> DG: Most vendors aside from Google have explained their current position...
- # [18:38] <chaals> … would like to figure out how important contentions are - blocker, useful to have, v1 or v2 or…
- # [18:38] <misko> https://github.com/w3c/webcomponents/wiki/Shadow-DOM:-Contentious-Bits
- # [18:38] * chaals thanks misko
- # [18:39] * Mark is now known as markg
- # [18:39] <chaals> -> https://github.com/w3c/webcomponents/wiki/Shadow-DOM:-Contentious-Bits The collected points of disagreement…
- # [18:39] <chaals> Topic: Muktiple shadow roots per element
- # [18:40] <chaals> MJS: Apple thinks this should be removed and replaced with something like the ?? proposal. Strongly think this is the case for v1 - better to replace it with something useful or subclassing won't be useful.
- # [18:40] <MikeSmith> RRSAgent, make minutes
- # [18:40] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html MikeSmith
- # [18:40] <chaals> … there is a time trade off to replacing it
- # [18:40] <dfreedm> s/??/"named slots"/
- # [18:40] * Joins: Lenville (~Lenville@public.cloak)
- # [18:41] <MikeSmith> RRSAgent, make logs public
- # [18:41] <RRSAgent> I have made the request, MikeSmith
- # [18:41] <chaals> AvK: Mozilla probably don't care strongly for v1 - we would like some solution, and the Apple thing might (or not) work for us…
- # [18:41] <chaals> DG: So there is an alternative, which is not the same as "let's drop what we have"
- # [18:42] <chaals> TL: For multiple shadow roots, should be removed in v1. You can get a lot done just with a single shadow. I like Apple's proposal simplifying the way content is distributed. Seems easier to implement. Maybe not as beautiful, but workable.
- # [18:42] <chaals> DG: This has been a big sticking point for the shadow dom spec. I was the one arguing for it.
- # [18:43] <chaals> .. I think most usage isn't that good, so I am OK with removing it.
- # [18:43] <chaals> … Understand there is a need for something like this - let's take the time to study and come up with a good concrete way to solve this.
- # [18:43] <chaals> RESOLUTION: Remove multiple shadow roots
- # [18:44] <MikeSmith> RRSAgent, make minutes
- # [18:44] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html MikeSmith
- # [18:44] <chaals> Justin: Want to make sure removal is seperate from what replaces it…
- # [18:44] * Quits: darobin (rberjon@public.cloak) (Client closed connection)
- # [18:44] <chaals> HI: SHuld we have a replacement in v1 or wait until v2?
- # [18:44] <chaals> DG: I would be OK with no replacement in v1
- # [18:44] <chaals> AvK: Agreed, might even be better than way
- # [18:45] <chaals> DG: Plymer team walked away from this already?
- # [18:45] <MikeSmith> s/Muktiple/Multiple
- # [18:45] <chaals> SM: Conceptually yes (haven't implemented that but will)
- # [18:45] <chaals> … agree that simplifying this is the right thing, and removing it won't affect polymer.
- # [18:46] <chaals> Topic: Default value of "closed shadow tree"
- # [18:46] * chaals Topic: Bar
- # [18:46] <jan> If it’s helpful, I’m trying to summarize the positions on contentious bits on https://docs.google.com/spreadsheets/d/1hnCoaJTXkfSSHD5spISJ76nqbDcOVNMamgByiz3QWLA/edit#gid=0
- # [18:46] <chaals> MJS: The closed flag got added recently - Yay! But behaviour not fully defined yet.
- # [18:47] <chaals> … preference order for v1: most prefer having closed and open, default closed. 2nd, require devs to choose one, no default, 3rd choice default to open, strongly against only having open
- # [18:47] <chaals> … most importantly closed mode is a good block for making totally isolated components
- # [18:47] * rniwa see also https://lists.w3.org/Archives/Public/public-webapps/2015AprJun/0225.html
- # [18:47] <chaals> … people felt the medium level is not useful, but to build a full solution this is necessary.
- # [18:48] <chaals> agenda+ Jan…'s proposal for named thingo
- # [18:48] * Zakim notes agendum 4 added
- # [18:48] <chaals> agenda+ closed and open
- # [18:48] * Zakim notes agendum 5 added
- # [18:48] <chaals> AvK: more important discussion is semantics of closed...
- # [18:49] <chaals> AR: Disagree, which is important but we need the discussion. degree of difficulty to make a real closed mode is very high.
- # [18:49] <chaals> OP: Moz' opinion is we agree with Apple.
- # [18:49] <chaals> … maybe v3 for proper isolation mode.
- # [18:50] <chaals> RESOLUTION: There will be a v4
- # [18:51] <chaals> TL: Having a closed and open simple mode makes sense. When a component is poen we have what chrome ships today. When closed, i think that means you can't reach it via shadow-root property in JS but if you had a reference already you can reach it.
- # [18:51] <chaals> … not sure what that means for how events and styles go across the boundaries. Think we need a closed + isolated model definitely.
- # [18:51] <chaals> … not sure we need that and a simple closed model.
- # [18:51] <chaals> … because I don't understand implications of closed I think that needs to be decided for v1. Isolated model can wait until later, it is far more complicated.
- # [18:52] <chaals> DG: Agree on closed not isolated being needed.
- # [18:52] <chaals> … our preference is open by default, We want to do isolated in v2 or v3.
- # [18:52] <chaals> … we can live with closed by default if that's the general consensus
- # [18:53] <chaals> TL: v1 needs a way to consume the flag or remove it.
- # [18:53] <chaals> Topic: Imperative distribution API
- # [18:53] <chaals> MJS: We still like this - for complex stuff declarative is going to be pretty tricky.
- # [18:54] <chaals> … not necessary for v1. Would like something either like this or named slot proposal - at very least we don't want @@
- # [18:54] <chaals> agenda+ details of imperative distribution API, don't make it impossible.
- # [18:54] * Zakim notes agendum 6 added
- # [18:54] <chaals> AvK: Agree
- # [18:54] <chaals> TL: Agree. API can wait for v2
- # [18:54] <chaals> DG: Agreed...
- # [18:55] <chaals> RESOLUTION: Make sure we can do it - v1 if we get there or v2
- # [18:55] <chaals> RN: Don't want to add something that won't work out…
- # [18:56] <chaals> Topic: Seperate event retargeting from style composition
- # [18:56] * terri_offline is now known as terri
- # [18:57] <chaals> MJS: Apple wants seperation. Not that strong feelings about default, might be plausible to have retargeting in closed mode, not in open, as default
- # [18:57] * chaals powercycles his pencil
- # [18:57] <chaals> … choice should be addressed, maybe possible to hang this on closed/open, maybe not needed.
- # [18:57] <MikeSmith> RRSAgent, make minutes
- # [18:57] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html MikeSmith
- # [18:58] <chaals> … we probably need to offer the choice in v1. If both exist we should decide which will be the default now.
- # [18:58] <chaals> AvK: There should be an option, should probably be tied to closed/open - seems simplest and intuitive
- # [18:58] <chaals> … definitely v1
- # [18:58] * cwilso mic needs to recharge; the handheld should be usable a bit later.
- # [18:59] <chaals> TL: for retargeting if the goal is for a closed shadow not to allow access the event system has to be strongly isolated from that boundary. not sure if retargeting is sufficient, might need a nested event dispatch inside, and don't carry arbitrary properties through the shadow. If that's what we are talking about you need this for any kind of closed model.
- # [19:00] <chaals> … otherwise events poke a hole in that.
- # [19:00] <chaals> AvK: only if you have prototypes
- # [19:00] <chaals> agenda+ clarify event retargetting...
- # [19:00] * Zakim notes agendum 7 added
- # [19:00] <chaals> TL: Something like it should be the default for any closed stuff.
- # [19:01] <chaals> DG: We don't see the ened to separate these. If you want it that's OK but we haven't seen anyone wanting that in the wild. Would like to discuss use cases, where you might not want it.
- # [19:01] <chaals> AvK: There have been requests for it, eg for Ember wanting to reason about state in global app logic
- # [19:01] <chaals> DG: eventpath gives you this information already
- # [19:01] <chaals> AvK: Mumble mumble…
- # [19:01] <chaals> DG: If others want this we can live with that.
- # [19:02] <chaals> … But we do want open and event retargetting not to be coupled.
- # [19:02] <chaals> EOC: You're fine with closed and retaregetting?
- # [19:02] <chaals> DG: Think it is impossible not to do that.
- # [19:02] <chaals> AR: Think that comes to the question of what closed really means, part of the semantics discussion.
- # [19:03] <chaals> zakim, agenda?
- # [19:03] <Zakim> I see 5 items remaining on the agenda:
- # [19:03] <Zakim> 2. agenda bashing [from chaals]
- # [19:03] <Zakim> 4. Jan…'s proposal for named thingo [from chaals]
- # [19:03] <Zakim> 5. closed and open [from chaals]
- # [19:03] <Zakim> 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [19:03] <Zakim> 7. clarify event retargetting... [from chaals]
- # [19:03] <chaals> zakim, close item 2
- # [19:03] <Zakim> agendum 2, agenda bashing, closed
- # [19:03] <Zakim> I see 4 items remaining on the agenda; the next one is
- # [19:03] <Zakim> 4. Jan…'s proposal for named thingo [from chaals]
- # [19:03] <chaals> Topic: Shadow boundary piercing combinators
- # [19:03] <chaals> MJS: Bare minimum is they must not work in closed mode
- # [19:04] <chaals> … named parts model is a better alternative ven for open mode. Making the style API contract depend on the exact structure is not a great pattern. We won't die on this hill if they are there for open.
- # [19:04] <chaals> AvK: Postpone piercing to v2
- # [19:04] <chaals> … would like to discuss styling the reprojected nodes and host
- # [19:04] <chaals> … would like to discuss this, but feel we haven't got something good on the table
- # [19:04] <chaals> agenda+ styling
- # [19:04] * Zakim notes agendum 8 added
- # [19:05] <chaals> TL: Agree parts model would be good. Peter Linss yesterday helped me realise that if we let web devs style native controls we want to do it via a parts model, so would like to see that consistent with shadow DOM environment
- # [19:05] <chaals> … think we can get away without this for v1 - there are some nice ugly hacks to do the job if necessary
- # [19:05] <chaals> DG: We think it was a mistake and we want to get rid of it.
- # [19:06] <chaals> … see research link in wiki page
- # [19:06] * Quits: annevk (~annevk@public.cloak) (Client closed connection)
- # [19:06] <jan> Cheat sheat of browser vendor positions on contentious bits: https://docs.google.com/spreadsheets/d/1hnCoaJTXkfSSHD5spISJ76nqbDcOVNMamgByiz3QWLA/edit#gid=0
- # [19:06] * chaals thanks Jan for this
- # [19:06] <chaals> … turned out to be a big footgun
- # [19:06] <chaals> … definitely want to get this out of v1. Want a better styling model, so far it is still not satisfying…
- # [19:07] <chaals> rrsagent, draft minutes
- # [19:07] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html chaals
- # [19:07] <chaals> [Jan's summary doc shown]
- # [19:08] <chaals> RESOLUTION: remove shadow piercing combinator
- # [19:08] <chaals> rrsagent, draft minutes
- # [19:08] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html chaals
- # [19:09] <chaals> Topic: consensu points...
- # [19:09] <rniwa> could someone add a link to the minutes on https://www.w3.org/wiki/Webapps/WebComponentsApril2015Meeting ?
- # [19:10] <chaals> HI: We have a shadow element one level of the piercing combinator. Should we remove that too?
- # [19:10] <MikeSmith> -> https://docs.google.com/spreadsheets/d/tkXdf761xqo8mM6G-dIomYg/htmlview#gid=0 Cheat sheet of browser vendor positions on contentious bits
- # [19:10] <chaals> RESOLUTION: Yes.
- # [19:10] <chaals> AvK: We want some kind of event retargetting, right.
- # [19:10] <chaals> DG: Pending discussion...
- # [19:11] <chaals> RESOLUTION: We need to understand what closed means, and based on that try to figure out event retargetting. (so we're on the way to knowing what we want…)
- # [19:11] <chaals> s/want/want for event retargetting)
- # [19:11] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [19:12] <hayato> s/shadow element/shadow pseudo element/
- # [19:12] * Joins: sorvell (~sorvell@public.cloak)
- # [19:12] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [19:15] * Parts: Lenville (~Lenville@public.cloak)
- # [19:15] * Quits: chaals (~Adium@public.cloak) ("Leaving.")
- # [19:15] * Joins: rniwa (~textual@public.cloak)
- # [19:15] * Joins: botie (botie@public.cloak)
- # [19:16] * Quits: weinig (~weinig@public.cloak) (weinig)
- # [19:16] <MikeSmith> botie, inform rniwa https://www.w3.org/wiki/index.php?title=Webapps/WebComponentsApril2015Meeting#Minutes
- # [19:16] <botie> will do
- # [19:17] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [19:17] * Joins: mjs (~mjs@public.cloak)
- # [19:18] * Joins: ebidel (~ebidel@public.cloak)
- # [19:18] * Joins: weinig (~weinig@public.cloak)
- # [19:19] * Quits: sorvell (~sorvell@public.cloak) (Ping timeout: 180 seconds)
- # [19:20] * Quits: LJWatson (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [19:23] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [19:24] * Joins: chaals (~Adium@public.cloak)
- # [19:25] <chaals> Chair: DGlazkov, chaals
- # [19:25] * Joins: LJWatson (~chatzilla@public.cloak)
- # [19:27] <chaals> Preesnt+ HayatoIto, Rysouke, JanMiskovsky
- # [19:27] <chaals> i/DG: Lots of people here/Topic: Introductions
- # [19:27] <chaals> rrsagent, draft minutes
- # [19:27] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html chaals
- # [19:28] * Joins: rniwa (~textual@public.cloak)
- # [19:28] <botie> rniwa, at 2015-04-24 17:18 UTC, MikeSmith said: https://www.w3.org/wiki/index.php?title=Webapps/WebComponentsApril2015Meeting#Minutes
- # [19:28] <chaals> agenda?
- # [19:28] * Zakim sees 5 items remaining on the agenda:
- # [19:28] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [19:28] * Zakim 5. closed and open [from chaals]
- # [19:28] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [19:28] * Zakim 7. clarify event retargetting... [from chaals]
- # [19:28] * Zakim 8. styling [from chaals]
- # [19:29] * Joins: jcraig (~jcraig@public.cloak)
- # [19:29] * Joins: jan (~JanMiksovsky@public.cloak)
- # [19:29] <chaals> Topic: what does closed *mean*?
- # [19:30] * Quits: tantek (~tantek@public.cloak) (tantek)
- # [19:31] * Joins: sorvell (~sorvell@public.cloak)
- # [19:31] <chaals> AvK: So we have open, closed and isolated.
- # [19:31] <chaals> …isolated we can defer. closed is one where the outside can't easily reach in, but for example prototyping can give you a way to poke in. I think that is acceptable...
- # [19:31] <slightlyoff> q+
- # [19:31] * Zakim sees slightlyoff on the speaker queue
- # [19:31] <chaals> TL: So the cfreator can grant access that they have?
- # [19:31] <mjs> q+
- # [19:31] * Zakim sees slightlyoff, mjs on the speaker queue
- # [19:32] <chaals> AvK: Other scripts can prototype objecst, and if other things use those modified prototypes that's OK
- # [19:32] <chaals> q+ HI
- # [19:32] * Zakim sees slightlyoff, mjs, HI on the speaker queue
- # [19:32] <justin> q+ Justin
- # [19:32] * Zakim sees slightlyoff, mjs, HI, Justin on the speaker queue
- # [19:33] <chaals> … we decided to defer CSS, you can't reach in this way. For events the idea we had was for the event to internally have private slots where it has the full path. Depending on where you observe it, a public getter would return a filter.
- # [19:33] <chaals> if you observe in the main tree the path would be up to the host, but if you observe it in the shadow tree on its way it has the full path and the target is the real target.
- # [19:33] <chaals> … once dispatch is finished path would return nothing (empty list)
- # [19:33] <chaals> … is there anything else in there? Just events, right?
- # [19:33] <Travis> q+ given the holes in the simple closed mode, are folks that want closed still happy with this? What are their expectations?
- # [19:33] * Zakim Travis, you typed too many words without commas; I suspect you forgot to start with 'to ...'
- # [19:33] <chaals> [Styling]
- # [19:34] <chaals> AvK: That's awhole can of worms seperate.
- # [19:34] * Quits: SteveF (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [19:34] <chaals> @@: Simple inheritance?
- # [19:34] <Travis> q+
- # [19:34] * Zakim sees slightlyoff, mjs, HI, Justin, Travis on the speaker queue
- # [19:34] <chaals> AvK; Can we agree on this? Travis wanted something else.
- # [19:34] <chaals> q?
- # [19:34] * Zakim sees slightlyoff, mjs, HI, Justin, Travis on the speaker queue
- # [19:34] <chaals> ack sl
- # [19:34] * Zakim sees mjs, HI, Justin, Travis on the speaker queue
- # [19:34] <sorvell> q+ Steve
- # [19:34] * Zakim sees mjs, HI, Justin, Travis, Steve on the speaker queue
- # [19:35] <chaals> AR: Couple of questions. Hardest: are there extra constraints placed on layout - if intrinsic width inside closed root would make closed item larger is that still possible in a component?
- # [19:35] * Joins: wanderview (~wanderview@public.cloak)
- # [19:35] <chaals> … does it preserve natural constraint hierarchy of CSS
- # [19:35] <chaals> AvK: Not sure about the question…
- # [19:35] * Parts: wanderview (~wanderview@public.cloak)
- # [19:35] <chaals> AR: Easier ones - do we have a list of who wants this and why?
- # [19:35] <chaals> AvK: We had one...
- # [19:35] <chaals> AR: Would be easier to answer the question of how closed closed is (more or less vs isolated) if we know which invariants we want to preserve
- # [19:36] <chaals> Justing: Why closed but not isolated?
- # [19:36] <chaals> AR: Acknowledge the uses are real but don't understand them yet.
- # [19:36] <hober> From June 2011, mjs' 5 kinds of encapsulation: https://lists.w3.org/Archives/Public/public-webapps/2011AprJun/1364.html
- # [19:36] <chaals> q?
- # [19:36] * Zakim sees mjs, HI, Justin, Travis, Steve on the speaker queue
- # [19:36] <chaals> MJS: largley agree with AvK's operational definition.
- # [19:36] <chaals> ack m
- # [19:36] * Zakim sees HI, Justin, Travis, Steve on the speaker queue
- # [19:36] <hober> See "Why is encapsulation (type 2) important for components?" in that email
- # [19:36] * Joins: wanderview_ (~sid277@public.cloak)
- # [19:37] <chaals> … goal of closed mode is to present leakage of internal deatils of component to DOM API. Not prevent leakage from sharing a scriptiing environment with host environement
- # [19:37] * wanderview_ is now known as wanderview
- # [19:37] <slightlyoff> I'd like to hear from framework authors on this
- # [19:37] <chaals> … useful because 1. You can have a closed mode by rpeventing @@
- # [19:37] <chaals> … building block for eventual isolated mode
- # [19:37] <chaals> s/@@/leakage using seperate script environment
- # [19:38] <chaals> … 2. Environments don't generally let you poe holes - it is a use case for specialised tools but should not be generally recommended.
- # [19:38] <slightlyoff> I'm really concerned about this...isn't the redirection of .shadow the same thing as making the shadow root slightly more difficult to work with?
- # [19:38] <chaals> … you *should* be interacting with a closed component through defined interfaces not by poking into the shadow tree directly.
- # [19:38] <chaals> … Think I showed how yu can build a closed mode with handwavy details, that isolates things - this is a start.
- # [19:38] <chaals> ack next
- # [19:38] * Zakim sees HI at the head of the speaker queue
- # [19:38] * Zakim sees Justin, Travis, Steve on the speaker queue
- # [19:38] * Joins: jcraig_ (~jcraig@public.cloak)
- # [19:39] <mjs> q+ to add that another benefit of closed mode is better explaining the platform
- # [19:39] * Zakim sees Justin, Travis, Steve, mjs on the speaker queue
- # [19:39] <chaals> HI: speccing closed mode in shaodw so it behaves like virtual elements in blink. e.g. video uses shadow tree as structure. Expect closed should behave like this - don't expose structure to the outside. Shadow DOM isn't meant to provide security - that isn't its goal.
- # [19:39] <chaals> ack next
- # [19:39] * Zakim sees Justin at the head of the speaker queue
- # [19:39] * Zakim sees Travis, Steve, mjs on the speaker queue
- # [19:39] <slightlyoff> this seems like a much taller hurdle than what Maciej just outline; can one get the SD of a <video> via __proto__ swizzling?
- # [19:40] <slightlyoff> s/outline/outlined/
- # [19:40] <chaals> Justin: value of closed but not isolated - idea that the current mode we have is wide open…
- # [19:40] * Quits: jcraig (~jcraig@public.cloak) (Ping timeout: 180 seconds)
- # [19:40] * jcraig_ is now known as jcraig
- # [19:40] <chaals> … feel like the mode we have satisfies the goals already. By default you don't traverse into the shadow root, you have to go out of your way to even get in there already.
- # [19:41] <chaals> … the idea of not attaching the shadow property by default doesn't make a difference, you can still work through it if you want but don't by default.
- # [19:41] <rniwa> +q
- # [19:41] * Zakim sees Travis, Steve, mjs, rniwa on the speaker queue
- # [19:41] <hayato> s/virtual elements/built-in elements/
- # [19:41] <chaals> … don';t understand the value of a sort-of closed, we are already not encouraging people to poke inside and mess with stuff.
- # [19:42] <chaals> AvK: We don't have them yet but for open case I would like that we add APIs that operate on the compose tree so you can query nodes across the whole tree. If you use shadow for organisaing your nodes and can reason globally, also for selection, then the distinction becomes meaningful…
- # [19:43] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [19:43] <chaals> Juatin: Big concern is for tools operating in browser context if you want to operate on the whole doc, closed by default becomes really scary - you can't say "I know what I am doing, let me in to do linting, accessibility, etc etc"
- # [19:43] * Quits: ebidel (~ebidel@public.cloak) ("Page closed")
- # [19:43] <ebryn> sounds like he’s making an argument for open by default?
- # [19:43] <chaals> … rationale to prevent people reaching in by accident has potential to shut off a lot of tools
- # [19:43] <slightlyoff> so this is the root of it to me: is the argument about the potential difficulty? If so, I think we could make .shadowRoot harder
- # [19:43] <chaals> SamW: isn't that already a problem with iframes?
- # [19:44] <chaals> Justin: Yes, but they are less frequently used.
- # [19:44] <slightlyoff> iframes are origin isolation primitives
- # [19:44] <slightlyoff> they are "isolated"
- # [19:44] <slightlyoff> they are not a reasonable proxy for this debate
- # [19:44] <chaals> … we're talking about a world where pages may have a lot of components in them. Don't want pages with lots of iframes...
- # [19:44] <chaals> … making compnents like iframes would be bad.
- # [19:44] <chaals> ack next
- # [19:44] * Zakim sees Travis at the head of the speaker queue
- # [19:44] * Zakim sees Steve, mjs, rniwa on the speaker queue
- # [19:45] <ebryn> this appears to be a discussion around continuing to enable global reasoning with open by default -vs- changing that by making shadow DOM closed by default
- # [19:45] <chaals> TL: Iframes are open by default modulo cross-domain security. If we ahve a simple closed model that will set the wrong expectations for dev community - no simple access to shadow DOM, so people will think they are protected, but it is too easy to work around that. So +1 to Justin.
- # [19:45] <chaals> … Thinking about isolated model, don't think a sumple closed model is a building block for it. Boundary isn't around shadow DOM but around custom element layer.
- # [19:46] <chaals> … so you can isolate custom element without needing shadow DOM.
- # [19:46] <slightlyoff> where's the proposal
- # [19:46] <slightlyoff> ?
- # [19:46] <chaals> … have a proposal for that I sent out early this morning
- # [19:46] <chaals> ack next
- # [19:46] * Zakim sees Steve at the head of the speaker queue
- # [19:46] * Zakim sees mjs, rniwa on the speaker queue
- # [19:46] <Travis> Isolated components: https://github.com/w3c/webcomponents/wiki/Cross-Origin-Custom-Elements:-Concept-and-Proposal
- # [19:47] * Joins: annevk (~annevk@public.cloak)
- # [19:47] <slightlyoff> thanks Travis
- # [19:47] <chaals> SO: Justin said most of it. THis is a preview of event discussion but not sure there is wide understanfing of what event path it is. There is a correspondence between the shadow root and access to the event path. normal retargetting gives you basic protection - can be removed.
- # [19:48] <chaals> … Disallowing people from looking inside is valuable, but. The web has things in global scope that evolved there. We see open as important so you don't shut off people dealing with that.
- # [19:48] <ebryn> q+
- # [19:48] * Zakim sees mjs, rniwa, ebryn on the speaker queue
- # [19:49] <chaals> … in same sense as wy we don't like scope-piercing selectors, don't see the value of being able to poke in. Open is the legacy get out of jail for things that don't work well. Hopefully we move to a world where people don't want to poke inside.
- # [19:49] <justin> q+ Justin
- # [19:49] * Zakim sees mjs, rniwa, ebryn, Justin on the speaker queue
- # [19:49] <chaals> AvK: Event path isn't a special API, it's a normal part of the event and should follow the same rules as target, not being a special poking pole.
- # [19:49] * wilsonpage is now known as wilsonpage-away
- # [19:49] <chaals> … first node in event path has to match target.
- # [19:50] <chaals> ack next
- # [19:50] * Zakim sees mjs at the head of the speaker queue
- # [19:50] <Zakim> mjs, you wanted to add that another benefit of closed mode is better explaining the platform
- # [19:50] * Zakim sees rniwa, ebryn, Justin on the speaker queue
- # [19:50] <chaals> MJS: Not sure my point is as good as I thought before… closed mode is a better tool for explaining the platform - no built-in element has an open shadow root, and that's reasonable.
- # [19:51] <chaals> … built-in elements with secret structure even built from DOM are in isloated - you can't poke in. ut the isolated mode is built on a closed mode of shadowDOM
- # [19:51] <chaals> … not doing something different.
- # [19:51] <chaals> … can entertain models of isolated mode seperate from closing DOM layer, but that is how we actually do this for builtins so it seems like a good strawman to do the same for custom elements
- # [19:51] <chaals> ack next
- # [19:51] * Zakim sees rniwa at the head of the speaker queue
- # [19:51] * Zakim sees ebryn, Justin on the speaker queue
- # [19:52] <chaals> Present+ Domenic
- # [19:52] * wilsonpage-away is now known as wilsonpage
- # [19:52] <chaals> RN: going toearlier point about lack of difference. We are removing shadow abuse, becaus people do that. Problem with exposing shadow root by default is people start abusing it, and learn that as a habit.
- # [19:53] <hober> q+
- # [19:53] * Zakim sees ebryn, Justin, hober on the speaker queue
- # [19:53] <chaals> … so where tools do need poking, that's where they overide the prototype so they can. People who know that much know how to implement things righter.
- # [19:53] <chaals> … fact closed doesn't expose things isn't bad, it's more encouragement not to poke inside as a default way to work. closed lets us have both ways.
- # [19:53] <chaals> ack e
- # [19:53] * Zakim sees Justin, hober on the speaker queue
- # [19:54] <chaals> EB: Been listening. from perspective of amber.js, I would recap this to say we are talking about changes in the programming model.
- # [19:55] <dfreedm> s/amber.js/ember.js/
- # [19:55] <chaals> … global reasoning vs isolated reasoning. I heard open by default is the current programming model of the web - work in a global environment
- # [19:55] <chaals> Justin: that's not the basis for my argument.
- # [19:55] <chaals> EB: Discussion is a desire to change the programming model from allowing global reasoning on everything, identifying everything inside to be manipulated - what I think of as open by default...
- # [19:56] <chaals> … to something that makes it harder to do that. This is an important decision to make and I think is at odds with the way developers today want to work.
- # [19:56] <Domenic_> q+
- # [19:56] * Zakim sees Justin, hober, Domenic_ on the speaker queue
- # [19:56] <chaals> … they will want to pierce shadows.
- # [19:56] <chaals> … isolation in my mind is how we get something better than sandboxed iframes. Can bring security use cases, to what could be a nice component model
- # [19:57] <chaals> Justin: to reply. My point isn't that we should live in the wild west of global everything - components have scopes.
- # [19:57] <chaals> … but our default of open actually satisfies most goals - most stuff doesn't go inside the shadows so by default we already get scoping.
- # [19:58] <chaals> … to think closed by default I want to understand the rationale better.
- # [19:58] <chaals> … how does it add real value, since it doesn't isolate.
- # [19:58] <misko> q+ from Angular’s point of view i think there is a difference between application level component and a Widget component. For us applications component should be open. Even for the Widget components I think the value of testing outweights the value of beign closed.
- # [19:58] * Zakim misko, you typed too many words without commas; I suspect you forgot to start with 'to ...'
- # [19:58] <sorvell> +q
- # [19:58] * Zakim sees Justin, hober, Domenic_, sorvell on the speaker queue
- # [19:58] <chaals> EB: I think there will be people who want queryselector to poke into shadow roots.
- # [19:58] <chaals> … right or wrong.
- # [19:58] <slightlyoff> q?
- # [19:58] * Zakim sees Justin, hober, Domenic_, sorvell on the speaker queue
- # [19:59] <misko> +q From Angular’s point of view we would like open components. The value of testing is high, the value of safety is not that valuable.
- # [19:59] * Zakim misko, you typed too many words without commas; I suspect you forgot to start with 'to ...'
- # [19:59] <misko> +q Angular’s point of view
- # [19:59] * Zakim misko, you typed too many words without commas; I suspect you forgot to start with 'to ...'
- # [20:00] <chaals> Justin: To rn, I know by monkey patching you can get back to where we are today but there are a lot of tools that might want to do this - screenreaders finding the active element, building screenshots, reaching the actual anchor page that fired a click event, debuggery...
- # [20:00] <misko> +q
- # [20:00] * Zakim sees Justin, hober, Domenic_, sorvell, misko on the speaker queue
- # [20:00] <chaals> … how do all these monkey patch in a way they don't step all over each other?
- # [20:00] <chaals> … the esacpe hatch is tricky because people ahve to figure out how to cooperate.
- # [20:00] <chaals> ack ju
- # [20:00] * Zakim sees hober, Domenic_, sorvell, misko on the speaker queue
- # [20:00] <chaals> AvK: Not sure how tools is an argument if we are going to do isolated
- # [20:00] <chaals> ack ho
- # [20:00] * Zakim sees Domenic_, sorvell, misko on the speaker queue
- # [20:00] * Joins: SteveF (~chatzilla@public.cloak)
- # [20:01] <chaals> EOC: Open defends against accidental access - lower bar. Isolated is the high bar against everything.
- # [20:01] <chaals> … closed mode is meant to defend against "normal access"
- # [20:02] <chaals> … there are cases where people want to hack around the closed barrier. Now there is prototype etc, but it looks bad and the feature is that it feels bad to do that. It's about changing what is natural style.
- # [20:02] <chaals> … debugging example is a weird one. Web inspectors have more priveliged access than the rest of the platform and that's a good thing.
- # [20:02] * Joins: jan (~JanMiksovsky@public.cloak)
- # [20:02] <chaals> Justin: Working on polymer tools. Would love to make them cross browser. But when htey have to use priveliged APIs they are not standard and you have to close that option down.
- # [20:03] <ebryn> Sounds like we need to standardize privileged access APIs to build tooling
- # [20:03] <chaals> … want to enable more expressivity for people who are not in prveliged contxts
- # [20:03] <hober> q?
- # [20:03] * Zakim sees Domenic_, sorvell, misko on the speaker queue
- # [20:03] <chaals> ack next
- # [20:03] * Zakim sees Domenic_ at the head of the speaker queue
- # [20:03] * Zakim sees sorvell, misko on the speaker queue
- # [20:03] <slightlyoff> hober; fyi: Google Feedback does not live in a privileded context; it's just JS on a page
- # [20:03] <slightlyoff> q+
- # [20:03] * Zakim sees sorvell, misko, slightlyoff on the speaker queue
- # [20:03] <chaals> DD: Responding to point about how people will mess with shadow so why do we let them? People don't mess with _stuff even though it is possible, as a rule.
- # [20:04] <chaals> … it isn't a security model, but people do feel bad if they do that.
- # [20:04] <ebryn> make it ._shadowRoot
- # [20:04] <ebryn> YES
- # [20:04] <chaals> … maybe we should rename to _shadowRoot
- # [20:04] <chaals> … this isn't a security boundary, it's a marker that you're being hacky now.
- # [20:05] <chaals> … if you have a case for it, maybe you need it.
- # [20:05] <wilsonpage> Localization is also relevant here. Nodes inside the shadow-root can need localized content provided by the document.
- # [20:05] <dglazkov> q+
- # [20:05] * Zakim sees sorvell, misko, slightlyoff, dglazkov on the speaker queue
- # [20:05] <chaals> … think there is a precedent - so long as it isn't really easy to get across then we are in good shape.
- # [20:05] <chaals> ack next
- # [20:05] * Zakim sees sorvell at the head of the speaker queue
- # [20:05] * Zakim sees misko, slightlyoff, dglazkov on the speaker queue
- # [20:05] * rniwa would prefer a symbol over _shadowRoot if we're going that route
- # [20:05] <chaals> SO: +1 to the underscore. To relate polymer user experience - poking insdie hasn't been a problem.
- # [20:05] <smaug> q+
- # [20:05] * Zakim sees misko, slightlyoff, dglazkov, smaug on the speaker queue
- # [20:05] <chaals> … it's clear that's naughtyish.
- # [20:06] <wilsonpage> +1 to underscore
- # [20:06] <weinig> q+
- # [20:06] * Zakim sees misko, slightlyoff, dglazkov, smaug, weinig on the speaker queue
- # [20:06] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [20:06] <mjs> q+ to mention default vs semantics
- # [20:06] * Zakim sees misko, slightlyoff, dglazkov, smaug, weinig, mjs on the speaker queue
- # [20:06] <chaals> … this is good for naive users, you don't want them poking in but, but if you want global reasoning don't use .shadowRoot.
- # [20:06] <rniwa> +q
- # [20:06] * Zakim sees misko, slightlyoff, dglazkov, smaug, weinig, mjs, rniwa on the speaker queue
- # [20:06] <chaals> ack mis
- # [20:06] * Zakim sees slightlyoff, dglazkov, smaug, weinig, mjs, rniwa on the speaker queue
- # [20:06] <ebryn> the problem is you still want things like custom elements and distribution
- # [20:07] <ebryn> and to be able to globally reason
- # [20:07] <chaals> Misko: on angular I echo the view of Justin, should be open. 2 kinds of components - those that are only for a particular app, and reusable widgets.
- # [20:07] <annevk> Are we talking about what the default be or having the option at all?
- # [20:07] <ebryn> this is a bridge for existing devs to the new world
- # [20:07] <chaals> … From application POV these should be open - debug it, etc.
- # [20:08] * ebryn wonders what polymer steve’s handle is
- # [20:08] <chaals> … For reusable components, I would say the value of being able to debug far outwieghs the benefit of it being closed.
- # [20:08] * Joins: jcraig (~jcraig@public.cloak)
- # [20:08] <chaals> … if we want to do testing and we can't reach in, I think this won't be good. From a framework point of view closed is little benefit, lot of pain.
- # [20:08] <chaals> DG: framework people, what do you prefer - open or closed?
- # [20:09] * MikeSmith ebryn sorvell, I think
- # [20:09] <chaals> Misko: We would prefer open, to allow debugging, that's huge
- # [20:10] <chaals> EB: Instance property or something?
- # [20:10] <chaals> Misko: In angualr you don't get the DOM for developing, but debugging you want to traverse everything.
- # [20:10] <chaals> q?
- # [20:10] * Zakim sees slightlyoff, dglazkov, smaug, weinig, mjs, rniwa on the speaker queue
- # [20:10] <Travis> Turns out you can always `delete shadowRoot` to get closed model :)
- # [20:11] <mjs> closed mode was about more than one property when we had shadow-piercing combinators
- # [20:11] <chaals> EB: Not clear what happens. THere is a component the user is interfacing with. Ember has a component object. Not a DOM node, would love it to be a subclassed HTML element, it has an element property reflecting the shadowRoot of it.
- # [20:11] <chaals> … we do composition in light DOM. We would expose shadowRoot as something like element - a public API for the implementor.
- # [20:11] <annevk> q+
- # [20:11] * Zakim sees slightlyoff, dglazkov, smaug, weinig, mjs, rniwa, annevk on the speaker queue
- # [20:12] <chaals> … to app user of component, they will likely never directly reference componentn object, would subclass it to customise or use it from a declarative API in a template.
- # [20:12] <chaals> … getting into inheritance vs composition.
- # [20:13] <chaals> EB: Not toally obvious what implications of question open/closed but component author would have access. users wouldn't genreally have access to it except using inheritance.
- # [20:13] <chaals> … composing being the happy path…
- # [20:13] <chaals> … when debugging you will almost certainly expose the component.
- # [20:13] <chaals> @@@: Polymer would make it open by default every time.
- # [20:14] <chaals> … this is an encapsualtion primitive - good citizens wouldn't see or use the naughtiness. Maybe we are wedged on the colour of the roof.
- # [20:14] <hober> q?
- # [20:14] * Zakim sees slightlyoff, dglazkov, smaug, weinig, mjs, rniwa, annevk on the speaker queue
- # [20:14] <chaals> … you wouldn't see the things inside.
- # [20:14] <dglazkov> q-
- # [20:14] * Zakim sees slightlyoff, smaug, weinig, mjs, rniwa, annevk on the speaker queue
- # [20:14] <chaals> ack next
- # [20:14] * Zakim sees slightlyoff at the head of the speaker queue
- # [20:14] * Zakim sees smaug, weinig, mjs, rniwa, annevk on the speaker queue
- # [20:14] <chaals> AR: First point, reinforce what scott said.
- # [20:14] <chaals> s/@@@/scott
- # [20:15] <chaals> …think I can reflect the intent of .shadowRoot as being a speed bump. Made to stop people poking inside if they weren't seriously needing to do so.
- # [20:15] <chaals> … We noted frameworks had _stuff that people didn't mess with.
- # [20:16] * Joins: estellevw (~estellevw@public.cloak)
- # [20:16] <chaals> … advisory path had real weight in the world, and being fully closed seemed some disatnce away. Design intent is "don't use shadowRoot". closed is .shadowRoot. isolated means stay the %$#&^^ away.
- # [20:16] <chaals> … as framework authors, how end users think isn't that open means wide open
- # [20:16] <chaals> ack next
- # [20:16] * Zakim sees smaug at the head of the speaker queue
- # [20:16] <Travis> +1 to slightlyoff
- # [20:16] * Zakim sees weinig, mjs, rniwa, annevk on the speaker queue
- # [20:17] <chaals> OP: re XBL in firefox. There has been an issue that XBL is open and people poke inside. Addons break when they do that. So it would be useful to have closed mode there.
- # [20:17] <chaals> mumbler: closed or isolated?
- # [20:17] <chaals> OP: Closed
- # [20:17] <chaals> EB: are they underscored?
- # [20:17] <chaals> OP: No
- # [20:17] <Travis> "open" -> "obscured", "closed" -> "closed"?
- # [20:17] <chaals> EB: Then you lost the discuouragement effect...
- # [20:17] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [20:18] <chaals> ack w
- # [20:18] * Zakim sees mjs, rniwa, annevk on the speaker queue
- # [20:18] * Joins: zenorocha (~zenorocha@public.cloak)
- # [20:18] * Quits: joannawu (~JoannaWu@public.cloak) (Client closed connection)
- # [20:18] <ebryn> If you do not underscore the properties you don’t intend users to use, they will not know you didn’t intend them to use them
- # [20:18] <chaals> SW: Question - blink thought shadow piercing combinators were a bad idea. Seems from a naive perspective that would apply to shadowRoot property - so why not?
- # [20:18] <ebryn> Users don’t read your docs or understand your philosophy
- # [20:18] <ebryn> They read other people’s code and cargo cult it
- # [20:18] <chaals> DG: Comparison is interesting and it is a good question.
- # [20:19] <chaals> … difference between CSS and DOM - DOM operations are ultimately malleable and user will get their way in the end.
- # [20:19] * Joins: marcosc (~marcosc@public.cloak)
- # [20:19] <chaals> … ability of user to reach into shadow was not prevented. Shadow piercing combinator was to have a styling story, but it went wrong. There isn't a way to do this other than poing into the shadow blocks.
- # [20:20] <chaals> … abuse came because every framework is pretty advanced in understanding of component model Thinking of authors about components is there -CSS still ahs thinking running on the global model.
- # [20:21] <chaals> … bootstrap problem is because the framework insists on reasoning globally. shadowRoot wasn't such a problem because the "normal" thinking had already moved on to a componentise world.
- # [20:21] <chaals> … data doesn't show the abuse of shadowRoot that we see for shadow piercing, despite the latter being around longer.
- # [20:21] <chaals> ack next
- # [20:21] * Zakim sees mjs at the head of the speaker queue
- # [20:21] <Zakim> mjs, you wanted to mention default vs semantics
- # [20:21] * Zakim sees rniwa, annevk on the speaker queue
- # [20:21] <Travis> Point of shadow DOM itself is for style isolation (not DOM element isolation--that already exists), piercing combinator made it too easy to undo style isolation.
- # [20:21] <chaals> MJS: Think we started trying to decide what closed mode should be. Wandered into discussion of default.
- # [20:22] <chaals> … if we define it we need a default, but let's check in whether the semantics outlined are coherent enough to spec.
- # [20:22] * Joins: yo3jones (~yo3jones@public.cloak)
- # [20:22] <chaals> … another thing to think is how frameworks want an openness hook.
- # [20:23] <chaals> … there are a couple of levels. If we have both modes, and you can choose, then you can choose.
- # [20:23] <chaals> … what might matter more is if others make a different choice - would it be a problem if others choose closed when frameworks shoose open?
- # [20:23] <chaals> s/shoo/choo
- # [20:23] * ebryn says yes, it hurts compatibility layers potentially
- # [20:24] <chaals> … if it isn't, then maybe we don't worry so much, and we don't *need* to set a default.
- # [20:24] <chaals> … But are the semantics clear enough to spec?
- # [20:24] * Domenic_ sorry for being late, is there a link to the semantics annevk outlined?
- # [20:24] * Domenic_ i guess they were just repeated out loud
- # [20:24] <chaals> … I think Anne's outline is a reasonable strating point. Event retergetting is set up, no property pointing in, and no way for CSS to break in.
- # [20:24] * rniwa points out to Domenic_: http://www.w3.org/2015/04/24-webapps-minutes.html
- # [20:24] * ebryn waves to Domenic_
- # [20:24] <chaals> … closed mode would not support shadow piercing combinators because that would be a violation of the basics.
- # [20:25] <hober> q- annevk
- # [20:25] * Zakim sees rniwa on the speaker queue
- # [20:25] * Domenic_ yeah been trying to read scrollback in pieces, was wondering if they were in a doc somewhere
- # [20:25] <chaals> AvK: I wanted to say what Maciej said.
- # [20:25] <chaals> … I agree my proposal is not as insane as it sounds.
- # [20:25] <chaals> s/not as insane as it sounds/a useful thing. I don't care about the default thing.
- # [20:25] <chaals> DD: We need a closed mode to explain HTML.
- # [20:25] <chaals> AvK: HTML is isloated.
- # [20:26] <chaals> DD: Wher closed is a subset of that it helps.
- # [20:26] <chaals> q?
- # [20:26] * Zakim sees rniwa on the speaker queue
- # [20:26] * rniwa can I have mic?
- # [20:26] * rniwa is everyone just ignoring the queue now?
- # [20:26] <justin> I'll direct it your way
- # [20:26] <mjs> q+ for JS vs DOM
- # [20:26] * Zakim sees rniwa, mjs on the speaker queue
- # [20:27] <slightlyoff> +1 to Travis
- # [20:27] <chaals> TL: Don't see why isloating the DOM API is more satisfying that isloating the JS API. Web deveopers dont't distinguish these two as different parts of the platform. If you don't guarantee isollation, the barrier of event retargetting and blocking shadow root access isn't that relevant.
- # [20:27] <slightlyoff> DOM is just a library for JS; treating it like some special case is creating a bug
- # [20:27] <chaals> … prefer complete isolation like HTML elements than having this halfway point.
- # [20:27] * ebryn agrees with travis
- # [20:27] <Domenic_> +1... I assume closed would be a subset of the whole isolated thing but it would be better to have the whole isolated semantics spelled out
- # [20:27] <chaals> … if you want to make closed, delete your shadowRoot propoerty.
- # [20:27] <sorvell> q+
- # [20:27] * Zakim sees rniwa, mjs, sorvell on the speaker queue
- # [20:27] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [20:27] <ebryn> +1 to Travis
- # [20:28] <chaals> RN: If you want open mode you can just not use shadow DOM? I don't think that;'s viable for frameworks.
- # [20:28] <chaals> … there are frameworks that by default are open, and they don't want event retargetting, and want style isolation.
- # [20:28] <wilsonpage> +1 Travis
- # [20:28] <slightlyoff> q+
- # [20:28] * Zakim sees rniwa, mjs, sorvell, slightlyoff on the speaker queue
- # [20:28] <ebryn> +1 rniwa
- # [20:28] <chaals> … either sperate style isolation from shadow DOM, or make open mode more open
- # [20:28] <chaals> … so people can select through shadows.
- # [20:28] <justin> what frameks?
- # [20:29] <chaals> … might need to discuss whether open model is the right openness
- # [20:29] <slightlyoff> rniwa; can you talk about who wants this?
- # [20:29] <chaals> zakim, close the queue
- # [20:29] <Zakim> ok, chaals, the speaker queue is closed
- # [20:29] <ebryn> we should have a mechanism to utilize custom elements, <template>, and distribution points in a more open mode
- # [20:29] <chaals> ack rn
- # [20:29] * Zakim sees mjs, sorvell, slightlyoff on the speaker queue
- # [20:29] <justin> q+ Justin
- # [20:29] * Zakim whispers to justin that the speaker queue has been closed
- # [20:29] <chaals> AvK: Agree with Ryosuke.
- # [20:29] <chaals> zakim, open queue]
- # [20:29] <Zakim> I don't understand 'open queue]', chaals
- # [20:29] <chaals> zakim, open queue
- # [20:29] <Zakim> ok, chaals, the speaker queue is open
- # [20:29] * ebryn PRIMITIVES!
- # [20:29] * Joins: shepazu (schepers@public.cloak)
- # [20:29] <chaals> q+ justin
- # [20:29] * Zakim sees mjs, sorvell, slightlyoff, justin on the speaker queue
- # [20:29] <justin> I don't know of anyone asking for more open outside the "bootstrap problem"
- # [20:29] <chaals> zakim, close the queue in 3 minutes
- # [20:29] <Zakim> I don't understand 'close the queue in 3 minutes', chaals
- # [20:30] <Travis> Zakim wants this discussion to continue.
- # [20:30] * Quits: rniwa (~textual@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [20:30] <chaals> AvK: Doesn't amake sense for event path not to match the target. If you have the open model the event would go over a composed tree and everyone can see that, in closed you get real retargetting…
- # [20:30] * Joins: rniwa (~textual@public.cloak)
- # [20:31] <chaals> … we might want a mode where seletors operate on the compsed tree, so the boundary is only for compositoin, everything is global.
- # [20:31] <chaals> EB: We want that.
- # [20:31] <hober> q?
- # [20:31] * Zakim sees mjs, sorvell, slightlyoff, justin on the speaker queue
- # [20:31] <chaals> ack m
- # [20:31] <Zakim> mjs, you wanted to discuss JS vs DOM
- # [20:31] * Zakim sees sorvell, slightlyoff, justin on the speaker queue
- # [20:31] <ebryn> it’s how we can migrate our users transparently to these primitives / shadow DOM
- # [20:32] <chaals> [straw poll: any consensus on a closed mode? apparently not…]
- # [20:33] <chaals> zakim, close queue
- # [20:33] <Zakim> ok, chaals, the speaker queue is closed
- # [20:33] * Quits: yo3jones (~yo3jones@public.cloak) (Ping timeout: 180 seconds)
- # [20:33] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [20:33] <chaals> MJS: Travis said DOM and JS aren't separated…
- # [20:34] <chaals> … think that is true to some extent but there is a conceptual dividing line. Reaons to have closed AND isolated is because JS is weird. Where you can't monkey-patch everything all the time, closed == isolated
- # [20:34] <ebryn> I think the point that you can create closed mode at runtime by deleting the `_shadowRoot` property was a good point
- # [20:34] <chaals> … if we want isolated, at least being able to close the APIs is a first step. Then deal with the language problem that is javascript-specific
- # [20:35] <Domenic_> Agree, but why do this in stages? Why not come up with a coherent proposal all at once?
- # [20:35] <chaals> … you could imagine JS going away, and then isolated would not be relevant.
- # [20:35] * ebryn wonders if Apple is bringing Swift to the browser?
- # [20:35] <chaals> … so makes sense to start with closed then build isolated n that
- # [20:35] <chaals> ack next
- # [20:35] * Zakim sees sorvell at the head of the speaker queue
- # [20:35] * Zakim sees slightlyoff, justin on the speaker queue
- # [20:36] <ebryn> q+
- # [20:36] * Zakim whispers to ebryn that the speaker queue has been closed
- # [20:36] <chaals> SO: Original question - would framework people consider closed a big obstacle. No, don't think people would use it much, it's OK if it is a stepping stone to isolated. If implementros think it is important, as a happy user of shadowDOM, we want shadow DOM so we don't want to hold it up from shipping on this point.
- # [20:36] <chaals> ack sl
- # [20:36] * Zakim sees justin on the speaker queue
- # [20:37] <chaals> AR: When we tried to introduce DART we designed a new DOM for it. That was of course an improvement on the actual web and therefore failed.
- # [20:37] <chaals> … It is a poor choice to assume you must inherit everything we have today in the future.
- # [20:38] <chaals> RESOLUTION: We're not attempting to address the post-javascript web
- # [20:38] <chaals> AR: Not sure I understand a "more open open". Nor that there are people clamouring for it especially in v1
- # [20:39] <chaals> … people are using current shadowDom.
- # [20:39] <chaals> EB: Poeple are using open open mode, 1% who tried shadow DOM are not representative.
- # [20:39] <chaals> AR: Shadow came from an open open world, and we are trying to repair some of its worst excesses.
- # [20:39] <chaals> AvK: Open open lets people ease towards closed.
- # [20:40] * Quits: estellevw (~estellevw@public.cloak) ("Snuggling with the puppies")
- # [20:40] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
- # [20:40] * Quits: wilsonpage (~wilsonpage@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [20:40] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [20:41] * Quits: jcraig (~jcraig@public.cloak) (jcraig)
- # [20:41] * Quits: weinig (~weinig@public.cloak) (weinig)
- # [20:41] <Travis> Present+ Travis_Leithead
- # [20:41] <chaals> rrsagent, draft minutes
- # [20:41] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html chaals
- # [20:42] * cwilso to answer Chaals' question, lunch is scheduled for 12:00.
- # [20:45] * Quits: SteveF (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [20:46] * Quits: sorvell (~sorvell@public.cloak) (Ping timeout: 180 seconds)
- # [20:53] * Joins: blazejewicz (~blazejewicz@public.cloak)
- # [20:56] * Quits: blazejewicz (~blazejewicz@public.cloak) ("Page closed")
- # [20:57] * Quits: LJWatson (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [20:59] * Joins: jyasskin (~textual@public.cloak)
- # [21:01] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
- # [21:03] * Joins: mjs (~mjs@public.cloak)
- # [21:08] * Quits: Travis (~Travis@public.cloak) (Ping timeout: 180 seconds)
- # [21:14] * Joins: SteveF (~chatzilla@public.cloak)
- # [21:18] * Joins: jyasskin (~textual@public.cloak)
- # [21:19] * Joins: joannawu (~JoannaWu@public.cloak)
- # [21:21] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [21:24] * Quits: jyasskin (~textual@public.cloak) ("My computer has gone to sleep. ZZZzzz…")
- # [21:26] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [21:30] * Joins: wilsonpage (~wilsonpage@public.cloak)
- # [21:30] * Joins: philipwalton (~philipwalton@public.cloak)
- # [21:47] * Quits: SteveF (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [21:51] * Joins: LJWatson (~chatzilla@public.cloak)
- # [21:54] * Joins: mjs (~mjs@public.cloak)
- # [21:56] * Joins: jan (~JanMiksovsky@public.cloak)
- # [21:57] * Joins: tantek (~tantek@public.cloak)
- # [21:58] <taylor> DG: Ready to reach decision on open/closed and the default
- # [21:58] <taylor> DG: We will have both closed and open mode in v1 - can you live?
- # [21:58] <taylor> MJS: Yes
- # [21:59] <taylor> TL: Good description: similar to what you get with javascript closures today.
- # [22:00] <taylor> TL: I'm in. Yes
- # [22:00] <taylor> DG: Yes
- # [22:00] <taylor> RESOLUTION: Yes on closed and open in v1
- # [22:02] <taylor> DG: Default?
- # [22:02] * Joins: Travis (~Travis@public.cloak)
- # [22:03] <taylor> AR: On the minutes that I object to required, no default
- # [22:03] <taylor> RESOLUTION: You have to make a choice
- # [22:03] <taylor> RESOLUTION: Clarified: no default, required to decide open or closed
- # [22:04] <chaals> agenda?
- # [22:04] * Zakim sees 5 items remaining on the agenda:
- # [22:04] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [22:04] * Zakim 5. closed and open [from chaals]
- # [22:04] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [22:04] * Zakim 7. clarify event retargetting... [from chaals]
- # [22:04] * Zakim 8. styling [from chaals]
- # [22:04] <chaals> zakim, close item 5
- # [22:04] <Zakim> agendum 5, closed and open, closed
- # [22:04] <Zakim> I see 4 items remaining on the agenda; the next one is
- # [22:04] <Zakim> 4. Jan…'s proposal for named thingo [from chaals]
- # [22:05] <taylor> DG: Retargeting
- # [22:05] <chaals> i/DG: Retarg/Topic: Event retargetting/
- # [22:05] <chaals> rrsagent, draft minutes
- # [22:05] <RRSAgent> I have made the request to generate http://www.w3.org/2015/04/24-webapps-minutes.html chaals
- # [22:05] <taylor> AvK: Proposal: rename path to composedPath. We should not tie it to open/closed but let you choose between retargeting or not in open mode
- # [22:06] <chaals> Present+ AliceBoxhall, WilliamChen
- # [22:06] * Joins: sorvell (~sorvell@public.cloak)
- # [22:06] <Travis> q+
- # [22:06] * Zakim whispers to Travis that the speaker queue has been closed
- # [22:06] * Joins: markg_ (~chatzilla@public.cloak)
- # [22:06] * Travis sighs
- # [22:07] <chaals> zakim, open queue
- # [22:07] <Zakim> ok, chaals, the speaker queue is open
- # [22:07] <chaals> q+ travis
- # [22:07] * Zakim sees justin, travis on the speaker queue
- # [22:07] <chaals> q- justin
- # [22:07] * Zakim sees travis on the speaker queue
- # [22:07] <taylor> SM: nervious about keeping the path name but having it return something different
- # [22:07] <chaals> Present+ ScottM
- # [22:07] * Joins: jcraig (~jcraig@public.cloak)
- # [22:07] <chaals> Present+ ErikBryn
- # [22:08] <sorvell> q+
- # [22:08] * Zakim sees travis, sorvell on the speaker queue
- # [22:08] * ebryn wonders why Present+ means
- # [22:08] <chaals> Present+ MarkG, SteveOrvell
- # [22:08] * ebryn s/why/what/
- # [22:09] * chaals notes it means we get your name into the minutes so people can figure out who was speaking
- # [22:09] <taylor> TL: Could we avoid adding a second path property before nailing the first one?
- # [22:09] * Joins: weinig (~weinig@public.cloak)
- # [22:09] <taylor> DG: Event delegation is broken for composition
- # [22:10] <chaals> Present+ Misko
- # [22:10] <taylor> DG: Event delegation = instead of registering event listeners on elements, frameworks listen to everything and have their own event system managing that
- # [22:10] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [22:10] <taylor> DG: If path does not include the full composed tree, you can reason where the event came from
- # [22:10] <chaals> Present+ WilsonPage
- # [22:11] <aklein> q+
- # [22:11] * Zakim sees travis, sorvell, aklein on the speaker queue
- # [22:11] * Quits: markg (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [22:11] * markg_ is now known as markg
- # [22:11] <taylor> AvK: We probably need another term that means open but not closed
- # [22:11] <chaals> ack tr
- # [22:11] * Zakim sees sorvell, aklein on the speaker queue
- # [22:11] <chaals> ack so
- # [22:11] * Zakim sees aklein on the speaker queue
- # [22:12] <chaals> Present+ AdamKlein
- # [22:12] * Quits: LJWatson (~chatzilla@public.cloak) (Client closed connection)
- # [22:12] <taylor> SO: Composed path or shadow path is fine. In closed mode you just don't get .shadowRoot or .shadowPath. They can return the same as path
- # [22:13] <chaals> ack akl
- # [22:13] * Zakim sees no one on the speaker queue
- # [22:13] <taylor> TL: Why would we introduce something that doesn't take into account shadow DOM automatically?
- # [22:13] * Quits: weinig (~weinig@public.cloak) (weinig)
- # [22:14] <rniwa> +q
- # [22:14] * Zakim sees rniwa on the speaker queue
- # [22:14] <taylor> AvK: Wouldn't object if we don't introduce it. Want a different name. Path is target to root. If we want to introduce that, which makes sense, we should call that path.
- # [22:14] <taylor> AK: Assuming we get composed path, having path or not is not a question that has to do with web components
- # [22:14] <chaals> ack rn
- # [22:14] * Zakim sees no one on the speaker queue
- # [22:15] * Joins: mjs (~mjs@public.cloak)
- # [22:15] * Joins: LJWatson (~chatzilla@public.cloak)
- # [22:15] <taylor> RN: We don't want to expose the nodes in closed shadow dom?
- # [22:15] <taylor> Consensus: No
- # [22:15] <taylor> Consensus(clarified): We don't want to expose the nodes in closed roots
- # [22:15] * rniwa shadowPiercingPath?
- # [22:15] * Joins: SteveF (~chatzilla@public.cloak)
- # [22:16] * rniwa completePath?
- # [22:16] * rniwa deepPath?
- # [22:16] * hober but in the current meta all anyone will care about are the deeps</badjoke>
- # [22:16] <taylor> DG: We can designate AvK to choose the name of this path
- # [22:16] <taylor> AvK: I decide "deepPath"
- # [22:16] <taylor> DG: Maybe we should designate a new person
- # [22:17] <taylor> AvK: Event retargeting is an option in the open case, and defaults to retarget? A switch on the constructor
- # [22:17] <justin> q+
- # [22:17] * Zakim sees justin on the speaker queue
- # [22:17] <chaals> agenda?
- # [22:17] * Zakim sees 4 items remaining on the agenda:
- # [22:17] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [22:17] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [22:17] * Zakim 7. clarify event retargetting... [from chaals]
- # [22:17] * Zakim 8. styling [from chaals]
- # [22:18] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [22:18] * Joins: marcosc (~marcosc@public.cloak)
- # [22:18] <taylor> JF: Don't know how it makes sense to not retarget on an open root
- # [22:18] <dglazkov> RESOLUTION: Event.path is local to shadow tree/document, Event.deepPath is what Event.path spec'd now.
- # [22:19] <chaals> [DomenicD shows three possibilities when you can retarget or not, and be open or closed - except we don't allow no retargetting on closed]
- # [22:19] <taylor> AvK: Would be OK with not adding the switch
- # [22:19] <dglazkov> RESOLUTION: Event.deepPath does not include closed shadow trees
- # [22:20] <taylor> SO: Any event delegation case should be solved by deepPath
- # [22:20] * Quits: LJWatson (~chatzilla@public.cloak) (Client closed connection)
- # [22:20] <dglazkov> RESOLUTION: Event retargeting happens
- # [22:21] <dglazkov> Zakim: close item 7
- # [22:21] <dglazkov> Zakim, close item 7
- # [22:21] <Zakim> agendum 7, clarify event retargetting..., closed
- # [22:21] <Zakim> I see 3 items remaining on the agenda; the next one is
- # [22:21] <Zakim> 4. Jan…'s proposal for named thingo [from chaals]
- # [22:21] <chaals> agenda?
- # [22:21] * Zakim sees 3 items remaining on the agenda:
- # [22:21] * Zakim 4. Jan…'s proposal for named thingo [from chaals]
- # [22:21] * Zakim 6. details of imperative distribution API, don't make it impossible. [from chaals]
- # [22:21] * Zakim 8. styling [from chaals]
- # [22:21] * Quits: philipwalton (~philipwalton@public.cloak) (Ping timeout: 180 seconds)
- # [22:21] * Domenic_ don't we have to fix WebIDL to allow sequence<> attributes for any of this to work? -_-
- # [22:22] * chaals [there is great sadness]
- # [22:22] <chaals> Topic: Named slots
- # [22:22] <taylor> DG: Let's go on to slots
- # [22:23] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [22:23] <chaals> Present+ TaylorSavage
- # [22:23] * Joins: weinig (~weinig@public.cloak)
- # [22:23] <taylor> JM: Different from other issues - was just published tuesday. May be premature for people to feel comfortable settling if they haven't had a chance to digest it.
- # [22:23] * Joins: mjs (~mjs@public.cloak)
- # [22:24] <taylor> JM: Deals with way component author specifies content for distribution points
- # [22:24] * ebryn ¡death to selector-based programming!
- # [22:24] * rniwa +1 to that
- # [22:25] <taylor> JM: Aesthetic argument: saw people using selectors in odd ways for this
- # [22:25] <taylor> JM: Can't look at instance of a component and tell what it is doing. Like languages that have named arguments vs. just comma-differentiated arguments
- # [22:26] <taylor> JM: Makes subclassing easier - overriding by name
- # [22:26] * rniwa here's the proposal: https://github.com/w3c/webcomponents/wiki/Proposal-for-changes-to-manage-Shadow-DOM-content-distribution
- # [22:27] * ebryn thinks generally composition should be encouraged over inheritance
- # [22:27] <taylor> JM: Summary: rather than having select attribute on content element, would have an attribute that indicates the name for the insertion point..
- # [22:27] * rniwa +1 to that also. composition is the default mode of operation in the Web.
- # [22:27] <taylor> JM: Component instances in the light DOM apply an attribute that designates the named insertion point that they want the element distributed to
- # [22:27] * rniwa especially fallbacks.
- # [22:28] <taylor> JM: Elements in light dom without a name would end up in the default insertion point
- # [22:28] <taylor> DG: Second part to the proposal - do you think we can discuss in separation?
- # [22:28] <sorvell> q+
- # [22:28] * Zakim sees justin, sorvell on the speaker queue
- # [22:29] <taylor> JM: Second part was to indicate desire to see subclassing expressed in the platform
- # [22:29] * ebryn thinks subclassing is definitely relevant here and should be coupled to the solution for distribution
- # [22:29] <taylor> JM: Want to achieve separation of concerns, and subclassing is a core feature for that
- # [22:29] <misko> q+ slots reverses the role of who is doing the designation. +1
- # [22:29] * Zakim misko, you typed too many words without commas; I suspect you forgot to start with 'to ...'
- # [22:29] <misko> q+
- # [22:29] * Zakim sees justin, sorvell, misko on the speaker queue
- # [22:30] <taylor> JM: We don't currently specify a way for a subclass to contribute to the base class's tree
- # [22:30] * Quits: SteveF (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [22:30] <rniwa> +q
- # [22:30] * Zakim sees justin, sorvell, misko, rniwa on the speaker queue
- # [22:30] <taylor> JM: Seems possible that we might be able to tackle these pieces separately
- # [22:30] <taylor> AvK: Would like to tackle separately
- # [22:31] <taylor> AvK: Subclassing you propose includes modifying the existing shadow tree in place
- # [22:31] <hayato> +q
- # [22:31] * Zakim sees justin, sorvell, misko, rniwa, hayato on the speaker queue
- # [22:31] <taylor> DG: Let's discuss slots on their own merit
- # [22:31] <chaals> ack ju
- # [22:31] * Zakim sees sorvell, misko, rniwa, hayato on the speaker queue
- # [22:32] <taylor> JF: Disagree with slot proposal.
- # [22:32] <taylor> JF: Important to optimize for end-user of custom elements
- # [22:32] <taylor> JF: Right now, developers of CE have choice in how they craft their "light children" API
- # [22:32] <taylor> JF: Can look at content slot mechanism as subset of select="[slot-name=...]"
- # [22:33] * ebryn choice is bad
- # [22:33] <taylor> JF: Giving authors this power lets them have some choice.
- # [22:33] * ebryn this is a bad choice to let web devs make
- # [22:33] <taylor> JF: We're envisioning a future where we have this marketplace of elements that compete on their merits
- # [22:33] <Travis> q+
- # [22:33] * Zakim sees sorvell, misko, rniwa, hayato, Travis on the speaker queue
- # [22:33] <ebryn> q+
- # [22:33] * Zakim sees sorvell, misko, rniwa, hayato, Travis, ebryn on the speaker queue
- # [22:34] <taylor> JF: Want to give element author the ability to craft a nice component API.
- # [22:34] <chaals> ack so
- # [22:34] * Zakim sees misko, rniwa, hayato, Travis, ebryn on the speaker queue
- # [22:34] <jan> q+
- # [22:34] * Zakim sees misko, rniwa, hayato, Travis, ebryn, jan on the speaker queue
- # [22:34] <taylor> SO: Hesitant about slot
- # [22:34] * ebryn less expressive is a feature
- # [22:34] <taylor> SO: Clearly less expressive. Limited css selector vs. single attribute
- # [22:35] <taylor> SO: Not sufficient to explain the platform
- # [22:35] * ebryn don’t understand what he means about option
- # [22:35] <taylor> SO: Predicated on idea that expressiveness is good. This could be democratically decided, rather than forcing it in the platform.
- # [22:35] <taylor> SO: Not a complete proposal. Would have to really strongly agree that explicitness is so important that we'd need to flesh it out
- # [22:36] <taylor> SO: Using select enables you to do reprojection with different selectors down the tree.
- # [22:36] * ebryn the ember team has objected to `<content select=` since the beginning
- # [22:36] <chaals> ack mis
- # [22:36] * Zakim sees rniwa, hayato, Travis, ebryn, jan on the speaker queue
- # [22:36] <hober> q+
- # [22:36] * Zakim sees rniwa, hayato, Travis, ebryn, jan, hober on the speaker queue
- # [22:37] <taylor> Misko: In general, like the explicitness of it
- # [22:37] <taylor> Misko: Enumerating them gives ability for tools to reason about it
- # [22:37] <chaals> ack rn
- # [22:37] * Zakim sees hayato, Travis, ebryn, jan, hober on the speaker queue
- # [22:37] <chaals> q+ anne
- # [22:37] * Zakim sees hayato, Travis, ebryn, jan, hober, anne on the speaker queue
- # [22:37] <sorvell> q+ (Scott)
- # [22:37] * Zakim sees hayato, Travis, ebryn, jan, hober, anne, (Scott) on the speaker queue
- # [22:38] <taylor> RN: We strongly believe that supporting a selector based distribution is wrong
- # [22:38] <taylor> RN: In a selector based approach, we have to evaluate the selector each time we distribute a node. The timing of which that happens is not obviously spec'd. We end up having to evaluate each time in order to change it.
- # [22:39] <justin> Q+
- # [22:39] * Zakim sees hayato, Travis, ebryn, jan, hober, anne, (Scott), justin on the speaker queue
- # [22:39] <justin> q+
- # [22:39] * Zakim sees hayato, Travis, ebryn, jan, hober, anne, (Scott), justin on the speaker queue
- # [22:39] * ebryn imperative API should be a requirement
- # [22:39] <chaals> ack haya
- # [22:39] * Zakim sees Travis, ebryn, jan, hober, anne, (Scott), justin on the speaker queue
- # [22:39] * Joins: LJWatson (~chatzilla@public.cloak)
- # [22:39] <taylor> RN: We strongly feel imperative API is important.
- # [22:39] * ebryn and this proposal is the first time we have a path forward in my mind for that
- # [22:40] <dglazkov> +q
- # [22:40] * Zakim sees Travis, ebryn, jan, hober, anne, (Scott), justin, dglazkov on the speaker queue
- # [22:40] * ebryn the fact that css selectors exist is not a good argument for why to do it
- # [22:40] <taylor> HI: Every browsers has already implemented CSS selector. We can re-use it. If it evolves we can benefit from it.
- # [22:40] <justin> the distribution timing isn't any different, is it?
- # [22:40] <justin> I didn't see that as part of the proposal
- # [22:40] <taylor> HI: It's very efficient. It's only distributing nodes. Don't have to traverse up or down node tree.
- # [22:40] * dglazkov that is correct. I am confused about how this impacts timing
- # [22:40] <taylor> HI: Disabled support of psuedo-classes, and received lots of complaints from the community
- # [22:40] <chaals> ack tr
- # [22:40] * Zakim sees ebryn, jan, hober, anne, (Scott), justin, dglazkov on the speaker queue
- # [22:41] <taylor> HI: Afraid we will receive lots of complaints if we disable selector-based distribution
- # [22:41] <taylor> TL: Support proposal with slots
- # [22:41] <taylor> TL: Having to declare your intention to be selected by a shadow dom maybe doesn't seem that important right now, but if we want to enable content distribution from within an isolated environment, the cross-domain untrustable component trying to select stuff from your light dom would be bad
- # [22:42] <taylor> TL: Have a much better contract with your component by explicitly naming a slot
- # [22:42] <taylor> TL: Would have to not have the select feature in an isolated model
- # [22:42] <taylor> JF: Don't default slots challenge that? if you have default slot, you don't have to explicitly opt-in
- # [22:42] <chaals> ack ebr
- # [22:42] * Zakim sees jan, hober, anne, (Scott), justin, dglazkov on the speaker queue
- # [22:42] <taylor> TL: Not familiar with default slot
- # [22:43] <taylor> EB: Believe slots is the right approach
- # [22:43] <taylor> EB: Want to see death of selector-based programming. Only to be used in style.
- # [22:44] <chaals> ack ja
- # [22:44] * Zakim sees hober, anne, (Scott), justin, dglazkov on the speaker queue
- # [22:44] <taylor> EB: Considered imperative API a blocker. Seems clearer how to get here with sots approach.
- # [22:45] <taylor> JM: Not excited about the idea at a late date to reopen something. Excited to see Shadow DOM adopted by all browsers.
- # [22:45] <justin> We really need to work out how this proposal leads to imperative API, I don't see what it changes
- # [22:46] <taylor> JM: History has shown that more flexibility is not always better
- # [22:47] <taylor> hober: Point was made that we should democratically let users decide how to do this. Two conventions: css class, or attribute. Both are poor man's slot name
- # [22:47] * Joins: chrisb (~chrisb@public.cloak)
- # [22:47] <hober> q-
- # [22:47] * Zakim sees anne, (Scott), justin, dglazkov on the speaker queue
- # [22:47] <taylor> JM: Would be elegant if you could include a slot name as a tag
- # [22:49] <taylor> Domenic: Current HTML uses tag name
- # [22:49] * ebryn there can be more than one instance of a custom element
- # [22:49] * ebryn you are going to need to name the one you want to distribute
- # [22:49] * Joins: joannawu (~JoannaWu@public.cloak)
- # [22:49] <chaals> ack ann
- # [22:49] * Zakim sees (Scott), justin, dglazkov on the speaker queue
- # [22:50] <taylor> JM: Have an emerging sense that the use of CSS selectors is not a great fit for how people are trying to use it.
- # [22:50] <taylor> AvK: Like the slots proposal in general. Like that it's opinionated and would allow us to expose an API on shadow root or host element to enumerate the slots
- # [22:50] <taylor> AvK: Liked Domenic's idea of using the element name instead, because it explains existing elements
- # [22:51] <mjs> q+ to talk about tag names
- # [22:51] * Zakim sees (Scott), justin, dglazkov, mjs on the speaker queue
- # [22:51] <chaals> ack (sc
- # [22:51] * Zakim sees justin, dglazkov, mjs on the speaker queue
- # [22:51] <taylor> EB: But you can have more than one of the same CE's
- # [22:51] <taylor> SM: Not a fan of slot.
- # [22:51] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [22:51] * ebryn it’s explicit API
- # [22:52] <taylor> SM: In response to explicitness: it's leaking implementation details of my component. Don't want you to know what you're using to insert.
- # [22:52] <chaals> q+ jan
- # [22:52] * Zakim sees justin, dglazkov, mjs, jan on the speaker queue
- # [22:52] * ebryn it’s your components API
- # [22:52] <taylor> SM: My element is simply a name, and I give you a contract in how to use it, but not how I achieve it
- # [22:52] * ebryn you define what is distributed
- # [22:53] <chaals> q+ to say you're not forced to expose details, but you may want to, no?
- # [22:53] * Zakim sees justin, dglazkov, mjs, jan, chaals on the speaker queue
- # [22:53] <taylor> SM: Hard to decide in isolation "this is a vocabulary everyone should use"
- # [22:53] <taylor> SM: This is why democratization is important.
- # [22:54] <taylor> SM: That anything but slot blocks imperative API is a red herring
- # [22:54] <taylor> SM: That two patterns, classes or attributes, have emerged is not a bad thing
- # [22:54] <chaals> q+ and to ask if there is a need for this in v1… what dies without doing something like this?
- # [22:54] * Zakim sees justin, dglazkov, mjs, jan, chaals on the speaker queue
- # [22:54] <taylor> SM: People have different needs.
- # [22:55] <taylor> JM: Why do you use both?
- # [22:55] <taylor> SM: I don't presuppose that I want to dictate the answer for eternity - that's the point
- # [22:55] <taylor> SM: Would like to let users tell me if that is good or bad
- # [22:55] <taylor> SM: Want to see which one is best, not decide for the universe
- # [22:55] <chaals> ack ju
- # [22:55] * Zakim sees dglazkov, mjs, jan, chaals on the speaker queue
- # [22:56] <taylor> JF: Re: flexibility to craft your own api
- # [22:56] <taylor> JF: Analogy to named arguments of functions - slot is forcing that you have to use the named argument. Very restrictive.
- # [22:56] <taylor> JF: You can't look at current set of elements as exemplary of what all elements will look like.
- # [22:56] * Quits: joannawu (~JoannaWu@public.cloak) (Ping timeout: 180 seconds)
- # [22:57] <taylor> JF: Class, attribute, tag name - that all are used demonstrates that people are using the full expressiveness of selectors
- # [22:57] <taylor> JF: Seeing people make use of the different options they have. Would counter argument that they're following into a category that we need to codify.
- # [22:58] <taylor> JF: Can select on attribute values. "[section=...]"
- # [22:58] <taylor> JF: Compound and complex selections - can make API's that evolve in the future
- # [22:58] <taylor> JF: With slots, if you pick a name, but want to change that name later, you have to figure out multiple names
- # [22:58] <taylor> JF: Should think about elements as API's that can evolve in the future, and need to give them flexibility
- # [22:59] <chaals> q-
- # [22:59] * Zakim sees dglazkov, mjs, jan on the speaker queue
- # [22:59] <taylor> JF: Don't see how the timing changes at all, or how it effects how to do imperative API.
- # [22:59] <chaals> q+ to ask if we need this in v1
- # [22:59] * Zakim sees dglazkov, mjs, jan, chaals on the speaker queue
- # [22:59] <taylor> JF: Still have to do style recalc
- # [22:59] <taylor> JF: We all want to see imperative API. Timing seems to be toughest part, not how you select nodes.
- # [22:59] <chaals> ack dgla
- # [22:59] * Zakim sees mjs, jan, chaals on the speaker queue
- # [23:00] <taylor> DG: Going to stay away from aesthetics debate
- # [23:00] <taylor> DG: Don't believe we can in this century definitively declare that one is better than the other
- # [23:00] <taylor> DG: Instead, on timing and implementation details
- # [23:00] <taylor> DG: From spec perspective, this is a very minor change.
- # [23:00] <wilsonpage> q+
- # [23:00] * Zakim sees mjs, jan, chaals, wilsonpage on the speaker queue
- # [23:01] <taylor> DG: You will still have the same issue - if you call offset-top you will need to know where it is distributed
- # [23:01] <taylor> DG: Because distribution is really fast you might be able to make it synchronous, but this will slow down dom operations. still have timing issue.
- # [23:01] <taylor> DG: This is purely an aesthetic debate
- # [23:01] <rniwa> +q
- # [23:01] * Zakim sees mjs, jan, chaals, wilsonpage, rniwa on the speaker queue
- # [23:01] <chaals> ack mj
- # [23:01] <Zakim> mjs, you wanted to talk about tag names
- # [23:02] * Zakim sees jan, chaals, wilsonpage, rniwa on the speaker queue
- # [23:02] <taylor> DG: As aesthetic debate, we need to say "can you live with" and proceed from there
- # [23:02] <taylor> MJS: Re: tag names as distribution hooks
- # [23:02] <chaals> q- later
- # [23:02] * Zakim sees jan, wilsonpage, rniwa, chaals on the speaker queue
- # [23:02] <taylor> MJS: If you look at HTML elements, in all cases the hook is a tag name that is designed to have a special meaning within the context of a fixed set of other containers
- # [23:02] * ebryn and it squats on the global namespace
- # [23:03] * Quits: tantek (~tantek@public.cloak) (tantek)
- # [23:03] <taylor> MJS: The choice of having your hook be an element name, class name, or attribute name - they all end up pointing to the same thing
- # [23:03] <taylor> MJS: Ends up being a superficial choice
- # [23:04] * ebryn selectors are a footgun
- # [23:04] <chaals> ack jan
- # [23:04] * Zakim sees wilsonpage, rniwa, chaals on the speaker queue
- # [23:04] <chaals> ack wil
- # [23:04] * Zakim sees rniwa, chaals on the speaker queue
- # [23:05] <taylor> WP: Arguments against are around lack of devs having expressiveness
- # [23:05] <taylor> WP: Could Polymer team live with imperative API?
- # [23:05] * ebryn hopes rniwa has an answer to the imperative API questions
- # [23:06] <taylor> SO: If there's lack of expressiveness and imperative gives you the expresiveness, sure. But this seems to be a red herring.
- # [23:06] * ebryn i heard dglazkov mention a synchronous option
- # [23:06] <taylor> RN: Timing is still an issue. Need to decide when imperative API is used.
- # [23:07] <taylor> RN: When you insert a node that specifies which slot it belongs to, at that moment we could have a mapping that tells you where it goes right away
- # [23:07] <taylor> RN: In current model, any time anything changes, it's ambiguous if that node needs to be distributed
- # [23:07] <taylor> MJS: Slots collapses choosing what gets distributed into a simple map
- # [23:08] <taylor> MJS: If you add N things and each time need to recompute what gets distributed where, you get N^2
- # [23:08] <taylor> DG: The way distribution spec is designed today, it's a tree walk. It's linear.
- # [23:08] * Joins: marcosc (~marcosc@public.cloak)
- # [23:08] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [23:09] <taylor> MJW: Selector evaluation can't be reduced to a map lookup
- # [23:09] <taylor> AR: These are simple selectors - you can't do descendent selectors.
- # [23:09] * ebryn did the definition of “simple selectors” exist until just now?
- # [23:09] * Joins: marcosc (~marcosc@public.cloak)
- # [23:09] <taylor> AR: Slots and select are isomorphic to each other (in terms of big O)
- # [23:10] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [23:10] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [23:10] * Joins: marcosc (~marcosc@public.cloak)
- # [23:10] * Quits: marcosc (~marcosc@public.cloak) (Client closed connection)
- # [23:10] * Joins: marcosc (~marcosc@public.cloak)
- # [23:11] * Quits: weinig (~weinig@public.cloak) (weinig)
- # [23:11] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [23:14] * Joins: jan (~JanMiksovsky@public.cloak)
- # [23:16] <taylor> [Break]
- # [23:16] * Quits: sorvell (~sorvell@public.cloak) (Ping timeout: 180 seconds)
- # [23:17] * Quits: LJWatson (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [23:17] * Joins: LJWatson (~chatzilla@public.cloak)
- # [23:17] * Joins: wchope (~wchope@public.cloak)
- # [23:17] * Quits: wchope (~wchope@public.cloak) ("Page closed")
- # [23:24] * Quits: LJWatson (~chatzilla@public.cloak) (Ping timeout: 180 seconds)
- # [23:25] * wilsonpage is now known as wilsonpage-away
- # [23:25] * Quits: jan (~JanMiksovsky@public.cloak) (jan)
- # [23:27] * Joins: tantek (~tantek@public.cloak)
- # [23:28] * Joins: mjs (~mjs@public.cloak)
- # [23:34] * Quits: chrisb (~chrisb@public.cloak) ("Page closed")
- # [23:37] * Joins: LJWatson (~chatzilla@public.cloak)
- # [23:37] * Quits: jcraig (~jcraig@public.cloak) (Ping timeout: 180 seconds)
- # [23:42] * Joins: sorvell (~sorvell@public.cloak)
- # [23:44] * Quits: mjs (~mjs@public.cloak) (mjs)
- # [23:49] * Quits: Travis (~Travis@public.cloak) (Ping timeout: 180 seconds)
- # [23:51] * Joins: shepazu (schepers@public.cloak)
- # [23:54] * Quits: shepazu (schepers@public.cloak) ("My Mac has gone to sleep. ZZZzzz…")
- # [23:59] * wilsonpage-away is now known as wilsonpage
- # [23:59] * Joins: mjs (~mjs@public.cloak)
- # [23:59] * Joins: jan (~JanMiksovsky@public.cloak)
- # Session Close: Sat Apr 25 00:00:00 2015
Previous day, Next day
Think these logs are useful? Then please donate to show your gratitude (and keep them up, of course). Thanks! — Krijn