Skip to content

Releases: tdewolff/minify

v2.6.1

27 Nov 20:14
Compare
Choose a tag to compare

Upgrade to tdewolff/parse@2.3.14:

  • Re-parse input immediately when encountering parse error. Previously this was only done if the error was actually read which would save us from re-parsing the file (i.e. better performance). However, an error is (a) rare and (b) happens only once per file. Re-parsing on errors does not impact the performance of well formatted files, and a reliable error message is valued more.
  • Bugfix: prevent infinite loop on error on input file that contains unicode code points (i.e. any character bigger than 0xC0 usually followed by more bytes).
  • Improve error messages for parsers to include parser name and print offending byte(s)

v2.6.0

26 Nov 23:30
Compare
Choose a tag to compare
  • CSS: remove space after function in property value; margin:calc(10px) calc(20px) => margin:calc(10px)calc(20px)
  • SVG: parse A path command correctly when the booleans largeArc and sweep are not separated by a space, such as in A10 10 0 0120 0 which is equivalent to A10 10 0 0 1 20 0
  • SVG bugfix: make sure we are processing a valid path command
  • SVG bugfix: prevent panic when having insufficient path arguments
  • cmd: surpress error when minifying empty directory
  • HTML: only minify attributes for known HTML5 tags, fixes #270
  • HTML, XML, SVG: minify entities with parse@2.3.13 such as: " => ", " => ", " => ", ’ => ’, ✏ => ✏.

v2.5.2

05 Sep 23:10
Compare
Choose a tag to compare

Bugfixes:

  • SVG: don't convert polyline/rect/polygon/line to path, which can break CSS, fixes #260
  • SVG: relative SVG Bézier commands not properly minified
  • CSS: don't remove whitespace in nested unknown at-rules, fixes #262
  • CSS: fix panic for background when it contains functions other than calc for background-position, fixes #263
  • CSS: fix panic for background-position with three numbers
  • CSS: fix panic for url() with only whitespace or only one quote

v2.5.1

16 Jul 19:08
Compare
Choose a tag to compare
  • Remove import comments
  • SVG: do not convert line/rect to path if coordinates are relative percentages
  • CSS: fix bug with inline CSS encountering }

v2.5.0

17 May 16:02
Compare
Choose a tag to compare
  • CSS: fix position information in error context
  • CSS: fix background-position panic with offsets that are zero
  • HTML: trim and collapse whitespace in certain attribute values
  • SVG: shorten cubic and quadratic Beziér path data to their shorter format or to line segments

v2.4.0

18 Apr 20:51
Compare
Choose a tag to compare
  • When minifying floating points, remove trailing zeros and not other numbers
  • Make M concurrent-safe
  • HTML: keep double quotes around XML-flavour RDFa attributes
  • CSS: revert the use of the #RRGGBBAA format as proposed in Color Module Level 4 as it is not yet an official W3C recommendation
  • CSS: background-position (also within background) now works with 3 and 4 values as well
  • SVG: skipping metadata or rect tags properly even if they are closed by a void tag (like <rect/>)
  • SVG pathdata: when cursor doesn't move, don't emit any commands

Go modules support #2

07 Nov 21:20
2d0bbc9
Compare
Choose a tag to compare

I'm suspecting that go mod gets confused from a previously reverted v2.3.7 release, so just in case this is a new release that will hopefully fix:

$ go get -u github.com/tdewolff/minify/v2
go: github.com/tdewolff/minify/v2@v2.3.7: go.mod has non-.../v2 module path "github.com/tdewolff/minify" (and .../v2/go.mod does not exist) at revision v2.3.7
go get: error loading module requirements

Go modules support

06 Nov 03:12
Compare
Choose a tag to compare

Add Go modules support by using the github.com/tdewolff/minify/v2 import path.

WARNING: this release may give errors for go mod probably due to (local) caching...

Bugfixes and improved CSS minifier

26 Oct 01:29
Compare
Choose a tag to compare

Important: default mimetype for JavaScript is now application/javascript (it used to be text/javascript).

  • HTML bugfix: keep empty value attribute on <input type="radio">, because the default is not an empty string
  • HTML bugfix: prevent IE conditional comments from panicking in some instances
  • CSS: handle local() for URLs
  • CSS: support rgb() and hsl() with spaces instead of commas
  • CSS: improve minification for font, background, background-position, background-repeat, background-size, outline and border declarations
  • CSS: reintroduce support for IE star-declaration hack
  • CSS bugfix: margin and padding now check if values that are functions (such as calc()) are equal and thus eligible for collapsing
  • CSS bugfix: parse bad declarations better
  • CSS bugfix: add space for attribute selector case insensitivity between the value and i as in input[type="radio" i]
  • CSS bugfix: do not collapse outline to 0 but to none
  • CSS bugfix: opacity for rgba() and hsla() in CSS2 cannot be rewritten as #rrggbbaa
  • SVG bugfix: only use the first pair of coordinates for M to move back to when encountering Z

Bugfixes and bash completion

08 Jun 01:45
Compare
Choose a tag to compare
  • CLI: Add bash completion for the minify command
  • CLI: improved error messages
  • CLI bugfix: don't open all files at once when concatenating, which usually panics when >10000 files are open
  • CLI bugfix: don't minify modified files twice when watching them
  • Bugfix: prevent panic on long decimals with negative exponent, where rewriting would previously cause longer numbers
  • HTML: accept alternative syntax for MS conditional comments
  • HTML bugfix: draggable is not a boolean
  • HTML bugfix: do not assume mediatype in <meta content="x">
  • CSS: add option for CSS2 numbers without exponents
  • CSS: trim space in url()
  • CSS: minify box-shadow, background and @import better
  • CSS bugfix: prevent panic for functions with no arguments or end parenthesis
  • CSS bugfix: keep dimensions for zeros in flex property
  • CSS bugfix: keep other values for outline and border when width is zero
  • CSS bugfix: font normal now handled
  • CSS bugfix: add quotes to unquotes url() when we can remove the url function
  • CSS bugfix: only omit number dimensions for and
  • JS bugfix: ASI behaviour for template literals
  • JS bugfix: replace comment as space when comment is removed
  • JS bugfix: divide by regular expression
  • SVG: don't remove empty groups anymore, as CSS or JS might rely on them
  • SVG bugfix: prevent panic on invalid pathdata for arcs