- From: Chris Lilley <chris@w3.org>
- Date: Mon, 22 Sep 2014 17:29:43 +0200
- To: WebFonts WG <public-webfonts-wg@w3.org>
Hello, I reconstructed some minutes based on my local IRC client log. The list of attendees may not be complete, its from memory and mentions on IRC. http://www.w3.org/Fonts/WG/2014-09-16_minutes.html and the plain text version to feed to trackbot Barcelona f2f 16 Sep 2014 [2]Agenda [2] http://lists.w3.org/Archives/Public/public-webfonts-wg/2014Sep/0020.html See also: [3]IRC log [3] http://www.w3.org/2014/09/16-webfonts-irc Attendees Present Vlad, David (kuettel), Kenji (kbx), nyshadh, RSheeter, sergeym (on phone), Behedad Regrets Raph, Jonathan, John Hudson Chair Vlad Scribe ChrisLilley, kbx, kuettel Contents * [4]Topics 1. [5]Actions roundup 2. [6]pending review actions 3. [7]W3C Process 4. [8]Conformance Test Suite 5. [9]afternoon (post4pm) discussions. File format conformance * [10]Summary of Action Items __________________________________________________________ <ChrisLilley> ScribeNick: ChrisLilley Actions roundup [11]http://www.w3.org/Fonts/WG/track/actions/open [11] http://www.w3.org/Fonts/WG/track/actions/open <Vlad> Open action items: [12]http://www.w3.org/Fonts/WG/track/actions/open [12] http://www.w3.org/Fonts/WG/track/actions/open <Vlad> actions pending review: [13]http://www.w3.org/Fonts/WG/track/actions/pendingreview [13] http://www.w3.org/Fonts/WG/track/actions/pendingreview action-166 mobile perf Vlad: useful but not critical kuettel: chrome on android is using woff2 without issue kenji: several metrics, such as when font cant be used, was 30% ... now its 25% and its mostly because of woff2 as well as some other optimisations. ... also a metric for how long to display the text. was 630ms now 400ms so woff2 has improved things ... compared to woff1 ... data is sent from chrome users who agree t send stats. these are from chrome 35 ... compared to chrome 37 with woff2 rod: there was an issue about higher battery life kuettel: prefer to keep this action open as we add more data kenji: memory might be tricky, needs more analysis action-122? <trackbot> action-122 -- Raph Levien to Investigate the TTC support as part of the WOFF 2.0 pre-processing mechanism -- due 2013-10-30 -- OPEN <trackbot> [14]http://www.w3.org/Fonts/WG/track/actions/122 [14] http://www.w3.org/Fonts/WG/track/actions/122 trackbot, status (suggests adding Kenji as he is missing from trackbot users) kuettel: was not clear what we decided earlier. css webfonts does not support ttc behedad: its in the CSS3 spec but not implemented kuettel: raph had suggested a way but it was not prototyped Vlad: adobe has been active to extend TTC to OT collection with CFF fonts ... so guessing they see it as important kuettel: christopher slye had been contacted to see if adobe was interested. Vlad: christoopher stepped down, Adobe have another rep now (wg members [15]https://www.w3.org/2000/09/dbwg/details?group=44556 ) [15] https://www.w3.org/2000/09/dbwg/details?group=44556 kuettel: so we could prototype rod: sure, could look at that. what was raph's suggestion? kuettel: look at scope of changes, then consult with behedad and raph ... should not change wire format (re-assigned to Rod with target 31 oct) actoion-129? action-129? <trackbot> action-129 -- David Kuettel to Prepare a mime type application draft and justification for top-level "font" registration (with Vlad) -- due 2014-02-05 -- OPEN <trackbot> [16]http://www.w3.org/Fonts/WG/track/actions/129 [16] http://www.w3.org/Fonts/WG/track/actions/129 kuettel: takes a long time, is not blocking Vlad: as with woff1 we will register in application subtree ... spoke to some folks involved, and they said unless there is very compelling explanation for a separate top level type, then it will not be accepted ... but it is at least possible now kuettel: target date Jan 31 2015 action-132? <trackbot> action-132 -- David Kuettel to Track progress of Brotli specification to RFC -- due 2014-09-10 -- OPEN <trackbot> [17]http://www.w3.org/Fonts/WG/track/actions/132 [17] http://www.w3.org/Fonts/WG/track/actions/132 zoltan says spec has been sent as ID, needs feedback, WG could help for review action chrisl to use ietf-w3c liaison to get review and guidance for next steps on Brotli ID <trackbot> Created ACTION-146 - Use ietf-w3c liaison to get review and guidance for next steps on brotli id [on Chris Lilley - due 2014-09-23]. kuettel: compression team thrilled to see brotli picked up and deployed in browsers action-133? <trackbot> action-133 -- Raph Levien to Review the spec edits and finalize the definition of the "nominal size" -- due 2014-08-20 -- OPEN <trackbot> [18]http://www.w3.org/Fonts/WG/track/actions/133 [18] http://www.w3.org/Fonts/WG/track/actions/133 Vlad: raph still intends to clarify this, by early october ... critical, as little benefit and hard to implement ... not enough info for decoder to allocate memory with confidence ChrisLilley: agree, its not like woff1 which had a guarantee due to bitwise identical, not the case here Vlad: alternative is to specify an exact implementation but that constrains implementation rod: its clear ppl have to manage memory themselves Vlad: goal with mtx was optimal decompression ... original size may be a good estimate of required size but is not a guarantee ... keep action on raph action-138? <trackbot> action-138 -- Vladimir Levantovsky to Review conformance statements for woff 1.0 and transfer the applicable ones over -- due 2014-09-17 -- OPEN <trackbot> [19]http://www.w3.org/Fonts/WG/track/actions/138 [19] http://www.w3.org/Fonts/WG/track/actions/138 Vlad: sent an email [20]http://lists.w3.org/Archives/Public/public-webfonts-wg/2014 Sep/0016.html [20] http://lists.w3.org/Archives/Public/public-webfonts-wg/2014Sep/0016.html Vlad: in woff1, we tried to reproduce same structure as sfnt so table directory was fixed size and padded. each table reference was uncompressed or separately compressed, and 4byte aligned, and end padded ... in woff2 alltable directory entires variable length, very small, one byte of flags plus up to 5 bytes of size, so padding removes that benefit ... thus anything about byte alignment and padding is not applicable ... so must parse whole set of enties for find where compressed stream starts ... table is not parsed until after header is decompressed. in multithread you conld decompress in anther thread behedad: its such a small bit of data, not worth optimising for ... its like 20 bytes Vlad: we have two byte reserved, not sure why ChrisLilley: think it was for padding only Vlad: could use them to hold table offset behedad: require it to be zero for later expansion Vlad: already discussed, file format requires zero but ua not required to fail on non-zero behedad: first, throwing away an extension opportunity, and introduce twqo ways to compute same thing so you get platform variabilities. dont like the redundancy ... currently done by computing the offset by counting ChrisLilley: could see that as a potential exploit behedad: its using it as a cache, like TT did, with bad results Vlad: already updated the spec to see what the wordin would look like ... added para that says it is different to sfnt; reflect exact order in compressed font stream ... theis was implied but not directly stated ChrisLilley: good catch close action-138 <trackbot> Closed action-138. keep things as-is action-143? <trackbot> action-143 -- Vladimir Levantovsky to Update the spec in regards to the bug -- due 2014-09-17 -- OPEN <trackbot> [21]http://www.w3.org/Fonts/WG/track/actions/143 [21] http://www.w3.org/Fonts/WG/track/actions/143 Vlad: in woff 1 there were some useful notes that could be copied over ... all the checksums are screwed up, I realised ... due to transforms. spec is silent thatthese need to be recomputed kuettel: google implementation is recomputing the checksums already Vlad: keep 143 open for now. used to have a definition of transformed glyph header, and assumed sequence of compressed data streams. so needs entire transformed glyph sequence explicitly spelled out ... so edit spec to clarify sequence of data fields this relates to action-144 pending review actions [22]https://www.w3.org/Fonts/WG/track/actions/pendingreview [22] https://www.w3.org/Fonts/WG/track/actions/pendingreview these are all reflected in the latests spec. so unless you saw an issue in the spec, they are done action-140 causes a change in the google implementation kuettel: we need to update for that ... we need to test that change close action-125 <trackbot> Closed action-125. action-126 <trackbot> action-126 -- David Kuettel to Check publication of security review -- due 2014-01-15 -- PENDINGREVIEW <trackbot> [23]http://www.w3.org/Fonts/WG/track/actions/126 [23] http://www.w3.org/Fonts/WG/track/actions/126 kenji: fuzzer was used to make bad data, look for crashes. fixed, especially if it could be exploited. fuzzer is silent at this point. still running, but so far not found close action-128 <trackbot> Closed action-128. ChrisLilley: not enough svg in OT to form real conclusions close action-126 <trackbot> Closed action-126. kuettel: brotli is very good for general text not just fonts. works well on html and xml behedad: suggested svgz in svg table, more for non-web use. but its redundant to gzip the svg and the brotli Vlad: OT spec doesn't allow for gzip compressed svg behedad: its part of the svg spec itself Vlad: reasonable to allow either. ... for woff case it may be better to unzip and then brotli it ... ISO spec under final review, so not much time for comments ChrisLilley: so its DIS now? ... changes are suggested bot blocking (we will not require any SVG pre-processing) [24]http://dev.w3.org/webfonts/WOFF2/spec/#Metadata [24] http://dev.w3.org/webfonts/WOFF2/spec/#Metadata close action-131 <trackbot> Closed action-131. action-134? <trackbot> action-134 -- Vladimir Levantovsky to - edit the spec to reflect the recommended changes -- due 2014-09-10 -- PENDINGREVIEW <trackbot> [25]http://www.w3.org/Fonts/WG/track/actions/134 [25] http://www.w3.org/Fonts/WG/track/actions/134 see [26]http://lists.w3.org/Archives/Public/public-webfonts-wg/2014 Sep/0019.html [26] http://lists.w3.org/Archives/Public/public-webfonts-wg/2014Sep/0019.html close action-134 <trackbot> Closed action-134. action-135? <trackbot> action-135 -- Roderick Sheeter to Check the current reference iomplementation to see what is currently implemented -- due 2014-09-10 -- PENDINGREVIEW <trackbot> [27]http://www.w3.org/Fonts/WG/track/actions/135 [27] http://www.w3.org/Fonts/WG/track/actions/135 Vlad: can test with a special font that could trigger multiple encodings of same value close action-135 <trackbot> Closed action-135. action-136? <trackbot> action-136 -- Vladimir Levantovsky to - edit the woff2 uintbase128 description to eliminate possible multiple encoded values and specify that any error conditions must invalidate the font file -- due 2014-09-10 -- PENDINGREVIEW <trackbot> [28]http://www.w3.org/Fonts/WG/track/actions/136 [28] http://www.w3.org/Fonts/WG/track/actions/136 close action-136 <trackbot> Closed action-136. action-137? <trackbot> action-137 -- Chris Lilley to Edit the spec and implement the changes we agreed to during this call (see minutes on sep. 3, 2014) -- due 2014-09-10 -- CLOSED <trackbot> [29]http://www.w3.org/Fonts/WG/track/actions/137 [29] http://www.w3.org/Fonts/WG/track/actions/137 Vlad: now says what we discuswd, FF requires zero, AT must accept any close action-137 <trackbot> Closed action-137. close action-138 <trackbot> Closed action-138. action-139? <trackbot> action-139 -- Vladimir Levantovsky to Update the disg wording per chris's recommendations (to always remove the table) -- due 2014-09-17 -- PENDINGREVIEW <trackbot> [30]http://www.w3.org/Fonts/WG/track/actions/139 [30] http://www.w3.org/Fonts/WG/track/actions/139 Vlad: older windows used dsig to set the icon on the font behedad: word only allows OT features if font has DSIG <Vlad> sergey, are you there sergeym, are you there? Vlad: sergey checked and no impls rely on dsig, onlyolder windows version to select appropriate icon <sergeym> I'm out of batery on my phone. Will call back as sson as possible Vlad: we dedided that making an empty DSIG had no value. Jonathan suggested removing it ... discussing dsig changes, concern over empty DSIG table ... can you confirm no apps rely on DSIG? ... older Word versions to enable OT features? sergeym: they do not depend on DSIG, they rely on cff vs TT Vlad: so we required encoder to remove dsig behedad: is decoder required to reject if DSIG present? Vlad: no behedad: ok close action-139 <trackbot> Closed action-139. action-140? <trackbot> action-140 -- Vladimir Levantovsky to The woff 2.0 encoders must also set bit 11 of the 'flags' field -- due 2014-09-17 -- PENDINGREVIEW <trackbot> [31]http://www.w3.org/Fonts/WG/track/actions/140 [31] http://www.w3.org/Fonts/WG/track/actions/140 Vlad: indicates font is preprocessed, in line with OT spec close action-140 <trackbot> Closed action-140. action-141? <trackbot> action-141 -- Vladimir Levantovsky to Add a normative statement in the loca table section (to firm up) -- due 2014-09-17 -- PENDINGREVIEW <trackbot> [32]http://www.w3.org/Fonts/WG/track/actions/141 [32] http://www.w3.org/Fonts/WG/track/actions/141 Vlad: stores glyph offsets ... in loca table, look in header for the values close action-141 <trackbot> Closed action-141. action-142 <trackbot> action-142 -- Vladimir Levantovsky to Update spec to require bounding box presence -- due 2014-09-17 -- PENDINGREVIEW <trackbot> [33]http://www.w3.org/Fonts/WG/track/actions/142 [33] http://www.w3.org/Fonts/WG/track/actions/142 Vlad: requires explicit bbox. was already case, adeed conformance requiremrent as UA and FF. close action-142 <trackbot> Closed action-142. Vlad: google impl always drops bbox from simple glyph. ok if control points always on extrema behedad: spec is not clear if they are not extrema points. best to have bbbox of hull of all listed coordinates Vlad: (example where bbox is larger than the points) ... spec says that if bbox cannot be calcuilated from coord data, do not drop it behedad: impls do not do a tight ink bbox, they do the bbox of all on- and 0ff-curve points] ... spec needs to say that kbx: should we display warning if not? ... is it a minor case? Vlad: claim was that google drops all bboxes kbx: can we show its uncommon behedad: fontforge until recently did geometric bbox and truncating it, so they were all off ... but dropping is harmless, shifts by one unit kbx: we could instrument chrome to see if this shows up behedad: only reason there is this part of spec, is to accomodate fonts that are not correctly constructed Vlad: but tt spec does not require correctness here behedad: has beemn misinterpreted over time ChrisLilley: possible to construct one where the glyph is clipped away Vlad: (quotes, best if xmin is left side bearing) but not required behedad: bt that refers to value from hmtx table [34]http://www.microsoft.com/typography/otspec/hmtx.htm [34] http://www.microsoft.com/typography/otspec/hmtx.htm behedad: min and max of all coordinates (on and off) <scribe> ACTION: vlad to update spec for bbox dropping criteria, min max of all coordinates [recorded in [35]http://www.w3.org/2014/09/16-webfonts-minutes.html#action01 ] [35] http://www.w3.org/2014/09/16-webfonts-minutes.html#action01 <trackbot> Created ACTION-147 - Update spec for bbox dropping criteria, min max of all coordinates [on Vladimir Levantovsky - due 2014-09-23]. behedad: google impl normalizes and recomputes the bbox so a bad bbox never makes it through <kbx> I'm back <scribe> scribenick: kbx W3C Process Chris talking about the new process at w3c re last call / candidate recommendation there used to be last call followed to CR. problem is that if you made changes after last call, there could be some issues. now the 2 stages are combined. you can make changes. Major changes trigger another patent exclusion. For 2 years, we can use the old approach or the new approach. After that it's only the new approach. We need to decide which one. We should also try to make a decision to go to last call and if needed determine what are the blocking items to get there. <Vlad> sergey, are you ready to call in? <ChrisLilley> faq [36]https://www.w3.org/wiki/ProcessTransition2014 [36] https://www.w3.org/wiki/ProcessTransition2014 Vlad suggesting we go to last call as soon as the action items are closed. in short, the old way seems more practical at this point. open question about rejecting on invalid checksum Chris / David: what did Woff 1 do in that case? Vlad / Behdad: it should be a note, there doesn't seem to be any rendering engine that actually care about the checksum Conformance test Suite Vlad: would like to look at the different statement and outline a plan on how this could be tested <ChrisLilley> [37]https://www.w3.org/Fonts/WG/wiki/TestPlan20-UserAgent [37] https://www.w3.org/Fonts/WG/wiki/TestPlan20-UserAgent <ChrisLilley> [38]https://www.w3.org/Fonts/WG/wiki/TestPlan20-Format [38] https://www.w3.org/Fonts/WG/wiki/TestPlan20-Format <ChrisLilley> [39]https://www.w3.org/Fonts/WG/wiki/TestPlan20-AuthoringTool [39] https://www.w3.org/Fonts/WG/wiki/TestPlan20-AuthoringTool action vlad review and edit the conformance test for extraneous data <trackbot> Created ACTION-148 - Review and edit the conformance test for extraneous data [on Vladimir Levantovsky - due 2014-09-23]. Chris: for uintbase128, need to hex edit the fonts as it probably would not be easy to produce all the specimen from regular authoring tools Vlad: mustAccept255UInt16 is just a matter of producing the specimen fonts (3 possible encodings) and testing those. Chris is editing the wiki mustRejectInvalidUintBase128 is also doable, Chris is editing the wiki. mustNotUseReservedValue is also easy, Chris is editing the wiki with the approach. mustBeInvalidated-FailDecompress: a valid font, a corrupted font, a woff 2 font with gzip stream (see wiki for additional details) mustBeInvalidated-FailSize: start from valid fonts and modify lengths (wiki edited) boundingbox requirement should probably just be "MUST be calculated" instead of "MUST be calculated at the time of decoding" (so that UA have more freedom in terms of potential optimizations) mustCalculateBBox: should be tested with a single glyph "PASS" font with no BBox. Vlad: questions about a CTS for Brotli itself (input files that must be decompressed or failing) David: any requirements from the IETF about this aspect? Chris: need to confirm action ChrisLilley to check expectations regarding CTF from IETF <trackbot> Error finding 'ChrisLilley'. You can review and register nicknames at <[40]http://www.w3.org/Fonts/WG/track/users>. [40] http://www.w3.org/Fonts/WG/track/users>. action ChrisL to check expectations regarding CTF from IETF <trackbot> Created ACTION-149 - Check expectations regarding ctf from ietf [on Chris Lilley - due 2014-09-23]. shouldBeShort: can't be tested but is a sound recommendation. action vlad make private data block section clear regarding compression <trackbot> Created ACTION-150 - Make private data block section clear regarding compression [on Vladimir Levantovsky - due 2014-09-23]. afternoon (post4pm) discussions. File format conformance <ChrisL> scribenick: kuettel <Vlad> We are back from the lunch break [41]https://www.w3.org/Fonts/WG/wiki/TestPlan20-Format [41] https://www.w3.org/Fonts/WG/wiki/TestPlan20-Format <kuettel_> [42]http://dev.w3.org/webfonts/WOFF2/spec/#conform-noextraneous [42] http://dev.w3.org/webfonts/WOFF2/spec/#conform-noextraneous <kuettel_> vlad: three potential places where extra data could be added <kuettel_> vlad: (1) end of header, beginning of table directory <kuettel_> vlad: (2) gap between end of compressed font stream and extended metadata <kuettel_> ACTION: vlad to change first paragraph of section 3 to remove reference to private data compression [recorded in [43]http://www.w3.org/2014/09/16-webfonts-minutes.html#action02 ] [43] http://www.w3.org/2014/09/16-webfonts-minutes.html#action02 <trackbot> Created ACTION-151 - Change first paragraph of section 3 to remove reference to private data compression [on Vladimir Levantovsky - due 2014-09-23]. <kuettel_> (3) between extended metadata and private data <kuettel_> (4) after private data <kuettel_> vlad, chris: discussed whether there would be an opportunity for an exploit around private data. e.g. someone adds more data, but then adjusts the length such that the browser would not reject the file. Chris, shouldn't be as just transporting the data isn't enough -- someone would have to have access to it, which they wouldn't <kuettel_> [44]http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustSetReser vedToZero [44] http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustSetReservedToZero <kuettel_> (discussion around metadata and whether browsers should display it, whether browsers should reject font if not valid -- no, etc) <kuettel_> [45]http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustUseBrotl i-FontData [45] http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustUseBrotli-FontData <kuettel_> (captured a test for it) <kuettel_> [46]http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustMatchUnc ompressedSize [46] http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustMatchUncompressedSize <kuettel_> (captured a test for it) <kuettel_> [47]http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustTransfor mTables [47] http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustTransformTables <kuettel_> (reviewing whether there should be assertions around supporting particular font formats, e.g. CFF, or whether the general sfnt language is sufficient) <kuettel_> (Chris captured a test for it) <kuettel_> [48]http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustHaveComp ositeBBox [48] http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustHaveCompositeBBox <kuettel_> (Chris captured a test for it) <kuettel_> [49]http://dev.w3.org/webfonts/WOFF2/spec/#conform-transformedL ocaMustBeZero [49] http://dev.w3.org/webfonts/WOFF2/spec/#conform-transformedLocaMustBeZero <kuettel_> [50]http://dev.w3.org/webfonts/WOFF2/spec/#conform-OriginalLoca Size [50] http://dev.w3.org/webfonts/WOFF2/spec/#conform-OriginalLocaSize <kuettel_> [51]http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustTransfor mGlyfTable [51] http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustTransformGlyfTable <kuettel_> [52]http://dev.w3.org/webfonts/WOFF2/spec/#conform-tableOrderin g [52] http://dev.w3.org/webfonts/WOFF2/spec/#conform-tableOrdering <kuettel_> [53]http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustSpecifyG lyfTableSize [53] http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustSpecifyGlyfTableSize <kuettel_> Vlad: this could change based on what we decide to do with nominal size <kuettel_> [54]http://dev.w3.org/webfonts/WOFF2/spec/#conform-metadataSepa ratelyCompresssed [54] http://dev.w3.org/webfonts/WOFF2/spec/#conform-metadataSeparatelyCompresssed <kuettel_> [55]http://dev.w3.org/webfonts/WOFF2/spec/#conform-metadata-aft erfonttable [55] http://dev.w3.org/webfonts/WOFF2/spec/#conform-metadata-afterfonttable <ChrisL> someone said something important and we missed it ... Drinks! --Zaphod Beeblebrox <RSheeter> at milliways? <ChrisL> well, we HAVE dones six impossible things before, er, dinner <ChrisL> (adjourned) <RSheeter> ChrisL, make minutes :D Summary of Action Items [NEW] ACTION: vlad to change first paragraph of section 3 to remove reference to private data compression [recorded in [56]http://www.w3.org/2014/09/16-webfonts-minutes.html#action02 ] [NEW] ACTION: vlad to update spec for bbox dropping criteria, min max of all coordinates [recorded in [57]http://www.w3.org/2014/09/16-webfonts-minutes.html#action01 ] [56] http://www.w3.org/2014/09/16-webfonts-minutes.html#action02 [57] http://www.w3.org/2014/09/16-webfonts-minutes.html#action01 [End of minutes] -- Best regards, Chris mailto:chris@w3.org
Received on Monday, 22 September 2014 15:29:48 UTC