SophiaCompress(Java) OASIS 5.X
5.0.2 (July 15, 2009)
Bug Fix
- The bug that the java.lang.NullPointerException error occurs when compressed with the Optimize StackMap and Remove Unused try-catch Blocks options has been fixed.
- The bug that the Preverifier error occurs when compressed with the Optimize StackMap and Share Methods options has been fixed.
- The bug that the Preverifier error occurs when compressed with the Optimize StackMap, Share Methods, and Remove Unused Methods options has been fixed.
- The bug that the Invalid constant pool reference error occurs when compressed with the Enable Class Integration option has been fixed.
- The bug that the ClassFormatError error occurs when compressed with the Enable Class Integration option has been fixed.
5.0.1 (May 15, 2009)
Problem Fix
- The problem that HostID.exe is mistaken for virus by Trend Micro Internet Security has been fixed.
5.0.0 (Apr. 1, 2009)
New Function
- NTT DoCoMo Star Profile has been supported.
Changes in Specification
To support the NTT DoCoMo Star Profile, the user interface for NTT DoCoMo i-Appli has been changed as follows.
- GUI(Graphical User Interface) : from "DoJa" to "DoCoMo"
- CUI(Command-line User Interface) : from "-doja" to "-docomo"
SophiaCompress(Java) OASIS 4.X
OASIS : 4.6.6 (Mar. 26, 2008)
Bug Fix
- A bug on the Enable Class Integration option has been fixed.
- A bug on the Optimize StackMap option has been fixed.
OASIS : 4.6.5 (Jan. 29, 2008)
Bug Fix
- A bug that the "Bad stack map" error occurs when a compressed application starts has been fixed.
OASIS : 4.6.4 (Dec. 17, 2007)
Bug Fix
- A bug on Integrate Abstract Classes has been fixed.
OASIS : 4.6.3 (Dec. 03, 2007)
Changes in Specification
- The compression option of "Integrate Abstract Classes" is turned off by default.
- User interface to select a preverifier and a Java SDK path has been improved.
OASIS : 4.6.2 (Nov. 21, 2007)
Bug Fix
- A layout on the user interface of Preferences has been fixed.
OASIS : 4.6.1 (Oct. 05, 2007)
Bug Fix
- A bug on the function of Merge Class Variables Into Array has been fixed.
- A bug on compression option information displayed on the log file has been fixed.
OASIS : 4.6.0 (July. 18, 2007)
New Functions
- In case the class after class merging exceeds the Java specification, the level of class integration is automatically lowered to the optimum value.
Changes in Specification
- The panel layout of "Preferences" about compression options has been updated.
- The compression option of "Merge Class Variables Into Array" is turned off by default.
OASIS : 4.5.2 (May. 15, 2007)
Bug Fix
- A bug on Optimize StackMap has been fixed.
- A bug on Share Names has been fixed.
- A bug on Support JDK1.4 has been fixed.
- A bug on Remove Unused Stack Operation has been fixed.
- A bug on Synchronize Methods has been fixed.
- A bug on Integrate Abstract Classes has been fixed.
- A bug on Share Class Names has been fixed.
OASIS : 4.5.1 (Apr. 12, 2007)
Bug Fix
- The bugs related with Optimize StackMap, Optimize StackMap(Make New Class), Integrated Abstract Classes and Optimize Methods Declaration are fixed.
Changes in Specification
- A reset button is available at the Options of Preferences interface.
OASIS : 4.5.0 (Mar. 12, 2007)
New Functions
- KDDI's OpenAppli Java has been supported.
- The code name of SophiaCompress(Java) has been changed as "OASIS" with an wish for splendid programming environment.
Bug Fix
- A bug on StackMap optimization has been fixed.
4.4.0 (Jan. 15, 2007)
New Functions
- A Merge Abstract Classes compression method has been added.
- A Share Name Compulsively compression method has been added.
- A Share Class Name compression method has been added.
- A Optimize Codes for Generating String Dynamically compression method has been added.
- A Delete Unused Codes for Initialization compression method has been added.
- A Convert Instance Variable Into Class Variable compression method has been added.
- A Optimize Definition of Method compression method has been added.
Changes in Specifications
- The Share / Shorten Name compression method has been upgraded.
- The Delete Interface compression method has been upgraded.
- The Delete Unsed Operation on Stack compression method has been upgraded.
- The Optimize StackMap compression method has been upgraded.
4.3.1 (Dec. 8, 2006)
Bug Fix
- A bug due to an error at the class integration level "9" or "10" was fixed.
- Help messages were up to date.
4.3.0 (Nov. 21, 2006)
New Functions
- Plug-in for using SophiaCompress(Java) in the Eclipse IDE has been added.
- A Optimize StackMap compression method has been added.
- A Optimize StackMap (Make New Class) compression method has been added.
- A Make Synchronized Methods compression method has been added.
Changes in Specifications
- CUI has been available for the Standard edition.
- The Make Methods Inline compression method has been upgraded.
- The Remove Unused Interfaces compression method has been upgraded.
4.2.4 (Sep. 11, 2006)
Bug Fix
- A bug due to an error in the Basic Block Sharing function was fixed.
4.2.3 (Aug. 29, 2006)
Bug Fix
- A bug in the compression option "Support JDK1.4" was fixed.
4.2.2 (Aug. 11, 2006)
Bug Fix
- A bug caused by the error in class merging with the combination of the original preverifier and Basic Block Sharing function was fixed.
- A bug in the update function of the Installshield Wizard was fixed.
4.2.1 (Aug. 2, 2006)
Bug Fix
- A bug caused by an error in the original preverifier, and the Basic Block Sharing function that failed to handle instructions of type double, was fixed.
Changes in Specifications
- Linefeed of the ADF file will not change after compression.
- Added detailed messages in the compress log.
4.2.0 (Jul. 25, 2006)
Bug Fix
- A bug that caused the compression to fail was fixed. The cause was an error in the class integration function, function to remove the unused 'try - catch ' tables and also in functions to remove the unused code.
Changes in Specifications
- Enhanced GUI.
- Improved compression error recovery function.
New Functions
- Added Basic Block sharing functions as part of StackMap optimization.
- Added a function to change "Switch" syntax to "if" syntax .
- Implemented preverifier.
4.1.1 (May. 16, 2006)
Bug Fix
- An error in the class integration function that was causing compression failure was fixed.
- Fixed the error in the [Show log] function that failed to display the correct environment.
- Due to these bug fixes, we have verified that the compression rate has improved -0.24 % at the average, 0.34 % at the most and -1.17 % at the worst.
4.1.0 (Apr. 28, 2006)
Bug Fix
- The bug that caused errors in deleting unnecessary 'try - catch' tables was fixed.
Changes in Specifications
- Changed GUI.
- Became capable of compressing obfuscated JAR files.
New Functions
- General ZIP archive (7-Zip, Kzip, etc...) can be used for compressing JAR files.
4.0.0 (Feb. 28, 2006)
New Functions
- Added Multi Files function ( capable of compressing multiple files at once ) and renewed the help messages.
- Added a new function that deletes unused interface, class, methods and return values. An array of class variables is also available.
- Extended to Willcom Java.
- With the addition of these new function, we have verified that the compression rate has improved 0.21 % at the average, 18.2 % at the most and -0.40 % at the worst.
SophiaCompress(Java) 3.X
3.2.1 (Nov. 2, 2005)
Bug Fix
- Fixed the bug that ignores -7zip option in CUI.
- Fixed the bug in the class integration function that fails to boot up the static block for initializing constant or generates a class file that fails the preverifier.
- Since these bug were fixed, we have verified that the compression rate has improved -0.01 % at the average, 0.83 % at the most and -2.63 % at the worst.
3.2.0 (Sep. 16, 2005)
Bug Fix
- Fixed the bug that ignores some CUI commands such as -java.
- Fixed the output messages.
Changes in Specifications
- Made the class integration function more efficient. Now class integration will be done more quickly.
- Changed the specifications in class integration options. The amount of option will be proportionate to the integrated amount.
- Boot up from ant is available.
- Java applications that have spaces in the path can be compressed.
- SophiaComress(Java) can be installed in a folder which conatins spaces in the path.
- Due to these bug fixes, we have verified that the compression rate has improved 1.05 % at the average, 35.9 % at the most and -2.93 % at the worst. The improvements mainly consist of changes in the specifications of class integration.
3.1.0 (May. 13, 2005)
Bug Fix
- Removed the function that creates an array of class variables. This is a temporary action for assuring the safe behavior of the application after being compressed.
Changes in Specifications
- User Interface for English language environment has been made. Now, when SophiaCompress(Java) is launched in any Java environment outside of Japan, the User Interface will be displayed in English.
- Adapted to foreign carriers ( Motorola, Nokia, Sumsung and other careers ). Added the versatile MIDP compressing function.
- Adapted to compressing applications compiled in JDK 1.4. Now MIDP 2.0 applications can be compressed.
- Added the option to shorten the class names.
- Added an option to choose the level for class integration.
- Forbidding the class integration of Canvas class. This is because, OutOfMemoryException occurs when creating a certain number of instances of Canvas class.
- Due to these bug fixes, we have verified that the compression rate has improved -0.20 % at the average, 0.32 % at the most and -7.11 % at the worst.
3.0.11 (May. 13, 2005)
Bug Fix
- Fixed the bug that fails to renew the line about application class in ADF file when there are multiple application classes. Due to this bug fix, we have verified that the compression rate has improved 0.00 % at the average, 0.33 % at the most and -0.26 % at the worst.
3.0.10 (Mar. 18, 2005)
Bug Fix
- Removed the under development function which was implemented in the previous version by mistake. Due to this bug fix, we have verified that the compression rate has improved 0.01 % at the average, 0.63 % at the most and -0.25 % at the worst.
3.0.9 (Mar. 8, 2005)
Changes in Specifications
- Added a function to specify the main class name after compression. Due to this new function, we have verified that the compression rate has improved 0.02 % at the average, 0.25 % at the most and -0.63 % at the worst.
3.0.8 (Feb... 9, 2005)
Bug Fix
- Fixed the bug that was terminating the compression process illegally. This error was occurring when class integrating an application which uses instances of operators in primitive arrays. Due to this bug fix, we have verified that the compression rate has improved 0.00 % at the average, 0.29 % at the most and -0.14 % at the worst.
3.0.7 (Jan. 21, 2005)
Bug Fix
- Fixed the bug that generates illegal class files that overflow the static limit of a class files. Due to this bug fix, we have verified that the compression rate has improved 0.00 % at the average, 0.23 % at the most and -0.29 % at the worst.
3.0.6 (Jan. 11, 2005)
Bug Fix
- Fixed the bug in the function "Delete unnecessary stack". Due to this bug fix, we have verified that the compression rate has improved 0.15 % at the average, 5.05 % at the most and -0.23 % at the worst.
3.0.5 (Dec. 24, 2004)
Bug Fix
- Fixed the bug that changed the behavior of the application after compression. This error was being caused by shortcomings in the "Delete the unnecessary fields" function. Due to this bug fix, we have verified that the compression rate has improved 0.00 % at the average, 0.22 % at the most and -0.30 % at the worst.
3.0.4 (Dec. 3, 2004)
Bug Fix
- Fixed the bug that caused the failure of the preverifing process during the compression. This error was due to the override of final method by class integration. Due to this bug fix, we have verified that the compression rate has improved 0.03 % at the average, 0.38 % at the most and -0.24 % at the worst.
3.0.3 (Oct. 1, 2004)
Bug Fix
- Fixed the bug that made the application crash after compression. The reason for the crash was that abstract classes were being integrated, and instance code from these integrated abstract classes was being generated.
- Fixed the bug that lead to compression failure when Deprecated attributes were in the class fields or method. Due to this bug fix, we have verified that the compression rate has improved -1.67 % at the average, 0.23 % at the most and -29.09 % at the worst.
3.0.2 (Sep. 13, 2004)
Bug Fix
- Fixed the bug that prevented the compressed application from booting up in the actual mobile phone. This error was caused by creating an instance code for an application class when integrating an i-Appli class with other classes. Due to this bug fix, we have verified that the compression rate has improved 0.10 % at the average, 6.95 % at the most and -10.94 % at the worst.
Changes in Specifications
- Added an option to choose the level of class integration.
3.0.1 (Aug. 19, 2004)
Bug Fix
- A big in the Japanese version related to single byte strings was fixed. Due to this bug fix, we have verified that the compression rate has improved 0.00 % at the average, 0.20 % at the most and -0.25 % at the worst.
3.0.0 (Aug. 5, 2004)
Changes in Specifications
- Added the function of class integration. With this new function, we have verified that the compression rate has improved 1.89 % at the average, 34.32 % at the most and -0.49 % at the worst.
SophiaCompress(Java) 2.X
2.4.4 (May. 10, 2004)
Bug Fix
- New technique to compress JAM files (i-Appli) with picture characters that will not cause those characters to be distorted.
2.4.3 (Apr. 9, 2004)
Bug Fix
- Fixed the bug that stalled the compression process when there is an infinite loop in the application.
- Fixed the bug that crashed the application after compression. The source of the error was in the "Inline Expansion".
- Due to these bug fixes, we have verified that the compression rate has improved 0.29 % at the average, 26.21 % at the most and -6.98 % at the worst.
Update
- Updated the iKeyDriver to Version 3.4.6 from Version 3.4.5.
2.4.2 (Mar. 15, 2004)
Bug Fix
- Fixed the bug that crashed the compressed application. This is due to an error in the "Delete unnecessary Exception Table" function. This function does not work well in applications that use try-catch structure to detect Runtime Exception and Errors.
- Fixed the bug that lead to compression failure when the option "Array Variables" was used.
- Due to these bug fixes, we have verified that the compression rate has improved -0.02 % at the average, 0.02 % at the most and -1.52 % at the worst.
2.4.1 (Feb.. 20, 2004)
Bug Fix
- Fixed the bug in the "Delete unnecessary Exception Table" function that crashed the compressed application. This function does not work well in applications that use try-catch structures to detect Runtime Exceptions and Errors. Due to this bug fix, we have verified that the compression rate has improved -0.05 % at the average, 0.03 % at the most and -3.19 % at the worst.
Update
- Updated the iKeyDriver to Version 3.4.5 from Version 3.4.4.
2.4.0 (Dec. 18, 2003)
Bug Fix
- Fixed the bug that led to compression failure, with error message saying, "Attribute of the class file is illegal". This error may occur in all versions prior to this one.
- Due to this bug fix, we have verified that the compression rate has improved 0.83 % at the average, 7.36 % at the most and -0.78 % at the worst.
Changes in Specifications
- Added a function to optimize the instructions.
2.3.2 (Nov. 14, 2003)
Bug Fix
- Fixed the bug in the new function "Delete the unnecessary stack manipulation" which was added from version 2.3, that failed the compression or preverifier. Due to theis bug fix, we have verified that the compression rate has improved 0.00 % at the average, 0.24 % at the most and -0.08 % at the worst.
2.3.1 (Oct. 20, 2003)
Bug Fix
- Fixed the bug that sometimes caused compression and preverifier failure when obfuscators such as RetroGuard is used. Due to these bug fixes, we have verified that the compression rate has improved 0.00 % at the average, 0.08 % at the most and -0.24 % at the worst.
2.3.0 (Sep. 18, 2003)
Bug Fix
- Fixed the bug that displays errors as popups when using SophiaCompress(Java) from command line.
- Fixed the bug that causes compression failure or distorts the manifest file when there are more than 72 byte letters in a line.
- Due to this bug fix, we have verified that the compression rate has improved 0.30 % at the average, 8.15 % at the most and -0.16 % at the worst.
Changes in Specifications
- Added a function to delete stack manipulation which is not used when running the application.
- Added a function to completely delete fields which are not used when running the application.
- Changed the program to compress multiple applications within a single JAR file.
Update
- Updated the iKeyDriver from version 3.4.1 to version 3.4.4. This update is due to the installation error which occurs when Window 2000 Professional Q814033 hot fix is installed.
2.2.0 (Mar. 3, 2003)
Changes in Specification
- Adopted the iKey system.
- Adopted the 7-ZIP for external compressing method for JAR file.
- Added the command line argument "-resize" for changing the size of the GUI screen.
2.1.7 (Feb.. 3, 2003)
Bug Fix
- Fixed the bug that triggered compression failure when the JAR file contains large class files.
- Due to this bug fix, we have verified that the compression rate has improved 0.01 % at the average, 0.88 % at the most and -0.61 % at the worst.
2.1.6 (Jan. 25, 2003)
Bug Fix
- Fixed the bug that causes compression or preverifier failure when compressing JAR files with single capital letter class names that do not have a package name.
Changes in Specifications
- Changed the license system.
2.1.5 (Dec. 10, 2002)
Changes in Specifications
- Updated the engine for analyzing and generating class files.
- Changed the error messages. (Added the Stack Trace indication in the popup dialogue box.)
Bug Fix
- Fixed the bug in the function "Delete the unused field" that leads to compression failure. The error occurred when the part which modifies the instruction that substitutes a value in the deleted field is referred to, from other instructions.
2.1.4 (Dec. 3, 2002)
Changes in Specifications
- Changed the error message. (All the errors and exceptions that may occur during the compression will be displayed in a popup dialogue box.)
Bug Fix
- Fixed the bug in the function "Delete the unused field" which makes the compression fail when there are multiple instructions in the method that substitute the value in the deleted field.
- Fixed the bug in the compression method that crashed the application compiled in Java SDK 1.4 and above.
- Due to these bug fixes, we have verified that the compression rate has improved 0.02 % at the average, 0.20 % at the most and -0.05 % at the worst.
2.1.3 (Nov. 19, 2002)
Changes in Specifications
- Changed the error messages.
2.1.2 (Nov. 12, 2002)
Bug Fix
- Fixed the bug that fails the compression when there are certain double byte characters in the manifest file of Java applications for J-Phone.
2.1.1 (Nov. 11, 2002)
Changes in Specifications
- Added a confirmation dialogue when compressing and overwriting a file in CUI environment.
- Changed the error messages.
Bug Fix
- Fixed the bug that made the auto conversion of JAD files (J-Phone) fail when there are double byte characters in the file.
- Fixed the bug that caused a compression from CUI environment to fail when there are no environment setting files.
2.1.0 (Nov. 6, 2002)
Changes in Specifications
- Added the CUI version.
- Changed the error messages.
- Parted with the Standard Edition.
2.0.3 (Oct. 10, 2002)
Bug Fix
- Fixed the bug that lead to compression failure when deleting fields which were "long" or "double.
2.0.2 (Oct. 4, 2002)
Changes in Specifications
- Changed the output of error messages.
2.0.1 (Sep. 2, 2002)
Changes in Specifications
- Released Japanese Edition.
- Without ADF files, Java application may not be compressed.
2.0.0 (Aug. 22, 2002)
New Function
- Loaded GUI.