|
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. |