[pkg-java] r13790 - in trunk/yui-compressor/debian: . patches
Damien Raude-Morvan
drazzib at alioth.debian.org
Sun Jun 12 20:30:38 UTC 2011
Author: drazzib
Date: 2011-06-12 20:30:37 +0000 (Sun, 12 Jun 2011)
New Revision: 13790
Added:
trunk/yui-compressor/debian/patches/fix_testsuite.diff
trunk/yui-compressor/debian/patches/rhino17R3.diff
Removed:
trunk/yui-compressor/debian/patches/decompiler.patch
trunk/yui-compressor/debian/patches/parser.patch
trunk/yui-compressor/debian/patches/token.patch
trunk/yui-compressor/debian/patches/tokenstream.patch
Modified:
trunk/yui-compressor/debian/changelog
trunk/yui-compressor/debian/control
trunk/yui-compressor/debian/copyright
trunk/yui-compressor/debian/fetch-upstream
trunk/yui-compressor/debian/patches/series
trunk/yui-compressor/debian/rules
Log:
* New source tarball without embedded Rhino source code:
- Update d/copyright since there is no more Rhino source code in this
tarball.
- d/patches/{parser,token,decompiler,tokenstream}.patch: Dropped.
* d/patches/fix_testsuite.diff: Fix test suite to use /usr/share/java/js.jar
* d/patches/rhino17R3.diff: Use Rhino AST API to plug-in this compressor.
Modified: trunk/yui-compressor/debian/changelog
===================================================================
--- trunk/yui-compressor/debian/changelog 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/changelog 2011-06-12 20:30:37 UTC (rev 13790)
@@ -1,3 +1,14 @@
+yui-compressor (2.4.6+debian1-1) unstable; urgency=low
+
+ * New source tarball without embedded Rhino source code:
+ - Update d/copyright since there is no more Rhino source code in this
+ tarball.
+ - d/patches/{parser,token,decompiler,tokenstream}.patch: Dropped.
+ * d/patches/fix_testsuite.diff: Fix test suite to use /usr/share/java/js.jar
+ * d/patches/rhino17R3.diff: Use Rhino AST API to plug-in this compressor.
+
+ -- Damien Raude-Morvan <drazzib at debian.org> Sun, 12 Jun 2011 22:04:43 +0200
+
yui-compressor (2.4.6-1) unstable; urgency=low
* New upstream release (Closes: #622856).
Modified: trunk/yui-compressor/debian/control
===================================================================
--- trunk/yui-compressor/debian/control 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/control 2011-06-12 20:30:37 UTC (rev 13790)
@@ -5,7 +5,7 @@
Uploaders: Dominik Smatana <dominik.smatana at gmail.com>, Damien Raude-Morvan <drazzib at debian.org>,
Michael Gilbert <michael.s.gilbert at gmail.com>
Build-Depends: cdbs, debhelper (>= 7), default-jdk, ant
-Build-Depends-Indep: libjargs-java, rhino (>= 1.7R2), rhino (<< 1.7R3)
+Build-Depends-Indep: libjargs-java, librhino-java (>= 1.7R3)
Homepage: http://yuilibrary.com/projects/yuicompressor/
Vcs-Svn: svn://svn.debian.org/svn/pkg-java/trunk/yui-compressor/
Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/yui-compressor/
@@ -13,7 +13,8 @@
Package: yui-compressor
Architecture: all
-Depends: ${misc:Depends}, default-jre-headless | java5-runtime-headless, libjargs-java, java-wrappers
+Depends: ${misc:Depends}, default-jre-headless | java5-runtime-headless,
+ libjargs-java, java-wrappers, librhino-java (>= 1.7R3)
Description: JavaScript/CSS minifier
The YUI Compressor is a JavaScript compressor which, in addition to removing
comments and white-spaces, obfuscates local variables using the smallest
Modified: trunk/yui-compressor/debian/copyright
===================================================================
--- trunk/yui-compressor/debian/copyright 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/copyright 2011-06-12 20:30:37 UTC (rev 13790)
@@ -69,43 +69,6 @@
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-Files: src/org/*
-Copyright: Copyright 1997-1999, Netscape Communications Corporation.
-License: MPL-1.1 | GPL-2+
- The contents of this file are subject to the Mozilla Public License Version
- 1.1 (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
- http://www.mozilla.org/MPL/
- .
- Software distributed under the License is distributed on an "AS IS" basis,
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- for the specific language governing rights and limitations under the
- License.
- .
- The Original Code is Rhino code, released
- May 6, 1999.
- .
- The Initial Developer of the Original Code is
- Netscape Communications Corporation.
- Portions created by the Initial Developer are Copyright (C) 1997-1999
- the Initial Developer. All Rights Reserved.
- .
- Contributor(s):
- Mike Ang
- Igor Bukanov
- Bob Jervis
- Mike McCabe
- .
- Alternatively, the contents of this file may be used under the terms of
- the GNU General Public License Version 2 or later (the "GPL"), in which
- case the provisions of the GPL are applicable instead of those above. If
- you wish to allow use of your version of this file only under the terms of
- the GPL and not to allow others to use your version of this file under the
- MPL, indicate your decision by deleting the provisions above and replacing
- them with the notice and other provisions required by the GPL. If you do
- not delete the provisions above, a recipient may use your version of this
- file under either the MPL or the GPL.
-
Files: debian/*
Copyright: Copyright 2009, Dominik Smatana <dominik.smatana at gmail.com>
Copyright: Copyright 2009-2011, Damien Raude-Morvan <drazzib at debian.org>
Modified: trunk/yui-compressor/debian/fetch-upstream
===================================================================
--- trunk/yui-compressor/debian/fetch-upstream 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/fetch-upstream 2011-06-12 20:30:37 UTC (rev 13790)
@@ -3,16 +3,16 @@
echo $#
if test "$#" != "2" ; then
- echo "usage: $0 <upstream version number> <rhino library version number>"
+ echo "usage: $0 <upstream version number> <expected tarball version>"
exit 1
fi
version="$1"
-rhino_version="$2"
+orig_tarball_version="$2"
curdir="$PWD"
# download
cd /tmp
-wget -N http://yuilibrary.com/downloads/yuicompressor/yuicompressor-$version.zip
+wget -N http://yui.zenfs.com/releases/yuicompressor/yuicompressor-$version.zip
unzip -xq yuicompressor-$version.zip
rm yuicompressor-$version.zip
@@ -21,17 +21,9 @@
rm -rf yuicompressor-$version/lib
rm -rf yuicompressor-$version/src/org/mozilla/javascript/*
-# download rhino source
-apt-get source rhino=$rhino_version
-rhino_version="$(echo $rhino_version | cut -d - -f 1)"
-cp rhino-$rhino_version/src/org/mozilla/javascript/Decompiler.java yuicompressor-$version/src/org/mozilla/javascript
-cp rhino-$rhino_version/src/org/mozilla/javascript/Parser.java yuicompressor-$version/src/org/mozilla/javascript
-cp rhino-$rhino_version/src/org/mozilla/javascript/Token.java yuicompressor-$version/src/org/mozilla/javascript
-cp rhino-$rhino_version/src/org/mozilla/javascript/TokenStream.java yuicompressor-$version/src/org/mozilla/javascript
-
# repack
mv yuicompressor-$version yui-compressor-$version
-tar czf yui-compressor_$version.orig.tar.gz yui-compressor-$version
+tar czf yui-compressor_$orig_tarball_version.orig.tar.gz yui-compressor-$version
rm -rf yui-compressor-$version
-mv yui-compressor_$version.orig.tar.gz $curdir
+mv yui-compressor_$orig_tarball_version.orig.tar.gz $curdir
echo "Done: successfully created yui-compressor_$version.orig.tar.gz."
Deleted: trunk/yui-compressor/debian/patches/decompiler.patch
===================================================================
--- trunk/yui-compressor/debian/patches/decompiler.patch 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/patches/decompiler.patch 2011-06-12 20:30:37 UTC (rev 13790)
@@ -1,23 +0,0 @@
-YUI patch for the Rhino library's Decompiler.java
-===================================================================
---- a/src/org/mozilla/javascript/Decompiler.java.orig 2008-11-14 10:13:36.000000000 -0500
-+++ b/src/org/mozilla/javascript/Decompiler.java 2008-11-14 10:13:36.000000000 -0500
-@@ -166,6 +166,18 @@
- appendString('/' + regexp + '/' + flags);
- }
-
-+ void addJScriptConditionalComment(String str)
-+ {
-+ addToken(Token.CONDCOMMENT);
-+ appendString(str);
-+ }
-+
-+ void addPreservedComment(String str)
-+ {
-+ addToken(Token.KEEPCOMMENT);
-+ appendString(str);
-+ }
-+
- void addNumber(double n)
- {
- addToken(Token.NUMBER);
Added: trunk/yui-compressor/debian/patches/fix_testsuite.diff
===================================================================
--- trunk/yui-compressor/debian/patches/fix_testsuite.diff (rev 0)
+++ trunk/yui-compressor/debian/patches/fix_testsuite.diff 2011-06-12 20:30:37 UTC (rev 13790)
@@ -0,0 +1,15 @@
+Description: Use /usr/share/java/js.jar
+Author: Damien Raude-Morvan <drazzib at debian.org>
+Last-Update: 2011-06-12
+Forwarded: not-needed
+--- a/tests/suite.sh
++++ b/tests/suite.sh
+@@ -18,7 +18,7 @@
+
+ if [ "$2" == "cssminjs" ]; then
+ actual="$(
+- java -jar ../lib/rhino-1.6R7.jar suite.rhino $testfile
++ java -jar /usr/share/java/js.jar suite.rhino $testfile
+ )"
+
+ else
Deleted: trunk/yui-compressor/debian/patches/parser.patch
===================================================================
--- trunk/yui-compressor/debian/patches/parser.patch 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/patches/parser.patch 2011-06-12 20:30:37 UTC (rev 13790)
@@ -1,37 +0,0 @@
-YUI patch for the Rhino library's Parser.java
-===================================================================
---- a/src/org/mozilla/javascript/Parser.java
-+++ b/src/org/mozilla/javascript/Parser.java
-@@ -169,11 +169,30 @@
- {
- int tt = currentFlaggedToken;
- if (tt == Token.EOF) {
-- tt = ts.getToken();
-+
-+ while ((tt = ts.getToken()) == Token.CONDCOMMENT || tt == Token.KEEPCOMMENT) {
-+ if (tt == Token.CONDCOMMENT) {
-+ /* Support for JScript conditional comments */
-+ decompiler.addJScriptConditionalComment(ts.getString());
-+ } else {
-+ /* Support for preserved comments */
-+ decompiler.addPreservedComment(ts.getString());
-+ }
-+ }
-+
- if (tt == Token.EOL) {
- do {
- tt = ts.getToken();
-- } while (tt == Token.EOL);
-+
-+ if (tt == Token.CONDCOMMENT) {
-+ /* Support for JScript conditional comments */
-+ decompiler.addJScriptConditionalComment(ts.getString());
-+ } else if (tt == Token.KEEPCOMMENT) {
-+ /* Support for preserved comments */
-+ decompiler.addPreservedComment(ts.getString());
-+ }
-+
-+ } while (tt == Token.EOL || tt == Token.CONDCOMMENT || tt == Token.KEEPCOMMENT);
- tt |= TI_AFTER_EOL;
- }
- currentFlaggedToken = tt;
Added: trunk/yui-compressor/debian/patches/rhino17R3.diff
===================================================================
--- trunk/yui-compressor/debian/patches/rhino17R3.diff (rev 0)
+++ trunk/yui-compressor/debian/patches/rhino17R3.diff 2011-06-12 20:30:37 UTC (rev 13790)
@@ -0,0 +1,83 @@
+Description: Port this parser to new Rhino 1.7R3 AST API.
+Author: Damien Raude-Morvan <drazzib at debian.org>
+Last-Update: 2011-06-12
+Forwarded: https://github.com/yui/yuicompressor/pull/9
+--- a/src/com/yahoo/platform/yui/compressor/JavaScriptCompressor.java
++++ b/src/com/yahoo/platform/yui/compressor/JavaScriptCompressor.java
+@@ -9,6 +9,7 @@
+ package com.yahoo.platform.yui.compressor;
+
+ import org.mozilla.javascript.*;
++import org.mozilla.javascript.ast.*;
+
+ import java.io.IOException;
+ import java.io.Reader;
+@@ -309,8 +310,11 @@
+
+ CompilerEnvirons env = new CompilerEnvirons();
+ Parser parser = new Parser(env, reporter);
+- parser.parse(in, null, 1);
+- String source = parser.getEncodedSource();
++ AstRoot ast = parser.parse(in, null, 1);
++ IRFactory irf = new IRFactory(env, reporter);
++ ScriptNode tree = irf.transformTree(ast);
++
++ String source = tree.getEncodedSource();
+
+ int offset = 0;
+ int length = source.length();
+@@ -321,8 +325,7 @@
+ int tt = source.charAt(offset++);
+ switch (tt) {
+
+- case Token.CONDCOMMENT:
+- case Token.KEEPCOMMENT:
++ case Token.COMMENT:
+ case Token.NAME:
+ case Token.REGEXP:
+ case Token.STRING:
+@@ -833,12 +836,14 @@
+ parensNesting--;
+ break;
+
+- case Token.CONDCOMMENT:
++ case Token.COMMENT:
++ //if (token.commentType == Token.CommentType.JSDOC) {
+ if (mode == BUILDING_SYMBOL_TREE) {
+ protectScopeFromObfuscation(currentScope);
+ warn("Using JScript conditional comments is not recommended." + (munge ? " Moreover, using JScript conditional comments reduces the level of compression!" : ""), true);
+ }
+ break;
++ //}
+
+ case Token.NAME:
+ symbol = token.getValue();
+@@ -986,7 +991,7 @@
+ parseCatch();
+ break;
+
+- case Token.CONDCOMMENT:
++ case Token.COMMENT:
+ if (mode == BUILDING_SYMBOL_TREE) {
+ protectScopeFromObfuscation(scope);
+ warn("Using JScript conditional comments is not recommended." + (munge ? " Moreover, using JScript conditional comments reduces the level of compression." : ""), true);
+@@ -1276,8 +1281,7 @@
+ }
+ break;
+
+- case Token.CONDCOMMENT:
+- case Token.KEEPCOMMENT:
++ case Token.COMMENT:
+ if (result.length() > 0 && result.charAt(result.length() - 1) != '\n') {
+ result.append("\n");
+ }
+@@ -1303,8 +1307,7 @@
+ // end of one file may very likely cause a syntax error)
+ if (!preserveAllSemiColons &&
+ result.length() > 0 &&
+- getToken(-1).getType() != Token.CONDCOMMENT &&
+- getToken(-1).getType() != Token.KEEPCOMMENT) {
++ getToken(-1).getType() != Token.COMMENT) {
+ if (result.charAt(result.length() - 1) == '\n') {
+ result.setCharAt(result.length() - 1, ';');
+ } else {
Modified: trunk/yui-compressor/debian/patches/series
===================================================================
--- trunk/yui-compressor/debian/patches/series 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/patches/series 2011-06-12 20:30:37 UTC (rev 13790)
@@ -1,5 +1,3 @@
+rhino17R3.diff
+fix_testsuite.diff
use-system-libraries.patch
-decompiler.patch
-parser.patch
-token.patch
-tokenstream.patch
Deleted: trunk/yui-compressor/debian/patches/token.patch
===================================================================
--- trunk/yui-compressor/debian/patches/token.patch 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/patches/token.patch 2011-06-12 20:30:37 UTC (rev 13790)
@@ -1,17 +0,0 @@
-YUI patch for the Rhino library's Token.java
-===================================================================
---- a/src/org/mozilla/javascript/Token.java.orig 2009-12-25 00:39:07.000000000 -0500
-+++ b/src/org/mozilla/javascript/Token.java 2009-12-25 00:39:39.000000000 -0500
-@@ -258,7 +258,11 @@
- LETEXPR = 157,
- WITHEXPR = 158,
- DEBUGGER = 159,
-- LAST_TOKEN = 159;
-+
-+ CONDCOMMENT = 160,
-+ KEEPCOMMENT = 161,
-+
-+ LAST_TOKEN = 162;
-
- public static String name(int token)
- {
Deleted: trunk/yui-compressor/debian/patches/tokenstream.patch
===================================================================
--- trunk/yui-compressor/debian/patches/tokenstream.patch 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/patches/tokenstream.patch 2011-06-12 20:30:37 UTC (rev 13790)
@@ -1,174 +0,0 @@
-YUI patch for the Rhino library's TokenStream.java
-===================================================================
---- a/src/org/mozilla/javascript/TokenStream.java
-+++ b/src/org/mozilla/javascript/TokenStream.java
-@@ -526,7 +526,7 @@
- stringBufferTop = 0;
-
- c = getChar();
-- strLoop: while (c != quoteChar) {
-+ while (c != quoteChar) {
- if (c == '\n' || c == EOF_CHAR) {
- ungetChar(c);
- parser.addError("msg.unterminated.string.lit");
-@@ -535,89 +535,47 @@
-
- if (c == '\\') {
- // We've hit an escaped character
-- int escapeVal;
-
- c = getChar();
-+
- switch (c) {
-- case 'b': c = '\b'; break;
-- case 'f': c = '\f'; break;
-- case 'n': c = '\n'; break;
-- case 'r': c = '\r'; break;
-- case 't': c = '\t'; break;
--
-- // \v a late addition to the ECMA spec,
-- // it is not in Java, so use 0xb
-- case 'v': c = 0xb; break;
--
-- case 'u':
-- // Get 4 hex digits; if the u escape is not
-- // followed by 4 hex digits, use 'u' + the
-- // literal character sequence that follows.
-- int escapeStart = stringBufferTop;
-- addToString('u');
-- escapeVal = 0;
-- for (int i = 0; i != 4; ++i) {
-- c = getChar();
-- escapeVal = Kit.xDigitToInt(c, escapeVal);
-- if (escapeVal < 0) {
-- continue strLoop;
-- }
-+
-+ case '\\': // backslash
-+ case 'b': // backspace
-+ case 'f': // form feed
-+ case 'n': // line feed
-+ case 'r': // carriage return
-+ case 't': // horizontal tab
-+ case 'v': // vertical tab
-+ case 'd': // octal sequence
-+ case 'u': // unicode sequence
-+ case 'x': // hexadecimal sequence
-+ // Only keep the '\' character for those
-+ // characters that need to be escaped...
-+ // Don't escape quoting characters...
-+ addToString('\\');
- addToString(c);
-- }
-- // prepare for replace of stored 'u' sequence
-- // by escape value
-- stringBufferTop = escapeStart;
-- c = escapeVal;
-- break;
-- case 'x':
-- // Get 2 hex digits, defaulting to 'x'+literal
-- // sequence, as above.
-- c = getChar();
-- escapeVal = Kit.xDigitToInt(c, 0);
-- if (escapeVal < 0) {
-- addToString('x');
-- continue strLoop;
-- } else {
-- int c1 = c;
-- c = getChar();
-- escapeVal = Kit.xDigitToInt(c, escapeVal);
-- if (escapeVal < 0) {
-- addToString('x');
-- addToString(c1);
-- continue strLoop;
-- } else {
-- // got 2 hex digits
-- c = escapeVal;
-- }
-- }
-- break;
-+ break;
-
-- case '\n':
-- // Remove line terminator after escape to follow
-- // SpiderMonkey and C/C++
-- c = getChar();
-- continue strLoop;
--
-- default:
-- if ('0' <= c && c < '8') {
-- int val = c - '0';
-- c = getChar();
-- if ('0' <= c && c < '8') {
-- val = 8 * val + c - '0';
-- c = getChar();
-- if ('0' <= c && c < '8' && val <= 037) {
-- // c is 3rd char of octal sequence only
-- // if the resulting val <= 0377
-- val = 8 * val + c - '0';
-- c = getChar();
-- }
-+ case '\n':
-+ // Remove line terminator after escape
-+ break;
-+
-+ default:
-+ if (isDigit(c)) {
-+ // Octal representation of a character.
-+ // Preserve the escaping (see Y! bug #1637286)
-+ addToString('\\');
- }
-- ungetChar(c);
-- c = val;
-- }
-+ addToString(c);
-+ break;
- }
-+
-+ } else {
-+
-+ addToString(c);
- }
-- addToString(c);
-+
- c = getChar();
- }
-
-@@ -760,16 +718,35 @@
- }
- if (matchChar('*')) {
- boolean lookForSlash = false;
-+ StringBuffer sb = new StringBuffer();
- for (;;) {
- c = getChar();
- if (c == EOF_CHAR) {
- parser.addError("msg.unterminated.comment");
- return Token.ERROR;
-- } else if (c == '*') {
-+ }
-+ sb.append((char) c);
-+ if (c == '*') {
- lookForSlash = true;
- } else if (c == '/') {
- if (lookForSlash) {
-- continue retry;
-+ sb.delete(sb.length()-2, sb.length());
-+ String s1 = sb.toString();
-+ String s2 = s1.trim();
-+ if (s1.startsWith("!")) {
-+ // Remove the leading '!'
-+ this.string = s1.substring(1);
-+ return Token.KEEPCOMMENT;
-+ } else if (s2.startsWith("@cc_on") ||
-+ s2.startsWith("@if") ||
-+ s2.startsWith("@elif") ||
-+ s2.startsWith("@else") ||
-+ s2.startsWith("@end")) {
-+ this.string = s1;
-+ return Token.CONDCOMMENT;
-+ } else {
-+ continue retry;
-+ }
- }
- } else {
- lookForSlash = false;
Modified: trunk/yui-compressor/debian/rules
===================================================================
--- trunk/yui-compressor/debian/rules 2011-06-12 19:57:22 UTC (rev 13789)
+++ trunk/yui-compressor/debian/rules 2011-06-12 20:30:37 UTC (rev 13790)
@@ -8,15 +8,17 @@
DEB_JARS := js jargs
DEB_ANT_BUILD_TARGET := build.jar
-DEb_CLEAN_BUILD_TARGET := clean
+DEB_CLEAN_BUILD_TARGET := clean
DEB_DH_INSTALLCHANGELOGS_ARGS := doc/CHANGELOG
LIBRARY=yui-compressor
VERSION=2.4.6
-RHINO_VERSION=1.7R2-4
-build/yui-compressor::
+install/yui-compressor::
+ # Launch tests
+ (cd tests; bash ./suite.sh)
+ # Rename JAR file
cp build/yuicompressor-${VERSION}.jar build/yui-compressor.jar
get-orig-source:
- debian/fetch-upstream ${VERSION} ${RHINO_VERSION}
+ debian/fetch-upstream ${VERSION} ${DEB_UPSTREAM_VERSION}
More information about the pkg-java-commits
mailing list