Skip to content
This repository has been archived by the owner on Sep 25, 2019. It is now read-only.

Latest commit

 

History

History
108 lines (72 loc) · 5.41 KB

CHANGELOG.md

File metadata and controls

108 lines (72 loc) · 5.41 KB

butternut changelog

0.4.6

  • Too many fixes to list individually!

0.4.5

  • Remove unused function expression IDs (#98)
  • Rewrite Infinity as 1/0 (#99)
  • Remove parentheses from new expression without parameters (#100)
  • Remove leading zero from numbers, use e notation where appropriate (#102)
  • Fix order of edits around if statements (#109, #115, #117)
  • Preserve initialisers of unused variables if they may contain side-effects (#101)

0.4.4

  • Dozens of minor fixes (#91)
  • Prevent shadowing of non-aliased variables (#94)
  • Minify static class methods (#88)
  • Handle empty else blocks in if statements (#89)
  • Prevent a=a!==false becoming a!===!1 (#93)

0.4.3

  • Don't insert semicolons before else keywords that follow blocks, try statements or empty statements (#82)
  • More informative CLI error messages if repro is generated (#82)

0.4.2

  • Hoist var declarations out of removed blocks (#51)
  • More conservative constant folding (#74)
  • Allow reserved words (#79)
  • Preserve/insert parens around object literals as necessary (#77)

0.4.1

  • Remove certain side-effect-free statements (#27)
  • More efficient mangling (#55)
  • Fold constants in template literals (#62)
  • Fold array method calls in some cases (#67)
  • Remove redundant 'use strict' pragmas (#64)
  • Prevent over-eager folding of binary/logical expressions (#75)
  • Remove empty blocks (#70)

0.4.0

  • Disallow direct eval calls by default, and deopt if explicitly allowed (#31)
  • Fold exponentiation expressions (#50)
  • Remove code correctly from LogicalExpression nodes if neft hand side is truthy (#54)
  • Handle blocks with leading empty statements (#57)
  • Insert space before returned arrow function with single parameter (#52)

0.3.6

  • Correctly minify async and generator functions and methods (#43)
  • Only create scope for loops that declare variables in head (#46)
  • Remove curly braces around else-block in if-statement with falsy condition (#41)
  • Handle duplicate variables in sibling loops (#33)
  • Minify expressions in template literals (#34)
  • Handle loops with empty bodies (#38)

0.3.5

  • Remove unused class declarations (#25)
  • Remove surplus whitespace around method arguments (#23)
  • Insert space after typeof where necessary (#24](#24))
  • Handle anonymous function as default export (#28)

0.3.4

  • Remove ID of shadowed function expressions (#18)
  • Correctly separate SwitchCase consequent statements (#19)
  • Remove whitespace around NewExpression arguments (#16)

0.3.3

  • Remove curlies around blocks that don't need them, and vice versa (#9)

0.3.2

  • Handle duplicate variable declarations (#3)
  • Preserve shorthand property names (#6)

0.3.1

  • Fix browser build

0.3.0

  • Loads of fixes (now tested with many of the most popular packages on npm)
  • Add check option

0.2.0

  • Renamed to Butternut

0.1.2

  • Various

0.1.1

  • Better computed member expressions (#1)

0.1.0

  • First (experimental) release