<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>YUI Compressor :: {3} Changes CheckedIn - available to pull from Github</title>
<link>http://yuilibrary.com//projects/yuicompressor/report/3</link>
<description>YUI Library RSS Feed</description>
<language>en</language>
<generator>DavGlass</generator>
<item>
   <title>Stray semicolon inserted into CSS file</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/1961175</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/1961175</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;In CSS files that use media queries and a comment to hide rules from IE5 Mac. Where the comment is used in the CSS file before the closing bracket of the @media statement a stray semicolon is inserted in-between the closing comment and the closing bracket.&lt;/p&gt;

&lt;p&gt;Before:&lt;br /&gt;
@media screen {&lt;br /&gt;
    /* for IE 5.x-6, hidden from IE 5 Mac */ /**/&lt;br /&gt;
    * html div#page {&lt;br /&gt;
        height: 1%;&lt;br /&gt;
    }&lt;br /&gt;
    /**/ /* end hidden from IE 5 Mac */&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;After:&lt;br /&gt;
@media screen{/**/ * html div#page{height:1%;}/**/;}&lt;/p&gt;

&lt;p&gt;Expected&lt;br /&gt;
@media screen{/**/ * html div#page{height:1%;}/**/}&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Compressor breaks on this link-icons.css file</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2009249</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2009249</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Specifically I think it has trouble with the multiple selectors that use ^...&lt;/p&gt;

&lt;p&gt;/* -------------------------------------------------------------- &lt;br /&gt;
  &lt;br /&gt;
   link-icons.css&lt;br /&gt;
   * Icons for links based on protocol or file type.&lt;br /&gt;
   &lt;br /&gt;
   See the Readme file in this folder for additional instructions.&lt;/p&gt;

&lt;p&gt;-------------------------------------------------------------- */&lt;/p&gt;

&lt;p&gt;/* Use this class if a link gets an icon when it shouldn't. */&lt;br /&gt;
body a.noicon { background:none; padding:0; margin:0; }&lt;/p&gt;

&lt;p&gt;/* Make sure the icons are not cut */&lt;br /&gt;
a[href^=&amp;quot;http:&amp;quot;], a[href^=&amp;quot;mailto:&amp;quot;], a[href^=&amp;quot;http:&amp;quot;]:visited, &lt;br /&gt;
a[href$=&amp;quot;.pdf&amp;quot;], a[href$=&amp;quot;.doc&amp;quot;], a[href$=&amp;quot;.xls&amp;quot;], a[href$=&amp;quot;.rss&amp;quot;], &lt;br /&gt;
a[href$=&amp;quot;.rdf&amp;quot;], a[href^=&amp;quot;aim:&amp;quot;] {&lt;br /&gt;
  padding:2px 22px 2px 0;&lt;br /&gt;
  margin:-2px 0;&lt;br /&gt;
  background-repeat: no-repeat;&lt;br /&gt;
  background-position: right center;&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;/* External links */&lt;br /&gt;
a[href^=&amp;quot;http:&amp;quot;]          { background-image: url(icons/external.png); } &lt;br /&gt;
a[href^=&amp;quot;mailto:&amp;quot;]        { background-image: url(icons/email.png); }&lt;br /&gt;
a[href^=&amp;quot;http:&amp;quot;]:visited  { background-image: url(icons/visited.png); }&lt;/p&gt;

/* Files */&lt;br /&gt;
a[href$=&amp;quot;.pdf&amp;quot;]   { background-image: url(icons/pdf.png); }  &lt;br /&gt;
a[href$=&amp;quot;.doc&amp;quot;]   { background-image: url(icons/doc.png); }  &lt;br /&gt;
a[href$=&amp;quot;.xls&amp;quot;]   { background-image: url(icons/xls.png); }  &lt;br /&gt;
 &lt;p&gt;/* Misc */&lt;br /&gt;
a[href$=&amp;quot;.rss&amp;quot;], &lt;br /&gt;
a[href$=&amp;quot;.rdf&amp;quot;]   { background-image: url(icons/feed.png); }&lt;br /&gt;
a[href^=&amp;quot;aim:&amp;quot;]   { background-image: url(icons/im.png); }&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Replacement of CSS hack html&gt;/**/body</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2078513</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2078513</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Because YUI Compressor (2.3.5.) replaces:&lt;/p&gt;

&lt;p&gt;html&amp;gt;/**/body (valid CSS hack for modern browsers expect IE 7)&lt;/p&gt;

&lt;p&gt;with:&lt;/p&gt;

&lt;p&gt;html&amp;gt;body&lt;/p&gt;

&lt;p&gt;it removes the hack.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>errors should be sent to the error stream</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2095077</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2095077</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;When there is an error (for example no arguments or bad arguments) yuicompressor output the help and usage to the output stream (/dev/stdout on unix/mac).&lt;br /&gt;
All error/help/warning output should be sent to the error stream instead (/dev/stderr on unix/mac).&lt;/p&gt;

&lt;p&gt;Reproduce :  &lt;br /&gt;
    java -jar yuicompressor-2.3.5.jar --badparameter 2&amp;gt; /dev/null&lt;/p&gt;

&lt;p&gt;Result : &lt;br /&gt;
    Output the usage help on the terminal&lt;/p&gt;

&lt;p&gt;Wanted result:&lt;br /&gt;
    Usage help and potential errors are redirected to /dev/null&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Missed CSS optimization - unneeded trailing ;</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2139843</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2139843</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;The last ; in a CSS class is optional.&lt;br /&gt;
Even if I remove it in my CSS source file, the compressor set it back.&lt;/p&gt;

&lt;p&gt;The --preserve-semi option available for JavaScript compression should also exist for the CSS compression.&lt;/p&gt;

&lt;p&gt;By default I recommend to remove all the trailing ;&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;p&gt;div {color: black;}&lt;/p&gt;

&lt;p&gt;Should be&lt;/p&gt;

&lt;p&gt;div{color:black}&lt;/p&gt;

&lt;p&gt;In the web application I'm working on it's about 500 ; that can be removed.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>&quot;$&quot; signs (common in VSS)breaks compressor for CSS</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2459205</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2459205</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;If there are headers like this in the CSS source:&lt;/p&gt;

&lt;p&gt;&amp;lt;!--&lt;br /&gt;
  $Header: /temp/dirname/filename.css 3     2/02/08 3:37p JSmith $&lt;br /&gt;
--&amp;gt;&lt;/p&gt;

&lt;p&gt;The compressor will break and throw a:&lt;/p&gt;

&lt;p&gt;Exception in thread &amp;quot;main&amp;quot; java.lang.reflect.InvocationTargetException&lt;br /&gt;
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&lt;br /&gt;
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)&lt;br /&gt;
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)&lt;br /&gt;
        at java.lang.reflect.Method.invoke(Unknown Source)&lt;br /&gt;
        at com.yahoo.platform.yui.compressor.Bootstrap.main(Bootstrap.java:20)&lt;br /&gt;
Caused by: java.lang.IllegalArgumentException: Illegal group reference&lt;br /&gt;
        at java.util.regex.Matcher.appendReplacement(Unknown Source)&lt;br /&gt;
        at com.yahoo.platform.yui.compressor.CssCompressor.compress(CssCompressor.java:86)&lt;br /&gt;
        at com.yahoo.platform.yui.compressor.YUICompressor.main(YUICompressor.java:178)&lt;br /&gt;
        ... 5 more&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>import statement stripped out of css file</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2490091</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2490091</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;If the first CSS rule is empty, but there is an import statement before it, the import statement is stripped out of the compressed version.  I tried this with version 2.4.1 and it doesn't work.  If you comment out the empty rule, everything is fine.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>compressor removes beginning of css</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2495387</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2495387</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Imagine simple css:&lt;/p&gt;

&lt;p&gt;@charset 'utf-8';&lt;br /&gt;
@media all {&lt;br /&gt;
    body {&lt;br /&gt;
    }&lt;br /&gt;
    body {&lt;br /&gt;
        background-color: gold;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;compress it:&lt;br /&gt;
java -jar yuicompressor-2.4.2.jar sample.css -o sample-min.css&lt;/p&gt;

&lt;p&gt;result:&lt;br /&gt;
body{background-color:gold;}}&lt;/p&gt;

&lt;p&gt;expected:&lt;br /&gt;
@charset 'utf-8';@media all {body{background-color:gold;}}&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Byte Order Marker and Default Charset in Vista (x64) and XP (x86)</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2495394</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2495394</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Using YUIcompressor on Vista SP1(x64) and XP SP3(x86) with JavaScript files created by Visual Studio 2008 results in errors due to the 3-byte Byte Ordering Mark at the beginning of the file. YUIcompressor defaults to charset Cp1252, and the EF BB EB Byte Ordering Mark at the beginning of the JavaScript files result in a very unobvious YUIcompressor failure. Simply deleting the 3 bytes makes the files work as does adding &lt;br /&gt;
--charset UTF-8&lt;br /&gt;
to the YUIcompressor command line.&lt;br /&gt;
I don't know if this is a feature request or a bug, but on opening a file, could YUIcompressor inspect the first characters of the file for a known BOM and if it finds one, use the appropriate charset unless overridden by the --charset option?&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Empty class declaration can break @media section</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2495396</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2495396</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;An empty class declaration can break an @media section&lt;/p&gt;

&lt;p&gt;SOURCE:&lt;br /&gt;
@media print {&lt;br /&gt;
 .noprint { display: none; }&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;@media screen {&lt;br /&gt;
 .breakme {}&lt;br /&gt;
 .printonly { display: none; }&lt;br /&gt;
}&lt;/p&gt;

RESULT: &lt;br /&gt;
@media print{.noprint{display:none;}&lt;br /&gt;
}&lt;p&gt;.printonly{display:none;}&lt;br /&gt;
}&lt;/p&gt;

EXPECTED:&lt;br /&gt;
@media print{.noprint{display:none;}&lt;br /&gt;
}&lt;p&gt;@media screen{.printonly{display:none;}&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;Ticket 2495387 may be a related issue&lt;/p&gt;

&lt;p&gt;A workaround is to remove the redundant declaration or to ensure the first declaration in an @media section actually declares something&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Java exception while processing .js file</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2495399</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2495399</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Running YUICompressor over a particular .js file is throwing a Java exception during processing.&lt;br /&gt;
You can retrieve the CSS file in question here: &lt;a href=&quot;http://www.zoeybot.com/construct.css&quot;&gt;http://www.zoeybot.com/construct.css&lt;/a&gt;&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>yuicompressor throws Java exception during use.</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2495400</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2495400</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;The yuicompressor throws Java exception while processing the attached javascript file.&lt;br /&gt;
See Test Information&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Improve charset handling to try to avoid org.mozilla.javascript.EvaluatorException</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527973</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527973</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;A lot of people are having compressor fail with an org.mozilla.javascript.EvaluatorException, and it appears that it is most commonly happening when the charset option is not provided and the file is encoded in utf-8.  If compressor is unable to detect the correct charset, an approach that might work is to catch that exception, retry the operation with utf-8 encoding, and if it fails again, rethrow the original error with additional advice about providing the correct charset to the compressor.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>CSS file that makes yuicompressor crash</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527974</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527974</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;java -jar yuicompressor-2.4.2.jar css/a.css&lt;br /&gt;
Exception in thread &amp;quot;main&amp;quot; java.lang.reflect.InvocationTargetException&lt;br /&gt;
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&lt;br /&gt;
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)&lt;br /&gt;
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)&lt;br /&gt;
        at java.lang.reflect.Method.invoke(Method.java:616)&lt;br /&gt;
        at com.yahoo.platform.yui.compressor.Bootstrap.main(Bootstrap.java:20)&lt;br /&gt;
Caused by: java.lang.IllegalArgumentException: Illegal group reference&lt;br /&gt;
        at java.util.regex.Matcher.appendReplacement(Matcher.java:725)&lt;br /&gt;
        at com.yahoo.platform.yui.compressor.CssCompressor.compress(CssCompressor.java:86)&lt;br /&gt;
        at com.yahoo.platform.yui.compressor.YUICompressor.main(YUICompressor.java:178)&lt;br /&gt;
        ... 5 more&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Suffix attribute selector + pseudo selector makes YUI Compressor crash</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527977</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527977</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Title says it all. See the test information for details.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Preserving CSS comments loses formatting</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527979</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527979</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;When using the */! style comments in css, line breaks are stripped out when the expected behavior would be to preserve them in the same way as is done in the js files. This is especially important for licensing comments, where readability is necessary. The few extra characters of savings make it difficult to stay compliant with legal requirements of some licenses.&lt;/p&gt;

&lt;p&gt;Expected behavior: comments starting with /*! should be preserved exactly as they were in the source file&lt;/p&gt;

&lt;p&gt;Observed behavior: comments are preserved as expected in JavaScript output files. comments lose line breaks in CSS output files, making them less readable.&lt;/p&gt;

&lt;p&gt;Also, this ability to preserve comments for cases like licensing should be documented more clearly. I eventually found the technique in the change log.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>[bz 2451000] YUI compressor adding semicolon in @import </title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527983</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527983</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;If I have an import path that contains {}, yui compressor adds a semicolon at the end.&lt;/p&gt;

&lt;p&gt;&amp;gt; @import &amp;quot;../${TEST}/test.css&amp;quot;;&lt;br /&gt;
compresses to&lt;br /&gt;
&amp;gt; @import &amp;quot;../${TEST;}/test.css&amp;quot;;&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>YUI Compressor hoses @media type and declarations</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527991</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527991</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;@media screen and (min-width: 800px) {&lt;br /&gt;
&lt;ol&gt;
    &lt;li&gt;nav { background-color: #fc0; }&lt;/li&gt;
&lt;/ol&gt;

&lt;/p&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;Basically, removes the space after and and the @media doesn't work at all.&lt;/p&gt;

&lt;p&gt;@media min-width: 800px {&lt;/p&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;works fine though!&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>special comments are not preserved in otherwise empty css file</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527998</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527998</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Special comments are not preserved in otherwise empty css files.  For example:&lt;/p&gt;

&lt;p&gt;&lt;pre class=&quot;wikicode&quot;&gt;&lt;br /&gt;
/*! special */&lt;/p&gt;

&lt;p&gt;body {&lt;/p&gt;

&lt;p&gt;&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;will be minified to the empty string.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Important comment syntax not preserved in JS Minification</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528008</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528008</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;YUI compressor uses a modified version of Rhino to detect important comments which have the form /*! ... */. The contents of important comments are preserved and appear in the minified output from YUI compressor. This is a good thing as they are often used to include copyright and licensing information.&lt;/p&gt;

&lt;p&gt;Unfortunately, in the JavaScript minification process YUI converts the /*! ... */ comment into a regular /* ... */ comment. This means if you run YUI compressor on a JavaScript file that is already minified it will remove the important comment. This is a growing use case as more developers utilize automated minifers/performance tools these are often chained together or run mutliple times on the same resource at different steps of the development lifecycle.&lt;/p&gt;

&lt;p&gt;This behavior is also different from the way YUI Compressor handles important comments in CSS. Important comments in CSS are left in their /*! ... */ format so that multiple CSS minifying with YUI compressor will not remove the important comments.&lt;/p&gt;

&lt;p&gt;I've tracked down exactly the issue. It is caused by a single line of code in the modifed version of the class org.mozilla.javascript.TokenStream. Line 724. s1.substring(1) is used to remove the &amp;quot;!&amp;quot; from the contents of the comment. Replacing this line with &amp;quot;this.string = s1;&amp;quot; will solve this issue. I have attached patch for TokenStream.java to fix this bug.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>[bz 3218041] Compressor should use UTF-8 as default encoding </title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528014</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528014</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;The YUI Compressor currently uses the platform encoding if no charset is specified. This is dangerous, as JavaScript&lt;br /&gt;
files are often edited and processed on different platforms, and platform encodings are generally incompatible (on my&lt;br /&gt;
Mac I see MacRoman, which is hardly ever seen on the internet!).&lt;/p&gt;

&lt;p&gt;The tool should use UTF-8 as the default, the required encoding of both the internet and Yahoo:&lt;br /&gt;
&lt;a href=&quot;http://tools.ietf.org/html/rfc2277&quot;&gt;http://tools.ietf.org/html/rfc2277&lt;/a&gt;&lt;br /&gt;
[ see bugzilla ticket for link to additional internal documentation ]&lt;/p&gt;

&lt;p&gt;As this change may be a compatibility issue for third-party developers who have created JavaScript files with non-ASCII characters relying on a platform encoding other than UTF-8, it should only be made in a major release where a&lt;br /&gt;
compatibility break is acceptable. As a workaround for YUI, I have also filed bugzilla ticket 3199463 against the Builder tool.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Final semi-colon in each rule group not removed</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528017</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528017</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;If you try to compress CSS it always leaves the last semi-colon before the curly brace. For example the following CSS:&lt;br /&gt;
.header {&lt;br /&gt;
  margin: 0;&lt;br /&gt;
  background-color: #555753;&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;...comes back as:&lt;br /&gt;
.header{margin:0;background-color:#555753;}&lt;/p&gt;

&lt;p&gt;...but it should be:&lt;br /&gt;
.header{margin:0;background-color:#555753}&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Yuicompressor-2.4.2.jar cut @import tag while compressing css files</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528022</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528022</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Yuicompressor-2.4.2.jar cut @import tag while compressing css files, such as: @import url(&amp;quot;import1.css&amp;quot;); or @import url &amp;quot;import2.css&amp;quot;;&lt;/p&gt;

&lt;p&gt;java -jar yuicompressor-2.4.2.jar /home/akula/1.css -o /home/akula/1_min.css&lt;/p&gt;

&lt;p&gt;Before compress:&lt;br /&gt;
@import url('2.css');&lt;br /&gt;
.mLstSearchQuery{}&lt;br /&gt;
.mLstSearchForm{ display:block; float:left;}&lt;br /&gt;
.mLstFltMenu     {         background:url(../img/prof/menu/bg.gif) &lt;br /&gt;
...&lt;/p&gt;

&lt;p&gt;After compress:&lt;br /&gt;
.mLstSearchForm{display:block;float:left;}.mLstFltMenu{background:url(../img/prof/menu/bg.gif)  &lt;br /&gt;
...&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Exception thrown when handling specific CSS selector</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528034</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528034</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;This fails:&lt;br /&gt;
&lt;pre class=&quot;wikicode&quot;&gt;&lt;br /&gt;
a[href$=&amp;quot;/test/&amp;quot;] span:first-child { }&lt;br /&gt;
&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;This succeeds:&lt;br /&gt;
&lt;pre class=&quot;wikicode&quot;&gt;&lt;br /&gt;
a[href*=&amp;quot;/test/&amp;quot;] span:first-child { }&lt;br /&gt;
&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;As does this:&lt;br /&gt;
&lt;pre class=&quot;wikicode&quot;&gt;&lt;br /&gt;
a[href$=&amp;quot;/test/&amp;quot;] span { }&lt;br /&gt;
&lt;/pre&gt;&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>space not preserved when compressing CSS that contains attribute selector</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528043</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528043</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;I have a CSS directive that looks like this:&lt;/p&gt;

&lt;p&gt;span[style*=&amp;quot;color: #fff&amp;quot;][style*=&amp;quot;background-color: #000&amp;quot;] {&lt;br /&gt;
  color: #000 !important;&lt;br /&gt;
  background: none !important;&lt;br /&gt;
  font-style: italic !important;&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;When this is compressed by YUI Compressor the space is removed from &amp;quot;color: #fff&amp;quot;. Without that space it no longer matches what I want. I think any quoted strings inside an attribute selector should probably be left alone.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Fix the crash when compressing CSS files with $ characters inside the comments that needs to be preserved</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528044</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528044</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;When there's a need to preserve copyright notices in the CSS files and there's a source-control annotation with $ in the text, the compressor would fail with this error:&lt;/p&gt;

&lt;p&gt;java.lang.IllegalArgumentException: Illegal group reference&lt;br /&gt;
at java.util.regex.Matcher.appendReplacement(Matcher.java:713)&lt;br /&gt;
at com.yahoo.platform.yui.compressor.CssCompressor.compress(CssCompressor.java:86)&lt;br /&gt;
at com.amazon.javascript.tools.CompressorTask$CompressionType.compress(CompressorTask.java:161)&lt;br /&gt;
at com.amazon.javascript.tools.CompressorTask$CompressionType.access$100(CompressorTask.java:117)&lt;br /&gt;
at com.amazon.javascript.tools.CompressorTask.execute(CompressorTask.java:106)&lt;br /&gt;
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)&lt;br /&gt;
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)&lt;br /&gt;
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)&lt;br /&gt;
at java.lang.reflect.Method.invoke(Method.java:597)&lt;br /&gt;
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)&lt;br /&gt;
at org.apache.tools.ant.Task.perform(Task.java:348)&lt;br /&gt;
at org.apache.tools.ant.Target.execute(Target.java:357)&lt;br /&gt;
at org.apache.tools.ant.Target.performTasks(Target.java:385)&lt;br /&gt;
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)&lt;br /&gt;
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)&lt;br /&gt;
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)&lt;br /&gt;
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)&lt;br /&gt;
at org.apache.tools.ant.Main.runBuild(Main.java:758)&lt;br /&gt;
at org.apache.tools.ant.Main.startAnt(Main.java:217)&lt;br /&gt;
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)&lt;br /&gt;
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)&lt;/p&gt;

&lt;p&gt;This patch is to fix the crash.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>YUI Compressor breaks on some combinations of CSS3 attribute selector and pseudo classes</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528046</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528046</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;YUI Compressor will throw an exception on a CSS declaration like:&lt;/p&gt;

&lt;p&gt;&lt;pre class=&quot;wikicode&quot;&gt;ul[id$=foo] label:hover&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;I was unable to narrow down the bug any further.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>truncates '-webkit-transform-origin' double zero values to single zero value</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528060</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528060</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;YUI compressor appears to be truncating double zero settings for the '-webkit-transform-origin' property down to one zero.&lt;/p&gt;

&lt;p&gt;'-webkit-transform-origin: 0 0;' =&amp;gt; '-webkit-transform-origin:0;'&lt;/p&gt;

&lt;p&gt;Workaround is to set the '-x' and '-y' of the property separately.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Configuration.setOutput(String) forces output filename to lowercase [httpserver]</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528063</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528063</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;At line 208, the output filename is forced to lowercase.  This causes a FileNotFoundException on case-sensitive file systems, when the output filename includes a mixed-case output path, e.g. &amp;quot;clientcide-2.2.0/assets/stickyWinHTML/stickywin.css&amp;quot;&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>--nomunge option has the opposite effect [httpserver]</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528065</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528065</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;The &lt;pre class=&quot;wikicode&quot;&gt;--nomunge&lt;/pre&gt; option now appears to munge identifiers. Omitting the option leaves identifiers unmodified.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>@media syntax compression breaks deceleration</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528071</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528071</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;YUI Compressor will compress an @media rule such as:&lt;/p&gt;

&lt;p&gt;&lt;pre class=&quot;wikicode&quot;&gt;@media all and (max-device-width: 480px) &lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;to:&lt;/p&gt;

&lt;p&gt;&lt;pre class=&quot;wikicode&quot;&gt; @media all and(max-device-width: 480px) &lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;Which---to my knowledge--is invalid, and certainly breaks in Mobile Safari on iOS. The space between &amp;quot;and&amp;quot; and &amp;quot;(&amp;quot; needs to be retained.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>CSS selectors must be case-sensitive</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528102</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528102</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;ID and class names in CSS selectors should have their case preserved during compression.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>YUI Compressor Multiple Files</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/1872317</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/1872317</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;I use the YUI compressor as a part of a deployment script. When deploying, YUI compressor runs over 30 files and generally takes a few minutes.&lt;/p&gt;

&lt;p&gt;I beleive most of the time spent is on loading and unloading the jvm and the jar package.&lt;/p&gt;

&lt;p&gt;It would be awesome if YUI compressor could accept multiple files and outpout to multiple files at once.&lt;/p&gt;

&lt;p&gt;Eg.&lt;/p&gt;

&lt;p&gt;java -jar yuicompressor-x.y.z.jar myfile1.js,myfile2.js -o myfile-min.js,myfile2.js&lt;/p&gt;

&lt;p&gt;It doesnt have to have this syntax, but just some mechanism of doing this.&lt;/p&gt;

&lt;p&gt;Thanks,&lt;/p&gt;

&lt;p&gt;Scott&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>Remove ;} in CSS</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2060448</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2060448</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;It appears that YUI compressor for css usually creates this type of code:&lt;/p&gt;

&lt;p&gt;.test{color:#444;}&lt;/p&gt;

&lt;p&gt;While that is fine, it's even better to remove the semicolon and write this:&lt;/p&gt;

&lt;p&gt;.test{color:#444}&lt;/p&gt;

&lt;p&gt;The result is equally valid but can reduce the filesize quite a bit in larger CSS files.&lt;/p&gt;

&lt;p&gt;Currently I have to perform this step with a text editor, and I would very much like to see this built in to YUI compressor.&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br /&gt;
Steven&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>bypassing dataurl for faster parsing</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527990</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527990</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;css compression is very slow on big file-sizes.&lt;br /&gt;
I played arraound with data url background images so my css file had a size of about 140kb and yuicompressor takes 5 min to comress it.&lt;br /&gt;
so my idea is to bypass dataurls, maybe this is implementable in a later release of yuicompressor?&lt;/p&gt;

&lt;p&gt;this is the data url-example I am using. this backround image line is 90kb?&lt;/p&gt;

&lt;ol&gt;
    &lt;li&gt;selector1, #selctor2 {&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;background: url(&amp;quot;data:image/png;base64,iVBORw_looongdata&amp;quot;);&lt;br /&gt;
}&lt;/p&gt;

&lt;p&gt;i have the current css I am playing with in the attachement.&lt;/p&gt;

&lt;p&gt;kind regards&lt;br /&gt;
tanila&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>border:none -&gt; border:0</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528040</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528040</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;(via phpied.com)&lt;br /&gt;
Mathias (http://mathiasbynens.be/) Says:&lt;br /&gt;
May 28th, 2010 at 7:56 am&lt;/p&gt;

&lt;p&gt;Some additional optimizations:&lt;br /&gt;
&lt;pre class=&quot;wikicode&quot;&gt;&lt;br /&gt;
.test { border:none; }&lt;br /&gt;
&lt;/pre&gt;&lt;br /&gt;
Compressed:&lt;br /&gt;
&lt;pre class=&quot;wikicode&quot;&gt;&lt;br /&gt;
.test{border:none}&lt;br /&gt;
&lt;/pre&gt;&lt;br /&gt;
Could be:&lt;br /&gt;
&lt;pre class=&quot;wikicode&quot;&gt;&lt;br /&gt;
.test{border:0}&lt;br /&gt;
&lt;/pre&gt;&lt;br /&gt;
The same goes for other CSS properties that have a none value but can also take numeric values.&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>[Pull Request] - Don't bork Safari by removing spaces in front of parens in @media lines.</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527986</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527986</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Pull Request from &lt;a href=&quot;http://github.com/isaacs&quot;&gt;isaacs&lt;/a&gt;&lt;br /&gt;
Commit: &lt;a href=&quot;http://github.com/isaacs/yuicompressor/commit/0e290b8e05392f19bccc2f7d524725a87739e6d6&quot;&gt;http://github.com/isaacs/yuicompressor/commit/0e290b8e05392f19bccc2f7d524725a87739e6d6&lt;/a&gt;&lt;br /&gt;
Files modified:&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt; &lt;a href=&quot;http://github.com/isaacs/yuicompressor/tree/0e290b8e05392f19bccc2f7d524725a87739e6d6/src/com/yahoo/platform/yui/compressor/CssCompressor.java&quot;&gt;src/com/yahoo/platform/yui/compressor/CssCompressor.java&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>[Pull Request] - Add a test script and a functional test for the safari-borking bug reported by rharmes.</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2527987</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2527987</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;Pull Request from &lt;a href=&quot;http://github.com/isaacs&quot;&gt;isaacs&lt;/a&gt;&lt;br /&gt;
Commit: &lt;a href=&quot;http://github.com/isaacs/yuicompressor/commit/04665d549a79f57a9b22d2f640cd9a1d2847ac9f&quot;&gt;http://github.com/isaacs/yuicompressor/commit/04665d549a79f57a9b22d2f640cd9a1d2847ac9f&lt;/a&gt;&lt;br /&gt;
Files added:&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt; &lt;a href=&quot;http://github.com/isaacs/yuicompressor/tree/04665d549a79f57a9b22d2f640cd9a1d2847ac9f/tests/README&quot;&gt;tests/README&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt; &lt;a href=&quot;http://github.com/isaacs/yuicompressor/tree/04665d549a79f57a9b22d2f640cd9a1d2847ac9f/tests/media-test.css&quot;&gt;tests/media-test.css&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt; &lt;a href=&quot;http://github.com/isaacs/yuicompressor/tree/04665d549a79f57a9b22d2f640cd9a1d2847ac9f/tests/media-test.css.min&quot;&gt;tests/media-test.css.min&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt; &lt;a href=&quot;http://github.com/isaacs/yuicompressor/tree/04665d549a79f57a9b22d2f640cd9a1d2847ac9f/tests/suite.sh&quot;&gt;tests/suite.sh&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
<item>
   <title>[Pull Request] - Fix whitespace</title>
   <link>http://yuilibrary.com//projects/yuicompressor/ticket/2528099</link>
   <guid isPermaLink="false">http://yuilibrary.com//projects/yuicompressor/ticket/2528099</guid>
   <description>&lt;span class=&quot;wikipage&quot;&gt;&lt;p&gt;This fixes the whitespace issue&lt;/p&gt;

&lt;/span&gt;</description>
   <category>Report</category>
</item>
 </channel>
</rss>
