KNOWN BUGS FOR THE MOST RECENT RELEASE

this was moved out of the release notes since it's getting too long,
and since only a handful of things change between releases


..................................................................


PROCESSING WON'T START! NOTHING HAPPENS WHEN I HIT "RUN"! 

- on windows, processing probably won't work if you install it inside
  a folder with non-ascii characters in its name. for instance, if the
  name of your user folder uses japanese text, or it has an umlaut or
  cedilla or anything else fancy, and processing is on the desktop, or
  somewhere inside that folder, you're gonna have trouble. the fix is
  to place processing inside the root level of your C:\ drive (or
  whatever drive you use) and it'll be ok again. this will be fixed in
  the future.
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1062794781
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067764732

- windows.. if you have lots of garbage in your CLASSPATH environment
  variable, that might cause trouble starting up a sketch. you might
  get "Couldn't find package xxx.xxx" errors. clean things up (avoid
  spaces and quotes)
  http://processing.org/discourse/yabb/YaBB.cgi?board=BugFixes;action=display;num=1096302833;start=0

- windows.. in general, perhaps avoid having spaces in the folder name
  that contains processing. this is because of windows' awesome
  hokiness and its not-as-distant-as-it-should-be ancestor DOS.
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1094148057

- windows.. if you're still having trouble, disable any overly
  protective virus scanning software. it might be holding things up.

- windows.. you might also try using run.bat to start processing. lots
  of people seem to have a better time with this method.

- any platform.. errors inside code that is outside of setup() or
  loop(), for instance this code:
  PFont font = loadFont("blah.vlw");
  void setup {
    // something fancy
  }
  may just hang/freeze processing if "blah.vlw" is not in the "data"
  folder. in general, a better practice is to use loadFont() (and
  loadImage and the rest) inside of a function like setup().

- on 50% of machines, there still seems to be a bug that causes the
  application to hang completely when something that uses a library
  (or a code folder) is run. symptom will be a non-responsive applet
  that either never shows up, or shows up but never draws (perhaps
  until you hit stop) or draws three frames and then dies. this will
  only happen with applets that have a "coffee cup" icon in the
  window (that's how you know it's running externally).


..................................................................


COMMON ISSUES (NOT BUGS)
things that are often perceived as bugs, which means maybe they'll be
changed in the future, but for now, they're not actually 'broken'.


- names of sketches cannot start with a number, or have spaces
  inside. this is mostly because of a restriction on the naming of
  java classes. i suppose if lots of people find this upsetting, we
  could add some extra code to unhinge the resulting class name from
  the sketch name, but it adds complexity, and complexity == bugs. :)

- if you get a "ClassCastException" when trying to run your code in a
  browser, you're probably trying to run non-java 1.1 code. this 
  means any classes that didn't exist in java 1.1. or, if if you're
  exporting as applet, variables that are 'final int' need to be
  'static final int'. otherwise they'll have trouble with a java
  1.1-only machine: (i.e. running microsoft's java on windows). you
  should also avoid using "final" variables *inside* of methods, 
  since those aren't supported by microsoft's vm (and that's the 
  one most widely installed).

- 'export to application' remains unimplemented, though it's closer,
  and should be ready before beta.

- on macosx, the error message:
  ## Component Manager: attempting to find symbols in a component
  alias of type (regR/carP/x!bt)
  is not something from processing, it is a bug in toast 5.2's video
  cd support extension. to suppress the messages, move "Toast Video CD
  Support.qtx" out of /Library/QuickTime (at least until you need to
  do video cd work).

- on windows, sometimes your programs will run in a window that has a 
  java coffee cup icon, instead of the usual processing icon. this 
  simply means that the application is being run outside of processing
  (by java itself) rather than from within processing. this happens
  when extra libraries, multiple source code files (more than one tab), 
  or extra code files in the 'code' folder are employed.

- a long sketch menu that goes off the edge of the screen? doesn't
  scroll properly? not much we can do. this is a java issue which
  happens on most platforms. to get around it, you can organize your
  sketches into subfolders which will appear as submenus.

..................................................................


QUICKTIME FOR JAVA / VIDEO PROBLEMS

- windows.. you must make sure that "QuickTime for Java" is
  installed. to install it, you need to download it at:
  http://www.apple.com/quicktime/download/
  if you install the version "with iTunes", there's a second
  step. after the installation, go to Start Menu -> QuickTime ->
  QuickTime Updater. when it runs, use the "Custom" install, scroll
  down, and click the checkbox next to "QuickTime for Java" and then
  install. if you install the version of QuickTime without iTunes,
  you'll also need to use the "Custom" install, as outlined above. the
  same is true if you have already installed QuickTime, and did not
  use the "Custom" or "Full" install.

- windows.. in order for camera input to work, you'll need to install
  a quicktime-compatible video digitizer (VDIG). we've had reasonable
  luck with WINVDIG: http://www.vdig.com/WinVDIG/

- windows.. sometimes a full uninstall/reinstall of quicktime will do
  the trick. 

- on windows, if you're having trouble with video examples crashing
  processing or locking up your system, you should try placing the
  processing folder into the root level of your C:\ drive, or at least
  inside a set of folders that have no spaces in the name. we haven't
  determined if this is a quicktime for java or processing bug yet,
  but it's been a problem for lots of people.

- on windows, if you can't install quicktime for java yourself, all
  you really need is a copy of QTJava.zip from the quicktime install,
  which needs to be at %WINDIR%\system32\QTJava.zip. WINDIR is an
  environment variable on windows, open up a DOS prompt and type 
  echo %WINDIR% 
  to find out what it's set to (prolly something like C:\windows on
  windows xp/me/98 or c:\winnt on windows 2000).

- video sometimes likes to crash the application completely on
  windows. this seems to be due to problems with quicktime for java
  (since we shouldn't be able to write code that crashes using
  java.. heh right). so this is probably outside of our control.

- on macosx 10.2.x (jaguar, or jagwyre if you like black turtlenecks),
  quicktime for java was missing from the initial release of quicktime
  6.4 on the mac. an upgrade to quicktime 6.4 that includes qtjava is
  now available from software update. or you can download it from:
  http://www.versiontracker.com/dyn/moreinfo/macosx/21302 
  you can also upgrade to maosx 10.3.x (panther) which doesn't have
  this problem.

- mac os x.. if you get the following error:
  Exception in thread "main" java.lang.NoClassDefFoundError: 
  com/apple/mrj/macos/carbon/CarbonLock 
  then it means you need to update and/or reinstall quicktime. there
  was some monkey business about quicktime for java updates being out
  of sync with the java vm releases, and this is one of the leftovers
  of that scenario. blame canada. blame apple.


..................................................................


KNOWN BUGS
the real deal, keeping us awake at night.. this is only a partial
list, see the bboard for more, and inside ben's head for others.


- beautify doesn't retain the *exact* position of the caret within the
  text. 

- beautify has problems with indenting when lines with a brace are
  commented out, and also ignores switch statements.
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067309918;start=0

- clipping planes are not yet implemented. meaning that objects may
  sometimes fly into the camera and turn upside down or do other tricks.
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1058491568;start=0
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1052313604;start=0
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1042699742

- there is a bug that when smoothing is enabled, sometimes thin lines 
  will be visible within a concave polygon. this will just have to be 
  fixed in a future release. however, as long as stroke() is enabled 
  on the polygon, the lines should not be visible.

- the app doesn't provide an option to 'cancel' when it so politely asks
  if you want to "save changes before quitting?". this is because of
  java weirdness that we're trying to straighten out. the vm seems to
  be force quitting itself, even if cancel is selected. 

- lines with stroke weights that aren't 1 are sometimes strange.

- single pixel lines still have some problems with drawing over things.

- the size of exported applets has jumped in recent releases. this will
  get smaller again in a future release. we're in the midst of
  transitioning between two different sets of rendering/graphics code.

- curveTangent() is not yet implemented. contributions welcome.

- strokeMiter() and strokeJoin() exist but are not implemented.

- textures warp in strange ways due to perspective problems.
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1050650262

- smooth() is not completely implemented. there will be quirks in how
  it draws (like a weird flat line at the end of a shape, or areas
  that are less than smooth).

- jikes is ~9 megabytes in size, which is a bit obnoxious. it doesn't
  hurt anything but we plan to put it on a diet for a future release.
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1062581723

- the horizontal scroller for the text area has some weirdness, this
  may not be fixed until after beta, depending on how bad it is.

- using saveFrame() or saveBytes() or some of those things will cause
  trouble inside applets. we'll try to do better error trapping soon
  so that your applet doesn't crash when this happens. 
  http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1059928189;start=0


..................................................................


BUGS THAT WE PROBABLY CAN'T FIX
these are things that are out of our control


- "create font" crashes sometimes on windows, bringing down the whole
  environment. this seems to be a jdk bug, because it's not a java
  exception, but a full crash.
