
\begin{DoxyItemize}
\item Prevented percent sign removal in {\ttfamily flex}/{\ttfamily -\/ms-\/flex} (\#410)
\item Fixed restructuring optimisation in some cases (@charlessuh \& @chsuh, \#358, \#411)
\item Bumped dependencies (@\+Avi\+Vahl, \#409)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7550}{}\doxysection{4.\+0.\+2 (\+October 28, 2019)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7550}

\begin{DoxyItemize}
\item Fixed clean stage to avoid exceptions when source has unparsed or bad parts (\#380)
\item Fixed wrong percentage sign removal for zero values (\#395)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7551}{}\doxysection{4.\+0.\+1 (\+October 22, 2019)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7551}

\begin{DoxyItemize}
\item Bumped CSSTree to \href{https://github.com/csstree/csstree/releases/tag/v1.0.0-alpha.37}{\texttt{ {\ttfamily 1.\+0.\+0-\/alpha.\+37}}} to avoid source map generation inconsistency across Node.\+js versions
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7552}{}\doxysection{4.\+0.\+0 (\+October 21, 2019)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7552}

\begin{DoxyItemize}
\item Dropped support for Node.\+js $<$ 8
\item Refreshed dev dependencies and scripts
\item Bumped \href{https://github.com/csstree/csstree}{\texttt{ CSSTree}} to {\ttfamily 1.\+0.\+0-\/alpha.\+36} (\#399)
\item Changed bundle files\+: {\ttfamily dist/csso.\+js} and {\ttfamily dist/csso.\+min.\+js} instead single {\ttfamily dist/csso-\/browser.\+js} (min version)
\item Expose {\ttfamily compress()} as {\ttfamily syntax.\+compress()}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7553}{}\doxysection{3.\+5.\+1 (\+June 7, 2018)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7553}

\begin{DoxyItemize}
\item Bumped \href{https://github.com/csstree/csstree}{\texttt{ CSSTree}} to {\ttfamily 1.\+0.\+0-\/alpha.\+29} (fixes some issues)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7554}{}\doxysection{3.\+5.\+0 (\+January 14, 2018)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7554}

\begin{DoxyItemize}
\item Migrated to \href{https://github.com/csstree/csstree}{\texttt{ CSSTree}} {\ttfamily 1.\+0.\+0-\/alpha.\+27}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7555}{}\doxysection{3.\+4.\+0 (\+November 3, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7555}

\begin{DoxyItemize}
\item Added percent sign removal for zero percentages for some properties that is safe (@\+Ruba\+Xa, \#286)
\item Removed unit removal for zero values in {\ttfamily -\/ms-\/flex} due it breaks flex in IE10/11 (\#362)
\item Improved performance of selectors comparison (@smelukov, \#343)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7556}{}\doxysection{3.\+3.\+1 (\+October 17, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7556}

\begin{DoxyItemize}
\item Fixed merge of {\ttfamily position} declarations when {\ttfamily sticky} fallback is using (@gruzzilkin, \#356)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7557}{}\doxysection{3.\+3.\+0 (\+October 12, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7557}

\begin{DoxyItemize}
\item Migrated to \href{https://github.com/csstree/csstree}{\texttt{ CSSTree}} {\ttfamily 1.\+0.\+0-\/alpha25}
\begin{DoxyItemize}
\item Changed AST format (see \href{https://github.com/csstree/csstree/blob/master/HISTORY.md}{\texttt{ CSSTree change log}} for details)
\item Fixed performance issue when generate CSS with source map (quadratic increase in time depending on the size of the CSS)
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7558}{}\doxysection{3.\+2.\+0 (\+September 10, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7558}

\begin{DoxyItemize}
\item Fixed named color compression to apply only when an identifier is guaranteed to be a color
\item Added lifting of {\ttfamily @keyframes} to the beginning of style sheet (chunk), but after {\ttfamily @charset} and {\ttfamily @import} rules
\item Added removal of {\ttfamily @keyframes}, {\ttfamily @media} and {\ttfamily @supports} with no prelude
\item Added removal of duplicate {\ttfamily @keyframes} (\#202)
\item Added new option {\ttfamily force\+Media\+Merge} to force media rules merging. It\textquotesingle{}s unsafe in general, but works fine in many cases. Use it on your own risk (\#350)
\item Bumped {\ttfamily CSSTree} to {\ttfamily 1.\+0.\+0-\/alpha23}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7559}{}\doxysection{3.\+1.\+1 (\+April 25, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7559}

\begin{DoxyItemize}
\item Fixed crash on a number processing when it used not in a list (\#335)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7560}{}\doxysection{3.\+1.\+0 (\+April 24, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7560}

\begin{DoxyItemize}
\item Implemented optimisation for {\ttfamily none} keyword in {\ttfamily border} and {\ttfamily outline} properties (@zoobestik, \#41)
\item Implemented replacing {\ttfamily rgba(x, x, x, 0)} to {\ttfamily transparent}
\item Fixed plus sign omitting for numbers following identifier, hex color, number or unicode range, since it can change the meaning of CSS (e.\+g. {\ttfamily calc(1px+2px)} has been optimized to {\ttfamily calc(1px2px)} before, now it stays the same)
\item Improved usage filtering for nested selectors (i.\+e. for {\ttfamily \+:nth-\/$\ast$()}, {\ttfamily \+:has()}, {\ttfamily \+:matches} and other pseudos)
\item Implemented {\ttfamily blacklist} filtering in usage (\#334, see \href{https://github.com/css/csso\#black-list-filtering}{\texttt{ Black list filtering}})
\item Improved white space removing, now white spaces are removing in the beginning and at the ending of sequences, and between stylesheet and block nodes
\item Bumped {\ttfamily CSSTree} to {\ttfamily 1.\+0.\+0-\/alpha19}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7561}{}\doxysection{3.\+0.\+1 (\+March 14, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7561}

\begin{DoxyItemize}
\item Fixed declaration merging when declaration contains an {\ttfamily !important}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7562}{}\doxysection{3.\+0.\+0 (\+March 13, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7562}

\begin{DoxyItemize}
\item Migrated to \href{https://github.com/csstree/csstree}{\texttt{ CSSTree}} as AST backend and exposed its API behind {\ttfamily syntax} property
\item Extracted CLI into standalone package \href{https://github.com/css/csso-cli}{\texttt{ css/csso-\/cli}}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7563}{}\doxysection{2.\+3.\+1 (\+January 6, 2017)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7563}

\begin{DoxyItemize}
\item Added {\ttfamily \textbackslash{}0} IE hack support (\#320)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7564}{}\doxysection{2.\+3.\+0 (\+October 25, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7564}

\begin{DoxyItemize}
\item Added {\ttfamily before\+Compress} and {\ttfamily after\+Compress} options support (\#316)
\item Fixed crash on empty argument in function (\#317)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7565}{}\doxysection{2.\+2.\+1 (\+July 25, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7565}

\begin{DoxyItemize}
\item Fixed shorthand optimisation issue when value has a color value or something unknown (\#311)
\item Fixed {\ttfamily cursor} broken fallback (\#306)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7566}{}\doxysection{2.\+2.\+0 (\+June 23, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7566}

\begin{DoxyItemize}
\item Implement AST cloning by adding {\ttfamily clone()} \href{https://github.com/css/csso\#cloneast}{\texttt{ function}} and {\ttfamily clone} \href{https://github.com/css/csso\#compressast-options}{\texttt{ option}} for {\ttfamily compress()} function (\#296)
\item Fix parse and translate attribute selector with flags but w/o operator (i.\+e. {\ttfamily \mbox{[}attr\+Name i\mbox{]}})
\item Don\textquotesingle{}t merge rules with flagged attribute selectors with others (\#291)
\item Take in account functions when merge TRBL-\/properties (\#297, thanks to @\+Artur\+Aralin)
\item Improve partial merge (\#304)
\item Tweak scanner, reduce code deoptimizations and other small improvements
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7567}{}\doxysection{2.\+1.\+1 (\+May 11, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7567}

\begin{DoxyItemize}
\item Fix wrong declaration with {\ttfamily \textbackslash{}9} hack merge (\#295)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7568}{}\doxysection{2.\+1.\+0 (\+May 8, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7568}

\begin{DoxyItemize}
\item New option {\ttfamily comments} to specify what comments to left\+: {\ttfamily exclamation}, {\ttfamily first-\/exclamation} and {\ttfamily none}
\item Add {\ttfamily offset} to CSS parse error details
\item Fix token {\ttfamily offset} computation
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7569}{}\doxysection{2.\+0.\+0 (\+April 5, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7569}

\begin{DoxyItemize}
\item No more {\ttfamily gonzales} AST format and related code
\item {\ttfamily minify()} and {\ttfamily minify\+Block()} is always return an object as result now (i.\+e. {\ttfamily \{ css\+: String, map\+: Source\+Map\+Generator or null \}})
\item {\ttfamily parse()}
\begin{DoxyItemize}
\item Returns AST in new format (so called {\ttfamily internal})
\item Dynamic scanner implemented
\item New AST format + dynamic scanner = performance boost and less memory consumption
\item No more {\ttfamily context} argument, context should be specified via {\ttfamily options}
\item Supported contexts now\+: {\ttfamily stylesheet}, {\ttfamily atrule}, {\ttfamily atrule\+Expression}, {\ttfamily ruleset}, {\ttfamily selector}, {\ttfamily simple\+Selector}, {\ttfamily block}, {\ttfamily declaration} and {\ttfamily value}
\item Drop {\ttfamily need\+Positions} option, {\ttfamily positions} option should be used instead
\item Drop {\ttfamily need\+Info} option, {\ttfamily info} object is attaching to nodes when some information is requested by {\ttfamily options}
\item {\ttfamily options} should be an object, otherwise it treats as empty object
\end{DoxyItemize}
\item {\ttfamily compress()}
\begin{DoxyItemize}
\item No more AST converting (performance boost and less memory consumption)
\item Drop {\ttfamily output\+Ast} option
\item Returns an object as result instead of AST (i.\+e. {\ttfamily \{ ast\+: Object \}})
\end{DoxyItemize}
\item Drop methods\+: {\ttfamily just\+Do\+It()}, {\ttfamily stringify()}, {\ttfamily clean\+Info()}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7570}{}\doxysection{1.\+8.\+1 (\+March 30, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7570}

\begin{DoxyItemize}
\item Don\textquotesingle{}t remove spaces after function/braces/urls since unsafe (\#289)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7571}{}\doxysection{1.\+8.\+0 (\+March 24, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7571}

\begin{DoxyItemize}
\item Usage data support\+:
\begin{DoxyItemize}
\item Filter rulesets by tag names, class names and ids white lists.
\item More aggressive ruleset moving using class name scopes information.
\item New CLI option {\ttfamily -\/-\/usage} to pass usage data file.
\end{DoxyItemize}
\item Improve initial ruleset merge
\begin{DoxyItemize}
\item Change order of ruleset processing, now it\textquotesingle{}s left to right. Previously unmerged rulesets may prevent lookup and other rulesets merge.
\item Difference in pseudo signature just prevents ruleset merging, but don\textquotesingle{}t stop lookup.
\item Simplify block comparison (performance).
\end{DoxyItemize}
\item New method {\ttfamily csso.\+minify\+Block()} for css block compression (e.\+g. {\ttfamily style} attribute content).
\item Ruleset merge improvement\+: at-\/rules with block (like {\ttfamily @media} or {\ttfamily @supports}) now can be skipped during ruleset merge lookup if doesn\textquotesingle{}t contain something prevents it.
\item FIX\+: Add negation ({\ttfamily \+:not()}) to pseudo signature to avoid unsafe merge (old browsers doesn\textquotesingle{}t support it).
\item FIX\+: Check nested parts of value when compute compatibility. It fixes unsafe property merging.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7572}{}\doxysection{1.\+7.\+1 (\+March 16, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7572}

\begin{DoxyItemize}
\item pass block mode to tokenizer for correct parsing of declarations properties with {\ttfamily //} hack
\item fix wrongly {\ttfamily @import} and {\ttfamily @charset} removal on double exclamation comment
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7573}{}\doxysection{1.\+7.\+0 (\+March 10, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7573}

\begin{DoxyItemize}
\item support for \href{https://www.w3.org/TR/css-variables/}{\texttt{ CSS Custom Properties}} (\#279)
\item rework RTBL properties merge – better merge for values with special units and don\textquotesingle{}t merge values with CSS-\/wide keywords (\#255)
\item remove redundant universal selectors (\#178)
\item take in account {\ttfamily !important} when check for property overriding (\#280)
\item don\textquotesingle{}t merge {\ttfamily text-\/align} declarations with some values (\#281)
\item add spaces around {\ttfamily /deep/} combinator on translate, since it together with universal selector can produce a comment
\item better keyword and property name resolving (tolerant to hacks and so on)
\item integration improvements
\begin{DoxyItemize}
\item compression log function could be customized by {\ttfamily logger} option for {\ttfamily compress()} and {\ttfamily minify()}
\item make possible to set initial line and column for parser
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7574}{}\doxysection{1.\+6.\+4 (\+March 1, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7574}

\begin{DoxyItemize}
\item {\ttfamily npm} publish issue (\#276)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7575}{}\doxysection{1.\+6.\+3 (\+February 29, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7575}

\begin{DoxyItemize}
\item add {\ttfamily file} to generated source map since other tools can relay on it in source map transform chain
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7576}{}\doxysection{1.\+6.\+2 (\+February 29, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7576}

\begin{DoxyItemize}
\item tweak some parse error messages and their positions
\item fix {\ttfamily \+:not()} parsing and selector groups in {\ttfamily \+:not()} is supported now (\#215)
\item {\ttfamily need\+Position} parser option is deprecated, {\ttfamily positions} option should be used instead ({\ttfamily need\+Position} is used still if {\ttfamily positions} option omitted)
\item expose internal AST API as {\ttfamily csso.\+internal.$\ast$}
\item {\ttfamily minify()} adds {\ttfamily sources\+Content} by default when source map is generated
\item bring back support for node.\+js {\ttfamily 0.\+10} until major release (\#275)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7577}{}\doxysection{1.\+6.\+1 (\+February 28, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7577}

\begin{DoxyItemize}
\item fix exception on zero length dimension compress outside declaration (\#273)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7578}{}\doxysection{1.\+6.\+0 (\+February 27, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7578}

\begin{DoxyItemize}
\item {\bfseries{source maps support}}
\item parser remake\+:
\begin{DoxyItemize}
\item various parsing issues fixed
\item fix unicode sequence processing in ident (\#191)
\item support for flags in attribute selector (\#270)
\item position (line and column) of parse error (\#109)
\item 4x performance boost, less memory consumption
\end{DoxyItemize}
\item compressor refactoring
\begin{DoxyItemize}
\item internal AST is using doubly linked lists (with safe transformation support during iteration) instead of arrays
\item rename {\ttfamily restructuring} to {\ttfamily restructure} option for {\ttfamily minify()}/{\ttfamily compress()} ({\ttfamily restructuring} is alias for {\ttfamily restructure} now, with lower priority)
\item unquote urls when possible (\#141, \#60)
\end{DoxyItemize}
\item setup code coverage and a number of related fixes
\item add eslint to check unused things
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7579}{}\doxysection{1.\+5.\+4 (\+January 27, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7579}

\begin{DoxyItemize}
\item one more fix (in {\ttfamily restruct\+Ruleset} this time) with merge of rulesets when a ruleset with same specificity places between them (\#264)
\item disable partial merge of rulesets in {\ttfamily @keyframes} rulesets (until sure it\textquotesingle{}s correct)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7580}{}\doxysection{1.\+5.\+3 (\+January 25, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7580}

\begin{DoxyItemize}
\item don\textquotesingle{}t override display values with different browser support (\#259)
\item fix publish issue (one of modules leak in development state)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7581}{}\doxysection{1.\+5.\+2 (\+January 24, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7581}

\begin{DoxyItemize}
\item don\textquotesingle{}t merge rulesets if between them a ruleset with same specificity (\#264)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7582}{}\doxysection{1.\+5.\+1 (\+January 14, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7582}

\begin{DoxyItemize}
\item ensure {\ttfamily -\/} is not used as an identifier in attribute selectors (thanks to @mathiasbynens)
\item fix broken {\ttfamily just\+Do\+It()} function
\item various small fixes
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7583}{}\doxysection{1.\+5.\+0 (\+January 14, 2016)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7583}
\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7584}{}\doxysubsection{Parser}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7584}

\begin{DoxyItemize}
\item attach minus to number
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7585}{}\doxysubsection{Compressor}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7585}

\begin{DoxyItemize}
\item split code base into small modules and related refactoring
\item introduce internal AST format for compressor ({\ttfamily gonzales}→{\ttfamily internal} and {\ttfamily internal}→{\ttfamily gonzales} convertors, walkers, translator)
\item various optimizations\+: no snapshots, using caches and indexes
\item sort selectors, merge selectors in alphabet order
\item compute selector\textquotesingle{}s specificity
\item better ruleset restructuring, improve compression of partially equal blocks
\item better ruleset merge – not only closest but also disjoined by other rulesets when safe
\item join {\ttfamily @media} with same query
\item {\ttfamily output\+Ast} – new option to specify output AST format ({\ttfamily gonzales} by default for backward compatibility)
\item remove quotes surrounding attribute values in attribute selectors when possible (\#73)
\item replace {\ttfamily from}→{\ttfamily 0\%} and {\ttfamily 100\%}→{\ttfamily to} at {\ttfamily @keyframes} (\#205)
\item prevent partial merge of rulesets at {\ttfamily @keyframes} (\#80, \#197)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7586}{}\doxysubsection{API}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7586}

\begin{DoxyItemize}
\item walker for {\ttfamily gonzales} AST was implemented
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7587}{}\doxysubsection{CLI}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7587}

\begin{DoxyItemize}
\item new option {\ttfamily -\/-\/stat} (output stat in {\ttfamily stderr})
\item new optional parameter {\ttfamily level} for {\ttfamily -\/-\/debug} option
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7588}{}\doxysection{1.\+4.\+4 (\+December 10, 2015)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7588}

\begin{DoxyItemize}
\item prevent removal of spaces after braces that before identifier that breaking at-\/rules expressions (\#258)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7589}{}\doxysection{1.\+4.\+3 (\+December 4, 2015)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7589}

\begin{DoxyItemize}
\item fix unicode-\/range parsing that cause to wrong function detection (\#250)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7590}{}\doxysection{1.\+4.\+2 (\+November 9, 2015)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7590}

\begin{DoxyItemize}
\item allow spaces between {\ttfamily progid\+:} and rest part of value for IE\textquotesingle{}s {\ttfamily filter} property as {\ttfamily autoprefixer} generates this kind of code (\#249)
\item fixes for Windows\+:
\begin{DoxyItemize}
\item correct processing new lines
\item normalize file content in test suite
\end{DoxyItemize}
\item fixes to work in strict mode (\#252)
\item init compressor dictionaries for every css block (\#248, \#251)
\item bump uglify-\/js version
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7591}{}\doxysection{1.\+4.\+1 (\+October 20, 2015)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7591}

\begin{DoxyItemize}
\item allow merge for {\ttfamily display} property (\#167, \#244)
\item more accurate {\ttfamily rect} ({\ttfamily clip} property value) merge
\item fix typo when specifying options in cli (thanks to @\+Taritsyn)
\item fix safe unit values merge with keyword values (\#244)
\item fix wrong descendant combinator removal (\#246)
\item build browser version on {\ttfamily prepublish} (thanks to @silentroach)
\item parser\+: store whitespaces as single token (performance and reduce memory consumption)
\item rearrange compress tests layout
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7592}{}\doxysection{1.\+4 (\+October 16, 2015)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7592}
Bringing project back to life. Changed files structure, cleaned up and refactored most of sources.\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7593}{}\doxysubsection{Common}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7593}

\begin{DoxyItemize}
\item single code base (no more {\ttfamily src} folder)
\item build browser version with {\ttfamily browserify} (no more {\ttfamily make}, and {\ttfamily web} folder), browser version is available at {\ttfamily dist/csso-\/browser.\+js}
\item main file is {\ttfamily lib/index.\+js} now
\item minimal {\ttfamily node.\+js} version is {\ttfamily 0.\+12} now
\item restrict file list to publish on npm (no more useless folders and files in package)
\item add {\ttfamily jscs} to control code style
\item automate {\ttfamily gh-\/pages} update
\item util functions reworked
\item translator reworked
\item test suite reworked
\item compressor refactored
\item initial parser refactoring
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7594}{}\doxysubsection{API}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7594}

\begin{DoxyItemize}
\item new method {\ttfamily minify(src, options)}, options\+:
\begin{DoxyItemize}
\item {\ttfamily restructuring} – if set to {\ttfamily false}, disable structure optimisations ({\ttfamily true} by default)
\item {\ttfamily debug} -\/ outputs intermediate state of CSS during compression ({\ttfamily false} by default)
\end{DoxyItemize}
\item deprecate {\ttfamily just\+Do\+It()} method (use {\ttfamily minify} instead)
\item rename {\ttfamily tree\+To\+String()} method to {\ttfamily stringify()}
\item drop {\ttfamily print\+Tree()} method
\item AST node info
\begin{DoxyItemize}
\item {\ttfamily column} and {\ttfamily offset} added
\item {\ttfamily ln} renamed to {\ttfamily line}
\item fix line counting across multiple files and input with CR LF (\#147)
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7595}{}\doxysubsection{CLI}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7595}

\begin{DoxyItemize}
\item completely reworked, use \href{https://github.com/lahmatiy/clap}{\texttt{ clap}} to parse argv
\item add support for input from stdin (\#128)
\item drop undocumented and obsoleted options {\ttfamily -\/-\/rule} and {\ttfamily -\/-\/parser} (suppose nobody use it)
\item drop {\ttfamily -\/off} alias for {\ttfamily -\/-\/restructure-\/off} as incorrect (only one letter options should starts with single {\ttfamily -\/})
\item new option {\ttfamily -\/-\/debug} that reflecting to {\ttfamily options.\+debug} for {\ttfamily minify}
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7596}{}\doxysubsection{Parsing and optimizations}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7596}

\begin{DoxyItemize}
\item keep all exclamation comments (\#194)
\item add {\ttfamily /deep/} combinator support (\#209)
\item attribute selector
\begin{DoxyItemize}
\item allow colon in attribute name (\#237)
\item support for namespaces (\#233)
\end{DoxyItemize}
\item color
\begin{DoxyItemize}
\item support all css/html colors
\item convert {\ttfamily hsla} to {\ttfamily rgba} and {\ttfamily hls} to {\ttfamily rgb}
\item convert {\ttfamily rgba} with 1 as alpha value to {\ttfamily rgb} (\#122)
\item interpolate {\ttfamily rgb} and {\ttfamily rgba} percentage values to absolute values
\item replace percentage values in {\ttfamily rgba} for normalized/interpolated values
\item lowercase hex colors and color names (\#169)
\item fix color minification when hex value replaced for color name (\#176)
\item fit rgb values to 0..255 range (\#181)
\end{DoxyItemize}
\item calc
\begin{DoxyItemize}
\item remove spaces for multiple operator in calc
\item don\textquotesingle{}t remove units inside calc (\#222)
\item fix wrong white space removal around {\ttfamily +} and {\ttfamily -\/} (\#228)
\end{DoxyItemize}
\item don\textquotesingle{}t remove units in {\ttfamily flex} property as it could change value meaning (\#200)
\item don\textquotesingle{}t merge {\ttfamily \textbackslash{}9} hack values (\#231)
\item merge property values only if they have the same functions (\#150, \#227)
\item don\textquotesingle{}t merge property values with some sort of units (\#140, \#161)
\item fix {\ttfamily !important} issue for {\ttfamily top-\/right-\/bottom-\/left} properties (\#189)
\item fix {\ttfamily top-\/right-\/bottom-\/left} properties merge (\#139, \#175)
\item support for unicode-\/range (\#148)
\item don\textquotesingle{}t crash on ruleset with no selector (\#135)
\item tolerant to class names that starts with digit (\#99, \#105)
\item fix background compressing (\#170)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7597}{}\doxysection{1.\+3.\+12 (\+October 8, 2015)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7597}

\begin{DoxyItemize}
\item Case insensitive check for {\ttfamily !important} (\#187)
\item Fix problems with using {\ttfamily csso} as cli command on Windows (\#83, \#136, \#142 and others)
\item Remove byte order marker (the UTF-\/8 BOM) from input
\item Don\textquotesingle{}t strip space between funktion-\/funktion and funktion-\/vhash (\#134)
\item Don\textquotesingle{}t merge TRBL values having \textbackslash{}9 (hack for IE8 in bootstrap) (\#159, \#214, \#230, \#231 and others)
\item Don\textquotesingle{}t strip units off dimensions of non-\/length (\#226, \#229 and others)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7598}{}\doxysection{1.\+3.\+7 (\+February 11, 2013)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7598}

\begin{DoxyItemize}
\item Gonzales 1.\+0.\+7.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7599}{}\doxysection{1.\+3.\+6 (\+November 26, 2012)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7599}

\begin{DoxyItemize}
\item Gonzales 1.\+0.\+6.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7600}{}\doxysection{1.\+3.\+5 (\+October 28, 2012)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7600}

\begin{DoxyItemize}
\item Gonzales 1.\+0.\+5.
\item Protecting copyright notices in CSS\+: \href{https://github.com/css/csso/issues/92}{\texttt{ https\+://github.\+com/css/csso/issues/92}}
\item Zero CSS throws an error\+: \href{https://github.com/css/csso/issues/96}{\texttt{ https\+://github.\+com/css/csso/issues/96}}
\item Don\textquotesingle{}t minify the second {\ttfamily 0s} in Firefox for animations\+: \href{https://github.com/css/csso/issues/100}{\texttt{ https\+://github.\+com/css/csso/issues/100}}
\item Japan manual
\item BEM ready documentation
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7601}{}\doxysection{1.\+3.\+4 (\+October 10, 2012)}\label{md_sfcode_node_modules_csso_CHANGELOG_autotoc_md7601}

\begin{DoxyItemize}
\item 
\end{DoxyItemize}