* NEWS: Added ClassCastException and system assertions.
[cacao.git] / NEWS
1 New in release 0.97 (xxx xx, 2006)
2
3   * Fixed AbstractMethodError bug.
4   * Added failed class as message to ClassCastException's.
5   * Added enable/disable system assertion support (-esa/-dsa).
6
7
8 New in release 0.96 (May 29, 2006)
9
10   * New tasuki lock implementation resolves deadlock problems on
11     multi-processor machines.
12   * Handle Miranda-methods properly.
13   * try-catch line number problem with jikes fixed.
14   * Added support for libjvm.so (including invocation API).
15   * Stripped down object code size of code generators.
16   * Increased default maximum heap size to 128MB and decreased default
17     stack size to 64kB.
18   * Cleaned up internal handling of Unicode strings.
19   * Fixed getResources of bootstrap classloader.
20   * Correct handling of boot packages (provided glibj.zip contains a
21     jar index).
22   * Exception handling fixes (don't allocate memory on Java heap).
23   * x86_64's code generator generates not RISC-style code.
24   * Green threads implementation removed.
25   * Semaphore implementation for Darwin (taken from Boehm).
26   * sem_wait interrupted by signal fixed.
27   * Overflow in Object.wait() (partially) fixed (caused busy waiting
28     in JOnAS).
29   * Store JNI global refs in native hashtable instead of Java
30     hashtable (bootstrap problem).
31   * Argument passing fixed for powerpc-linux (asm_vm_call_method).
32
33
34 New in release 0.95 (February 13, 2006)
35
36   * Dead-lock bugfix.  This should fix the random dead-locks seen in
37     Eclipse or other applications.
38   * Search for suitable jar program during configure, can be specified
39     via JAR environment variable
40   * --enable-zlib bugfix
41   * i386 bugfix: Set FPU to 64-bit on VM startup (fixes Debian bug
42     #350729)
43   * powerpc bugfix: (M_COPY): Handle longs and doubles properly.
44   * Fixed instructions copying stackslots (like DUP_X1).
45   * Fixed classcache-related problem with java.lang.reflect.Proxy.
46   * Throw correct exception when trying to load a directory
47     as a classfile (from a .zip file).
48   * Fixed incorrect method resolution when calling instance methods 
49     through JNI (fixes CACAO bugs #17 and #18).
50
51
52 New in release 0.94 (January 22, 2006)
53
54   * support compilation of Interpreter and JIT compiler into one binary (not
55     enabled by default)
56   * bootstrap ZIP code rewrite (VM startup time improvement)
57   * fixed JNI DirectByteBuffer functions, jogl works now
58   * removed most third-party files from the repository, we link to the
59     libraries instead
60   * removed VM interface Java files which were identical to the GNU
61     Classpath upstream version
62   * added defineClassWithTransformers to java.lang.VMClassLoader, now we are
63     able to build against the generics branch
64   * Java compiler which should be used during compilation can be specified
65     via JAVAC environment variable
66   * a lot of bugfixes
67
68
69 New in release 0.93 (November 23, 2005)
70
71   * Java 1.5 support
72   * JIT codegenerators for Arm and MIPS (32-bit, -o32), currently
73     closed-source
74   * integration of a vmgen-based interpreter (--enable-intrp)
75   * removal of GNU classpath, CACAO now uses upstream releases or CVS
76     head versions
77   * finalizer thread
78   * JNI local references implemented
79   * reflection fixes and access checks (mauve tests)
80   * linear scan register allocator (-lsra)
81   * lazy resolving fixes
82   * fixed instanceof instruction
83   * updated to Boehm GC 6.6
84
85
86 New in release 0.92 "Tomclipse" (July 14, 2005)
87
88   * runtime lazy-loading with code patching
89   * dynamic library loading on every platform we support (using
90     libltdl)
91   * new ICMDs (PUTSTATICCONST, PUTFIELDCONST)
92   * some ICMDs inlined (IDIV/IREM, LDIV/LREM, AASTORE, ARRAYCHECKCAST)
93   * register allocator uses unused argument registers
94   * stacktraces on MIPS, PowerPC and x86_64
95   * integration of GNU classpath's system class loader
96   * internal class loading code more Java VM Spec compliant
97     (classcache, loading constraints, ...)
98   * virtual function table bugfix (abstract class implements not all
99     interface methods)
100   * initial support for thread dump on SIGQUIT (<ctrl>-\) on most
101     platforms
102   * GNU classpath 0.16
103   * Boehm GC 6.5
104
105
106 New in release 0.91 (December 23, 2004)
107
108   * bug fixed in MULTIANEWARRAY
109   * field access related bug fixes
110   * native function call bug fixes
111   * smaller fixes...
112
113
114 New in relaese 0.90 (December 8, 2004)
115
116   * More architectures supported: At the moment, CACAO is able to run on
117     Alpha, MIPS (64-bit), x86, x86-64 and PowerPC (32-bit) architectures.
118   * Native thread support
119   * Java 1.4 support
120   * GNU classpath 0.12
121   * Preliminary AWT support
122   * Boehm garbage collector
123   * Reentrant JIT compiler
124   * Lots of bug fixes and conformance enhancements
125   * Lots of bugs introduced and not fixed
126
127
128 * Version 0.40 (released)
129 =========================
130
131 ** Boehm garbage collector supported
132 ------------------------------------
133
134 The --enable-gc2 options was replaced by --with-gc. Choose boehm for the
135 Boehm garbage collector. Also see README.boehm.
136
137 ** mips port
138 ------------
139
140 Now runs on some SGI systems, which are based on the mips architecture.
141
142 ** multiple bug fixes
143 ---------------------
144
145 Even more java programs work as expected!
146
147
148 * Version 0.35 (experimental)
149 =============================
150
151 ** autoconf, automake support
152 -----------------------------
153
154 Finally moved the entire distribution to autoconf/automake. This should fix
155 some of our problems with supporting different compilers. Thread support and
156 the use of the new garbage collector can be enabled/disabled from using
157 configure arguments:
158
159         --enable-threads [default]
160         --disable-threads
161
162         --enable-gc2 [default]
163         --disable-gc2
164
165 ** new garbage collector
166 ------------------------
167
168 Included the new garbage collector as default garbage collector. 
169
170 * Version 0.30 (released)
171 =========================
172
173 Added unlimited stack for GC and main thread. 
174 Some optimzations for instructions which operate on constants. 
175
176 * Version 0.20 (released)
177 =========================
178
179 Hardware null pointer check added, fixed severe errors in GC/Threads, type
180 check and IEEE arithmetic.
181
182 * Version 0.20beta (can't remember)
183 =========================
184
185 There is a completely new JIT compiler which is about 7 times faster and
186 produces better code. 
187 Multithreading is now supported. 
188 A lot of bugs have been fixed.
189
190 * Version 0.10 (ancient history)
191 ==============
192
193 The initial version included the old JIT and support for lang, util and io.