jruby_art 2.2.0 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ebbb071256ed356c298940ff1d43ab297083601dd1133f8bdc2cd9372c2cab75
4
- data.tar.gz: fdb9418da66238174d66ed86cd7e01737141612dac48069d81c73d65bd002928
3
+ metadata.gz: 3101b35efc934fc4337e6f8f34f3ea9d8022c8bf1001d743a01b675417ddf35e
4
+ data.tar.gz: 25481f1ab8a5f77ca32cd08542f64b7aa771fc29c6399859bf5f433b5d71c4e7
5
5
  SHA512:
6
- metadata.gz: db6e4d1bcccbe15f31785b4f454505d0fa298648ce119c2b6bba5cfca3da92a381b4fc1a1834d16611c7d3e569929347fabb0c29abf71bc8d91b51328450a2af
7
- data.tar.gz: b3f8884511bbc842313fa8e20e38e0622e20199a0d36add5adc14ea59ac100ddbafeddfc4d7f22e4fbb39b1fab7a8f98e85b2ba37b91f7f568077fc9c1939f15
6
+ metadata.gz: ec5f26712feeee0f7b151133457d6beb1216459e03e1410a9d77bed0ab2b575120f9b0b2dd064c8b88f1090640b1f97f13cc8e6881d32053ef84c273c5da6279
7
+ data.tar.gz: 0f51c6231b99a00994ac354d78b433a54731cc757d4728650f6b255983d9ddcfbd7d03e1a07826f2e272582d7645be7b764224cb6e1a37b44c151a1f9d6bd35d
Binary file
Binary file
@@ -57,7 +57,7 @@ module Processing
57
57
  end
58
58
 
59
59
  def web_to_color_array(web)
60
- Java::Monkstone::ColorUtil.webArray(web)
60
+ Java::Monkstone::ColorUtil.webArray(web.to_java(:string))
61
61
  end
62
62
 
63
63
  def int_to_ruby_colors(p5color)
@@ -17,62 +17,71 @@ class Library
17
17
  def locate
18
18
  return if (@path = Pathname.new(
19
19
  File.join(SKETCH_ROOT, 'library', name, "#{name}.rb")
20
- )).exist?
21
- return if (@path = Pathname.new(
22
- File.join(K9_ROOT, 'library', name, "#{name}.rb")
23
- )).exist?
20
+ )).exist?
21
+ return if (@path = Pathname.new(
22
+ File.join(K9_ROOT, 'library', name, "#{name}.rb")
23
+ )).exist?
24
24
 
25
- locate_java
26
- end
25
+ locate_java
26
+ end
27
27
 
28
- def locate_java
29
- @dir = Pathname.new(
30
- File.join(SKETCH_ROOT, 'library', name)
31
- )
32
- return @path = dir.join(Pathname.new("#{name}.jar")) if dir.directory?
28
+ def locate_java
29
+ @dir = Pathname.new(
30
+ File.join(SKETCH_ROOT, 'library', name)
31
+ )
32
+ return @path = dir.join(Pathname.new("#{name}.jar")) if dir.directory?
33
33
 
34
- locate_installed_java
35
- end
34
+ locate_installed_java
35
+ end
36
36
 
37
- def locate_installed_java
38
- prefix = library_path
39
- @dir = Pathname.new(
40
- File.join(prefix, "libraries/#{name}/library")
41
- )
42
- @path = dir.join(Pathname.new("#{name}.jar"))
43
- end
37
+ def locate_installed_java
38
+ unless dir.directory?
39
+ if Processing::RP_CONFIG.fetch('processing_ide', false)
40
+ prefix = library_path
41
+ @dir = Pathname.new(
42
+ File.join(prefix, 'libraries', name, 'library')
43
+ )
44
+ @path = dir.join(Pathname.new("#{name}.jar"))
45
+ else
46
+ @dir = Pathname.new(
47
+ File.join(ENV['HOME'], '.jruby_art', 'libraries', name, 'library')
48
+ )
49
+ end
50
+ @path = dir.join(Pathname.new("#{name}.jar"))
51
+ end
52
+ end
44
53
 
45
- def library_path
46
- Processing::RP_CONFIG.fetch('library_path', "#{ENV['HOME']}/.jruby_art")
47
- end
54
+ def library_path
55
+ Processing::RP_CONFIG.fetch('library_path', "#{ENV['HOME']}/.jruby_art")
56
+ end
48
57
 
49
- def ruby?
50
- path.extname == '.rb'
51
- end
58
+ def ruby?
59
+ path.extname == '.rb'
60
+ end
52
61
 
53
- def exist?
54
- path.exist?
55
- end
62
+ def exist?
63
+ path.exist?
64
+ end
56
65
 
57
- def load_jars
58
- Dir.glob("#{dir}/*.jar").each do |jar|
59
- require jar
60
- end
61
- return unless native_binaries?
66
+ def load_jars
67
+ Dir.glob("#{dir}/*.jar").each do |jar|
68
+ require jar
69
+ end
70
+ return unless native_binaries?
62
71
 
63
- add_binaries_to_classpath
64
- end
72
+ add_binaries_to_classpath
73
+ end
65
74
 
66
- def native_binaries?
67
- native_folder = NativeFolder.new
68
- native = native_folder.name
69
- @ppath = File.join(dir, native)
70
- File.directory?(ppath) &&
71
- !Dir.glob(File.join(ppath, native_folder.extension)).empty?
72
- end
75
+ def native_binaries?
76
+ native_folder = NativeFolder.new
77
+ native = native_folder.name
78
+ @ppath = File.join(dir, native)
79
+ File.directory?(ppath) &&
80
+ !Dir.glob(File.join(ppath, native_folder.extension)).empty?
81
+ end
73
82
 
74
- def add_binaries_to_classpath
75
- native_loader = NativeLoader.new
76
- native_loader.add_native_path(ppath)
77
- end
78
- end
83
+ def add_binaries_to_classpath
84
+ native_loader = NativeLoader.new
85
+ native_loader.add_native_path(ppath)
86
+ end
87
+ end
@@ -9,12 +9,12 @@ require_relative '../jruby_art/java_opts'
9
9
  require_relative '../jruby_art/launcher'
10
10
  # processing wrapper module
11
11
  module Processing
12
- # Utility class to handle the different commands that the 'k9' command
13
- # offers. Able to run, watch, live, create, app, and unpack
14
12
  unless defined? RP_CONFIG
15
13
  conf = Config.new.load_config
16
14
  RP_CONFIG = conf.config
17
15
  end
16
+ # Utility class to handle the different commands that the 'k9' command
17
+ # offers. Able to run, watch, live, create, app, and unpack
18
18
  class Runner
19
19
  WIN_PATTERNS = [
20
20
  /bccwin/i,
@@ -23,7 +23,12 @@ module Processing
23
23
  /ming/i,
24
24
  /mswin/i,
25
25
  /wince/i
26
- ].freeze
26
+ ]
27
+
28
+ INSTALL = <<~MSG
29
+ <Config|JRuby-Complete|Samples>
30
+ or <Sound|Video> library
31
+ MSG
27
32
 
28
33
  attr_reader :options, :argc, :filename, :os
29
34
 
@@ -35,19 +40,19 @@ module Processing
35
40
  def self.execute
36
41
  runner = new
37
42
  runner.parse_options(ARGV)
38
- runner.execute!
43
+ runner.execute
39
44
  end
40
45
 
41
46
  # Dispatch central.
42
- def execute!
43
- show_help if options.empty?
47
+ def execute
48
+ parse_options('-h') if options.empty?
44
49
  show_version if options[:version]
45
50
  run_sketch if options[:run]
46
51
  watch_sketch if options[:watch]
47
52
  live if options[:live]
48
53
  create if options[:create]
49
54
  check if options[:check]
50
- install if options[:install]
55
+ install(filename) if options[:install]
51
56
  end
52
57
 
53
58
  # Parse the command-line options.
@@ -57,49 +62,44 @@ module Processing
57
62
  # of the help screen.
58
63
  opts.banner = 'Usage: k9 [options] [<filename.rb>]'
59
64
  # Define the options, and what they do
60
- options[:version] = false
65
+
61
66
  opts.on('-v', '--version', 'JRubyArt Version') do
62
67
  options[:version] = true
63
68
  end
64
69
 
65
- options[:install] = false
66
- opts.on('-i', '--install', 'Installs jruby-complete and examples') do
67
- options[:install] = true
68
- end
69
-
70
- options[:check] = false
71
70
  opts.on('-?', '--check', 'Prints configuration') do
72
71
  options[:check] = true
73
72
  end
74
73
 
75
- options[:app] = false
76
- opts.on('-a', '--app', 'Export as app NOT IMPLEMENTED YET') do
77
- options[:export] = true
74
+ opts.on('-i', '--install', INSTALL) do
75
+ options[:install] = true
78
76
  end
79
77
 
80
- options[:watch] = false
81
- opts.on('-w', '--watch', 'Watch/run the sketch') do
82
- options[:watch] = true
78
+ opts.on('-f', '--force', 'Force removal of old Config') do
79
+ options[:force] = true
80
+ end
81
+
82
+ opts.on('-c', '--create', 'Create new outline sketch') do
83
+ options[:create] = true
83
84
  end
84
85
 
85
- options[:run] = false
86
86
  opts.on('-r', '--run', 'Run the sketch') do
87
87
  options[:run] = true
88
88
  end
89
89
 
90
- options[:live] = false
90
+ opts.on('-w', '--watch', 'Watch/run the sketch') do
91
+ options[:watch] = true
92
+ end
93
+
91
94
  opts.on('-l', '--live', 'As above, with pry console bound to Processing.app') do
92
95
  options[:live] = true
93
96
  end
94
97
 
95
- options[:create] = false
96
- opts.on('-c', '--create', 'Create new outline sketch') do
97
- options[:create] = true
98
+ opts.on('-a', '--app', 'Export as app NOT IMPLEMENTED YET') do
99
+ options[:export] = true
98
100
  end
99
101
 
100
- # This displays the help screen, all programs are
101
- # assumed to have this option.
102
- opts.on('-h', '--help', 'Display this screen') do
102
+ opts.on_tail('-h', '--help', 'Display this screen') do
103
103
  puts opts
104
104
  exit
105
105
  end
@@ -138,13 +138,29 @@ module Processing
138
138
  spin_up('watch.rb', filename, argc)
139
139
  end
140
140
 
141
- def install
141
+ def install(library = nil)
142
142
  require_relative 'installer'
143
- Installer.new.install
144
- JRubyCompleteInstall.new.install
145
- UnpackSamples.new.install
143
+ library ||= 'new'
144
+ case library.downcase
145
+ when /sound|video/
146
+ system "cd #{K9_ROOT}/vendors && rake download_and_copy_#{choice}"
147
+ when /samples/
148
+ system "cd #{K9_ROOT}/vendors && rake unpack_samples"
149
+ when /jruby/
150
+ system "cd #{K9_ROOT}/vendors && rake"
151
+ when /config/
152
+ remove_old_config if options[:force]
153
+ Installer.new.install
154
+ when /new/
155
+ # install samples and config JRubyArt
156
+ system "cd #{K9_ROOT}/vendors && rake"
157
+ Installer.new.install
158
+ else
159
+ warn format('No installer for %s', library)
160
+ end
146
161
  end
147
162
 
163
+
148
164
  def check
149
165
  require_relative '../jruby_art/config'
150
166
  Config.new.check
@@ -152,19 +168,19 @@ module Processing
152
168
 
153
169
  # Show the standard help/usage message.
154
170
  def show_help
155
- puts HELP_MESSAGE
171
+ puts HELP_INSTALL
156
172
  end
157
173
 
158
174
  def show_version
159
175
  require 'erb'
160
- warning = 'WARNING: JDK11 is preferred'.freeze
176
+ warning = 'WARNING: JDK12 is preferred'.freeze
161
177
  if RUBY_PLATFORM == 'java'
162
- warn warning unless ENV_JAVA['java.specification.version'] == '11'
178
+ warn warning unless ENV_JAVA['java.specification.version'].to_i >= 11
163
179
  end
164
- template = ERB.new <<-EOF
165
- JRubyArt version <%= JRubyArt::VERSION %>
166
- Ruby version <%= RUBY_VERSION %>
167
- EOF
180
+ template = ERB.new <<-VERSION
181
+ JRubyArt version <%= JRubyArt::VERSION %>
182
+ Ruby version <%= RUBY_VERSION %>
183
+ VERSION
168
184
  puts template.result(binding)
169
185
  end
170
186
 
@@ -184,7 +200,6 @@ module Processing
184
200
  end
185
201
 
186
202
  # NB: We really do mean to use 'and' not '&&' for flow control purposes
187
-
188
203
  def ensure_exists(filename)
189
204
  puts("Couldn't find: #{filename}") and exit unless FileTest.exist?(filename)
190
205
  end
@@ -192,12 +207,17 @@ module Processing
192
207
  def jruby_complete
193
208
  rcomplete = File.join(K9_ROOT, 'lib/ruby/jruby-complete.jar')
194
209
  return [rcomplete] if FileTest.exist?(rcomplete)
210
+
195
211
  warn "#{rcomplete} does not exist\nTry running `k9 --install`"
196
212
  exit
197
213
  end
198
214
 
199
- def libraries
200
- %w(video sound).map { |library| Sketchbook.library(library) }.flatten
215
+ def remove_old_config
216
+ old_config = File.join("#{ENV['HOME']}", '.jruby_art', 'config.yml')
217
+ puts "Removing #{old_config}"
218
+ system "rm #{old_config}"
201
219
  end
202
- end # class Runner
203
- end # module Processing
220
+ # class Runner
221
+ end
222
+ # module Processing
223
+ end
@@ -8,13 +8,13 @@ require_relative '../app'
8
8
  # More processing module
9
9
  module Processing
10
10
  # For use with "bare" sketches that don't want to define a class or methods
11
- BARE_WRAP = <<-EOS.freeze
11
+ BARE_WRAP = <<-BARE
12
12
  class Sketch < Processing::App
13
13
  %s
14
14
  end
15
- EOS
15
+ BARE
16
16
 
17
- NAKED_WRAP = <<-EOS.freeze
17
+ NAKED_WRAP = <<-NAKED
18
18
  class Sketch < Processing::App
19
19
  def setup
20
20
  sketch_title '%s'
@@ -26,7 +26,7 @@ module Processing
26
26
  size(%d, %d)
27
27
  end
28
28
  end
29
- EOS
29
+ NAKED
30
30
 
31
31
  # This method is the common entry point to run a sketch, bare or complete.
32
32
  def self.load_and_run_sketch
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  # A wrapper for version
3
3
  module JRubyArt
4
- VERSION = '2.2.0'
4
+ VERSION = '2.2.1'
5
5
  end
@@ -1,3 +1,4 @@
1
1
  class Processing::App
2
- include Java::MonkstoneVideoevent::VideoInterface
2
+ include Java::MonkstoneVideoevent::MovieEvent
3
+ include Java::MonkstoneVideoevent::CaptureEvent
3
4
  end
@@ -1,50 +1,57 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'fileutils'
2
4
  require 'rake/clean'
3
5
 
4
- WARNING = <<-WARN.freeze
5
- WARNING: you may not have wget installed, you could just download
6
- the correct version of jruby-complete to the vendors folder, and
7
- re-run k9 setup install instead of installing wget. Some systems
8
- may also require 'sudo' access to install, NB: this is untested....
6
+ WARNING = <<~WARN
7
+ WARNING: you may not have wget installed, you could just download
8
+ the correct version of jruby-complete to the vendors folder, and
9
+ re-run k9 setup install instead of installing wget. Some systems
10
+ may also require 'sudo' access to install, NB: this is untested....
9
11
 
10
12
  WARN
11
-
12
- JRUBYC_VERSION = '9.2.8.0'.freeze
13
-
14
- EXAMPLES = '3.4'.freeze
13
+ # https://github.com/processing/processing-video/releases/download/r6-v2.0-beta4/video-2.0-beta4.zip
14
+ JRUBYC_VERSION = '9.2.9.0'
15
+ SOUND = 'sound.zip'
16
+ SOUND_VERSION = 'v2.2.2'
17
+ VIDEO = 'video-2.0-beta4.zip'
18
+ VIDEO_VERSION = 'r6-v2.0-beta4'
19
+ EXAMPLES = '3.4'
15
20
  HOME_DIR = ENV['HOME']
16
21
  MAC_OR_LINUX = /linux|mac|darwin/ =~ RbConfig::CONFIG['host_os']
17
22
 
18
23
  CLOBBER << "jruby-complete-#{JRUBYC_VERSION}.jar"
19
24
  CLOBBER << "jruby-complete-#{JRUBYC_VERSION}.jar.sha256"
20
25
 
21
- file "jruby-complete-#{JRUBYC_VERSION}.jar.sha256" do
22
- begin
23
- system "wget https://repo1.maven.org/maven2/org/jruby/jruby-complete/#{JRUBYC_VERSION}/jruby-complete-#{JRUBYC_VERSION}.jar.sha256"
24
- rescue
25
- warn(WARNING)
26
- end
26
+ desc 'dependency check'
27
+ task :wget_check do
28
+ WGET ||= `which wget`
29
+ warn WARNING unless WGET
27
30
  end
28
31
 
29
- desc 'get sha256'
30
- task get_sha256: ["jruby-complete-#{JRUBYC_VERSION}.jar.sha256"]
31
-
32
- desc 'download, and copy to jruby_art'
33
- task default: %i[get_sha256 download copy_ruby]
34
-
35
- desc 'download JRuby upstream sources'
36
- task download: ["jruby-complete-#{JRUBYC_VERSION}.jar"]
32
+ file "jruby-complete-#{JRUBYC_VERSION}.jar.sha256" do
33
+ system "wget https://repo1.maven.org/maven2/org/jruby/jruby-complete/#{JRUBYC_VERSION}/jruby-complete-#{JRUBYC_VERSION}.jar.sha256"
34
+ end
37
35
 
38
36
  file "jruby-complete-#{JRUBYC_VERSION}.jar" do
39
37
  begin
40
38
  system "wget https://repo1.maven.org/maven2/org/jruby/jruby-complete/#{JRUBYC_VERSION}/jruby-complete-#{JRUBYC_VERSION}.jar"
41
- rescue
39
+ rescue NameError
42
40
  warn(WARNING)
43
41
  end
44
42
  value = File.read("jruby-complete-#{JRUBYC_VERSION}.jar.sha256")
45
43
  check_sha256("jruby-complete-#{JRUBYC_VERSION}.jar", value)
46
44
  end
47
45
 
46
+ desc 'get sha256'
47
+ task get_sha256: ['wget_check', "jruby-complete-#{JRUBYC_VERSION}.jar.sha256"]
48
+
49
+ desc 'download, and copy to jruby_art'
50
+ task default: %i[wget_check download copy_ruby install_samples]
51
+
52
+ desc 'download JRuby upstream sources'
53
+ task download: ['get_sha256', "jruby-complete-#{JRUBYC_VERSION}.jar"]
54
+
48
55
  directory '../lib/ruby'
49
56
 
50
57
  desc 'copy jruby-complete'
@@ -67,30 +74,70 @@ def check_sha256(filename, expected_hash)
67
74
  raise "bad sha256 checksum for #{filename} (expected #{expected_hash} got #{sha256.hexdigest})"
68
75
  end
69
76
 
77
+ desc 'initialize ~/.jruby_art directories'
78
+ task :init_dir do
79
+ unless File.exist? "#{HOME_DIR}/.jruby_art/libraries"
80
+ FileUtils.mkdir_p "#{HOME_DIR}/.jruby_art/libraries"
81
+ end
82
+ end
83
+
84
+ desc 'download and copy sound library to ~/.jruby_art'
85
+ task download_and_copy_sound: %i[wget_check init_dir download_sound copy_sound clobber]
86
+
87
+ desc 'download and copy video library to ~/.jruby_art'
88
+ task download_and_copy_video: %i[wget_check init_dir download_video copy_video clobber]
89
+
90
+ desc 'download sound library'
91
+ task :download_sound do
92
+ wget_base = 'wget https://github.com/processing/processing-sound'
93
+ wget_string = [wget_base, 'releases/download/latest', SOUND].join('/')
94
+ puts wget_string
95
+ system wget_string
96
+ end
97
+
98
+ desc 'download video library'
99
+ task :download_video do
100
+ wget_base = 'wget https://github.com/processing/processing-video'
101
+ wget_string = [wget_base, 'releases/download', VIDEO_VERSION, VIDEO].join('/')
102
+ system wget_string
103
+ end
104
+
105
+ desc 'copy sound library'
106
+ task copy_sound: SOUND do
107
+ system "unzip #{SOUND}"
108
+ FileUtils.rm_r "#{HOME_DIR}/.picrate/libraries/sound" if File.exist? "#{HOME_DIR}/.jruby_art/libraries/sound"
109
+ FileUtils.cp_r 'sound', "#{HOME_DIR}/.jruby_art/libraries"
110
+ FileUtils.rm_r 'sound'
111
+ end
112
+
113
+ desc 'copy video library'
114
+ task copy_video: VIDEO do
115
+ system "unzip #{VIDEO}"
116
+ FileUtils.rm_r "#{HOME_DIR}/.picrate/libraries/video" if File.exist? "#{HOME_DIR}/.jruby_art/libraries/video"
117
+ FileUtils.cp_r 'video', "#{HOME_DIR}/.jruby_art/libraries/video"
118
+ FileUtils.rm_r 'video'
119
+ end
120
+
70
121
  desc 'download, and copy to jruby_art'
71
- task unpack_samples: %i[download_examples copy_examples]
122
+ task install_samples: %i[download_examples copy_examples]
72
123
 
73
124
  desc 'download and copy examples to user home'
74
125
  task :download_examples
75
126
  file_name = MAC_OR_LINUX.nil? ? "#{EXAMPLES}.zip" : "#{EXAMPLES}.tar.gz"
76
127
  file file_name do
77
- begin
78
- if MAC_OR_LINUX.nil?
79
- system "wget https://github.com/ruby-processing/JRubyArt-examples/archive/#{EXAMPLES}.zip"
80
- else
81
- system "wget https://github.com/ruby-processing/JRubyArt-examples/archive/#{EXAMPLES}.tar.gz"
82
- end
83
- rescue
84
- warn(WARNING)
128
+ if MAC_OR_LINUX.nil?
129
+ system "wget https://github.com/ruby-processing/JRubyArt-examples/archive/#{EXAMPLES}.zip"
130
+ else
131
+ system "wget https://github.com/ruby-processing/JRubyArt-examples/archive/#{EXAMPLES}.tar.gz"
85
132
  end
86
133
  end
87
134
 
88
135
  desc 'copy examples'
89
136
  task copy_examples: file_name do
90
137
  if MAC_OR_LINUX.nil?
91
- sh "unzip #{EXAMPLES}.zip"
138
+ system "unzip #{EXAMPLES}.zip"
92
139
  else
93
- sh "tar xzvf #{EXAMPLES}.tar.gz"
140
+ system "tar xzvf #{EXAMPLES}.tar.gz"
94
141
  end
95
142
  FileUtils.rm_r("#{HOME_DIR}/k9_samples") if File.exist? "#{HOME_DIR}/k9_samples"
96
143
  FileUtils.cp_r("JRubyArt-examples-#{EXAMPLES}", "#{HOME_DIR}/k9_samples")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jruby_art
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 2.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Prout
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-08-30 00:00:00.000000000 Z
11
+ date: 2019-11-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -57,7 +57,7 @@ files:
57
57
  - lib/jogl-all-natives-macosx-universal.jar
58
58
  - lib/jogl-all-natives-windows-amd64.jar
59
59
  - lib/jogl-all.jar
60
- - lib/jruby_art-2.2.0.jar
60
+ - lib/jruby_art-2.2.1.jar
61
61
  - lib/jruby_art.rb
62
62
  - lib/jruby_art/app.rb
63
63
  - lib/jruby_art/config.rb
@@ -116,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
116
116
  requirements:
117
117
  - A decent graphics card
118
118
  - java runtime >= 11.0.3+
119
- rubygems_version: 3.0.4
119
+ rubygems_version: 3.0.6
120
120
  signing_key:
121
121
  specification_version: 4
122
122
  summary: Code as Art, Art as Code. Processing and Ruby are meant for each other.
Binary file