$Id: NEWS,v 1.35 2004/07/10 15:14:40 anarxia Exp $ [0.19.1] jclassinfo: - No changes. libjclass: - Fixed a bug in the default classloader that made the find_class function fail. [0.19] jclassinfo: - [XML] Fixed xml output. - [XML] Changed the way implements are reported. - [XML] Method parameters are no longer in a single attribute but there is an element for each one. - [XML] Instruction operands are now using the operand element instead of param to avoid conflicts with the new way method parameters are reported. - [WIN32] Don't print "Reading class" message because \r doesn't work in cmd (or I am doing something wrong). libjclass: - All functions that used to take classpath and bootclasspath as parameters were changed to use a single classpath struct. - New function: jclass_classloader_get_classpath to return a new style classpath from classpath and bootclasspath strings. - Replaced jclass_class_get_interfaces_string with jclass_class_get_interfaces. It is more efficient and more flexible. - Create dlls for Windows and install development stuff. - New function: jclass_descriptor_get_parameters_array to return parametes in a null terminated array. - Support for manifest files. - The default class loader now honors the Class-Path attribute in jar files. - Don't report the abstract flag for interfaces in jclass_access_flag_to_string. [0.18] jclassinfo: - Improved help message. - Print error message when no classes are given instead of displaying the help message. - XML output (DTD included). - Huge speed improvements when detecting recursive dependencies. libjclass: - Added support for custom class loaders. - New functions: jclass_jar_* for reading jar files. - New operand type: OP_TYPE_SHORT_FIELD_INDEX for operands that are indexes for fields. Previously they were returned as methods. - New function: jclass_cp_get_entry_type to return the type of a constant pool entry. [0.17] jclassinfo: - Fixed crashes when recursive dependencies could not be found. - Free strings when removed from internal string lists. This fixes some memory leaks. - Minor changes in the way tableswitch and lookupswitch are printed. libjclass: - Fixed a crash caused by closing file streams twice. - Speed improvements on the zip code. - Removed all print functions (they are now in jclassinfo). - New functions for reading tableswitch and lookupswitch operands. [0.16] jclassinfo: - Bootclasspath and classpath are searched in the correct order. - All the options work for multiple classes. - If more than one classes have the same name only the first one is used. - Sub-packages are reported as well. For example java.util and java.util.regex are both reported. The previous behaviour was to report java.util only. - Dependencies on innerclasses are not reported. - Recursive dependencies (VERY SLOW!). libjclass: - Switched documentation from doxygen to gtk-doc. - The API has changed. Function names are more verbose to avoid naming conflicts. - Many new functions. - Use integer types from inttypes.h instead of typdefs in types.h - A header file to include the whole library: jclass/jclass.h - More efficient implementations for some functions. - Private symbols are prefixed with _jclass_. [0.15] - The library is finally ready. - Win32 binary is statically linked. - HUGE changes in the backend code. Mostly renames and modularization of the attribute-related code. - Removed conflicts with C++ keywords (hopefully). - More error checking for broken files. - Stopped using temp files when reading classes from jars. - Lots of interface changes and minor speedups. - New option find-class to find the file that contains a class. - An almost complete rewrite of the disassembler. - Several minor fixes. [0.14] - Fixed the detection of the wide opcode. - Fixed a bug that could cause crashes on invalid opcodes. - Fixed a bug on the UTF-8 to ASCII conversion code. - Fixed some pointer alignment issues on the disassembler code that caused crashes and incorrect results on the sparc architecture (at least). - Fixed a bug that caused incorrect printing of unused arguments of the invokeinterface instruction as instructions. - Report strictfp access modifier. [0.13] - Added jar archives support so jclassinfo depends on zlib. The support can be turned off with --disable-jar if you don't have zlib (or don't want to bother). - Replaced PACKAGE and VERSION with PACKAGE_* equivalents to reduce the size of config.h - Simplified getopt detection and removed system specific detection. - autoconf 2.57 is required (earlier 2.53 was required). - Bootstrap classpath is searched and the default can be overriden with the new --bootclasspath option. - Fixed a bug that affected the disassembly of 5-byte instructions (invokeinterface, goto_w, jsr_w). - Stopped printing primitive types as class dependencies. - Some internal changes to provide needed functionality for the jar support. [0.12] - Fixed a bug that caused the program to crash when class names where given. - Fixed two rather big memory leaks. - Fixed a possible crash when freeing fields without attributes. - Stopped reporting local packages as dependencies for package report for multiple classes. - disasm and method-debug-info now imply methods option. - general-info is turned when no other information option is given. The previous behaviour was to turn it on when no other option was given (whether it was an information option or not). [0.11] - Remove interfaces option from help. - Print warnings on ignored options for multiple classes. - Fixed printing of array classes (extra ; before []) - Don't report class arrays as separate classes for class dependency report. [0.10] - Reports on sets of classes. Currently only dependencies are reported and you need to specify each class. [0.9] - Initial "classloader" implementantion. No jars yet.