src/cm/scripts/lib/yuicompressor-2.4.2/doc/CHANGELOG
changeset 0 40c8f766c9b8
equal deleted inserted replaced
-1:000000000000 0:40c8f766c9b8
       
     1 YUI Compressor 2.4.2, 2008-11-10
       
     2 --------------------------------
       
     3 
       
     4 + Preserved comments shouldn't prevent obfuscation (Thanks to Matjaz Lipus)
       
     5 
       
     6 YUI Compressor 2.4.1, 2008-10-28
       
     7 --------------------------------
       
     8 
       
     9 + Use preferentially lower case letters for obfuscated variable names.
       
    10   Since JavaScript keywords use lower case letters most often, this
       
    11   improves the efficiency of any compression algorithm (gzipping)
       
    12   used after minification.
       
    13 + Don't append a semi-colon at the end of a JavaScript file when the
       
    14   last token is a special comment.
       
    15 
       
    16 YUI Compressor 2.4, 2008-10-21
       
    17 ------------------------------
       
    18 
       
    19 + Allowed the YUI Compressor (which uses a modified version of Rhino)
       
    20   to work alongside the original (unmodified) rhino library by using
       
    21   a custom class loader.
       
    22 + Added all that's necessary to build the YUI Compressor to the
       
    23   downloable package.
       
    24 + Fixed unnecessary white space after return / typeof when possible.
       
    25 
       
    26 YUI Compressor 2.3.6, 2008-07-10
       
    27 --------------------------------
       
    28 
       
    29 + Fixed a few minor bugs with the CSS compressor
       
    30 + Changed packaging. The original Rhino library, which is used to build the
       
    31   YUI Compressor, is not part of the downloadable archive. Too many people
       
    32   put it in their classpath, generating a lot of invalid bugs.
       
    33 
       
    34 YUI Compressor 2.3.5, 2008-02-08
       
    35 --------------------------------
       
    36 
       
    37 + Added a warning when more than one 'var' statement is used in a single scope.
       
    38   Automatic coalescence is extremely complicated, and would be unsafe if not
       
    39   done properly.
       
    40 
       
    41 YUI Compressor 2.3.4, 2008-02-07
       
    42 --------------------------------
       
    43 
       
    44 + Expanded the list of reserved words used by isValidIdentifier()
       
    45 
       
    46 YUI Compressor 2.3.3, 2008-02-04
       
    47 --------------------------------
       
    48 
       
    49 + C-style comments starting with /*! are preserved. This is especially
       
    50   useful with comments containing copyright/license information.
       
    51 
       
    52 YUI Compressor 2.3.2, 2008-02-01
       
    53 --------------------------------
       
    54 
       
    55 + Compressing an empty JS file throws an error [SourceForge bug #1884207]
       
    56 + When a string is the first token in a function body, it was removed from
       
    57   the compressed file [SourceForge bug #1884314]
       
    58 
       
    59 YUI Compressor 2.3.1, 2008-01-30
       
    60 --------------------------------
       
    61 
       
    62 + Added test against list of reserved words in method isValidIdentifier.
       
    63 
       
    64 YUI Compressor 2.3, 2008-01-28
       
    65 ------------------------------
       
    66 
       
    67 + Always output a ';' at the end of a minified JavaScript file. This allows
       
    68   the concatenating of several minified files without the fear of introducing
       
    69   a syntax error.
       
    70 + Removed all System.exit() statements. Throw exceptions instead. This is
       
    71   especially useful when running the compressor from within a J2EE container.
       
    72   [SourceForge bug #1834750]
       
    73 + Transform obj["foo"] into obj.foo whenever possible, saving 3 bytes.
       
    74 + Transform 'foo': ... into foo: ... whenever possible, saving 2 bytes.
       
    75 + Added support for multi-line string literals [SourceForge bug #1871453]
       
    76 + Added support for unescaped slashes inside character classes in regexp.
       
    77 + Minor performance improvements.
       
    78 + Preserve the escaping for an octal representation of a character in string
       
    79   literals [SourceForge bug #1844894]
       
    80 
       
    81     var a = '\001';
       
    82 
       
    83 + CSS: Preserve comments that hide CSS rules from IE Mac:
       
    84 
       
    85     /* Hides from IE-mac \*/
       
    86     ...
       
    87     /* End hide from IE-mac */
       
    88 
       
    89 + CSS: Added support for box model hack [SourceForge bug #1862107]
       
    90 
       
    91     div.content {
       
    92       width:400px;
       
    93       voice-family: "\"}\"";
       
    94       voice-family:inherit;
       
    95       width:300px;
       
    96     }
       
    97 
       
    98 YUI Compressor 2.2.5, 2007-10-09
       
    99 --------------------------------
       
   100 
       
   101 + Remove line terminator after escape in string literals.
       
   102 
       
   103 YUI Compressor 2.2.4, 2007-10-01
       
   104 --------------------------------
       
   105 
       
   106 + Fixed the way quote characters are counted in string literals
       
   107   [SourceForge bug #1804576]
       
   108 + Do not use a regular expression using non-greedy matching to remove CSS
       
   109   comments (if the comment is more than 800 characters long or so, a stack
       
   110   overflow exception gets thrown) Instead, use good old parsing...
       
   111 + Fix unnecessary quote escaping in string literals.
       
   112 
       
   113 YUI Compressor 2.2.3, 2007-09-28
       
   114 --------------------------------
       
   115 
       
   116 + Transform </script into <\/script instead of replacing all </ into <\/.
       
   117 + Fixed bug related to the shortening of hexadecimal color codes (the string
       
   118   "1px solid #aabbcc" became "1px solid#abc", missing a required white space)
       
   119 + Added --preserve-strings option to specify that concatenated string literals
       
   120   should never be merged.
       
   121 + Do not convert \uXXXX and \xXX escape sequences to their unicode equivalent.
       
   122 
       
   123 YUI Compressor 2.2.2, 2007-09-27
       
   124 --------------------------------
       
   125 
       
   126 + Fixed regression related to the optimization of the amount of escaping
       
   127   in string literals and the concatenation of string literals.
       
   128 + Modified the Rhino tokenizer to handle JScript conditional comments
       
   129   natively (instead of hacking around the fact that Rhino is not keeping
       
   130   track of comments)
       
   131 + Transform </ into <\/ in string literals. This is especially useful if the
       
   132   code is written to a script block in an HTML document. This renders the old
       
   133   hack '<scr'+'ipt ...><'+'/script>' completely useless.
       
   134 + When converting decimal rgb color values to hexadecimal color values,
       
   135   prepend a '0' if the value is less than 16. Otherwise, rgb(0,124,114)
       
   136   for instance becomes #07c72, which is incorrect.
       
   137 + In CSS files, do not change color names into their corresponding color
       
   138   codes (and vice-versa) due to the high potential of introducing bugs
       
   139   (rolled back from 2.2.1)
       
   140 
       
   141 YUI Compressor 2.2.1, 2007-09-25
       
   142 --------------------------------
       
   143 
       
   144 + Optimize quote escaping in JavaScript string literals by using the best quote
       
   145   character (' or " depending on the occurrence of this character in the string)
       
   146 + Fixed minor bug in the CSS compressor. Colors should not be shortened in
       
   147       filter: chroma(color="#FFFFFF");
       
   148   Otherwise, it makes the filter break in Internet Explorer.
       
   149 + In CSS files, change color names into their corresponding color codes
       
   150   (and vice-versa) if that change yields any savings.
       
   151 
       
   152 YUI Compressor 2.2, 2007-09-18
       
   153 ------------------------------
       
   154 
       
   155 + Don't obfuscate function argument named $super if it is the first function
       
   156   argument listed. This is to support Prototype 1.6's heretic implementation.
       
   157 + Added support for stdin/stdout (see README for more info)
       
   158 + Shorten colors from rgb(51,102,153) to #336699 in CSS files.
       
   159 + Shorten values from 0.8em to .8em in CSS files.
       
   160 + Added support for Internet Explorer's conditional comments in JavaScript
       
   161   files. Note that the presence of a conditional comment inside a function
       
   162   (i.e. not in the global scope) will reduce the level of compression for the
       
   163   same reason  the use of 'eval' or 'with' reduces the level of compression
       
   164   (conditional comments, which do not get parsed, may refer to local variables,
       
   165   which get obfuscated) In any case, the use of Internet Explorer's conditional
       
   166   comment is to be avoided.
       
   167 
       
   168 YUI Compressor 2.1.2, 2007-08-31
       
   169 --------------------------------
       
   170 
       
   171 + Added --preserve-semi option
       
   172 + Modified --line-break option
       
   173 
       
   174 YUI Compressor 2.1.1, 2007-08-30
       
   175 --------------------------------
       
   176 
       
   177 + Fixed missing space in CSS background:url('foo.png')no-repeat
       
   178   causing a background not to appear on Internet Explorer.
       
   179 
       
   180 YUI Compressor 2.1, 2007-08-29
       
   181 ------------------------------
       
   182 
       
   183 + Pass the --line-break option to the CSS compressor.
       
   184 + Allow the output file to overwrite the input file (with version 2.0,
       
   185   in this case, the output file was always empty)
       
   186 + Remove spaces before and after '(' and ')' as in background:url('xxx');
       
   187 + Merge (if possible) string literals that are appended in JavaScript files.
       
   188   This not only makes the code smaller, it makes the code faster,
       
   189   but allows you to maintain some readability in your source code.
       
   190 + Handle constructs such as a + ++ b or a + + "1" (in which case the
       
   191   space between the operators must be kept!) and other similar cases...
       
   192 + Pass ErrorReporter instance to the constructor of class JavaScriptCompressor
       
   193   (as suggested by David Bernard for his integration  of the YUI Compressor
       
   194   as a maven plugin)
       
   195 
       
   196 YUI Compressor 2.0, 2007-08-27
       
   197 ------------------------------
       
   198 
       
   199 + Switched from Rhino 1.6R6 to Rhino 1.6R7
       
   200 + Integrated Isaac Schlueter's CSS compressor.
       
   201 + Refactored code to make it easier to use the compressor from a servlet
       
   202   environment or another Java app (no need to pass in file names anymore)
       
   203 + Output a white-space character after 'throw' only when necessary.
       
   204 + Output a white-space character after 'break' and 'continue' when followed
       
   205   by a label.
       
   206 
       
   207 YUI Compressor 1.1, 2007-08-20
       
   208 ------------------------------
       
   209 
       
   210 + Java source now in package com.yahoo.platform.yui.compressor
       
   211 + Added --line-break option that adds a line feed character after each
       
   212   semi-colon character (may help debugging with the MS Script debugger)
       
   213 + Added support for missing JavaScript features (get, set, const)
       
   214 + Do not show the entire stack trace when the input file cannot be found.
       
   215 + Removed the randomization of obfuscated symbols. When compressed code is
       
   216   checked in CVS, unchanged files would otherwise end up being versioned.
       
   217 + Added web-based front-end to the YUI Compressor as part of the dist package.
       
   218 + Added a public entry point that makes the YUI Compressor easy to integrate
       
   219   with an already existing Java application.
       
   220 + Simplified code by using the same parsing routines used to build the symbol
       
   221   tree while looking for undeclared symbols.
       
   222 + Count how many times each identifier is used, and display a warning when an
       
   223   identifier seems to be unused (code cannot safely be removed automatically)
       
   224 + Remove ';' when followed by a '}'. This yields an additional ~1.5% savings
       
   225   on yahoo-dom-event.js compared to the JSMin version.
       
   226 + Output a white-space character after 'return' and 'case' only when necessary.