Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[VARC] Variable Composites table #3395

Merged
merged 114 commits into from May 24, 2024
Merged

[VARC] Variable Composites table #3395

merged 114 commits into from May 24, 2024

Commits on May 23, 2024

  1. Configuration menu
    Copy the full SHA
    ef6903e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c3175b2 View commit details
    Browse the repository at this point in the history
  3. [VARC] Towards XML

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    aad01a9 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    1a1e9e1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6f4feff View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a800513 View commit details
    Browse the repository at this point in the history
  7. [varStore] Fix overflow logic

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    b7ab1d8 View commit details
    Browse the repository at this point in the history
  8. Add MultiVarStore

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    0e9eff8 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    02c6a94 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    6bcab78 View commit details
    Browse the repository at this point in the history
  11. [MultiVarStore] Fix caching

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    5fe9da4 View commit details
    Browse the repository at this point in the history
  12. [TupleVariation] Support 32bit encoding in delta-encoding

    Uses an used combination of top two bits.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    b4d3fc5 View commit details
    Browse the repository at this point in the history
  13. [VarCompositeGlyph] Use two varIdxes per component

    Seems to save space now with MultiVarStore.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    c78ba01 View commit details
    Browse the repository at this point in the history
  14. [MultiVarStore] Fix up XML read/write

    Looks complete now.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    ec78b57 View commit details
    Browse the repository at this point in the history
  15. Rip out glyf1 VarComposites

    In favor of separate VARC table.
    
    ttGlyphSet does NOT yet know how to draw VARC table though.
    
    The 9 failing tests are all VarComposite-related and need
    to be updated with VARC equivalents eventually when we
    add VARC support to subsetter and instancer.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    bcd5e4c View commit details
    Browse the repository at this point in the history
  16. Remove some more remnants of VarComposites in ttGlyphSet

    Going to re-add for VARC table.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    e9551c4 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    a30ebf0 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    0e52857 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    8cce745 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    68277fc View commit details
    Browse the repository at this point in the history
  21. [VARC] More towards drawing

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    4b6c574 View commit details
    Browse the repository at this point in the history
  22. [VARC] Move code around

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    c69fd12 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    bbad70e View commit details
    Browse the repository at this point in the history
  24. [VARC] Finish drawing!

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    950d39b View commit details
    Browse the repository at this point in the history
  25. Black

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    e22953e View commit details
    Browse the repository at this point in the history
  26. [VARC] Rename a type

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    c50a0f6 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    c952237 View commit details
    Browse the repository at this point in the history
  28. [CFF2Index] Minor massage

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    5faf139 View commit details
    Browse the repository at this point in the history
  29. [CFF2Index] Make loading lazy

    Still too slow, but much faster.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    450c8f1 View commit details
    Browse the repository at this point in the history
  30. [_LazyList] Make much faster

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    feb6820 View commit details
    Browse the repository at this point in the history
  31. [CFF2Index] Make even faster

    Load offsets on-demand as well.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    7de1306 View commit details
    Browse the repository at this point in the history
  32. [gvar] Speed up loading a bit

    More to come.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    61916c1 View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    7471ac6 View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    3806fd2 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    3ff2ee6 View commit details
    Browse the repository at this point in the history
  36. [glyf] Load using LazyDict

    Going to revert. No speedup since glyphs are loaded lazy
    anyway.  And one test fails I have no idea why:
    
    Tests/ttLib/woff2_test.py::WOFF2GlyfTableTest::test_reconstruct_glyf_padded_4
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    cae76d5 View commit details
    Browse the repository at this point in the history
  37. Revert "[glyf] Load using LazyDict"

    This reverts commit b493729.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    0a79939 View commit details
    Browse the repository at this point in the history
  38. [loca] Minor speedup

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    4db90f5 View commit details
    Browse the repository at this point in the history
  39. Minor refactor

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    44a32f8 View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    42d6b6b View commit details
    Browse the repository at this point in the history
  41. [subset] Support VARC

    We don't prune the MultiVarStore currently. :(
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    1514158 View commit details
    Browse the repository at this point in the history
  42. [subset] Close over MATH before GSUB

    I *think* that's the correct way.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    f37f2e4 View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    5c27846 View commit details
    Browse the repository at this point in the history
  44. [VARC/instancer] Implement

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    27e5182 View commit details
    Browse the repository at this point in the history
  45. Configuration menu
    Copy the full SHA
    272f736 View commit details
    Browse the repository at this point in the history
  46. Black

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    38d190a View commit details
    Browse the repository at this point in the history
  47. [VARC/instancer] Comment

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    57dd288 View commit details
    Browse the repository at this point in the history
  48. [VARC/subset] Fix closure

    Was closing over everything.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    3c60c0e View commit details
    Browse the repository at this point in the history
  49. [VARC/test] Start adding

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    ebd877b View commit details
    Browse the repository at this point in the history
  50. [VARC/instancer] Fix

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    2ca627d View commit details
    Browse the repository at this point in the history
  51. [VARC/test] Adjust a test

    This worked with the previous font it seems, but not with
    the new font. Or maybe I've screwed up something...
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    22e02cc View commit details
    Browse the repository at this point in the history
  52. [VARC/test] Adjust test

    This subset font is from a different source and has
    different glyphs.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    28385ec View commit details
    Browse the repository at this point in the history
  53. [VARC/test] Update the rest of the test expectations

    We're using a different font for varc-ac00-ac01...
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    ce3e260 View commit details
    Browse the repository at this point in the history
  54. Configuration menu
    Copy the full SHA
    2852055 View commit details
    Browse the repository at this point in the history
  55. [VARC/scaleUpem] Start

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    2056577 View commit details
    Browse the repository at this point in the history
  56. Black

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    f24808c View commit details
    Browse the repository at this point in the history
  57. Configuration menu
    Copy the full SHA
    febbb34 View commit details
    Browse the repository at this point in the history
  58. [VARC/scaleUpem] Implement

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    0f0148e View commit details
    Browse the repository at this point in the history
  59. Black

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    2b09b0d View commit details
    Browse the repository at this point in the history
  60. Try fixing Python < 3.12

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    45f7f4f View commit details
    Browse the repository at this point in the history
  61. [scaleUpem] Comment

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    93fe240 View commit details
    Browse the repository at this point in the history
  62. Configuration menu
    Copy the full SHA
    232d9cf View commit details
    Browse the repository at this point in the history
  63. [VARC] Simplify TupleValues

    Move it to a converter instead of a class.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    a958c68 View commit details
    Browse the repository at this point in the history
  64. [VARC] Use sparse-regions in MultiVarStore

    Might revert as the savings are small.
    harfbuzz/boring-expansion-spec#103 (comment)
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    c91984e View commit details
    Browse the repository at this point in the history
  65. [VARC] Redesign table

    No spec yet. For results see:
    
    harfbuzz/boring-expansion-spec#103 (comment)
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    42a5fbd View commit details
    Browse the repository at this point in the history
  66. Configuration menu
    Copy the full SHA
    9cc3689 View commit details
    Browse the repository at this point in the history
  67. [VARC] Fixups

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    f73d6f2 View commit details
    Browse the repository at this point in the history
  68. [VARC] Fix copilot mistake in decompile

    Ouch!
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    8ea9765 View commit details
    Browse the repository at this point in the history
  69. Black

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    2229607 View commit details
    Browse the repository at this point in the history
  70. [VARC] Minor

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    43e054b View commit details
    Browse the repository at this point in the history
  71. [VARC] Minor rename

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    822351f View commit details
    Browse the repository at this point in the history
  72. [VARC] Simplify reading

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    76d293e View commit details
    Browse the repository at this point in the history
  73. Reuse a variable

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    b772f1d View commit details
    Browse the repository at this point in the history
  74. Configuration menu
    Copy the full SHA
    f7337b5 View commit details
    Browse the repository at this point in the history
  75. Fix RESERVED

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    d07d960 View commit details
    Browse the repository at this point in the history
  76. [VARC] Minor

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    cd15139 View commit details
    Browse the repository at this point in the history
  77. Handle scaleY

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    263d4d9 View commit details
    Browse the repository at this point in the history
  78. [VARC] Encode indices as 1,2,3,4 bytes long

    Previously it was 2 or 4.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    d37b394 View commit details
    Browse the repository at this point in the history
  79. [VARC] Use a DeltaSetIndexMap

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    58bb96b View commit details
    Browse the repository at this point in the history
  80. Fix RESERVED

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    6af1d5c View commit details
    Browse the repository at this point in the history
  81. Configuration menu
    Copy the full SHA
    bfb8490 View commit details
    Browse the repository at this point in the history
  82. [VARC] Pivot on design again

    Just store the AxisIndices in a shared list.
    Don't explicitly store numAxes.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    668a40d View commit details
    Browse the repository at this point in the history
  83. Configuration menu
    Copy the full SHA
    cfc66a3 View commit details
    Browse the repository at this point in the history
  84. Configuration menu
    Copy the full SHA
    735859f View commit details
    Browse the repository at this point in the history
  85. [VARC] Update subsetting

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    a7ca67a View commit details
    Browse the repository at this point in the history
  86. [VARC] Fix scaleUpem

    Instancing left.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    902b2a1 View commit details
    Browse the repository at this point in the history
  87. Configuration menu
    Copy the full SHA
    e88e47f View commit details
    Browse the repository at this point in the history
  88. [VARC] Speed up subsetting

    Don't decode the whole table.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    bc82985 View commit details
    Browse the repository at this point in the history
  89. [VARC] Use TupleVariations tuple encoding for axisValues

    Free improvement.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    c3dfe10 View commit details
    Browse the repository at this point in the history
  90. Configuration menu
    Copy the full SHA
    6a09096 View commit details
    Browse the repository at this point in the history
  91. [VARC] Use var-int encoding for AxisIndicesIndex

    Slightly larger fonts, but more consistency, and freed
    a flag bit.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    297e0bd View commit details
    Browse the repository at this point in the history
  92. Configuration menu
    Copy the full SHA
    b1142b6 View commit details
    Browse the repository at this point in the history
  93. Configuration menu
    Copy the full SHA
    9f66edb View commit details
    Browse the repository at this point in the history
  94. Configuration menu
    Copy the full SHA
    d6482c9 View commit details
    Browse the repository at this point in the history
  95. Configuration menu
    Copy the full SHA
    87ddb24 View commit details
    Browse the repository at this point in the history
  96. Configuration menu
    Copy the full SHA
    b3a0a21 View commit details
    Browse the repository at this point in the history
  97. Configuration menu
    Copy the full SHA
    e3ba7a7 View commit details
    Browse the repository at this point in the history
  98. Configuration menu
    Copy the full SHA
    5ad4045 View commit details
    Browse the repository at this point in the history
  99. Configuration menu
    Copy the full SHA
    037bbe1 View commit details
    Browse the repository at this point in the history
  100. Configuration menu
    Copy the full SHA
    5b2df6b View commit details
    Browse the repository at this point in the history
  101. [VARC] Minor, match spec better

    No functional change.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    7d6df04 View commit details
    Browse the repository at this point in the history
  102. Configuration menu
    Copy the full SHA
    40584ad View commit details
    Browse the repository at this point in the history
  103. [VARC] Deepcopy the component

    Since we modify comp.transform.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    1acc80e View commit details
    Browse the repository at this point in the history
  104. Fix otConverters lazy reader

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    3bada5d View commit details
    Browse the repository at this point in the history
  105. Newer black

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    a1641d9 View commit details
    Browse the repository at this point in the history
  106. [CFF2IndexOf] Fix data_base

    From the spec:
    "Offsets in the offset array are relative to the byte
    that precedes the object data."
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    88828e0 View commit details
    Browse the repository at this point in the history
  107. [varc] Skip reserved records

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    c155632 View commit details
    Browse the repository at this point in the history
  108. [varc] Add ConditionSets

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    74f870f View commit details
    Browse the repository at this point in the history
  109. [varc] Conditionals tested!

    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    d53c08a View commit details
    Browse the repository at this point in the history
  110. Configuration menu
    Copy the full SHA
    9cb73da View commit details
    Browse the repository at this point in the history
  111. Configuration menu
    Copy the full SHA
    973dc5c View commit details
    Browse the repository at this point in the history
  112. Don't emit addVarComponent() if the component references the parent g…

    …lyph (special case)
    justvanrossum authored and behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    77add05 View commit details
    Browse the repository at this point in the history
  113. Configuration menu
    Copy the full SHA
    973072b View commit details
    Browse the repository at this point in the history
  114. [varc] Use multiVarStore instead of GDEF varStore

    That's what we agreed upon.
    behdad committed May 23, 2024
    Configuration menu
    Copy the full SHA
    753197e View commit details
    Browse the repository at this point in the history