Skip to content

SVG

Compare
Choose a tag to compare
@tdewolff tdewolff released this 21 Jan 12:30
· 1558 commits to master since this release

This v2.1 release added a much improved SVG minifier. Equinox has been added to distribute binaries and make installation easier, see Equinox (which says version 2.1.5). The CLI tool has matured and various bugfixes and feature requests are in this release.

Change log:

  • HTML: do not keep IE conditional comments
  • HTML: do not remove CDATA tags, as CDATA is invalid HTML anyways
  • HTML: option to keep document tags (html, head and body)
  • CSS/SVG: decimal precision can be set in the options
  • SVG: more advanced minification
  • export MinifierFunc
  • new Match function that returns the minifier function that gets matched to a mediatype
  • parsers return an error when they stop before the EOF
  • ResponseWriter and Middleware functionality added

Bugfixes:

  • HTML: whitespace around img and similar inline tags preserved
  • HTML: whitespace within pre tag properly preserved
  • HTML: the math and svg tags themselves are now parsed by their respective parsers
  • CSS/SVG: valid rounding and truncating of decimals
  • CSS: do not lowercase all identifiers, as they may be <custom-ident>
  • CSS: rgba and hsla now work properly
  • CSS: keep certain required number dimensions
  • SVG: path data for arc; sweep and large-arg flags are now treated as booleans
  • JS: keep newline or semicolon before !function(){}
  • JS: keep newline before lines that start with a string in certain instances, the original JSMin does not handle this
  • JS: keep newline between } and string or ident

CLI:

  • Add concatenation support
  • Add more support for file and directory watching
  • Only overwrite files when explicitly set output equal to input, previously an empty output would imply overwriting, now it means writing to stdout as intended