- From: Shane Stephens <shans@google.com>
- Date: Sat, 22 Aug 2015 16:48:47 +0000
- To: "L. David Baron" <dbaron@dbaron.org>, Greg Whitworth <gwhit@microsoft.com>
- Cc: "public-houdini@w3.org" <public-houdini@w3.org>
- Message-ID: <CAGTfzwR+dRTMOugvtf-Fu_iHxJMRCt7GX460DZbXB=YiDCEdZw@mail.gmail.com>
Hi David, Thanks for your detailed feedback. On Sat, Aug 15, 2015 at 5:04 PM L. David Baron <dbaron@dbaron.org> wrote: > On Friday 2015-06-12 00:39 +0000, Greg Whitworth wrote: > > Tab, Shane, Ian and I were able to get together on a video call today > and hashed out some of the details regarding what the custom properties and > values API can provide, its expected data structures, potential hurdles and > some examples. > > > > Please feel free to provide your feedback regarding the API design and > any potential issues we didn't consider. > > > > http://dev.w3.org/houdini/css-properties-values-api/ > > Here are some comments on > https://drafts.css-houdini.org/css-properties-values-api/ as of > revision https://hg.css-houdini.org/drafts/rev/94804d3e9678 : > > > The spec should give a preferred location for feedback (probably > public-houdini), as should all the other houdini specs. > I think this is waiting on Tab adding the houdini group to bikeshed. > Section 2: Registering custom properties > ========================================= > > name: > "This must begin with a double dash" should say what happens if it > doesn't. Is the registration ignored? Does it throw an exception? > (Beyond saying that, it's probably not worth an authoring > conformance requirement at the "must" level.) > Issue added. > syntax: > This should actually give a list of the simple types that are > intended to be supported. There are lots of simple types such as > <single-transition-property> that would add a good bit of > implementation burden for very little value. (Section 5: Notes does > specifically say this.) > Issue added. > That said, I think the use of simple types here is probably too > constraining. While providing default types seems useful, I think > allowing a function or functions (e.g., as I described in the last > option in > http://www.w3.org/mid/20150208105940.GA7982@pescadero.dbaron.org ) > is probably needed to polyfill the range of CSS properties for which > developers will want to use this. > We can maybe start with simple types in level 1, and expand the grammar in later levels. > (However, in that last option, I neglected to handle the possibility > that the input string failed to parse; it would need a way to report > that. I also neglected the need to provide an interpolation > function.) > I've added an issue tracking a similar problem with the 'syntax' string. > Section 3: The apply hook > ========================= > > Please wrap the comment at a narrower width so it doesn't require > horizontal scrolling. > Done. > It's not clear to me that having inputProperties be nullable is a > good idea. Otherwise this seems like a footgun. > Issue added. > I tend to think this concept requires that specifications define > used values in a much more formal way. They're currently quite > vague, and not defined in syntactic form. (Nor, I suspect, do > implementations have a consistent representation of them.) I think > this may be enough of an obstacle that I would prefer to postpone > this feature to a later level of this specification. > I think that 'used value' in that comment was a mistake. I've adjusted it to 'computed value' instead - our intention was that this was a processing step before layout, etc. > Section 4: Examples > =================== > > The majority of the examples use type: where they intend to use > syntax:. > I don't understand, sorry. > It seems better to merge example 1 and example 2 than to provide > example 1 as a broken but slightly simpler example and then fix it > in example 2. > Issue added. > Example 4 is missing its syntax: field due to failure to HTML-escape > "<ident>" with < and >. It also seems bad form to use boolean > values, even though it's only an example. The example also doesn't > check the --media-block property, which seems like a bug. It also > relies on otherwise-undefined "child/width" syntax in > inputProperties. (And it seems like it ought to use "child/width" > in outputProperties as well.) > Example 4 can't work. We either need to rewrite it radically or remove it. I've added an issue tracking this. > Section 5: Notes > ================ > > I didn't follow the "Elephants in the room" subsection" -- or at > least what it was trying to suggest. > When we drafted this, Greg, Ian and I were all worried about how multiple independent libraries would interact with each other. There's a tension between allowing multiple registrars on the one hand and causing weird load-order-dependent behavior on the other. This topic is listed as a discussion topic for our f2f. Cheers, -Shane > -David > > -- > 𝄞 L. David Baron http://dbaron.org/ 𝄂 > 𝄢 Mozilla https://www.mozilla.org/ 𝄂 > Before I built a wall I'd ask to know > What I was walling in or walling out, > And to whom I was like to give offense. > - Robert Frost, Mending Wall (1914) >
Received on Saturday, 22 August 2015 16:49:26 UTC