clean-css.git
10 years agoImproves protocol import tests to avoid DNS lookup.
Jakub Pawlowicz [Mon, 9 Jun 2014 22:40:42 +0000 (23:40 +0100)]
Improves protocol import tests to avoid DNS lookup.

10 years agoDisables new property optimizer if body is not optimizable.
Jakub Pawlowicz [Sun, 8 Jun 2014 20:31:17 +0000 (21:31 +0100)]
Disables new property optimizer if body is not optimizable.

10 years agoAdds caching components.length in shorthand compactor.
Jakub Pawlowicz [Sun, 8 Jun 2014 20:12:19 +0000 (21:12 +0100)]
Adds caching components.length in shorthand compactor.

10 years agoAdds faster Token#detokenize.
Jakub Pawlowicz [Sun, 8 Jun 2014 19:51:01 +0000 (20:51 +0100)]
Adds faster Token#detokenize.

10 years agoMerge pull request #291 from tomByrer/patch-1
Goal Smashers Dev Team [Sun, 8 Jun 2014 17:02:13 +0000 (18:02 +0100)]
Merge pull request #291 from tomByrer/patch-1

Adds references to Gulp, Broccoli, Brunch, & Addy's build-tools in readme.

10 years ago+ Gulp, Broccoli, Brunch, & Addy's build-tools
tomByrer [Sun, 8 Jun 2014 15:49:02 +0000 (09:49 -0600)]
+ Gulp, Broccoli, Brunch, & Addy's build-tools

10 years agoFixes list-style-* advanced processing.
Jakub Pawlowicz [Sun, 8 Jun 2014 14:07:25 +0000 (15:07 +0100)]
Fixes list-style-* advanced processing.

10 years agoFixes #210 - adds temporary workaround for aggressive property merging.
Jakub Pawlowicz [Sun, 8 Jun 2014 13:24:04 +0000 (14:24 +0100)]
Fixes #210 - adds temporary workaround for aggressive property merging.

Using `--skip-aggressive-merging` / `noAggressiveMerging` switch skips property merging based on order.
Will be fixed in #290.

10 years agoAdds browserify info to changelog.
Jakub Pawlowicz [Sat, 7 Jun 2014 22:08:24 +0000 (23:08 +0100)]
Adds browserify info to changelog.

10 years agoMerge pull request #262 from XhmikosR/browserify
Goal Smashers Dev Team [Sat, 7 Jun 2014 21:29:53 +0000 (22:29 +0100)]
Merge pull request #262 from XhmikosR/browserify

Adds browserify support.

10 years agoFixes #288 - adds smarter expression parsing.
Jakub Pawlowicz [Sat, 7 Jun 2014 21:14:09 +0000 (22:14 +0100)]
Fixes #288 - adds smarter expression parsing.

10 years agoFixes #287 - adds `--rounding-precision` to control rounding precision.
Jakub Pawlowicz [Thu, 5 Jun 2014 22:34:41 +0000 (23:34 +0100)]
Fixes #287 - adds `--rounding-precision` to control rounding precision.

10 years agoAdd browserify support.
XhmikosR [Tue, 18 Mar 2014 05:56:50 +0000 (07:56 +0200)]
Add browserify support.

Use uglify-js2 to minify the browserify bundle.

10 years agoAdds minifying remote files directly from CLI.
Jakub Pawlowicz [Thu, 5 Jun 2014 21:43:33 +0000 (22:43 +0100)]
Adds minifying remote files directly from CLI.

10 years agoFixes #265 - adds support for multiple input files.
Jakub Pawlowicz [Wed, 4 Jun 2014 23:05:40 +0000 (00:05 +0100)]
Fixes #265 - adds support for multiple input files.

10 years agoFixes #246 - removes IE hacks when not in compatibility mode.
Jakub Pawlowicz [Tue, 3 Jun 2014 22:02:38 +0000 (23:02 +0100)]
Fixes #246 - removes IE hacks when not in compatibility mode.

10 years agoFixes #257 - turns hsla/rgba to transparent if possible.
Jakub Pawlowicz [Mon, 2 Jun 2014 22:19:33 +0000 (23:19 +0100)]
Fixes #257 - turns hsla/rgba to transparent if possible.

It's possible unless in compatibility mode as IE<9 understands transparent but does not rgba/hsla.

10 years agoMerge pull request #285 from shinnn/master
Goal Smashers Dev Team [Mon, 2 Jun 2014 07:00:48 +0000 (08:00 +0100)]
Merge pull request #285 from shinnn/master

Uses original JSHint instead of the fork.

10 years agoFixes #197 - merging borders by understandability.
Jakub Pawlowicz [Sun, 1 Jun 2014 21:29:32 +0000 (22:29 +0100)]
Fixes #197 - merging borders by understandability.

* Adds border processor so all border declarations are reprocessed into: <width> <style> <color>.

10 years agoUse original JSHint instead of fork
shinnn [Sun, 1 Jun 2014 12:34:24 +0000 (21:34 +0900)]
Use original JSHint instead of fork

10 years agoFix CI setting to pass the test against Node v0.8
shinnn [Sun, 1 Jun 2014 12:27:44 +0000 (21:27 +0900)]
Fix CI setting to pass the test against Node v0.8

10 years agoFixes #275 - -ms-transform translate/translate3d overriding.
Jakub Pawlowicz [Sat, 31 May 2014 20:45:53 +0000 (21:45 +0100)]
Fixes #275 - -ms-transform translate/translate3d overriding.

* Fixes similar cases for other prefixes and unprefixed transform.

10 years agoAdds a custom build on jshint compatible with node 0.8.x.
Jakub Pawlowicz [Sat, 31 May 2014 21:50:22 +0000 (22:50 +0100)]
Adds a custom build on jshint compatible with node 0.8.x.

10 years agoMerge pull request #277 from XhmikosR/master
Goal Smashers Dev Team [Sat, 26 Apr 2014 23:16:59 +0000 (00:16 +0100)]
Merge pull request #277 from XhmikosR/master

Update nock to 0.28.x.

10 years agoUpdate nock to 0.28.x.
XhmikosR [Fri, 25 Apr 2014 05:09:57 +0000 (08:09 +0300)]
Update nock to 0.28.x.

10 years agoMerge pull request #274 from XhmikosR/master
Goal Smashers Dev Team [Mon, 14 Apr 2014 19:03:04 +0000 (20:03 +0100)]
Merge pull request #274 from XhmikosR/master

README.md: switch to SVG badges.

10 years agoREADME.md: switch to SVG badges.
XhmikosR [Wed, 9 Apr 2014 08:09:04 +0000 (11:09 +0300)]
README.md: switch to SVG badges.

10 years agoMerge pull request #271 from XhmikosR/jshint
Goal Smashers Dev Team [Fri, 4 Apr 2014 06:40:54 +0000 (07:40 +0100)]
Merge pull request #271 from XhmikosR/jshint

Updates JSHint to 2.5.0.

10 years agoUpdate JSHint to 2.5.0.
XhmikosR [Wed, 2 Apr 2014 06:43:40 +0000 (09:43 +0300)]
Update JSHint to 2.5.0.

10 years agoMerge pull request #269 from XhmikosR/commas
Goal Smashers Dev Team [Sat, 29 Mar 2014 19:46:06 +0000 (19:46 +0000)]
Merge pull request #269 from XhmikosR/commas

Removes unneeded commas.

10 years agoMerge pull request #268 from XhmikosR/master
Goal Smashers Dev Team [Sat, 29 Mar 2014 19:39:41 +0000 (19:39 +0000)]
Merge pull request #268 from XhmikosR/master

Update commander dependency.

10 years agoMerge pull request #270 from XhmikosR/history
Goal Smashers Dev Team [Sat, 29 Mar 2014 19:39:29 +0000 (19:39 +0000)]
Merge pull request #270 from XhmikosR/history

Updates History.md.

10 years agoUpdate History.md.
XhmikosR [Sat, 29 Mar 2014 18:02:55 +0000 (20:02 +0200)]
Update History.md.

10 years agoRemove unneeded commas.
XhmikosR [Sat, 29 Mar 2014 17:55:12 +0000 (19:55 +0200)]
Remove unneeded commas.

10 years agoUpdate commander dependency.
XhmikosR [Sat, 29 Mar 2014 17:44:14 +0000 (19:44 +0200)]
Update commander dependency.

10 years agoVersion 2.1.8.
Jakub Pawlowicz [Fri, 28 Mar 2014 18:31:42 +0000 (18:31 +0000)]
Version 2.1.8.

10 years agoFixes #267 - incorrect non-adjacent selector merging.
Jakub Pawlowicz [Fri, 28 Mar 2014 18:30:36 +0000 (18:30 +0000)]
Fixes #267 - incorrect non-adjacent selector merging.

10 years agoMerge pull request #261 from XhmikosR/master
Goal Smashers Dev Team [Mon, 24 Mar 2014 21:44:17 +0000 (21:44 +0000)]
Merge pull request #261 from XhmikosR/master

Clean up .jshintrc.

10 years agoVersion 2.1.7.
Jakub Pawlowicz [Mon, 24 Mar 2014 20:34:58 +0000 (20:34 +0000)]
Version 2.1.7.

10 years agoFixes #264 - processing `@import` statements inside comments.
Jakub Pawlowicz [Mon, 24 Mar 2014 20:31:39 +0000 (20:31 +0000)]
Fixes #264 - processing `@import` statements inside comments.

10 years agoClean up .jshintrc.
XhmikosR [Tue, 18 Mar 2014 06:27:12 +0000 (08:27 +0200)]
Clean up .jshintrc.

10 years agoVersion 2.1.6.
Jakub Pawlowicz [Mon, 10 Mar 2014 07:53:00 +0000 (07:53 +0000)]
Version 2.1.6.

10 years agoFixes wrong @import handling in EmptyRemoval.
Jakub Pawlowicz [Mon, 10 Mar 2014 07:51:18 +0000 (07:51 +0000)]
Fixes wrong @import handling in EmptyRemoval.

Since @import declarations are special to any selectors or blocks
these were not handled properly in EmptyRemoval.

10 years agoVersion 2.1.5.
Jakub Pawlowicz [Fri, 7 Mar 2014 20:44:20 +0000 (20:44 +0000)]
Version 2.1.5.

10 years agoFixes #255 - incorrect processing of a trailing '-0' in selectors.
Jakub Pawlowicz [Fri, 7 Mar 2014 20:42:15 +0000 (20:42 +0000)]
Fixes #255 - incorrect processing of a trailing '-0' in selectors.

10 years agoMerge pull request #252 from hhua/box_shadow_zeros
Goal Smashers Dev Team [Fri, 7 Mar 2014 07:05:06 +0000 (07:05 +0000)]
Merge pull request #252 from hhua/box_shadow_zeros

Fixes minifying box-shadow with three zeros.

10 years agoFixes #252 - box-shadow with three zeros compression
Han Hua [Wed, 5 Mar 2014 19:58:54 +0000 (13:58 -0600)]
Fixes #252 - box-shadow with three zeros compression

10 years agoAdds a list of issues fixed by @Venemo.
Jakub Pawlowicz [Wed, 5 Mar 2014 08:09:55 +0000 (08:09 +0000)]
Adds a list of issues fixed by @Venemo.

See ea941cb165abe1e74f87bd46299f0526add9c205 for details.

10 years agoAdds an acknowledgment for @Venemo.
Jakub Pawlowicz [Wed, 5 Mar 2014 08:01:04 +0000 (08:01 +0000)]
Adds an acknowledgment for @Venemo.

* Ensures the list is sorted alphabetically (by GH username).

10 years agoMerge pull request #249 from Venemo/master
Goal Smashers Dev Team [Wed, 5 Mar 2014 07:39:31 +0000 (07:39 +0000)]
Merge pull request #249 from Venemo/master

New, shiny property optimizer.

10 years agoImplemented stylistic changes as asked
Timur Kristóf [Tue, 4 Mar 2014 09:36:47 +0000 (10:36 +0100)]
Implemented stylistic changes as asked

10 years agoAdds a link to our style guide.
Goal Smashers Dev Team [Tue, 4 Mar 2014 06:50:06 +0000 (06:50 +0000)]
Adds a link to our style guide.

10 years agoRefixes #250 via new quotation marks removal algorithm.
Jakub Pawlowicz [Sat, 1 Mar 2014 08:59:59 +0000 (08:59 +0000)]
Refixes #250 via new quotation marks removal algorithm.

10 years agoAdds a better algorithm for quotation marks' removal.
Jakub Pawlowicz [Sat, 1 Mar 2014 08:52:27 +0000 (08:52 +0000)]
Adds a better algorithm for quotation marks' removal.

Quotation removal is now done via data traversal rather than regexp so
it is much more flexible.

Also adds a property name scanner to quickly locate last matching property
at a given location.

10 years agoMoves quotation matching into a QuoteScanner class.
Jakub Pawlowicz [Sat, 1 Mar 2014 04:46:18 +0000 (04:46 +0000)]
Moves quotation matching into a QuoteScanner class.

10 years agoVersion 2.1.4.
Jakub Pawlowicz [Sat, 1 Mar 2014 09:07:57 +0000 (09:07 +0000)]
Version 2.1.4.

10 years agoFixes #250 - correctly handle JSON data in quotations.
Jakub Pawlowicz [Sat, 1 Mar 2014 09:05:55 +0000 (09:05 +0000)]
Fixes #250 - correctly handle JSON data in quotations.

It's a quick fix. Proper one comes to master soon.

10 years agoSome final touches and more tests
Timur Kristóf [Fri, 28 Feb 2014 15:27:57 +0000 (16:27 +0100)]
Some final touches and more tests

10 years agoNew optimizer supports border-radius, border-color, border-style, border-width
Timur Kristóf [Fri, 28 Feb 2014 14:49:05 +0000 (15:49 +0100)]
New optimizer supports border-radius, border-color, border-style, border-width

10 years agoSplitting the new property optimizer into separate modules
Timur Kristóf [Fri, 28 Feb 2014 13:28:35 +0000 (14:28 +0100)]
Splitting the new property optimizer into separate modules

10 years agoShiny new property optimizer
Timur Kristóf [Thu, 27 Feb 2014 23:36:57 +0000 (00:36 +0100)]
Shiny new property optimizer

10 years agoMoves JSHint config out of package.json.
Jakub Pawlowicz [Thu, 27 Feb 2014 07:13:03 +0000 (07:13 +0000)]
Moves JSHint config out of package.json.

10 years agoVersion 2.1.3.
Jakub Pawlowicz [Wed, 26 Feb 2014 20:59:48 +0000 (20:59 +0000)]
Version 2.1.3.

10 years agoFixes #248 - incorrect merging of vendor selectors.
Jakub Pawlowicz [Wed, 26 Feb 2014 20:56:31 +0000 (20:56 +0000)]
Fixes #248 - incorrect merging of vendor selectors.

Vendor selectors can be merged or override other properties if redefine same selectors only, e.g.
a{color:red}a,::-webkit-scrollbar{color:blue} once merged would not yield red links in all browsers but webkit based.

10 years agoFixes #247 - gets rid of deprecated selectorsMergeMode option.
Jakub Pawlowicz [Tue, 25 Feb 2014 21:24:05 +0000 (21:24 +0000)]
Fixes #247 - gets rid of deprecated selectorsMergeMode option.

10 years agoMakes optimizer code a bit more understandable.
Jakub Pawlowicz [Tue, 25 Feb 2014 21:16:06 +0000 (21:16 +0000)]
Makes optimizer code a bit more understandable.

10 years agoVersion 2.1.2.
Jakub Pawlowicz [Tue, 25 Feb 2014 21:01:08 +0000 (21:01 +0000)]
Version 2.1.2.

10 years agoFixes #245 - incorrect handling of backslash IE hack.
Jakub Pawlowicz [Tue, 25 Feb 2014 20:25:17 +0000 (20:25 +0000)]
Fixes #245 - incorrect handling of backslash IE hack.

Backslash hack '\9' (which is accepted in IE[678]) should be handled correctly
if ie8 or ie7 compatibility is requested.

10 years agoReadds minification feedback for non-adjacent optimizer.
Jakub Pawlowicz [Sun, 23 Feb 2014 16:16:16 +0000 (16:16 +0000)]
Readds minification feedback for non-adjacent optimizer.

10 years agoRefactors the new, non-adjacent optimizer.
Jakub Pawlowicz [Sun, 23 Feb 2014 16:12:05 +0000 (16:12 +0000)]
Refactors the new, non-adjacent optimizer.

* Extracts common parts from simple & complex scenarios.
* Adds performance boost so its speed is comparable with the old one.

10 years agoAdds a better non-adjacent optimizer.
Jakub Pawlowicz [Sat, 22 Feb 2014 22:23:20 +0000 (22:23 +0000)]
Adds a better non-adjacent optimizer.

* Makes code easier to understand by splitting simple and complex scenarios.
* Adds compatibility with upcoming new property optimizer.

10 years agoVersion 2.1.1.
Jakub Pawlowicz [Wed, 19 Feb 2014 07:45:40 +0000 (07:45 +0000)]
Version 2.1.1.

10 years agoAdds faster selectors processing in advanced optimizer.
Jakub Pawlowicz [Wed, 19 Feb 2014 07:43:26 +0000 (07:43 +0000)]
Adds faster selectors processing in advanced optimizer.

Selectors clean up is not needed in case of a single selector being processed.

10 years agoFixes #241 - incorrect handling of :not() selectors.
Jakub Pawlowicz [Wed, 19 Feb 2014 07:38:15 +0000 (07:38 +0000)]
Fixes #241 - incorrect handling of :not() selectors.

Since :not() can have multiple selectors passed in, e.g. :not(div,span),
commas need to be handled in a more clever way.

10 years agoMerge pull request #242 from lukeapage/patch-1
Goal Smashers Dev Team [Tue, 18 Feb 2014 08:02:14 +0000 (08:02 +0000)]
Merge pull request #242 from lukeapage/patch-1

Adds compatibility to programmability section too.

10 years agoAdd compatibility to programmability section too
Luke Page [Tue, 18 Feb 2014 07:20:05 +0000 (07:20 +0000)]
Add compatibility to programmability section too

10 years agoVersion 2.1.0.
Jakub Pawlowicz [Thu, 13 Feb 2014 22:45:51 +0000 (22:45 +0000)]
Version 2.1.0.

10 years agoAdds better structured batch tests.
Jakub Pawlowicz [Thu, 13 Feb 2014 21:54:49 +0000 (21:54 +0000)]
Adds better structured batch tests.

Use of async topic prevents individual fails from stopping subsequent tests from being run.

10 years agoAdds a full list of unsupported selectors on IE7 and IE8.
Jakub Pawlowicz [Mon, 10 Feb 2014 22:18:40 +0000 (22:18 +0000)]
Adds a full list of unsupported selectors on IE7 and IE8.

Makes sure we don't merge all unsupported selectors as per list at:
http://kimblim.dk/css-tests/selectors/

10 years agoFixes #235 - adds IE7 compatibility mode.
Jakub Pawlowicz [Mon, 10 Feb 2014 21:53:36 +0000 (21:53 +0000)]
Fixes #235 - adds IE7 compatibility mode.

:focus, :after, and :before selectors are not supported in IE7 so we can't
merge selectors using them.

10 years agoFixes #236 - incorrect rebasing with nested `import`s.
Jakub Pawlowicz [Mon, 10 Feb 2014 21:29:15 +0000 (21:29 +0000)]
Fixes #236 - incorrect rebasing with nested `import`s.

Because of a typo, rebasing of nested relative imports were not processed correctly,
leading to relative paths to last @import not the original one.

Thanks to @alexeyraspopov for spotting it!

10 years agoFixes #226 - skips border:none => border:0 minification.
Jakub Pawlowicz [Sun, 9 Feb 2014 21:34:54 +0000 (21:34 +0000)]
Fixes #226 - skips border:none => border:0 minification.

It's not always safe. See http://dabblet.com/gist/8716224 for details.

10 years agoFixes #223 - adjacent selectors merging.
Jakub Pawlowicz [Sun, 9 Feb 2014 21:15:39 +0000 (21:15 +0000)]
Fixes #223 - adjacent selectors merging.

Makes sure removing duplicates and merging adjacent selectors is run twice, beforehand the latter was not the case.
This is because adjacent selectors may be merged in the first pass creating opportunity to further improve minification.

10 years agoVersion 2.0.8.
Jakub Pawlowicz [Fri, 7 Feb 2014 21:09:27 +0000 (21:09 +0000)]
Version 2.0.8.

10 years agoFixes #232 - edge case in non-adjacent selectors merging.
Jakub Pawlowicz [Fri, 7 Feb 2014 21:07:24 +0000 (21:07 +0000)]
Fixes #232 - edge case in non-adjacent selectors merging.

Gets rid of an edge case when non-adjacent selectors merging can lead to incorrect overridding of properties.

10 years agoFixes #230 - adds better handling of zero values.
Jakub Pawlowicz [Wed, 5 Feb 2014 07:14:02 +0000 (07:14 +0000)]
Fixes #230 - adds better handling of zero values.

Previously 0.0 + unit and -0 was handled incorrectly.

10 years agoFixes #229 - adds improved processing of fraction numbers.
GoalSmashers [Mon, 3 Feb 2014 06:24:07 +0000 (06:24 +0000)]
Fixes #229 - adds improved processing of fraction numbers.

opacity:1. => opacity:1
opacity:.0 => opacity:0

10 years agoFixes #215 - adds removing leading zeros from numerical values.
GoalSmashers [Mon, 3 Feb 2014 04:37:36 +0000 (04:37 +0000)]
Fixes #215 - adds removing leading zeros from numerical values.

E.g 040px can be safely turned into 40px.

10 years agoFixes #217 - removing extra whitespace from attribute selectors and urls.
GoalSmashers [Sat, 1 Feb 2014 08:12:53 +0000 (08:12 +0000)]
Fixes #217 - removing extra whitespace from attribute selectors and urls.

Browsers strip the whitespace before evaluating so should we.

10 years agoFixes #220 - universal selector between two comments.
GoalSmashers [Sat, 1 Feb 2014 07:47:17 +0000 (07:47 +0000)]
Fixes #220 - universal selector between two comments.

Comments were incorrectly processed when universal selector was placed in between.

10 years agoFixes #218 - gets rid of @import statements appearing after CSS content.
GoalSmashers [Sat, 1 Feb 2014 07:30:24 +0000 (07:30 +0000)]
Fixes #218 - gets rid of @import statements appearing after CSS content.

See www.w3.org/TR/CSS21/cascade.html#at-import for details.

10 years agoFixes out of bounds values in rgb / rgba declarations. See #216.
GoalSmashers [Thu, 30 Jan 2014 08:05:26 +0000 (08:05 +0000)]
Fixes out of bounds values in rgb / rgba declarations. See #216.

10 years agoFixes #216 - handling 0% in rgb / rgba declarations.
GoalSmashers [Thu, 30 Jan 2014 08:04:15 +0000 (08:04 +0000)]
Fixes #216 - handling 0% in rgb / rgba declarations.

10 years agoFixes #213 - faster rgb to hex transforms.
tomByrer [Thu, 30 Jan 2014 07:44:13 +0000 (07:44 +0000)]
Fixes #213 - faster rgb to hex transforms.

10 years agoFixes path slashes in Readme to correct ones.
Goal Smashers Dev Team [Sun, 26 Jan 2014 13:36:26 +0000 (13:36 +0000)]
Fixes path slashes in Readme to correct ones.

10 years agoFixes #212 - adds contributing rules to readme.
Goal Smashers Dev Team [Sun, 26 Jan 2014 11:16:25 +0000 (11:16 +0000)]
Fixes #212 - adds contributing rules to readme.

Adds more information on how to contribute and where to put tests.

10 years agoVersion 2.0.7.
GoalSmashers [Thu, 16 Jan 2014 22:22:15 +0000 (22:22 +0000)]
Version 2.0.7.

10 years agoFixes #208 - fixes swallowing `@viewport`, `@page`, and `@supports` when doing advanc...
GoalSmashers [Thu, 16 Jan 2014 22:20:24 +0000 (22:20 +0000)]
Fixes #208 - fixes swallowing `@viewport`, `@page`, and `@supports` when doing advanced optimizations.

10 years agoFixes #207 - bug in parsing protocol `@import`s.
GoalSmashers [Sat, 11 Jan 2014 15:56:34 +0000 (16:56 +0100)]
Fixes #207 - bug in parsing protocol `@import`s.

Spaces inside url part of import declaration were incorrectly parsed.

10 years agoMerge pull request #206 from XhmikosR/master
Goal Smashers Dev Team [Sat, 11 Jan 2014 14:21:55 +0000 (06:21 -0800)]
Merge pull request #206 from XhmikosR/master

Update nock dependency.