In the following we use "crash" to mean an uncaught exception which triggers a "crash report" dialog in jGRASP. This may or may not be a real problem - many uncaught exceptions do not cause any harm.
Jar/ZIP extractor always fails with a bad charset message.
Bugs in Version 1.8.8_14 Beta Fixed in Version 1.8.8_14 Beta 2gdb does not play well with our new process connection on Windows; it reports an error on stdin and quits. All non-Cygwin launching of gdb in the compiler environments delivered with jGRASP are back to using a DOS shell.
jGRASP can now run in a pure-Java mode, where no native components are needed. The downside of this mode is that some compilers and many executables will buffer I/O in this mode. This is not a problem when compiling and running Java though.
There is now unbuffered I/O in the jGRASP Run I/O window for non-Cygwin-compiled user programs. Programs compiled with MinGW, the Borland C compiler, etc. that used to run in an MSDOS shell by default will now run with I/O in our Run I/O window.
"Thread Dump" button on jGRASP control shell does not work under 64 bit Java on Intel Mac OS X systems.
The CSD and Interactions have been updated for new Java 7 features.
Courier New font on OS X Lion is hard to read. The default font for editing windows on Lion is now Courier.
Work-arounds for some new Java 7 bugs were added.
Opening a viewer on a Java Scanner that has already read some input will cause a crash.
Generating a CSD on a C or C++ file containg an import statement will cause a crash.
When creating a Jar file for a project, using an illegal manifest entry name will cause a crash.
When an editing window is split, cutting multiple lines of text can cause a crash in rare circumstances.
Opening a viewer on a binary tree that uses dummy nodes as terminators and is currently is likely to cause a crash.
Opening a viewer on an empty binary heap will always identify the heap as the first-element-unused type.
For a Java project where the main file is in a package, the working directory for a "Run" or "Debug" command will be incorrect and the action will fail.
Recent versions of Norton Antivirus are quarantining the Windows wedge because of a remote thread start used in one step of attempting to end a compile or run process. This method has been removed.
Using a conditional ?: expression where one of the second or third operands is a numerical primitive and the other is of null type in interactions or the workbench will cause a crash.
Opening files in jGRASP when it is minimized will occasionally cause a crash.
A crash will occur if the result of an interactions expression to be displayed is an object that returns null from toString().
"Line Numbers" and "Freeze Line Numbers" accelerator key combinations don't work.
jGRASP will crash if run from a UNC path on Windows.
Entering a lot of input in the jGRASP Run I/O window that is not read may cause jGRASP to lock up. It will resume operation when the input is read or the process finishes or is killed externally.
Creating a JAR file for a project that contains files that are not in the project directory and are not Java class or source files may cause a crash.
The bin/jgrasp script will not start jGRASP on some 64 bit Linux systems.
The Web-CAT submission tool does not work.
Some of the compiler environment error formats may have too much recursion with some output lines, leading to crashes due to stack overflow.
JAR button on project toolbar is visible when no project open. Using it causes a crash.
Web-CAT button is visible when no project open.
Doing a shift plus left mouse click in the very upper left corner of an editing window causes a crash.
The "invoke method" workbench function fails when any method declared in Object is overridden but all overridden versions are not visible from the current context.
Removing additional files in the "Create JAR" dialog causes a crash.
JVM printing will now respect the printer orientation setting. PostScript printing will now respect the printer paper size setting.
Project-wide compile, run, etc. functions for Java have been added to the browse pane.
It is impossible to compile JUnit test files using the JUnit plugin.
Some memory leaks were eliminated.
The "Clear" context menu button on the Run I/O and Interactions pane does not work.
Work-arounds for several bugs in WE4Java were added.
Reading a "sentence" from an editing window using a screen reader may not read the whole line, or may cause a crash.
Several 64-bit Windows problems and Vista/Windows 7 problems have been fixed. Deleting files using our browse tab on 64 bit Windows will now move files to the system recycle bin. jGRASP windows will now group together on the taskbar and not with other Java applications on 64 bit Windows. jGRASP windows will now group together along with the launch bar icon in Vista and Windows 7.
Java CSD generation bug: if two or more anonymous inner class definitions in a row appear as array initializers, the second of the group will be indented by an extra three spaces.
jGRASP may crash at startup if the settings directory is not writable.
If input echo is turned off using %<EN> in a compiler environment command, line terminators from user input will not be sent to the target process.
Changing Look&Feel does not change option pane icons until restart.
Opening a basic viewer on a primitive or array of primitives will cause a crash.
The debug context for the Java debugger and interactions is now the default package. Previously, it was a non-existant package. This means that non-public fields and methods in the default package can now be used from interactions without turning off access checking.
In interactions and the workbench, Java strings that contain "\u" (as part of a Unicode escape or not) and other backslash escapes will be scanned incorrectly.
Closing jGRASP or a Window while brace matching is active (this is very difficult to do) will cause a crash.
A crash report dialog at shutdown due to Sun bug 6612928 is now much less likely.
For loop in interactions was implemented as test-at-bottom instead of test-at-top (foreach was implemented correctly).
Primitive assignment in interactions with an implicit cast may not display result value correctly.
The Java debugger array viewer will temporarily select a newly modified element for arrays with less than 50 elements.
The structure identifier produces incorrect expressions for structures where private fields of node or wrapper superclasses are referenced.
Sun bug 6672017 is now affecting XP as well as Vista. Our existing work-around will now be applied on XP.
Using the Java debugger on files not compiled in debug mode may cause a crash.
Choosing a very small or oddly proportioned font may cause a crash.
Interactions treats boolean '&' expressions as if they were '|'.
Opening a structure identifier viewer on a partially-constructed hash table may cause a crash.
The structure identifier viewer is chosen by default even when all mappings to known structures have low confidence.
Using the Java debugger on files not compiled in debug mode may cause a crash.
Choosing a very small or oddly proportioned font may cause a crash.
Interactions treats boolean '&' expressions as if they were '|'.
Opening a structure identifier viewer on a partially-constructed hash table may cause a crash.
The structure identifier viewer is chosen by default even when all mappings to known structures have low confidence.
Newer versions of Cygwin that have the "alternatives" system implemented don't work with the included C, C++, and Objective-C compiler environments.
Arguments in the Run Arguments bar are processed for variables in the same way as Run arguments in the settings, so that % must be escaped as %%. This was not our intention and the arguments in the Run Arguments bar will no longer support variables or require percent signs to be escaped.
The file browser is sometimes very slow, especially immediately after a compile or run action (jGRASP may appear frozen for a few seconds after a compile or run).
Choosing a very small font scale and CSD font size may cause jGRASP to crash, and it will continue to crash each time it is restarted (it will become unusable).
Control panel may get stuck as always-on-top due to Sun bug 6829546 for Java 1.6.0_16. Our previous work-around cut out at 1.6.0_16 because we assumed Sun would have fixed this by then. The work-around will now apply to all 1.6.0_12 and higher until the bug is known to be fixed.
Clicking and dragging or entering text in the (very small) selection area for an empty debug eval value when the debugger is not running will cause a crash.
Copy-and-paste of debugger values using Ctrl-C produces a useless result. In 1.8.7_02 it will produce the text shown for the value in the tree. This also applies to items in the debugger threads tree.
Clicking the invoke method button in a viewer before the viewer has initialized will cause a crash.
Crashes due to Sun bug 6828938, which happen frequently, are now ignored.
Tools plugin toolbar items will appear when an editing window is taken out of the virtual desktop, even if the associated tools are not installed. Clicking on such a toolbar item can cause a crash.
Folding using selection and the keyboard or by mouse clicking when the CSD diagram has been edited may cause a crash.
The Clear Workbench item on the workbench menu is not grayed out when the workbench is not running, and using it when the workbench is not running will cause a crash.
CSD generation on code that has multiple statments or major code segments on one line may cause a crash.
An Interactions pane has been added.
Control panel may get stuck as always-on-top due to Sun bug 6829546.
Postscript printing will fail on some non-Windows systems due to Sun bug 6633656.
On 32-bit Windows, when a specific Java version is selected through jGRASP startup settings, jGRASP icons will group with other Java icons on the Windows taskbar instead of in their own group.
Native printing on non-Windows systems now uses PrintService-based PostScript printing rather than a call to lpr, which allows an easy choice of printer and some printer properties.
jGRASP may not locate the Java compiler and the Java debugger may not work under 64-bit Windows if an appropriate 32-bit version of Java is not installed. This is fixed, but some minor problems when running under 64-bit Java remain.
PostScript printing with a line spacing other than 1.0 will leave horizontal gaps in the CSD.
Using Run to Cursor in the Java debugger when the cursor is on an unloaded class will not work, and if a breakpoint is encountered it will cause a crash.
Hovering the mouse over a bad URL link in the jGRASP Help/Documentation browser will cause a crash.
Entering a new eval expression in the Java debugger while the current thread is running will cause a crash.
When running under Java 1.5.x, if the Java debugger fails to attach after ten seconds, a crash will be reported in addition to a useful error message.
Work-arounds and warnings for numerous Java bugs were added.
Clicking the mouse and dragging in an empty bookmarks or workspaces list will cause a crash.
jGRASP may lock up when a file chooser dialog is opened under Java 1.6.0_10 rc (6u10 rc) due to a Java bug.
There are various layout and color problems with the Nimbus Look&Feel, some due to Nimbus/Synth bugs, some due to jGRASP bugs.
Using Run as Applet or Debug as Applet from an unnamed file will cause a crash.
The java.util.LinkedList presentation viewer will fail (display a viewer exception) when all items don't fit in the window and the view is scrolled all the way to the right.
Font size will be zero for all gui elements on Mac OS X under Java 1.6 with Metal or Motif L&F on systems with resolution higher than 96 dpi, making jGRASP unusable.
If a J2ME project has items in the jGRASP CLASSPATH settings, the preverify action will cause a crash.
Font size will be zero for all gui elements on Mac OS X under Java 1.6 with Metal or Motif L&F on systems with resolution higher than 96 dpi, making jGRASP unusable.
If a J2ME project has items in the jGRASP CLASSPATH settings, the preverify action will cause a crash.
When using the system Quit function on Mac OS X, if edited files are open and the user chooses to cancel the quit operation, jGRASP will be killed and changes will be lost.
Maximized windows on virtual desktop don't resize correctly on many systems.
Startup script will fail on unknown systems (anything other than Windows, Mac OS X, Intel Linux, and SPARC Solaris), and may fail on other systems.
Pasted test from some rtf sources, such as MS Word 2007, will include some rtf commands.
Java debugger may not work when jGRASP is started from the bin/jgrasp script on Ubuntu, and possibly other Linux and UNIX systems.
Maximized windows on the virtual desktop are too tall on some versions of OS X for some versions of Java.