See also: IRC log
<ChrisLilley> ScribeNick: ChrisLilley
http://www.w3.org/Fonts/WG/track/actions/open
<Vlad> Open action items: http://www.w3.org/Fonts/WG/track/actions/open
<Vlad> actions pending review: 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> 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 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> 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> 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> 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> http://www.w3.org/Fonts/WG/track/actions/138
Vlad: sent an email
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> 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
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> 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)
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> http://www.w3.org/Fonts/WG/track/actions/134
see 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> 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> 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> 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> 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> 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> 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> 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
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 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
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 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
Vlad: would like to look at the different statement and outline a plan on how this could be tested
<ChrisLilley> https://www.w3.org/Fonts/WG/wiki/TestPlan20-UserAgent
<ChrisLilley> https://www.w3.org/Fonts/WG/wiki/TestPlan20-Format
<ChrisLilley> 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 <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].
<ChrisL> scribenick: kuettel
<Vlad> We are back from the lunch break
https://www.w3.org/Fonts/WG/wiki/TestPlan20-Format
<kuettel_> 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 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_> 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_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustUseBrotli-FontData
<kuettel_> (captured a test for it)
<kuettel_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustMatchUncompressedSize
<kuettel_> (captured a test for it)
<kuettel_> 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_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustHaveCompositeBBox
<kuettel_> (Chris captured a test for it)
<kuettel_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-transformedLocaMustBeZero
<kuettel_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-OriginalLocaSize
<kuettel_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-mustTransformGlyfTable
<kuettel_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-tableOrdering
<kuettel_> 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_> http://dev.w3.org/webfonts/WOFF2/spec/#conform-metadataSeparatelyCompresssed
<kuettel_> 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