From 07147fb6d9cc0fc352367efbd2a05e378c8163ab Mon Sep 17 00:00:00 2001 From: benfry Date: Sat, 7 May 2005 05:23:58 +0000 Subject: [PATCH] moving the todo list around, some notes on building --- build/howto.txt | 26 +++- todo.txt | 326 +++++++++++++++++++++--------------------------- 2 files changed, 167 insertions(+), 185 deletions(-) diff --git a/build/howto.txt b/build/howto.txt index 48bd77122..61df33b80 100755 --- a/build/howto.txt +++ b/build/howto.txt @@ -1,5 +1,7 @@ HOW TO BUILD PROCESSING ON YOUR FAVORITE PLATFORM +With frequently asked questions, scroll to the end of the file. + //////////////////////////////////////////////////////////////////// @@ -39,8 +41,8 @@ installer every few months to keep things fresh. 1b. On Mac OS X, install Apple's Developer Tools. Should work with - everything from the December 2002 Tools for Jaguar, up through - the more recent Xcode stuff. + everything from the December 2002 Tools for Jaguar on OS X 10.2, + up through the more recent Xcode stuff. 1c. On Linux, you're pretty much on your own.. You need a pretty @@ -144,3 +146,23 @@ fresh build. This includes any changes to the reference, the examples, the libraries, jikes, or just about any time you have to use -d -P with the update. + +//////////////////////////////////////////////////////////////////// + +//// Frequently Asked Questions + +- What about eclipse? What about ant? The command line is frightening + and gives me nightmares! + +In a basic sense, the command line stuff isn't as scary as it might +seem. Hopefully it's just a matter of following the instructions +above (and being patient). If not, let us know where you have trouble +so we can fix things. + +Conceivably, it wouldn't take much to make Processing build under +Eclipse or any other IDE, but we don't do it by default. Same goes for +ANT. We don't use it, but if someone were to make build scripts that +emulated everything that the current build scripts do (not just build +the code, but all the other annoying crap that the build scripts do) +then maybe we could switch to it. It's all about reaching some kind +of critical mass. diff --git a/todo.txt b/todo.txt index d022ecdb3..246a116d0 100644 --- a/todo.txt +++ b/todo.txt @@ -20,6 +20,16 @@ X is it the run() exception handler that's leaving off the CRLFs? o or is it that it needs to be \r\n not just \n? X nope, it was Runner.message(); X set applet.frame on runner, so ppl can mess with the frame itself +X make beautify plugin "Auto Format" +X //for (int i = 0; i < 10; i++) { +X } catch (IOException e) { } +o http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1086555381 +X need to ignore comments.. but not those inside quotes.. oog +o http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067309918;start=0 +X ignores colons for case statements +X need to tie this to the parser instead +X info about getting started with building processing +X also re: what about eclipse? what about antlr? _ runtime exceptions have stopped coming through (on pc only?) _ test with florian example for the exception stuff @@ -29,6 +39,7 @@ _ make sure this is no longer the case _ error messages from external not coming through very well _ especially on macosx.. is it writing to stdout.txt tho? _ figure out why it's killing things early? the process maybe? +_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114520230;start=5 casey working on... _ export css problem @@ -51,15 +62,29 @@ o make sure exceptions with .class work o openStream returning 'null' really horked up the letters applet o no System.out was coming through o System.err was getting cut off before finishing - - -. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +o no transformations before background() is called +o implementation specific, may cause trouble +o must call depth() for 3D applications +o lights cannot be enabled/disabled throughout +o lighting will be based on what's left at endFrame() +X images should be a power of 2, or call modified() +X document the use of "die" +X can override the method to do your own handling +X sketches no longer require a "data" folder +X example that uses loop/noLoop, or redraw? +X talk to creas about making html files for bugs, readme, revisions. +X or how they should relate to the 'faq'.. readme -> faq? +X loadImage() mixed case problems _ make simple tool for casey to rebuild all the examples at once _ need to rebuild with this release because of 1.3/1.4 issues -documentation +bugzilla +_ get these two todo lists into their bugzilla categories +_ setup bugzilla and enter all the bugs + +discuss with casey _ auto-run the javadoc in dist.sh _ doctor a copy of the css file to use p5 defaults _ and re-copy the css in after generating the doc each time @@ -81,148 +106,6 @@ _ web colors with alpha: 0xffcc0080 or unhex("ffcc0080") _ the draw() method must exist, otherwise the sketch won't run _ need timer in as part of the api _ or at least include an example that uses it - -_ get platform checker into the latest exhibition piece - -_ get these two todo lists into their bugzilla categories - -_ println() can hose the app for the first 20-30 frames -_ need to figure out threading etc -_ problem with it launching a new thread for every single update! - -_ port buffering not working properly -_ may just be a problem with thread starvation -_ bufferUntil() fires an event but continues to fill up the buffer -// the serial port: -Serial myPort; - -void setup() { - // list all the available serial ports: - println(Serial.list()); - - /* I know that the first port in the serial list on my mac - is always my Keyspan adaptor, so I open Serial.list()[0]. - Open whatever port is the one you're using. - */ - myPort = new Serial(this, Serial.list()[0], 9600); -} - -void draw() { - // twiddle your thumbs - myPort.buffer(5); -} - -void serialEvent() { - println(myPort.readString()); -} - -_ option to suppress warning dialogs -_ starting with the one about modifying the sketch name for spaces - -_ osx is swallowing exceptions on external apps -_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114520230;start=5 - -_ sun.applet.Main is appletviewer - -_ info about getting started with building processing -_ also re: what about eclipse? what about antlr? - -_ move the useful serial buffering fxns into net library - -_ setup bugzilla and enter all the bugs - -_ stop() not working very well -_ doesn't seem to actually be stopping things -_ closing window w/o first hitting stop() causes freak out -_ opengl gives an OutOfMemoryError -_ java2d just goes into a lock -_ could also be code that's in an infinite loop (i.e. text error) -_ which then causes a full lock -_ something really bad happened with println() in this release -_ perhaps only without a code folder and/or running in java2d mode? -_ this may also be what's hosing - -_ saveFrame() directly to quicktime via port of DbnRecorder -_ do this after beta, not likely to work with java 1.4 on macosx - -_ saved window positions.. if displays has changed, becomes a problem -_ record the display that it was on? -_ GraphicsDevice gd = frame.getGraphicsConfiguration().getDevice(); -_ make sure that the applet is within the bounds of the current display? -_ (from 0, 0 to width, height) -_ make note that changing screen config requires restart of processing -_ static { checkScreens(); } -_ static void PApplet.checkScreens() { } -_ to run explicitly later -_ this seems too complicated.. just make people restart - -_ appendText launches a new thread for every blip of text -_ this is totally wrong and really horks things - -_ when running as external applet, hide the editor text area -_ drag & drop implementation to add files to sketch - -_ remove jvm from cvs -_ use wget to grab it if it doesn't exist -_ and include an md5hash to see if the file is correct - -_ straighten out int() -> toInt() conversion in the preproc - -_ move build scripts to something better like ant -_ too much to maintain the multiple versions, no dependencies, too much code - -_ some type of sketch archive format for posting examples (.psk?) -_ would be nice to open a sketch directly from a zip file - -_ add prompt() method to Serial (simple dialog box that pops up) - -_ subfolders in the 'data' directory don't work - -_ don't allow goofy case versions of reserved words -_ keypressed should maybe throw an error - -_ mouse wheel broken in the text editor? (windows jdk 1.5?) - - -...................................................................... - - -PROBLEMS FOR NEW USERS -_ don't all mousepressed(), throw a compile error -_ making it easier to draw shapes -_ missing semicolons - better error message -_ missing brackets, unmatched brackets -_ "unexpected token void" -> "You're mixing dynamic and static mode" -_ forgetting the quotes around strings -_ separate reference for /dev version -_ loadImage() mixed case problems -_ loadImage() using spaces in the name -_ if loadImage() when online(), throw an error -_ files not in the data folder (works in env, not in sketch) -_ angleMode(DEGREES) -> mistyped keywords, caps being wrong -_ NullPointerException on unterminated comment at end of code -_ (and OutOfMemoryError and weird lockup) -_ not enough args for triangle (or args in general) -_ throws out bizarre message -_ document for new users: -_ what's a NullPointerException -_ use of strings -_ println() for debugging - - -TALK TO CASEY ABOUT... -o no transformations before background() is called -o implementation specific, may cause trouble -o must call depth() for 3D applications -_ lights cannot be enabled/disabled throughout -_ lighting will be based on what's left at endFrame() -X images should be a power of 2, or call modified() -X document the use of "die" -X can override the method to do your own handling -X sketches no longer require a "data" folder -X example that uses loop/noLoop, or redraw? -_ talk to creas about making html files for bugs, readme, revisions. -_ or how they should relate to the 'faq'.. readme -> faq? _ make a sketch that shows loading from the web _ make another sketch that shows loading from a file _ make notes about preproc @@ -242,20 +125,12 @@ _ make a note that u/v coordinates clamp at 0 and 1 _ get an xml library and example in there _ nanoxml problems with manifest _ appears to use 1.6.8 version since it's just two classes - -_ implement new version of history -_ make history folder, and a zip (not gz) file for each entry -_ history causing trouble - super slow with a huge sketch -_ could instead be gzipped and appended to history.dat -_ along with another file that is actually a table of offsets -_ no need to make the thing a gzip stream -_ checkbox on menu for 'record history' ? -_ history converter option? -_ only first 20 entries visible? -_ zlib file becoming corrupt (not flushed after close?) -_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1080346981;start=0 -_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1088333655;start=0 -_ shortcut to walk through history, ala photoshop (ctrl-alt-z) +_ get platform checker into the latest exhibition piece +_ document for new users: +_ what's a NullPointerException +_ what's an ArrayIndexOutOfBoundsException +_ use of strings +_ println() for debugging @@ -274,6 +149,43 @@ _ or ask for the sketch folder name.. why isn't it? _ can't seem to find build dir on operating systems w/ non-ascii chars _ or rather, when user accounts have non-ascii chars in the name _ try setting up an account where this is the case +_ option to suppress warning dialogs +_ starting with the one about modifying the sketch name for spaces + + +PDE / Compiler (and preprocessor?) + + 1 _ don't allow goofy case versions of reserved words + 1 _ keypressed should maybe throw an error + 1 _ an empty .java tab will throw an error + 1 _ if NullPointerEx on a line that includes a "pixels[" + 1 _ give an error message saying "you may need to call loadPixels" + 1 _ warn about writing non-1.1 code. + 1 X will jikes do it if the -source is set to 1.1? nope.. + 1 X notes inside PdeCompiler + 1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1079867179;start=0 + 1 _ don't all mousepressed(), throw a compile error + 1 _ colorMode(RGB) -> caps being off + 1 _ making it easier to draw shapes + 1 _ missing semicolons - better error message + 1 _ missing brackets, unmatched brackets + 1 _ "unexpected token void" -> "You're mixing dynamic and static mode" + 1 _ forgetting the quotes around strings + 1 _ separate reference for /dev version + 1 _ loadImage() using spaces in the name + 1 _ if loadImage() with spaces when online(), throw an error + 1 _ files not in the data folder (works in env, not in sketch) + 1 _ NullPointerException on unterminated comment at end of code + 1 _ (and OutOfMemoryError and weird lockup) + 1 _ not enough args for triangle (or args in general) + 1 _ throws out bizarre message + + +PDE / Console + +_ println() can hose the app for the first 20-30 frames +_ need to figure out threading etc +_ problem with it launching a new thread for every single update! PDE / Details @@ -340,14 +252,22 @@ PDE / Details 1 _ ENTER should do the default option 1 _ (might be a matter of setting the default action for the window?) + 1 _ some type of sketch archive format for posting examples (.psk?) + 1 _ would be nice to open a sketch directly from a zip file + + 1 _ subfolders in the 'data' directory don't work + PDE / Editor + 1 _ when running with external editor, hide the editor text area + 1 _ drag & drop implementation to add files to sketch 1 _ tabs and spaces, command keys don't work w/ shift 1 _ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114661169;start=0 1 _ switch to newer revision of jedit? 1 _ is enormous horizontal scroller issue fixed properly 1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1083787569 + 1 _ mouse wheel broken in the text editor? (windows jdk 1.5?) undo problems 1 _ when an exception occurs, undo gets killed @@ -397,6 +317,23 @@ PDE / Editor Status 1 _ implement and remove PdeEditorStatus stuff +PDE / History + +_ implement new version of history +_ make history folder, and a zip (not gz) file for each entry +_ history causing trouble - super slow with a huge sketch +_ could instead be gzipped and appended to history.dat +_ along with another file that is actually a table of offsets +_ no need to make the thing a gzip stream +_ checkbox on menu for 'record history' ? +_ history converter option? +_ only first 20 entries visible? +_ zlib file becoming corrupt (not flushed after close?) +_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1080346981;start=0 +_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1088333655;start=0 +_ shortcut to walk through history, ala photoshop (ctrl-alt-z) + + PDE / Sketch & Sketchbook 1 _ transparently convert spaces to underscores (?) @@ -416,6 +353,16 @@ PDE / Sketch & Sketchbook PDE / Runner + 1 _ stop() not working very well + 1 _ doesn't seem to actually be stopping things + 1 _ closing window w/o first hitting stop() causes freak out + 1 _ opengl gives an OutOfMemoryError + 1 _ java2d just goes into a lock + 1 _ could also be code that's in an infinite loop (i.e. text error) + 1 _ which then causes a full lock + 1 _ something really bad happened with println() in this release + 1 _ perhaps only without a code folder and/or running in java2d mode? + 1 _ this may also be what's hosing 1 _ external apps don't stop at all when 'stop' is hit 1 _ worker thread is halting the app ala code folder bug 1 _ could this be dealt with by using nio? @@ -428,17 +375,6 @@ PDE / Runner 1 _ doesn't work, try using the class' main() to run it -PDE / Compiler - - 1 _ an empty .java tab will throw an error - 1 _ if NullPointerEx on a line that includes a "pixels[" - 1 _ give an error message saying "you may need to call loadPixels" - 1 _ warn about writing non-1.1 code. - 1 X will jikes do it if the -source is set to 1.1? nope.. - 1 X notes inside PdeCompiler - 1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1079867179;start=0 - - PDE / Export _ currently some bugs in the main() because it's not sizing applets @@ -479,6 +415,16 @@ _ for now, they're stuck w/ running in the env and getting the ugliness PDE / Preferences + 1 _ saved window positions.. if displays has changed, becomes a problem + 1 _ record the display that it was on? + 1 _ GraphicsDevice gd = frame.getGraphicsConfiguration().getDevice(); + 1 _ make sure that the applet is within the bounds of the current display? + 1 _ (from 0, 0 to width, height) + 1 _ make note that changing screen config requires restart of processing + 1 _ static { checkScreens(); } + 1 _ static void PApplet.checkScreens() { } + 1 _ to run explicitly later + 1 _ this seems too complicated.. just make people restart 1 _ split Preferences and PreferencesFrame ? 1 _ preferences window has been hit with the ugly stick 1 _ redo panel to use proper swing layout etc @@ -487,6 +433,7 @@ PDE / Preferences PDE / Preprocessor + 1 _ straighten out int() -> toInt() conversion in the preproc 1 _ casting problems in the parser 1 _ float u = float(x)/width; works. 1 _ float u = (float(x)/width); doesn't work: "unexpected token: float". @@ -531,20 +478,14 @@ _ add tool to "Add custom html to sketch" _ that copies applet.html, _ opens sketch folder, _ and gives info about what to do next (how to edit) +_ run in appletviewer? sun.applet.Main is appletviewer TOOLS / Auto Format -_ make beautify plugin "Auto Format" -_ //for (int i = 0; i < 10; i++) { -_ } catch (IOException e) { } -_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1086555381 -_ need to ignore comments.. but not those inside quotes.. oog -_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1067309918;start=0 -_ ignores colons for case statements -_ need to tie this to the parser instead -_ do a better job of maintaining cursor during beautify -_ only beautify a particular section of code -_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1087227217 + + 1 _ do a better job of maintaining cursor during beautify + 1 _ only auto format a particular section of code + 1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1087227217 TOOLS / Create Font @@ -600,6 +541,21 @@ _ if user cancels prompt, throws a '-128,userCanceledErr' _ in which case, need to return null (or ""?) for the prompt _ which will also just give you the last camera _ should it be new Camera(PROMPT); +_ saveFrame() directly to quicktime via port of DbnRecorder +_ do this after beta, not likely to work with java 1.4 on macosx + + +LIBRARIES / Net + +_ move the useful serial buffering fxns into net library + + +LIBRARIES / Serial + +_ port buffering not working properly +_ may just be a problem with thread starvation +_ bufferUntil() fires an event but continues to fill up the buffer +_ add prompt() method to Serial (simple dialog box that pops up) @@ -614,6 +570,8 @@ How the environment gets packed up, downloaded, and installed. PLATFORMS / General + 1 _ move build scripts to something better like ant + 1 _ too much to maintain the multiple versions, too much code 1 _ update things for java 1.5 since it's inevitable 1 _ need .pde document icons 1 _ need .psk file icon @@ -646,7 +604,9 @@ PLATFORMS / General 1 _ http://www.opensource.org/licenses/mit-license.php 1 _ different name for 'lib' folder because of libraries folder? 1 _ avoid some confusion for when describing the libraries folder to users - + 1 _ remove jvm from cvs + 1 _ use wget to grab it if it doesn't exist + 1 _ and include an md5hash to see if the file is correct PLATFORMS / Windows