Bug List
Post any bugs you encounter here:
- the stop button doesn't seem to be working
- highlighing of error line doesn't work
- prompt for saving a file modified (on load) needs to be added
If you want to claim a bug, move the line down here:
Solved Bugs:
- the main thread seems to block on the student's code
July 4 (Mark): Copy-paste isn't working between the command and editor windows anymore. BUT I did just execute my first audio example from within JES! YESSSSSSS!!!
July 5 (Mark): It seems like I have to hit Exit twice before JES quits. Is this reproducible for anyone else?
July 6 (David): the main thread wasn't calling the proper function in JESThread. Now it is.
July 6 (Jason): I have not had to hit Exit twice before JES quits. Are you sure it may not just be a little lag?
(July 8-Mark): You were right, Jason – it was just lag. It's working fine. Here's a new bug, though. Type (in the editor window) space-space-space-p-r-i-n-t-space – you get nice coloring, no problem. Now type tab-p-r-i-n-t-space. No coloring. Check out JES GUI Screenshots FYI.
(July 8-Mark): Just checked – copy-paste still broken. Also, if you type into a blank (untitled, unloaded) editor window, then click Load, you get:
File "/Users/guzdial/Work/JES/JESUI.py", line 205, in actionPerformed
File "JESProgram.py", line 114, in loadFile
IOError: File not found - (No such file or directory)
(Both windows and Mac. BTW, HTMLhelp is working GREAT on both WinXP and Mac.)
(July 8-Mark): Jason, there IS a bug in Exiting. I just had to do it FOUR times. The issue seems to be if you get errors in the Command Window, which I did.
(July 8 - Mark): If you resize the window, only the Editor window grows. If you're trying to do most of your work in the Command window, resizing doesn't help. (Could it be movable/resizable the boundary?)
(July 8 - Mark): Several items (I'm using JES a good bit today):
- Save doesn't do anything. SaveAs doesn't give me a prompt for a filename
- Can we restructure showVars() somehow so that base variables are at the top or are at least separated off from all the packages like sys etc.?
- Can we use the str() of the objects as the value in the showVars? I'm defining __str__ for all the media objects to make it useful.
(July 9 - Mark): This is such an ANTI-bug that I had to post it. I didn't realize that I can click around in the Command window and fix things before I hit return! I HAVE AN EDITABLE COMMAND LINE! That is SO COOL! JES is where I'm doing my testing now.
July 10 (Claire): There was a problem with the way I was overriding the cut and paste functions in JESCommandWindow. They are fixed now.
July 10 (Josh): Problem with keyword highlighing not working after a "TAB" has been fixed.
July 11 (David): Syntax Error fixed. Stop button working
July 11 (David): Problems with command window:
Run a long computation and hit the stop button.
A bunch of text appears. Hit enter.
A couple of prompts appear, none of them have the cursor after them
July 12(Mark): A couple of buggies:
- Type something like tab-print-"Hello (no closing "). The error will give you the column position based on tab expansion. So, for me, Jython claimed that the error was in column 28, while JES said it was at column 22.
- I wrote a hello world program, executed it with hello() and got this:
>>> hello()
Hello world!
>>>
The asterisk points out where the CURSOR was. Somehow, the cursor needs to be forced to the bottom of the edit window after executions. (This one was weird, because I'd hit return-return-return and not see anything happen. Then I scrolled to the bottom and found that the cursors were piling up BELOW the cursor!) I think this is the same problem that David is noting above.
- If you Save before doing a Save As, it does nothing – no error, no Save As dialog.
One more from Mark: I just tried a long execution and hit the Stop button. I love the updating cursor! But when I hit Stop, I got:
Traceback (innermost last):
File "/Users/guzdial/Work/JES/JESThread.py", line 71, in run
ValueError: lock not acquired
I just saw that that was the erorr I got on the console. In the Command Window I got an even scarier one – "THREAD DEATH" ("You have a wild ThreadDeath...loose...in the theater...:-)
Traceback (most recent call last):
File "input", line 1, in ?
File "", line 222, in bluescreenMain
File "", line 236, in chromakey2
File "/Users/guzdial/jython-2.1/Lib/media.py", line 549, in pixels
return picture.pixels()
java.lang.ThreadDeath: java.lang.ThreadDeath
July 12( David):
the locking thing is odd; the lock seems to be being acquired and released properly... I'll look into it.
oh yeah, you can execute multiple commands at the same time, but they block on a mutex and only run one at a time.
July 12 (Mark): Okay, I just got JES to COMPLETELY hang on me, and it's reproducible.
- Type a def hello(): hello world kind of program
- Save it
- Now, in the command window, type "he" like you're about to execute "hello()", but then you realize that you forgot to load it first.
- Click the Load button
- Click back into the Command window, type backspace twice to try to get rid of the "he" then type "hello()" and hit return.
You get:
Exception occurred during event dispatching:
Traceback (innermost last):
(no code object) at line 0
javax.swing.text.BadLocationException: Length must be positive
at javax.swing.text.AbstractDocument.getText(AbstractDocument.java:566)
at java.lang.reflect.Method.invoke(Native Method)
at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java)
at org.python.core.PyMethod.__call__(PyMethod.java)
at org.python.core.PyObject.__call__(PyObject.java)
at org.python.core.PyInstance.invoke(PyInstance.java)
at JESCommandWindow$py.enter$6(/Users/guzdial/Work/JES/JESCommandWindow.py:113)
at JESCommandWindow$py.call_function(/Users/guzdial/Work/JES/JESCommandWindow.py)
at org.python.core.PyTableCode.call(PyTableCode.java)
at org.python.core.PyTableCode.call(PyTableCode.java)
at org.python.core.PyTableCode.call(PyTableCode.java)
at org.python.core.PyFunction.__call__(PyFunction.java)
at org.python.core.PyMethod.__call__(PyMethod.java)
at org.python.core.PyObject.__call__(PyObject.java)
at org.python.core.PyInstance.invoke(PyInstance.java)
at JESAction$py.actionPerformed$3(/Users/guzdial/Work/JES/JESAction.py:30)
at JESAction$py.call_function(/Users/guzdial/Work/JES/JESAction.py)
at org.python.core.PyTableCode.call(PyTableCode.java)
at org.python.core.PyTableCode.call(PyTableCode.java)
at org.python.core.PyTableCode.call(PyTableCode.java)
at org.python.core.PyFunction.__call__(PyFunction.java)
at org.python.core.PyMethod.__call__(PyMethod.java)
at org.python.core.PyObject.__call__(PyObject.java)
at org.python.core.PyObject._jcallexc(PyObject.java)
at org.python.core.PyObject._jcall(PyObject.java)
at org.python.proxies.JESAction$JESAction$4.actionPerformed(Unknown Source)
at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1384)
at javax.swing.JComponent.processKeyBinding(JComponent.java:2082)
at org.python.proxies.JESCommandWindow$JESCommandWindow$5.processKeyBinding(Unknown Source)
at javax.swing.JComponent.processKeyBindings(JComponent.java:2108)
at javax.swing.JComponent.processKeyEvent(JComponent.java:2054)
at javax.swing.JEditorPane.processKeyEvent(JEditorPane.java:1159)
at org.python.proxies.JESCommandWindow$JESCommandWindow$5.processKeyEvent(Unknown Source)
at java.awt.Component.processEvent(Component.java:3554)
at java.awt.Container.processEvent(Container.java:1164)
at org.python.proxies.JESCommandWindow$JESCommandWindow$5.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Component.java:2594)
at java.awt.Container.dispatchEventImpl(Container.java:1213)
at java.awt.Component.dispatchEvent(Component.java:2498)
at java.awt.LightweightDispatcher.processKeyEvent(Container.java:2155)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:2135)
at java.awt.Container.dispatchEventImpl(Container.java:1200)
at java.awt.Window.dispatchEventImpl(Window.java:959)
at java.awt.Component.dispatchEvent(Component.java:2498)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:339)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)
javax.swing.text.BadLocationException: javax.swing.text.BadLocationException: Length must be positive
At this point, JES is hung. You can still type in the editor window, but the command window has gone away.
(Claire) I'm not sure what was done to fix the cursor thing, but it is causing problems in the command window. When it prints output from a command, because of where the cursor is it prints another prompt before the output. Then I can't get the prompt to work correctly after that.
(Jason)
If you Save before doing a Save As, it does nothing – no error, no Save As dialog. –posted by Mark
This is now fixed, save as is now called if the user attempts to save on a file that has yet to be named.
(Claire) Fixed the he-llo() problem.
Pagal ho tum sab log
Links to this Page
- JES Development last edited on 29 October 2002 at 7:38 pm by 1Cust128.tnt4.atl4.da.uu.net
- Work to date last edited on 15 August 2002 at 3:15 pm by adsl-80-92-142.asm.bellsouth.net