Releases: Gheop/woffify
Releases · Gheop/woffify
Release list
v0.2.3
Reject font collections.
- Reject
.ttcfont collections with a clear message. WOFF2 has no collection format, so a TTC could not be converted correctly (no output without subsetting, silent index-0 pick with subsetting). - Hardened over 297 varied system fonts (color/COLR, CJK, Arabic, Indic, symbols, variable, CFF): all subset and convert, faithful output byte-identical to woff2_compress on the sample.
Image: ghcr.io/gheop/woffify:v0.2.3
v0.2.2
Deterministic output.
- Fix non-deterministic WOFF2 output in parallel batches, caused by an uninitialized encode buffer. Output is now byte-identical to
woff2_compresson every run. - Verified over 814 files (180 fonts as TTF/WOFF/WOFF2/EOT + 94 OTF): 634/634 convert and decode, 180/180 byte-identical to the reference, EOT->WOFF2 == TTF->WOFF2 180/180.
Image: ghcr.io/gheop/woffify:v0.2.2
v0.2.1
EOT input support.
- Read uncompressed EOT (Embedded OpenType) files, extracting the embedded SFNT — for migrating legacy IE assets to WOFF2
- EOT->WOFF2 output is identical to converting from the original TTF/OTF (lossless extraction)
- MicroType Express-compressed EOT is rejected with a clear message (dead Microsoft format, no modern tool emits it)
Image: ghcr.io/gheop/woffify:v0.2.1
v0.2.0
Source-scan subsetting: derive the glyph subset from your sources instead of a hand-maintained list.
-subset-scan <path>: derive the subset from code points used in files/dirs (repeatable)cssmode: \fXXX escapes in CSScontentdeclarations (icon fonts)textmode: literal characters from HTML/templates (markup stripped, entities decoded)auto(default): picks the mode per file extension-subset-scan-report: lists kept code points and their origin file- Refuses to build an empty subset when a scan matches nothing
Image: ghcr.io/gheop/woffify:v0.2.0
v0.1.0
First release.
- Convert WOFF/TTF/OTF/TTC to WOFF2 using the google/woff2 encoder (Brotli 11), byte-identical to woff2_compress
- Pure-Go WOFF 1.0 decoding, so .woff files can be recompressed
- Glyph subsetting via HarfBuzz hb-subset (a Latin subset is ~80% smaller)
- Stdin/stdout pipe mode (woffify -) for temp-file-free CI integration
- Parallel batch conversion of files and directories
- Single fully static binary, scratch container image (~6 MB)
Image: ghcr.io/gheop/woffify:v0.1.0