githubEdit

History

  • Fixes giving breakWith option via a string.

  • Backports fixes to ReDOS vulnerabilities in validator code.

  • Fixes edge case in remote stylesheet fetching.

  • Fixed issue #899arrow-up-right - regression in optimizing pseudo class arguments.

  • Adds more detailed error & warning messages on top of the new tokenizer.

  • Disables restructuring optimizations by default until optimized in #533.

  • Fixes a bug ignoring incorrect properties in complex restructuring.

  • Requires Node.js 4.0+ to run.

  • Removes benchmark API option as total time is always reported under stats property.

  • Removes debug API switch as stats are always gathered and available under stats property.

  • Replaces the old tokenizer with a new one which doesn't use any escaping.

  • Replaces the old @import inlining with one on top of the new tokenizer.

  • Re-enables background-(clip|origin|size) merging with background shorthand.

  • Simplifies URL rebasing with a single rebaseTo option in API or inferred from --output in CLI.

  • Splits inliner option into inlineRequest and inlineTimeout.

  • Fixed issue #209arrow-up-right - adds output formatting via format flag.

  • Fixed issue #290arrow-up-right - removes aggressive merging.

  • Fixed issue #432arrow-up-right - adds URLs normalization.

  • Fixed issue #460arrow-up-right - unescaped semicolon in selector.

  • Fixed issue #657arrow-up-right - adds property name validation.

  • Fixed issue #685arrow-up-right - adds lowercasing hex colors optimization.

  • Fixed issue #686arrow-up-right - adds rounding precision for all units.

  • Fixed issue #703arrow-up-right - changes default IE compatibility to 10+.

  • Fixed issue #731arrow-up-right - adds granular control over level 2 optimizations.

  • Fixed issue #739arrow-up-right - error when a closing brace is missing.

  • Fixed issue #750arrow-up-right - allows width overriding.

  • Fixed issue #756arrow-up-right - adds disabling font-weight optimizations.

  • Fixed issue #758arrow-up-right - ignores rules with empty selector.

  • Fixed issue #767arrow-up-right - disables remote @import inlining by default.

  • Fixed issue #773arrow-up-right - adds reordering based on selector specificity.

  • Fixed issue #785arrow-up-right - adds @font-face de-duplication.

  • Fixed issue #791arrow-up-right - resolves imports in-memory if possible.

  • Fixed issue #796arrow-up-right - semantic merging for @media blocks.

  • Fixed issue #801arrow-up-right - smarter @import inlining.

  • Fixed issue #806arrow-up-right - skip optimizing variable properties.

  • Fixed issue #817arrow-up-right - makes off disable rounding.

  • Fixed issue #818arrow-up-right - disables px rounding by default.

  • Fixed issue #828arrow-up-right - -chrome- hack support.

  • Fixed issue #829arrow-up-right - adds more strict selector merging rules.

  • Fixed issue #834arrow-up-right - adds extra line break in nested blocks.

  • Fixed issue #836arrow-up-right - enables level 0 optimizations.

  • Fixed issue #839arrow-up-right - allows URIs in import inlining rules.

  • Fixed issue #840arrow-up-right - allows input source map as map object.

  • Fixed issue #843arrow-up-right - regression in selector handling.

  • Fixed issue #845arrow-up-right - web compatibility of 4.0 branch.

  • Fixed issue #847arrow-up-right - regression in handling invalid selectors.

  • Fixed issue #849arrow-up-right - disables inlining protocol-less resources.

  • Fixed issue #856arrow-up-right - allows minify to return a promise.

  • Fixed issue #857arrow-up-right - normalizes CleanCSS API interface.

  • Fixed issue #863arrow-up-right - adds transform callback for custom optimizations.

  • Fixed issue #841arrow-up-right - disabled importing and files passed as array.

  • Ignores @import at-rules if appearing after any non-@import rules.

  • Adds an option for a fine-grained @import control.

  • Adds unit compatibility switches to disable length optimizations.

  • Adds inferring proxy settings from HTTP_PROXY environment variable.

  • Adds support for Polymer / Web Components special selectors.

  • Adds support for Polymer mixins.

  • Adds testing source maps in batch mode.

  • Unifies wrappers for simple & advanced optimizations.

  • Fixed issue #596arrow-up-right - support for !ie IE<8 hack.

  • Fixed issue #599arrow-up-right - support for inlined source maps.

  • Fixed issue #607arrow-up-right - adds better rule reordering.

  • Fixed issue #612arrow-up-right - adds HTTP proxy support.

  • Fixed issue #618arrow-up-right - adds safer function validation.

  • Fixed issue #625arrow-up-right - adds length unit optimizations.

  • Fixed issue #632arrow-up-right - adds disabling remote imports.

  • Fixed issue #635arrow-up-right - adds safer 0% optimizations.

  • Fixed issue #644arrow-up-right - adds time unit optimizations.

  • Fixed issue #645arrow-up-right - adds bottom to top media merging.

  • Fixed issue #648arrow-up-right - adds property level at-rule support.

  • Adds better comments + keepBreaks handling.

  • Adds better text normalizing in source maps mode.

  • Fixes non-adjacent optimizations for source maps.

  • Fixes removing unused items.

  • Improves outline break up with source maps.

  • Refixed issue #629arrow-up-right - source maps & background shorthands.

  • Just a version bump as npm incorrectly things 2.2.23 is the latest one.

  • Adds more granular control over compatibility settings.

  • Adds support for @counter-style at-rule.

  • Adds --source-map/sourceMap switch for building input's source map.

  • Adds --skip-shorthand-compacting/shorthandComacting option for disabling shorthand compacting.

  • Allows target option to be a path to a folder instead of a file.

  • Allows disabling rounding precision. By @superlukasarrow-up-right.

  • Breaks 2.x compatibility for using CleanCSS as a function.

  • Changes minify method output to handle multiple outputs.

  • Reworks minification to tokenize first then minify. See changesarrow-up-right.

  • Removes support for node.js 0.8.x.

  • Renames noAdvanced option into advanced.

  • Renames noAggressiveMerging option into aggressiveMerging.

  • Renames noRebase option into rebase.

  • Speeds up advanced processing by shortening optimize loop.

  • Fixed issue #125arrow-up-right - source maps!

  • Fixed issue #344arrow-up-right - merging background-size into shorthand.

  • Fixed issue #352arrow-up-right - honors rebasing in imported stylesheets.

  • Fixed issue #360arrow-up-right - adds 7 extra CSS colors.

  • Fixed issue #363arrow-up-right - rem units overriding px.

  • Fixed issue #373arrow-up-right - proper background shorthand merging.

  • Fixed issue #395arrow-up-right - unescaped brackets in data URIs.

  • Fixed issue #398arrow-up-right - restoring important comments.

  • Fixed issue #400arrow-up-right - API to accept an array of filenames.

  • Fixed issue #403arrow-up-right - tracking input files in source maps.

  • Fixed issue #404arrow-up-right - no state sharing in API.

  • Fixed issue #405arrow-up-right - disables default background-size merging.

  • Refixed issue #304arrow-up-right - background-position merging.

  • Fixed issue with tokenizer removing first selector after an unknown @ rule.

  • Fixed issue #329arrow-up-right - font shorthands incorrectly processed.

  • Fixed issue #332arrow-up-right - background shorthand with colors.

  • Refixed issue #325arrow-up-right - invalid charset declarations.

  • Adds background normalization according to W3C spec.

  • Fixed issue #316arrow-up-right - incorrect background processing.

  • Adds faster quote matching in QuoteScanner.

  • Improves QuoteScanner to handle comments correctly.

  • Fixed issue #308arrow-up-right - parsing comments in quoted URLs.

  • Fixed issue #311arrow-up-right - leading/trailing decimal points.

  • Adds removing extra spaces around / in border-radius.

  • Adds replacing same horizontal & vertical value in border-radius.

  • Fixed issue #305arrow-up-right - allows width keywords in border-width.

  • Fixes new property optimizer for 'none' values.

  • Fixed issue #294arrow-up-right - space after rgba/hsla in IE<=11.

  • Adds a better algorithm for quotation marks' removal.

  • Adds a better non-adjacent optimizer compatible with the upcoming new property optimizer.

  • Adds minifying remote files directly from CLI.

  • Adds --rounding-precision to control rounding precision.

  • Moves quotation matching into a QuoteScanner class.

  • Adds npm run browserify for creating embeddable version of clean-css.

  • Fixed list-style-* advanced processing.

  • Fixed issue #134arrow-up-right - merges properties into shorthand form.

  • Fixed issue #164arrow-up-right - removes default values if not needed.

  • Fixed issue #168arrow-up-right - adds better property merging algorithm.

  • Fixed issue #173arrow-up-right - merges same properties if grouped.

  • Fixed issue #184arrow-up-right - uses !important for optimization opportunities.

  • Fixed issue #190arrow-up-right - uses shorthand to override another shorthand.

  • Fixed issue #197arrow-up-right - adds borders merging by understandability.

  • Fixed issue #210arrow-up-right - adds temporary workaround for aggressive merging.

  • Fixed issue #246arrow-up-right - removes IE hacks when not in compatibility mode.

  • Fixed issue #247arrow-up-right - removes deprecated selectorsMergeMode switch.

  • Refixed issue #250arrow-up-right - based on new quotation marks removal.

  • Fixed issue #257arrow-up-right - turns rgba/hsla to transparent if possible.

  • Fixed issue #265arrow-up-right - adds support for multiple input files.

  • Fixed issue #275arrow-up-right - handling transform properties.

  • Fixed issue #276arrow-up-right - corrects unicode handling.

  • Fixed issue #288arrow-up-right - adds smarter expression parsing.

  • Fixed issue #293arrow-up-right - handles escaped @ symbols in class names and IDs.

  • Adds faster selectors processing in advanced optimizer.

  • Fixed issue #241arrow-up-right - incorrect handling of :not() selectors.

  • Adds simplified and more advanced text escaping / restoring via EscapeStore class.

  • Adds simplified and much faster empty elements removal.

  • Adds missing @import processing to our benchmark (run via npm run bench).

  • Adds CSS tokenizer which will make it possible to optimize content by reordering and/or merging selectors.

  • Adds basic optimizer removing duplicate selectors from a list.

  • Adds merging duplicate properties within a single selector's body.

  • Adds merging adjacent selectors within a scope (single and multiple ones).

  • Changes behavior of --keep-line-breaks/keepBreaks option to keep breaks after trailing braces only.

  • Makes all multiple selectors ordered alphabetically (aids merging).

  • Adds property overriding so more coarse properties override more granular ones.

  • Adds reducing non-adjacent selectors.

  • Adds --skip-advanced/noAdvanced switch to disable advanced optimizations.

  • Adds reducing non-adjacent selectors when overridden by more complex selectors.

  • Fixed issue #138arrow-up-right - makes CleanCSS interface OO.

  • Fixed issue #139arrow-up-right - consistent error & warning handling.

  • Fixed issue #145arrow-up-right - debug mode in library too.

  • Fixed issue #157arrow-up-right - gets rid of removeEmpty option.

  • Fixed issue #159arrow-up-right - escaped quotes inside content.

  • Fixed issue #162arrow-up-right - strip quotes from Base64 encoded URLs.

  • Fixed issue #166arrow-up-right - debug formatting in CLI

  • Fixed issue #167arrow-up-right - background:transparent minification.

1.0.4 / 2013-05-23

1.0.3 / 2013-05-20

1.0.2 / 2013-04-29

1.0.1 / 2013-04-08

1.0.0 / 2013-03-30

0.10.2 / 2013-03-19

0.10.1 / 2013-02-14

  • Fixed issue #66arrow-up-right - line breaks without extra spaces should be handled correctly.

0.10.0 / 2013-02-09

  • Switched from optimistarrow-up-right to commanderarrow-up-right for CLI processing.

  • Changed long options from --removeempty to --remove-empty and from --keeplinebreaks to --keep-line-breaks.

  • Fixed performance issue with replacing multiple @charset declarations and issue with line break after @charset when using keepLineBreaks option. By @rrjaimearrow-up-right.

  • Removed Makefile in favor to npm run commands (e.g. make check -> npm run check).

  • Fixed issue #47arrow-up-right - commandline issues on Windows.

  • Fixed issue #49arrow-up-right - remove empty selectors from media query.

  • Fixed issue #52arrow-up-right - strip fraction zeros if not needed.

  • Fixed issue #58arrow-up-right - remove colon where possible.

  • Fixed issue #59arrow-up-right - content property handling.

0.9.1 / 2012-12-19

0.9.0 / 2012-12-15

  • Added stripping quotation from font names (if possible).

  • Added stripping quotation from @keyframes declaration, animation and animation-name property.

  • Added stripping quotations from attributes' value (e.g. [data-target='x']).

  • Added better hex->name and name->hex color shortening.

  • Added font: normal and font: bold shortening the same way as font-weight is.

  • Refactored shorthand selectors and added border-radius, border-style and border-color shortening.

  • Added margin, padding and border-width shortening.

  • Added removing line break after commas.

  • Fixed removing whitespace inside media query definition.

  • Added removing line breaks after a comma, so all declarations are one-liners now.

  • Speed optimizations (~10% despite many new features).

  • Added JSHintarrow-up-right validation rules via make check.

0.8.3 / 2012-11-29

  • Fixed HSL/HSLA colors processing.

0.8.2 / 2012-10-31

0.8.1 / 2012-10-28

  • Added better zeros processing for rect(...) syntax (clip property).

0.8.0 / 2012-10-21

  • Added removing URLs quotation if possible.

  • Rewrote breaks processing.

  • Added keepBreaks/-b option to keep line breaks in the minimized file.

  • Reformatted lib/clean.jsarrow-up-right so it's easier to follow the rules.

  • Minimized test data is now minimized with line breaks so it's easier to compare the changes line by line.

0.7.0 / 2012-10-14

  • Added stripping special comments to CLI (--s0 and --s1 options).

  • Added stripping special comments to programmatic interface (keepSpecialComments option).

0.6.0 / 2012-08-05

  • Full Windows support with tests (./test.bat).

0.5.0 / 2012-08-02

  • Made path to vows local.

  • Explicit node.js 0.6 requirement.

0.4.2 / 2012-06-28

  • Updated binary -v option (version).

  • Updated binary to output help when no options given (but not in piped mode).

  • Added binary tests.

0.4.1 / 2012-06-10

0.4.0 / 2012-06-04

  • Speed improvements up to 4x thanks to the rewrite of comments and CSS' content processing.

  • Stripping empty CSS tags is now optional (see bin/cleancssarrow-up-right for details).

  • Improved debugging mode (see test/bench.jsarrow-up-right)

  • Added make bench for a one-pass benchmark.

0.3.3 / 2012-05-27

0.3.2 / 2012-01-17

  • Fixed output method under node.js 0.6 which incorrectly tried to close process.stdout.

0.3.1 / 2011-12-16

  • Fixed cleaning up 0 0 0 0 expressions.

0.3.0 / 2011-11-29

  • Clean-css requires node.js 0.4.0+ to run.

  • Removed node.js's 0.2.x 'sys' package dependency (thanks to @jmalonzoarrow-up-right for a patch).

0.2.6 / 2011-11-27

  • Fixed expanding + signs in calc() when mixed up with adjacent + selector.

0.2.5 / 2011-11-27

  • Fixed issue with cleaning up spaces inside calc/-moz-calc declarations (thanks to @cvanarrow-up-right for reporting it).

  • Fixed converting #f00 to red in borders and gradients.

0.2.4 / 2011-05-25

  • Fixed problem with expanding none to 0 in partial/full background declarations.

  • Fixed including clean-css library from binary (global to local).

0.2.3 / 2011-04-18

  • Fixed problem with optimizing IE filters.

0.2.2 / 2011-04-17

  • Fixed problem with space before color in border property.

0.2.1 / 2011-03-19

0.2.0 / 2011-03-02

  • Added options parsing via optimist.

  • Changed code inclusion (thus the version bump).

0.1.0 / 2011-02-27

  • First version of clean-css library.

  • Implemented all basic CSS transformations.

Last updated