Update to Jruby-1.7.4 and processing-2.0 #60

Closed
wants to merge 117 commits into
from

Projects

None yet

4 participants

Collaborator

Processing-2.0 has just been released. This is a big update since processing-2.0 includes many changes that are not backward compatible (with processing-1.5.1 notably P2D and P3D become jogl2). Further significant changes have been made inline with the now default ruby-1.9 support with jruby-1.7.4. Anyone interested in maintaining processing-1.5.1 compatibility should make their case soon.
@moumar, @jashkenas

monkstone and others added some commits Feb 25, 2013
@monkstone monkstone remove processing-1.5.1 library examples 1cab695
@monkstone monkstone re-organize and update basic samples 7854e45
@monkstone monkstone add demo and built in library examles d01d351
@monkstone monkstone add topics 8335702
@monkstone monkstone add external libraries examples 90db917
@monkstone monkstone update vendors Rakefile 4bdd633
@monkstone monkstone update gitignore CHANGELOG and README.markdown 3628d60
@monkstone monkstone add library and revised test a202e9a
@monkstone monkstone update markdown 7f83155
@monkstone monkstone update markdown 853e33e
@monkstone monkstone runners etc a1a0a40
@monkstone monkstone runners etc 1545383
@monkstone monkstone update contributed 377e4b6
@bassnode bassnode Remove incompatible tar flag for vendor build 23ab656
@monkstone monkstone Merge pull request #1 from bassnode/master
Remove incompatible tar flag in build process
b01fe6e
@monkstone monkstone use object method each rather than class e7b1c08
@monkstone monkstone Merge branch 'master' of github.com:monkstone/ruby-processing c42b74e
@monkstone monkstone fix indent restore gemspec 769dc0b
@monkstone monkstone add some schiffman modifications c16b69b
@monkstone monkstone remove unecessary map method 3992c14
@monkstone monkstone add concordance examples 78dd44e
@monkstone monkstone add table example a7de0f7
@monkstone monkstone add xml example 7dde03b
@monkstone monkstone add xml yahoo weather example 71198b1
@monkstone monkstone Update yahoo_weather.rb
no need for font attr
bdeebcb
@monkstone monkstone Update yahoo_weather.rb 6f098da
@monkstone monkstone regex example 00cd6f4
@monkstone monkstone koch lsystem/fractal example c75bccc
@monkstone monkstone spec date format b0b1385
@monkstone monkstone changes to reflection2 example 9e87450
@monkstone monkstone change to use macosx-processing as download, is smallest 13d3cce
@monkstone monkstone Update README.markdown
More functional readme.
06a38e1
@monkstone monkstone punctuation 16ab441
@monkstone monkstone add conway example 3202b10
@monkstone monkstone how did the pde files get there? a8b57e9
@monkstone monkstone pare down to a one line check f8e821b
@monkstone monkstone def clone2d fae12f5
@monkstone monkstone more lower case 5ad6461
@monkstone monkstone trimming wolfram 3537ffe
alexdean commented Apr 8, 2013

Some java classes which load correctly under jruby 1.7.2 are missing methods in 1.7.3.

https://gist.github.com/alexdean/5334124

alexdean commented Apr 8, 2013

Correction: Methods only appear to be missing when using the bundled jruby. An rvm-installed jruby 1.7.3 doesn't have this problem. gist updated.

Collaborator

On 08/04/13 05:35, Alex Dean wrote:

Correction: Methods only appear to be missing when using the bundled
jruby. An rvm-installed jruby 1.7.3 doesn't have this problem. gist
updated.


Reply to this email directly or view it on GitHub
#60 (comment).

Does it work as expected with external jruby? I've gotten the Bubble
example to work sans the offending methods
https://gist.github.com/monkstone/5335685. I've looked at the src
supplied with library, but surely that is out of date setFillColor(int)
instead of setFill(int). Further it appears to call a super method, then
perhaps we should not be surprised method is "hidden" with jruby.

The usual way round that is the following where l is the object

l.send_java :setFill, [Java::int], 0

which use reflection but that doesn't work (possibly a double dose of
reflection? that would probably never work in that case). For interest
you could try:-

l.send_java :setStrokeWeight, [Java::float], 2

which does work, but we didn't have any trouble with that method anyway.

Martin Prout

Collaborator

----Original Message----
From: notifications@github.com
Date:
08/04/2013 4:53
To: "jashkenas/ruby-processing"<ruby-
processing@noreply.github.com>
Cc: "Martin Prout"<martin_p@lineone.
net>
Subj: Re: [ruby-processing] Update to Jruby-1.7.3 and processing-
2.0b8 (#60)

Some java classes which load correctly under jruby 1.7.2
are missing methods in 1.7.3.

https://gist.github.com/alexdean/5334124>


Reply to this
email directly or view it on GitHub:
#60 (comment)

Hi,

Just got round to trying an external jruby-1.7.3 on my 64bit
linux box with the bubble sketch, and it works perfect for me (black
fill etc), now I'm wondering if we really need jruby-complete at all. I
wasn't in on when Jashkenas originally chose to use it, possibly for
use with applets an exported apps. Applets never where very good
required whole of jruby-complete (every time) so was never practical
also Applets no longer supported since processing-2.0. I will do some
more work see if other sketches run as well.

Regards

Martin Prout

alexdean commented Apr 9, 2013

@monkstone Thanks for the followup. I'm not familiar with all the ins & outs of how ruby-processing is packaged, but I will say that the first time I used it I found it really surprising that an entire jruby runtime was packaged with the gem.

Do you think there's a case for removing the bundled jruby? rvm or rbenv make installing jruby pretty easy.

Collaborator

On 09/04/13 21:03, Alex Dean wrote:

@monkstone https://github.com/monkstone Thanks for the followup. I'm
not familiar with all the ins & outs of how ruby-processing is
packaged, but I will say that the first time I used it I found it
really surprising that an entire jruby runtime was packaged with the gem.

Do you think there's a case for removing the bundled jruby? rvm or
rbenv make installing jruby pretty easy.


Reply to this email directly or view it on GitHub
#60 (comment).

I think there is quite possibly a good case for removing the
jruby-complete, and making jruby a dependency, though quite how to
control the version (to protect the maintainer/s from work dealing with
idiosyncrasies of different users installs; regular processing for
example comes bundled with complete java runtime, just for that reason).
At the moment the onus is on the individual to sort it out when they use
the --jruby flag (however it does seem that ruby-processing users are in
general a bit brighter than the average vanilla processing user). I've
tried to contact @jashkenas to confirm that main reason for
ruby-complete was for the applets, perhaps the jruby folks @headius
would be interested in the different behaviour between jruby and
jruby-complete.

monkstone added some commits Apr 13, 2013
@monkstone monkstone add fisica library examples 055ae0e
@monkstone monkstone add README message in shader example folder 25f7213
@monkstone monkstone modify README message in shader example folder 6a15496
@monkstone monkstone another fisica example 1272433
@monkstone monkstone Update joints.rb
I've enjoyed converting these sketches to run on ruby-processing, and it alerted me to the idea of ditching the included jruby-complete ( as these sketches will only run properly with an external jruby). However, another more important group of sketches (see topics/shaders) will not run properly with an external jruby (at least on my setup). So for now I'm inclined to stick with including jruby-complete.
@jashkenas and @alexdean.
dca5525
@monkstone monkstone demonstrate the use of module 41a59c9
@monkstone monkstone add license to gemspec f402e9f
@monkstone monkstone minor mods 848456f
@monkstone monkstone Update joints.rb 2664454
@monkstone monkstone a working spore2 a5897c4
@monkstone monkstone Update spore2.rb 23dbcad
@monkstone monkstone Update cell.rb b762e52
@monkstone monkstone a working spore1 ea04203
@monkstone monkstone use pixel access for efficiency b7863b9
@monkstone monkstone add vector examples 8192a93
@monkstone monkstone Update vector_math.rb 369cf29
@monkstone monkstone Update bouncing_ball.rb 9128731
@monkstone monkstone add -gui- examples d125c89
@monkstone monkstone Update button.rb c641fdb
@monkstone monkstone some cleanup ff1589f
@monkstone monkstone add animation examples b3371b2
@monkstone monkstone add scrollbar example c599110
@monkstone monkstone hemesh library featuring mesh to vbo in ruby 15cb551
@monkstone monkstone a few refinements and comments 8d9157c
@monkstone monkstone add shiffman pbox2d example 01217ef
@monkstone monkstone some refinement, don't need Processing::Proxy d4805cb
@monkstone monkstone favor a library module? 1fcabc6
@monkstone monkstone add liquidy example 44b8f95
@monkstone monkstone yet another pbox2d sketch a4324ec
@monkstone monkstone amended two failing tests to work correctly b8e70a7
@monkstone monkstone lets have a more up to date look for control panel if we can cd1109e
@monkstone monkstone update to latest jruby and processing b741e36
@monkstone monkstone Warn about possible issues on linux with processing-2.0b9, it doesn't…
… just affect ruby-processing anyway
e199883
@monkstone monkstone Update README.markdown 6f3b063
@monkstone monkstone suggest alternative linux build 539384a
@monkstone monkstone add more video library examples 1ec72da
@monkstone monkstone more video library examples b7e5d3e
@monkstone monkstone tidy movie examples 128f7c1
@monkstone monkstone use equals? instead of == for identity comparison 120d24c
@monkstone monkstone replace deprecated 'ruby_to_java and 'java_to_primitive' 5e32514
@monkstone monkstone poxy compability for test 46f3444
@monkstone monkstone important read this please de366f3
@monkstone monkstone correction for liquidy 5e829e1
@monkstone monkstone poxy redcar is messy e691575
@monkstone monkstone update landscape example decd028
@monkstone monkstone apart from shader sketches no longer need jruby-complete? 12537f4
@monkstone monkstone processing-2.0 is released 820a554
@monkstone monkstone make sure you visit processing.org b0dc609
@monkstone monkstone Update README.markdown 0676733
@monkstone monkstone Update README.markdown 49f61be
@monkstone monkstone Update README.markdown a6a61dd
@monkstone monkstone may be were not ready db2d85d
@monkstone monkstone Update README.markdown
Add link to processing foundation
3479313
@monkstone monkstone Update README.markdown c076e17
@monkstone monkstone Update README.markdown 991c4c8
@monkstone monkstone Update README.markdown bc458f0
@monkstone monkstone Update README.markdown 4e2c088
@monkstone monkstone add external_library/ruby_gem 904f314
@monkstone monkstone tidy up 4277380
@monkstone monkstone perlin noise example a7b428d
@monkstone monkstone proscene is a belting library 7707298
@monkstone monkstone tune up for camera example 1774575
@monkstone monkstone refactored to use each_cons @fjennet might be interested? 3f149ce
@monkstone monkstone make use of each_slice and flattened arrays d680796
@monkstone monkstone ignore *.zip in vendors 50cad64
@monkstone monkstone Merge branch 'master' of github.com:monkstone/ruby-processing 23142f4
@monkstone monkstone include processing license af2cbf9
@monkstone monkstone Update README.markdown
@originalsurfmex might be interested
328af2a
@monkstone monkstone Update to reflect processing-2.0 release
@jashkenas, @moumar might be interested.
4e151cf
@monkstone monkstone Update CHANGELOG 9cc5ef6
@monkstone monkstone update gitignore 468a6fd
@monkstone monkstone Merge branch 'master' of github.com:monkstone/ruby-processing 31731cf
@monkstone monkstone revise some lsystem examples be36de7
@monkstone monkstone Update README.markdown e7a2ec3
@monkstone monkstone Update README.markdown 4adc11e
@monkstone monkstone Update README.markdown ec56306
Collaborator

Instead of pulling I pushed @jashkenas, @originalsurfmex , @bassnode , @alexdean

@monkstone monkstone closed this Jun 18, 2013

@monkstone: Wanted to give a 👍 for getting Ruby-Processing up to date!
Will this be released to RubyGems? The last release was in September 2011.

Collaborator

@donokuda thanks, needs it some more testing yet, what are you running it on? All feedback is valuable, but particularly from Windows users (there are marginal issues on 64 bit linux with jruby-1.7.4 that can be patched but I will wait for JRuby-1.7.5 at least).

@monkstone I'm currently running on OSX 10.7.5 but I'll be sure to open up an issue if I run into any problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment