ruby-processing 2.6.4 → 2.6.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3264280ea59ec35abe73d1b21727480c68f91415
4
- data.tar.gz: 3711a7a054800bb6aa9e9aaf2f05da60912776c9
3
+ metadata.gz: d37219dbcfc503ec0b97b07d08a307b7c1408744
4
+ data.tar.gz: c35100c261c806e067db30ecc661c12681ee580b
5
5
  SHA512:
6
- metadata.gz: 2e15cc2bbbd11527c844f60fe43e36e8e13db991f9d14a0bed1622c8796449c0934280fe6b5405b41179fb641d0ed01cd2b71f295207c5437d50e34074dc86e9
7
- data.tar.gz: 080e198e2d07dfc0406342ad7decd8b4a9956496a74cbc158a152dfed6d51357bea2a2bf85f4710b18b9a901a767a8abcf03bddff759998da317d4674f9b832f
6
+ metadata.gz: 8137822eed4a491c7b2052621b589ffe8218840c6e2dfed421323ad0813eabab77e3152ab1e7463d8da99b325af1d18c7adc27dd50ef639c753da1578d4d64bf
7
+ data.tar.gz: 23fbd6c57e263380dfcdf5cae5b5b2037bff917bcf38d5cf013e6499be7832832494aec743764d994abf804064d0a8bf9edee6cd210ef0081daac765296c3324
@@ -9,7 +9,7 @@ require_relative '../ruby-processing/config'
9
9
 
10
10
  Dir["#{Processing::RP_CONFIG['PROCESSING_ROOT']}/core/library/\*.jar"].each do
11
11
  |jar|
12
- require jar
12
+ require jar
13
13
  end
14
14
 
15
15
  module Processing
@@ -22,8 +22,8 @@ module Processing
22
22
  # called constantly, for every frame.
23
23
 
24
24
  # Include some core processing classes that we'd like to use:
25
- include_package 'processing.core'
26
-
25
+ include_package 'processing.core'
26
+
27
27
  # Watch the definition of these methods, to make sure
28
28
  # that Processing is able to call them during events.
29
29
  METHODS_TO_ALIAS ||= {
@@ -36,7 +36,7 @@ module Processing
36
36
  key_released: :keyReleased,
37
37
  key_typed: :keyTyped
38
38
  }
39
-
39
+ # All sketches extend this class
40
40
  class App < PApplet
41
41
  include Math
42
42
  include HelperMethods
@@ -109,54 +109,22 @@ module Processing
109
109
  proxy_java_fields
110
110
  set_sketch_path # unless Processing.online?
111
111
  mix_proxy_into_inner_classes
112
- # @started = false
113
-
114
112
  java.lang.Thread.default_uncaught_exception_handler = proc do
115
- |_thread_, exception|
113
+ |_thread_, exception|
116
114
  puts(exception.class.to_s)
117
115
  puts(exception.message)
118
116
  puts(exception.backtrace.map { |trace| "\t#{trace}" })
119
117
  close
120
118
  end
121
-
122
- # For the list of all available args, see:-
123
- # http://processing.org/reference/, however not all convenience functions
124
- # are implemented in ruby-processing (you should in general prefer ruby
125
- # alternatives when available and methods using java reflection, are best
126
- # avoided entirely)
127
-
128
- args = []
129
- @width, @height = options[:width], options[:height]
130
- if options[:full_screen]
131
- present = true
132
- args << '--full-screen'
133
- args << "--bgcolor=#{options[:bgcolor]}" if options[:bgcolor]
134
- end
135
- @render_mode ||= JAVA2D
136
- xc = Processing::RP_CONFIG['X_OFF'] ||= 0
137
- yc = Processing::RP_CONFIG['Y_OFF'] ||= 0
138
- x = options[:x] || xc
139
- y = options[:y] || yc
140
- args << "--location=#{x},#{y}" # important no spaces here
141
- title = options[:title] ||
142
- File.basename(SKETCH_PATH).sub(/(\.rb)$/, '').titleize
143
- args << title
144
- PApplet.run_sketch(args.to_java(:string), self)
119
+ run_sketch(options)
145
120
  end
146
121
 
147
122
  def size(*args)
148
123
  w, h, mode = *args
149
- @width ||= w
150
- @height ||= h
151
- @render_mode ||= mode
152
- if /opengl/ =~ mode
153
- # Include processing opengl classes that we'd like to use:
154
- %w(FontTexture FrameBuffer LinePath LineStroker PGL
155
- PGraphics2D PGraphics3D PGraphicsOpenGL PShader
156
- PShapeOpenGL Texture).each do |klass|
157
- java_import "processing.opengl.#{klass}"
158
- end
159
- end
124
+ @width ||= w
125
+ @height ||= h
126
+ @render_mode ||= mode
127
+ import_opengl if /opengl/ =~ mode
160
128
  super(*args)
161
129
  end
162
130
 
@@ -194,6 +162,36 @@ module Processing
194
162
  const.class_eval 'include Processing::Proxy'
195
163
  end
196
164
  end
165
+
166
+ def import_opengl
167
+ # Include processing opengl classes that we'd like to use:
168
+ %w(FontTexture FrameBuffer LinePath LineStroker PGL
169
+ PGraphics2D PGraphics3D PGraphicsOpenGL PShader
170
+ PShapeOpenGL Texture).each do |klass|
171
+ java_import "processing.opengl.#{klass}"
172
+ end
173
+ end
174
+
175
+ def run_sketch(options = {})
176
+ args = []
177
+ @width, @height = options[:width], options[:height]
178
+ if options[:full_screen]
179
+ present = true
180
+ args << '--full-screen'
181
+ args << "--bgcolor=#{options[:bgcolor]}" if options[:bgcolor]
182
+ end
183
+ xc = Processing::RP_CONFIG['X_OFF'] ||= 0
184
+ yc = Processing::RP_CONFIG['Y_OFF'] ||= 0
185
+ x = options.fetch(:x, xc)
186
+ y = options.fetch(:y, yc)
187
+ args << "--location=#{x},#{y}" # important no spaces here
188
+ title = options.fetch(
189
+ :title,
190
+ File.basename(SKETCH_PATH).sub(/(\.rb)$/, '').titleize
191
+ )
192
+ args << title
193
+ PApplet.run_sketch(args.to_java(:string), self)
194
+ end
197
195
  end # Processing::App
198
196
 
199
197
  # This module will get automatically mixed in to any inner class of
@@ -1,44 +1,78 @@
1
- module Processing
2
- require 'erb'
1
+ BASIC = <<-CODE
2
+ def setup
3
+ size %s, %s
4
+ end
3
5
 
4
- class SketchWriter
5
- include ERB::Util
6
-
7
- def initialize(template, param = {})
8
- @name = param[:name]
9
- @file_name = param[:file_name]
10
- @title = param[:title]
11
- @width = param[:width]
12
- @height = param[:height]
13
- @mode = param[:mode].upcase unless param[:mode].nil?
14
- @template = template
15
- save(@file_name)
16
- end
6
+ def draw
7
+
8
+ end
9
+ CODE
17
10
 
18
- def render
19
- ERB.new(@template).result(binding)
11
+ BASIC_MODE = <<-CODE
12
+ def setup
13
+ size %s, %s, %s
14
+ end
15
+
16
+ def draw
17
+
18
+ end
19
+ CODE
20
+
21
+ CLASS_BASIC = <<-CODE
22
+ class %s
23
+ def setup
24
+ size %s, %s
25
+ end
26
+
27
+ def draw
28
+
29
+ end
30
+ end
31
+ CODE
32
+
33
+ CLASS_MODE = <<-CODE
34
+ class %s
35
+ def setup
36
+ size %s, %s, %s
37
+ end
38
+
39
+ def draw
40
+
41
+ end
42
+ end
43
+ CODE
44
+
45
+ INNER = <<-CODE
46
+ class %s
47
+ include Processing::Proxy
48
+
49
+ end
50
+ CODE
51
+
52
+ module Processing
53
+ # Write file to disk
54
+ class SketchWriter
55
+ attr_reader :file
56
+ def initialize(path)
57
+ @file = "#{File.dirname(path)}/#{path.underscore}.rb"
20
58
  end
21
59
 
22
- def save(file)
60
+ def save(template)
23
61
  File.open(file, 'w+') do |f|
24
- f.write(render)
62
+ f.write(template)
25
63
  end
26
64
  end
27
65
  end
28
66
 
29
67
  # An abstract class providing common methods for real creators
30
68
  class Creator
31
-
32
69
  ALL_DIGITS = /\A\d+\Z/
33
70
 
34
71
  def already_exist(path)
35
72
  new_file = "#{File.dirname(path)}/#{path.underscore}.rb"
36
- if !File.exist?(path) && !File.exist?(new_file)
37
- return
38
- else
39
- puts 'That file already exists!'
40
- exit
41
- end
73
+ return if !File.exist?(path) && !File.exist?(new_file)
74
+ puts 'That file already exists!'
75
+ exit
42
76
  end
43
77
 
44
78
  # Show the help/usage message for create.
@@ -55,133 +89,73 @@ module Processing
55
89
 
56
90
  USAGE
57
91
  end
58
-
59
92
  end
60
93
 
61
94
  # This class creates bare sketches, with an optional render mode
62
95
  class BasicSketch < Creator
63
96
  # Create a blank sketch, given a path.
64
97
  def basic_template
65
- %(
66
- def setup
67
- size <%=@width%>, <%=@height%>
68
- end
69
-
70
- def draw
71
-
72
- end
73
- )
98
+ format(BASIC, @width, @height)
74
99
  end
75
100
 
76
101
  def basic_template_mode
77
- %(
78
- def setup
79
- size <%=@width%>, <%=@height%>, <%=@mode%>
80
- end
81
-
82
- def draw
83
-
84
- end
85
- )
102
+ format(BASIC_MODE, @width, @height, @mode)
86
103
  end
87
104
 
88
105
  def create!(path, args)
89
106
  return usage if /\?/ =~ path || /--help/ =~ path
90
- main_file = File.basename(path, '.rb')
91
107
  # Check to make sure that the main file doesn't exist already
92
108
  already_exist(path)
93
- @param = {
94
- name: main_file.camelize,
95
- file_name: "#{File.dirname(path)}/#{path.underscore}.rb",
96
- title: main_file.titleize,
97
- width: args[0],
98
- height: args[1],
99
- mode: args[2]
100
- }
101
- @with_size = @param[:width] && @param[:width].match(ALL_DIGITS) &&
102
- @param[:height] && @param[:height].match(ALL_DIGITS)
103
- template = @param[:mode].nil? ? basic_template : basic_template_mode
104
- SketchWriter.new(template, @param)
109
+ main_file = File.basename(path, '.rb') # allow uneeded extension input
110
+ writer = SketchWriter.new(main_file)
111
+ @width = args[0]
112
+ @height = args[1]
113
+ @mode = args[2].upcase unless args[2].nil?
114
+ template = @mode.nil? ? basic_template : basic_template_mode
115
+ writer.save(template)
105
116
  end
106
117
  end
107
118
 
108
119
  # This class creates class wrapped sketches, with an optional render mode
109
120
  class ClassSketch < Creator
110
-
111
121
  def class_template
112
- %(
113
- class <%=@name%> < Processing::App
114
- def setup
115
- size <%=@width%>, <%=@height%>
116
- end
117
-
118
- def draw
119
-
120
- end
121
- end
122
-
123
- # <%=@name%>.new(x: 20, y: 20)
124
- )
122
+ format(CLASS_BASIC, @name, @width, @height)
125
123
  end
126
124
 
127
125
  def class_template_mode
128
- %(
129
- class <%=@name%> < Processing::App
130
- def setup
131
- size <%=@width%>, <%=@height%>, <%=@mode%>
132
- end
133
-
134
- def draw
135
-
136
- end
137
- end
138
-
139
- # <%=@name%>.new(x: 20, y: 20)
140
- )
126
+ format(CLASS_MODE, @name, @width, @height, @mode)
141
127
  end
142
- # Create a bare blank sketch, given a path.
128
+ # Create a class wrapped sketch, given a path.
143
129
  def create!(path, args)
144
130
  return usage if /\?/ =~ path || /--help/ =~ path
145
- main_file = File.basename(path, '.rb')
131
+ main_file = File.basename(path, '.rb') # allow uneeded extension input
146
132
  # Check to make sure that the main file doesn't exist already
147
133
  already_exist(path)
148
- @param = {
149
- name: main_file.camelize,
150
- file_name: "#{File.dirname(path)}/#{path.underscore}.rb",
151
- title: main_file.titleize,
152
- width: args[0],
153
- height: args[1],
154
- mode: args[2]
155
- }
156
- @with_size = @param[:width] && @param[:width].match(ALL_DIGITS) &&
157
- @param[:height] && @param[:height].match(ALL_DIGITS)
158
- template = @param[:mode].nil? ? class_template : class_template_mode
159
- SketchWriter.new(template, @param)
134
+ @name = main_file.camelize
135
+ writer = SketchWriter.new(main_file)
136
+ @title = main_file.titleize
137
+ @width, @height = args[0], args[1]
138
+ @mode = args[2].upcase unless args[2].nil?
139
+ template = @mode.nil? ? class_template : class_template_mode
140
+ writer.save(template)
160
141
  end
161
142
  end
162
143
 
163
- # This class creates a ruby-processing class that mimics java inner class
144
+ # This class creates a pseudo 'java inner class' of the sketch
164
145
  class Inner < Creator
165
146
  def inner_class_template
166
- %(
167
- class <%=@name%>
168
- include Processing::Proxy
169
-
170
- end
171
- )
147
+ format(INNER, @name)
172
148
  end
173
- # Create a blank sketch, given a path.
149
+ # Create a pseudo inner class, given a path.
174
150
  def create!(path, _args_)
175
151
  return usage if /\?/ =~ path || /--help/ =~ path
176
- main_file = File.basename(path, '.rb')
152
+ main_file = File.basename(path, '.rb') # allow uneeded extension input
177
153
  # Check to make sure that the main file doesn't exist already
178
154
  already_exist(path)
179
- @param = {
180
- name: main_file.camelize,
181
- file_name: "#{File.dirname(path)}/#{path.underscore}.rb",
182
- title: main_file.titleize
183
- }
184
- SketchWriter.new(inner_class_template, @param)
155
+ @name = main_file.camelize
156
+ writer = SketchWriter.new(main_file)
157
+ template = inner_class_template
158
+ writer.save(template)
185
159
  end
186
160
  end
187
161
  end
@@ -1,4 +1,5 @@
1
1
  module Processing
2
+ # Provides some convenience methods available in vanilla processing
2
3
  module HelperMethods
3
4
  # processings epsilon may not be defined yet
4
5
  EPSILON ||= 1.0e-04
@@ -100,16 +101,9 @@ module Processing
100
101
  def dist(*args)
101
102
  len = args.length
102
103
  if len == 4
103
- dx = args[0] - args[2]
104
- dy = args[1] - args[3]
105
- return 0 if dx.abs < EPSILON && dy.abs < EPSILON
106
- return Math.hypot(dx, dy)
104
+ return dist2d(*args)
107
105
  elsif len == 6
108
- dx = args[0] - args[3]
109
- dy = args[1] - args[4]
110
- dz = args[2] - args[5]
111
- return 0 if dx.abs < EPSILON && dy.abs < EPSILON && dz.abs < EPSILON
112
- return Math.sqrt(dx * dx + dy * dy + dz * dz)
106
+ return dist3d(*args)
113
107
  end
114
108
  fail ArgumentError, 'takes 4 or 6 parameters'
115
109
  end
@@ -205,5 +199,22 @@ module Processing
205
199
  def key_pressed?
206
200
  @declared_fields['keyPressed'].value(java_self)
207
201
  end
202
+
203
+ private
204
+
205
+ def dist2d(*args)
206
+ dx = args[0] - args[2]
207
+ dy = args[1] - args[3]
208
+ return 0 if dx.abs < EPSILON && dy.abs < EPSILON
209
+ Math.hypot(dx, dy)
210
+ end
211
+
212
+ def dist3d(*args)
213
+ dx = args[0] - args[3]
214
+ dy = args[1] - args[4]
215
+ dz = args[2] - args[5]
216
+ return 0 if dx.abs < EPSILON && dy.abs < EPSILON && dz.abs < EPSILON
217
+ Math.sqrt(dx * dx + dy * dy + dz * dz)
218
+ end
208
219
  end
209
- end
220
+ end
@@ -138,15 +138,15 @@ module Processing
138
138
  sketchbook_paths << spath
139
139
  end
140
140
  end
141
- unless preferences_paths.empty?
141
+ if preferences_paths.empty?
142
+ sketchbook_path = sketchbook_paths.first
143
+ else
142
144
  lines = File.readlines(preferences_paths.first)
143
- regex1=/^sketchbook\.path=(.+)/ # processing-2.0
144
- regex2=/^sketchbook\.path\.three=(.+)/ # processing-3.0
145
+ regex1 = /^sketchbook\.path=(.+)/ # processing-2.0
146
+ regex2 = /^sketchbook\.path\.three=(.+)/ # processing-3.0
145
147
  matched_lines = lines.grep(regex1) { $1 } unless $1 == ''
146
148
  matched_lines = lines.grep(regex2) { $1 } unless $1 == ''
147
149
  sketchbook_path = matched_lines.first
148
- else
149
- sketchbook_path = sketchbook_paths.first
150
150
  end
151
151
  return sketchbook_path
152
152
  end
@@ -71,6 +71,7 @@ module Processing
71
71
  when 'app' then app(@options.path)
72
72
  when 'setup' then setup(@options.path)
73
73
  when /-v/ then show_version
74
+ when /-h/ then show_help
74
75
  else
75
76
  show_help
76
77
  end
@@ -93,11 +94,8 @@ module Processing
93
94
  def create(sketch, args)
94
95
  require_relative '../ruby-processing/exporters/creator'
95
96
  return Processing::Inner.new.create!(sketch, args) if @options.inner
96
- if @options.wrap
97
- Processing::ClassSketch.new.create!(sketch, args)
98
- else
99
- Processing::BasicSketch.new.create!(sketch, args)
100
- end
97
+ return Processing::ClassSketch.new.create!(sketch, args) if @options.wrap
98
+ Processing::BasicSketch.new.create!(sketch, args)
101
99
  end
102
100
 
103
101
  # Just simply run a ruby-processing sketch.
@@ -216,19 +214,18 @@ module Processing
216
214
  args.map! { |arg| "-J#{arg}" } unless @options.nojruby
217
215
  args
218
216
  end
217
+
218
+ # NB: we really do require 'and' not '&&' to get message returned
219
219
 
220
220
  def ensure_exists(sketch)
221
- puts "Couldn't find: #{sketch}" && exit unless File.exist?(sketch)
221
+ puts "Couldn't find: #{sketch}" and exit unless File.exist?(sketch)
222
222
  end
223
223
 
224
224
  def jruby_complete
225
225
  rcomplete = File.join(RP5_ROOT, 'lib/ruby/jruby-complete.jar')
226
- if File.exist?(rcomplete)
227
- return rcomplete
228
- else
229
- warn "#{rcomplete} does not exist\nTry running `rp5 setup install`"
230
- exit
231
- end
226
+ return rcomplete if File.exist?(rcomplete)
227
+ warn "#{rcomplete} does not exist\nTry running `rp5 setup install`"
228
+ exit
232
229
  end
233
230
 
234
231
  def host_os
@@ -247,9 +244,10 @@ module Processing
247
244
  # Optimistically set processing root
248
245
  def set_processing_root
249
246
  require 'psych'
247
+ @os ||= host_os
250
248
  data = {}
251
249
  path = File.expand_path("#{ENV['HOME']}/.rp5rc")
252
- if host_os == :mac
250
+ if os == :mac
253
251
  data['PROCESSING_ROOT'] = '/Applications/Processing.app/Contents/Java'
254
252
  else
255
253
  root = "#{ENV['HOME']}/processing-2.2.1"
@@ -261,8 +259,9 @@ module Processing
261
259
 
262
260
  # On the Mac, we can display a fat, shiny ruby in the Dock.
263
261
  def dock_icon
262
+ @os ||= host_os
264
263
  icon = []
265
- if host_os == :mac
264
+ if os == :mac
266
265
  icon << '-Xdock:name=Ruby-Processing'
267
266
  icon << "-Xdock:icon=#{RP5_ROOT}/lib/templates/application/Contents/Resources/sketch.icns"
268
267
  end
@@ -8,17 +8,19 @@ require_relative '../../ruby-processing/app'
8
8
 
9
9
  module Processing
10
10
  # For use with "bare" sketches that don't want to define a class or methods
11
- SKETCH_TEMPLATE = <<-EOS
11
+ BARE_TEMPLATE = <<-EOS
12
12
  class Sketch < Processing::App
13
- <% if has_methods %>
14
- <%= source %>
15
- <% else %>
16
- def setup
17
- size(DEFAULT_WIDTH, DEFAULT_HEIGHT, JAVA2D)
18
- <%= source %>
19
- no_loop
13
+ %s
20
14
  end
21
- <% end %>
15
+ EOS
16
+
17
+ NAKED_TEMPLATE = <<-EOS
18
+ class Sketch < Processing::App
19
+ def setup
20
+ size(DEFAULT_WIDTH, DEFAULT_HEIGHT)
21
+ %s
22
+ no_loop
23
+ end
22
24
  end
23
25
  EOS
24
26
 
@@ -28,15 +30,14 @@ module Processing
28
30
  has_sketch = !source.match(/^[^#]*< Processing::App/).nil?
29
31
  has_methods = !source.match(/^[^#]*(def\s+setup|def\s+draw)/).nil?
30
32
 
31
- if has_sketch
32
- load File.join(SKETCH_ROOT, SKETCH_PATH)
33
- Processing::App.sketch_class.new unless $app
33
+ return load File.join(SKETCH_ROOT, SKETCH_PATH) if has_sketch
34
+ if has_methods
35
+ code = format(BARE_TEMPLATE, source)
34
36
  else
35
- require 'erb'
36
- code = ERB.new(SKETCH_TEMPLATE).result(binding)
37
- Object.class_eval code, SKETCH_PATH, -1
38
- Processing::App.sketch_class.new
37
+ code = format(NAKED_TEMPLATE, source)
39
38
  end
39
+ Object.class_eval code, SKETCH_PATH, -1
40
+ Processing::App.sketch_class.new
40
41
  end
41
42
 
42
43
  # Read in the sketch source code. Needs to work both online and offline.
@@ -1,3 +1,3 @@
1
1
  module RubyProcessing
2
- VERSION = '2.6.4'
2
+ VERSION = '2.6.5'
3
3
  end
@@ -8,8 +8,8 @@ WARNING = <<-EOS
8
8
 
9
9
  EOS
10
10
 
11
- JRUBYC_VERSION = '1.7.16.1'
12
- EXAMPLES = '1.0'
11
+ JRUBYC_VERSION = '1.7.16.2'
12
+ EXAMPLES = '1.1'
13
13
  HOME_DIR = ENV['HOME']
14
14
  MAC_OR_LINUX = /linux|mac|darwin/ =~ RbConfig::CONFIG['host_os']
15
15
 
@@ -27,7 +27,7 @@ file "jruby-complete-#{JRUBYC_VERSION}.jar" do
27
27
  rescue
28
28
  warn(WARNING)
29
29
  end
30
- check_sha1("jruby-complete-#{JRUBYC_VERSION}.jar", "b76682bd0966a31dab60dc5e275d8b28ac17c38f")
30
+ check_sha1("jruby-complete-#{JRUBYC_VERSION}.jar", "5cf4c6eb55a361137face9cd0cdc6980d772809e")
31
31
  end
32
32
 
33
33
  directory "../lib/ruby"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-processing
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.4
4
+ version: 2.6.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Ashkenas
@@ -15,65 +15,65 @@ authors:
15
15
  - Juris Galang
16
16
  - Guillaume Pierronnet
17
17
  - Martin Prout
18
- autorequire:
18
+ autorequire:
19
19
  bindir: bin
20
20
  cert_chain: []
21
- date: 2014-10-29 00:00:00.000000000 Z
21
+ date: 2014-12-08 00:00:00.000000000 Z
22
22
  dependencies:
23
23
  - !ruby/object:Gem::Dependency
24
- name: bundler
25
24
  requirement: !ruby/object:Gem::Requirement
26
25
  requirements:
27
- - - "~>"
26
+ - - ~>
28
27
  - !ruby/object:Gem::Version
29
28
  version: '1.3'
30
- type: :development
29
+ name: bundler
31
30
  prerelease: false
31
+ type: :development
32
32
  version_requirements: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - "~>"
34
+ - - ~>
35
35
  - !ruby/object:Gem::Version
36
36
  version: '1.3'
37
37
  - !ruby/object:Gem::Dependency
38
- name: rake
39
38
  requirement: !ruby/object:Gem::Requirement
40
39
  requirements:
41
- - - "~>"
40
+ - - ~>
42
41
  - !ruby/object:Gem::Version
43
42
  version: '10.3'
44
- type: :development
43
+ name: rake
45
44
  prerelease: false
45
+ type: :development
46
46
  version_requirements: !ruby/object:Gem::Requirement
47
47
  requirements:
48
- - - "~>"
48
+ - - ~>
49
49
  - !ruby/object:Gem::Version
50
50
  version: '10.3'
51
51
  - !ruby/object:Gem::Dependency
52
- name: rake-compiler
53
52
  requirement: !ruby/object:Gem::Requirement
54
53
  requirements:
55
- - - "~>"
54
+ - - ~>
56
55
  - !ruby/object:Gem::Version
57
56
  version: '0.9'
58
- type: :development
57
+ name: rake-compiler
59
58
  prerelease: false
59
+ type: :development
60
60
  version_requirements: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - "~>"
62
+ - - ~>
63
63
  - !ruby/object:Gem::Version
64
64
  version: '0.9'
65
65
  - !ruby/object:Gem::Dependency
66
- name: minitest
67
66
  requirement: !ruby/object:Gem::Requirement
68
67
  requirements:
69
- - - "~>"
68
+ - - ~>
70
69
  - !ruby/object:Gem::Version
71
70
  version: '5.3'
72
- type: :development
71
+ name: minitest
73
72
  prerelease: false
73
+ type: :development
74
74
  version_requirements: !ruby/object:Gem::Requirement
75
75
  requirements:
76
- - - "~>"
76
+ - - ~>
77
77
  - !ruby/object:Gem::Version
78
78
  version: '5.3'
79
79
  description: |2+
@@ -104,7 +104,6 @@ extensions: []
104
104
  extra_rdoc_files: []
105
105
  files:
106
106
  - bin/rp5
107
- - lib/rpextras.jar
108
107
  - lib/ruby-processing.rb
109
108
  - lib/ruby-processing/app.rb
110
109
  - lib/ruby-processing/config.rb
@@ -139,32 +138,32 @@ files:
139
138
  - library/file_chooser/file_chooser.rb
140
139
  - library/vecmath/vecmath.rb
141
140
  - vendors/Rakefile
141
+ - lib/rpextras.jar
142
142
  homepage: http://wiki.github.com/jashkenas/ruby-processing
143
143
  licenses:
144
144
  - MIT
145
145
  metadata: {}
146
- post_install_message: Use 'rp5 setup install' to install jruby-complete, and 'rp5
147
- setup check' to check config.
146
+ post_install_message: Use 'rp5 setup install' to install jruby-complete, and 'rp5 setup check' to check config.
148
147
  rdoc_options: []
149
148
  require_paths:
150
149
  - lib
151
150
  required_ruby_version: !ruby/object:Gem::Requirement
152
151
  requirements:
153
- - - ">="
152
+ - - '>='
154
153
  - !ruby/object:Gem::Version
155
154
  version: '0'
156
155
  required_rubygems_version: !ruby/object:Gem::Requirement
157
156
  requirements:
158
- - - ">="
157
+ - - '>='
159
158
  - !ruby/object:Gem::Version
160
159
  version: '0'
161
160
  requirements:
162
161
  - A decent graphics card
163
162
  - java runtime >= 1.7+
164
163
  - processing = 2.2.1+
165
- rubyforge_project:
166
- rubygems_version: 2.2.2
167
- signing_key:
164
+ rubyforge_project:
165
+ rubygems_version: 2.1.9
166
+ signing_key:
168
167
  specification_version: 4
169
168
  summary: Code as Art, Art as Code. Processing and Ruby are meant for each other.
170
169
  test_files: []