From 246cffe580c495416f81ccb9978d1fd9702d625f Mon Sep 17 00:00:00 2001 From: Ben Fry Date: Sat, 10 May 2014 17:52:42 -0400 Subject: [PATCH] better error handling with bad Tools (github #2229) --- app/src/processing/app/Editor.java | 14 ++++++++++++-- todo.txt | 28 ++++++++++++++++------------ 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/app/src/processing/app/Editor.java b/app/src/processing/app/Editor.java index 8cfb77773..cfe93d750 100644 --- a/app/src/processing/app/Editor.java +++ b/app/src/processing/app/Editor.java @@ -1021,11 +1021,21 @@ public abstract class Editor extends JFrame implements RunnerListener { } catch (NoSuchMethodError nsme) { System.err.println("\"" + tool.getMenuTitle() + "\" is not " + "compatible with this version of Processing"); - System.err.println("This method no longer exists: " + nsme.getMessage()); + System.err.println("The " + nsme.getMessage() + " method no longer exists."); Base.log("Incompatible Tool found during tool.init()", nsme); - } catch (Exception ex) { + } catch (NoClassDefFoundError ncdfe) { + System.err.println("\"" + tool.getMenuTitle() + "\" is not " + + "compatible with this version of Processing"); + System.err.println("The " + ncdfe.getMessage() + " class is no longer available."); + Base.log("Incompatible Tool found during tool.init()", ncdfe); + + } catch (Error err) { System.err.println("An error occurred inside \"" + tool.getMenuTitle() + "\""); + err.printStackTrace(); + + } catch (Exception ex) { + System.err.println("An exception occurred inside \"" + tool.getMenuTitle() + "\""); ex.printStackTrace(); } } diff --git a/todo.txt b/todo.txt index 08d006586..e56ce7b1b 100644 --- a/todo.txt +++ b/todo.txt @@ -33,6 +33,12 @@ X fix for Linux command line X fix for OS X launcher X fix for OS X export X fix for OS X command line +X import static causes exception (with fix) +X https://github.com/processing/processing/issues/8 +o https://github.com/processing/processing/pull/2273 +X improve handling of tool loading +X QuickReference tool was able to bring down the environment +X https://github.com/processing/processing/issues/2229 earlier (2.1.2) X added get/set methods for status lines (Manindra) @@ -41,10 +47,6 @@ X https://github.com/processing/processing/pull/2433 X allow non-pde file extensions (JDF) X https://github.com/processing/processing/issues/2420 -retina -_ PDE and sketches are 2x smaller on high-res Windows 8 machines -_ https://github.com/processing/processing/issues/2411 - export X incorporate new launch4j 3.4 @@ -52,16 +54,20 @@ X http://sourceforge.net/projects/launch4j/files/launch4j-3/3.4/ X change Windows export to use launch4j instead of the launcher.cpp file X actually call ant from inside p5? X re-implement an icon for exported applications on Windows -_ make sure that Windows export uses the local Java +X make sure that Windows export uses the local Java +X double-checked with a clean XP install X make sure Windows export includes library DLLs +X remove build/windows/export from repo _ make sure launch4j export isn't printing to console unless trouble -_ remove build/windows/export from repo _ exported apps reporting as "damaged" on OS X _ https://github.com/processing/processing/issues/2095 +_ implement a call to codesign, and a message box re: installing Xcode +_ bring back multi-platform export? +_ OS X applications can only be exported from OS X +_ embed Java only works for the current platform + high -_ QuickReference tool was able to bring down the environment -_ https://github.com/processing/processing/issues/2229 _ tab characters not recognized/drawn in the editor (2.1) _ https://github.com/processing/processing/issues/2180 _ https://github.com/processing/processing/issues/2183 @@ -78,10 +84,6 @@ _ maybe OS X Java can't look in subfolders? (just auto-adds things) medium _ display "1" is not correct in 2.1.2 _ https://github.com/processing/processing/issues/2502 -_ import static causes exception (with fix) -_ https://github.com/processing/processing/issues/8 -o https://github.com/processing/processing/pull/2273 -X can't use this patch, too confusing _ re/move things from Google Code downloads _ https://code.google.com/p/support/wiki/DownloadsFAQ _ clean out the repo @@ -126,6 +128,8 @@ _ implementation/changes from JDF _ modes are being loaded multiple times, which can cause trouble _ add minimum version required (or max version?) to libraries/modes/etc _ no high-res display support for the PDE +_ PDE and sketches are 2x smaller on high-res Windows 8 machines +_ https://github.com/processing/processing/issues/2411 pulls