Calico Bugs
A list of immediate and long term issues in the Calico Project. For a list of resolved issues, see Calico: Whats New.
This list (and those at the codeplex site) are being moved to our real bug-tracking system.
Bugs
Please use:
http://git.calicoproject.org/calico/issues
for all new issues. Thanks!
Old Bug List
The following are the currently known issues in Calico. These are on the list to be fixed; however, none are deemed critical show-stoppers at this point. If you disagree, please write a note to the calico-users mailing list. If you have fixes for any of these, please do let us know. Thanks!
- Myro.dll: A shape's rotation value keep growing as you spin; should be able to modulo 360
- Graphics.dll: size of objects (width, height, radius, etc) does not reflect scaling, but needs to, right?
-
Gtk can't open jpeg files on Windows? System.Drawing can, but as Windows Image.Appears to be fixed. - Myro maybe should keep track of opening ports by name, so as to reuse them on reload. started In reality, this may not be a problem, because files are opened (eg, in Python) in a non-exclusive way (?)
- Reset shell should close_modules and init_modules
- Need regression testing framework
- Scheme:
This does not work (Myro.timer) and crashes. FIXED. example (for-each print (Myro.timer 1)) - Scheme cannot get array element (Myro.getMouse); Workarounds: (map (lambda (v) v) (Myro.getMouse)) or (define m (Myro.getMouse)) (m.get_Item 0)
-
Simulator window cannot currently be closed... needs to add robotDone - sound does not Stop (sound = makeSound ('wavFile.wav'); sound.Stop())
- Graphics.dll: Shapes drawn on other shapes are not respected in Physics mode
- Windows Images report can't find GTK on windows.
- Need to document Myro Physics
- Need to document Myro setRegion
- savePicture(list, filename) will always save as a gif, no matter the filename. Need to raise an exception of the filename does not end in ".gif"
-
a file named and saved during a calico shutdown will not be added to the "recent files" listDone -
Printing Jigsaw programs has not been implemented.Duplicate. - Opening a Bluetooth serial port to robot on Linux fails on first attempt (Linux issue) Doug Harms has a system fix! (See http://calico-users.1054103.n5.nabble.com/Calico-users-Connecting-Fluke-on-Linux-td5706419.html)
- Calico in non-English versions of Windows 7 fails on startup
- Calico C# is under development (working towards full language interpreter)
- Calico F# is under development (currently runs in separate process)
- Calico Dinah is under development (currently just a GUI)
- Calico Java does not display error line numbers
- To activate a language requires checking it (menu -> Calico -> Languages)
- Cannot currently upgrade a Calico installation; need to re-download
- Reseting shell may not clear everything (possibly leaves files/ports opened?)
-
Breakpoints and single-stepping only works in Python, Scheme and JigsawAdd specific languages, as needed - Sometimes Calico saves an invalid config file (unconfirmed)
- Calico should test for errors on serial transmissions and resend the transmission if necessary
- Calico won't let you type lowercase letters with CapsLock on and holding Shift.
- Shapes drawn on shapes don't have Physics properties
- Shape.moveShape() only works on Polygons
- On Mac, Save dialog does not have focus in filename typing area (unconfirmed)
- Dialog windows are modal again (caused by rewrite of Invoke code)
-
JigsawAttributes on Extension Methods don't seem to be respected(workaround... ignores class named Extensions) -
Jigsaw doesn't properly display a match in visible area (when top of workspace is scrolled up, off screen) when Find (match appears at same place as canvas, not where it should be visible) - Florence on Mac: Arial font is not installed
- Jigsaw:
Edit wiki help pages. Done. - Jigsaw:
Running parallel Jigsaw commands happens in serial, not parallel (For example, parallel Myro.wait(1) commands should occur together) Should these be run in the background? Currently, parallel blocks are synced (lock-step) but is that correct?Fixed (perhaps by running in background thread?) - Jigsaw: Investigate and solve problem where Jigsaw eventually hangs if you leave a program running while in an error state
- Jigsaw: When loading a DLL, Jigsaw should alphabetize/sort on "NAME(PARAMETER, PARAMETER, ...)" so that shorter/similar items will be grouped together
- Jigsaw: When loading a DLL, Jigsaw should alphabetize/sort on "NAME(PARAMETER, PARAMETER, ...)" so that identical NAME+PARAMETERS can be skipped - duplicates are not needed
- Jigsaw: Do away with fixed number of arguments for procedure call and start blocks. Procedure call properties should have a dropdown listing all existing procedure start blocks.
- Jigsaw: When selecting a procedure name, argument properties should be added automatically.
- Jigsaw: Have properties window show properties of factory blocks as well block documentation.
- Jigsaw: Calico Dialogs need Window as first argument to center.
- Jigsaw: Currently there is a mismatched puzzle-piece connection between a end/break/exit bottom edge (which is flat) and the top of the ending C-shape (which has a left-side cut-out). Suggest that we make a right-hand side bump on bottom of end/break/exit and a top right-hand side cut-out of ending C-shape. The top ending C-shape cut-out not used (left or right) could then go away when attached.
- Jigsaw:
Put "calico" in the scope; could expose a canvas.SetVariable(string, object); canvas.GetVariable(string), or perhaps canvas.Eval(string)...how could you run a Jigsaw proc from outside of Jigsaw? - Jigsaw: Create event block tops to go with procedure start blocks.
- Jigsaw: Allow block diagrams to be printed. Partially completed.
-
Jigsaw: when slider is all the way to right, it should be in single-step mode (currently is just at slowest setting) - Jigsaw: Reset Shell didn't clear out previously defined procedures
-
listOfPictures = makePicture("animated.gif") request - ngram.py is acting weird (window size?)
-
tone.jig adding a scrollbar to window that already has one?! crash -
If you save a file on close, it isn't added to recently used -
add calico to Jigsaw dictionary - need to refactor SimPioneer
- SimScribbler does not have set_blob_yuv
- Can't have two simulations?
-
need to add Shape.z (start height, end height)Fixed. - Check to see if "bitmap" works with lines, from a program. (Didn't work in Knots.py)
- Scheme: move slider to left, should allow click on pause button
- Scheme turned off the pause button?
- properly handled? --lang=LANG, --chat, --verbose, --reset?
- Printing gives error: Cairo.Context: called from finalization thread, programmer is missing a call to Dispose
- Tab completion [needs refinement]
- Chat stuff (register, login, blast, chat). I believe these are all implemented, except for chat commands (/join, /help, etc)
- Show old error Help button on error
- Detect that the file has changed outside of Calico
- Add glib.io_add_watch - watch to see if something else edits file
- Currently, the graphviz code doesn't parse node lines, so attributes about the shape of nodes is ignored. To fix, edit:
- modules/Graphics/Graphviz4Net.Core/Dot/AntlrParser/DotGrammar.g
- to add { AddNode(); } (see example like AddEdge).
-
try to save to a read-only/link crashesFixed. -
On close, need to wait for the Chat connection to finishNo longer an issue. - SpeechBubble((center), "text", (endpoint))
- Calico: Need to run code in an AppDomain rather than thread?
- Calico: options for toggle word wrap, linenumbers, others
- Calico: No backups made of files when saving
- Calico: No backups made during editing (autosave)
- Calico: Plugins (see the way that gedit handles plugins)
- Provide easy method to take surveys, quiz
- Log file for teacher analysis
- Provide student "Hint" links to wiki page on error
- Interactive instruction ala Classroom Presenter, but via chat
- Submit zipfile to teacher dialog (zipfiles written in src/utils.py)
-
Scheme: (robot.beep 1.0 400.0 400.0) needs to be floats?FIXED -
Scheme: doesn't raise exception on loading file.FIXED - Dinah: Get working
- DLR: Can we run chiron and have our code run in web browser through Silverlight/Moonlight?
-
Mono: Windows doesn't respond to treeview drags after Mono 2.6.4. Bug reported as: https://bugzilla.novell.com/show_bug.cgi?id=664824No longer needed, as we don't use drag-n-drop from TreeViews -
Jigsaw: 1/2 gives 0; should give 0.5 to match Calico PythonFixed, Mark Russo. - Python: currently if you import another file, it does not use print_function, division, with_statement; you need to "from __future__ import ..." whichever of those you want. This probably can't change until we move all of the standard library to Python 3
-
Jigsaw: if you double-click a "when script starts" it doesn't do all that Running a program does, and causes errors with procedures that were previously defined but then changed. - Calico UI Shell: enter in middle of first complete row executes; enter not on bottom row inserts, not executes
- Calico UI: pressing the stop button when the running program tab is not selected does not stop the program---you need to select the tab first
-
Calico UI: copy/paste doesn't work on languages that have sub-widgets, like Jigsaw. Calico UI should pass the copy/paste to Jigsaw and it should have the specific widget (canvas or Property list) handle the detailsFixed, DSB, May 14, 2013. - Calico UI: standardize all icons to the same across platforms, and make either relevant or abstract
- Jigsaw UI: need to be able to delete blocks without yes/no; make selected block delete with delete key.
-
Jigsaw beep: not working on Mac. Need to rewrite using functions from Myro.Done. Also added beep(duration, freq) and beep(duration, freq1, freq2) - Jigsaw print(item): should attempt to turn item into string if it isn't; even better would be to use Scheme.repr() to get a good string representation, regardless of type (array, list, etc)
- Missing Scheme primitives: round inexact? modulo integer? char->integer make-string vector-length string-set! output-port? current-output-port current-input-port read-char eof-object?
- Scheme: allow BigIntegers to be numerators and denominators of a Rational
- Scheme: can't get/set Myro.robot.name... and it is too complicated.
- Myro/Robots/Scribbler.cs: arc(degrees, radius) does not update position and angle, yet
- Myro/Robots/Scribbler.cs: is there a way to get localization, x, y?
Feature Requests
The following isn't necessarily a list of future plans, but what users have requested. If you really like one, please mention it on the calico-users mailing list. That will be a vote for it!
- Consider using webcam interface emgu: (Started, see Calico Emgu.CV
- getGamepadNow("name") returned u'\u5355\u2042\u2d32\u7841\u7369\u3820\u422d\u7475\u6f74\u206e\u6147\u656d\u6170d\u2c00\u01e6\ufbfd\u2360\uffff\u8800\x16'
- need emacs mode
- object browser
- variable watcher. Workaround: See Globals and Locals tabs.
- SpeechBubble((center), "text", (endpoint))
- better string representations for objects in Python
- need more documentation
- Blob setting from clicks in window not implemented (there is a Python example that does this)
- configureBlob not implemented
- add configureBlobRGB to allow user to specify RGB values rather than YUV values for blob setting
-
clicking on image does not display pixel location or RGB valuesFixed for show() - graphical_obj.friction working?
- attach button2 and button3 events
- mouse scroll button events
- mouse click will return list of objects hit
- Implement auto-indenting after a header statement is typed in the Python editor.
-
add loadPicture(string) and loadPictures(string) which takes a file or url. (eventually remove from makePicture() forms)Done. - Add a way to get help/documentation on module methods/classes. The standard way of doing this in C# is via triple-slash comments stored in XML. We could use this to generate documentation, and have more help in the Calico interface. See http://stackoverflow.com/questions/5859097/c-sharp-getting-interface-method-comments
- Jigsaw: not obvious how to add a library/module
- Jigsaw: Create redo / undo stack
- Jigsaw: Make tabs the same color as library blocks (Done, but can't see color when tab is selected (all white)).
- Jigsaw: Add a trash can widget to delete blocks.
- Jigsaw: Need a way to easily select filenames just once. Myro.pickAFile, Myro.pickAFolder can be used, but they would continue to ask. What if a property had "file" in the parameter name, then a drop-down arrow would appear which could allow a select file dialog?
- Jigsaw: Be able to collapse procedure block stack as well as main block stack
- Jigsaw: would be nice to edit properties in place, rather than in Properties Tab (consider using a Gtk widget next)
- Calico: Mac menu item shortcuts should be option-key-based rather than control-key-based
-
Calico UI: Find and Replace (there is Find, but not Replace)Added. -
Calico UI: have tab take you from item to item, such as in Jigsaw's Properties rows.Added.