From 6f90317dae02cd7aa0bb1b7d78b0fca5f74e52a8 Mon Sep 17 00:00:00 2001 From: Jeremy Ashkenas Date: Thu, 26 Mar 2009 23:28:56 -0400 Subject: [PATCH] bumping up to 1.0.4 Former-commit-id: 86edc66403ace52028a2d7542217a61ff0600c04 Former-commit-id: c2a30b63e7000e5ee571e1d6a268884d57a8ed71 --- CHANGELOG | 12 ++++++++++++ README | 3 +++ lib/ruby-processing.rb | 2 +- lib/ruby-processing/runners/watch.rb | 1 + ruby-processing.gemspec | 12 ++++++++---- 5 files changed, 25 insertions(+), 5 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index ca663cfb..20b7d06f 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,15 @@ +v1.0.4 Bare is Beautiful... + * Ruby-Processing now supports "bare" sketches, which are sketches that + consist of only setup and draw methods, or sketches that contain no method + definitions at all (implicitly wrapping them in a 'setup'). This works + by pre-processing the code. + * Initialization heavily tweaked so that size() works as in Processing, + from within setup(), and so that you can call full_screen as a class method, + in your class definition, to avoid the need for explicit sketch instantiation. + * "rp5 create" has a "--bare" option. + * Many samples now use the bare style, and more "Learning Processing" examples + were contributed by Juris Galang. + v1.0.3 Tweaks and Tuneups... * "rp5 watch" is now a bit more robust, and tries to reload every * file, global, and constant that it thinks it needs to. diff --git a/README b/README index 9d593427..06c1153d 100644 --- a/README +++ b/README @@ -17,6 +17,9 @@ * Live Coding via JRuby's IRB. Loads in your sketch so you can futz with variables and remake methods on the fly. + * Bare sketches. Write your Ruby-Processing sketches without having to define + a class. Without defining methods, even. + * A "Control Panel" library, so that you can easily create sliders, buttons, checkboxes and drop-down menus, and hook them into your sketch's instance variables. diff --git a/lib/ruby-processing.rb b/lib/ruby-processing.rb index 5ca891b7..5ba9f752 100644 --- a/lib/ruby-processing.rb +++ b/lib/ruby-processing.rb @@ -14,7 +14,7 @@ # The top-level namespace, a home for all Ruby-Processing classes. module Processing - VERSION = [1,0,3] unless defined? Processing::VERSION + VERSION = [1,0,4] unless defined? Processing::VERSION # Returns the current version of Ruby-Processing. def self.version diff --git a/lib/ruby-processing/runners/watch.rb b/lib/ruby-processing/runners/watch.rb index c2827aef..7d77d827 100644 --- a/lib/ruby-processing/runners/watch.rb +++ b/lib/ruby-processing/runners/watch.rb @@ -46,6 +46,7 @@ def start_watching # so that it can be loaded afresh. Go down into modules to find it, even. def wipe_out_current_app! app = $app + return unless app app.no_loop # Wait for the animation thread to finish rendering sleep 0.05 diff --git a/ruby-processing.gemspec b/ruby-processing.gemspec index af304605..d99203b6 100644 --- a/ruby-processing.gemspec +++ b/ruby-processing.gemspec @@ -2,11 +2,12 @@ require 'rake' Gem::Specification.new do |s| s.name = "ruby-processing" - s.version = "1.0.3" + s.version = "1.0.4" s.authors = ["Jeremy Ashkenas", "Peter Gassner", "Martin Stannard", "Andrew Nanton", - "Marc Chung", "Peter Krenn", "Florian Jenett", "Andreas Haller"] - s.date = "2009-3-3" # Inauguration Day! + "Marc Chung", "Peter Krenn", "Florian Jenett", "Andreas Haller", + "Juris Galang"] + s.date = "2009-3-26" s.default_executable = "rp5" s.email = "jeremy@ashkenas.com" s.executables = ["rp5"] @@ -23,13 +24,16 @@ Gem::Specification.new do |s| Ruby-Processing is a Ruby wrapper for the Processing code art framework. It's this thin little shim that squeezes between Processing and JRuby, passing along some neat goodies like: - + * Applet and Application exporting of your sketches. Hand them out to your party guests, ready-to-run. * Live Coding via JRuby's IRB. Loads in your sketch so you can futz with variables and remake methods on the fly. + * Bare sketches. Write your Ruby-Processing sketches without having to define + a class. Without defining methods, even. + * A "Control Panel" library, so that you can easily create sliders, buttons, checkboxes and drop-down menus, and hook them into your sketch's instance variables.