[ANN] JRuby Extras - making Ruby apps spectacular in the Java world

I'm happy to announce the JRuby Extras project, on RubyForge as
jruby-extras. This project is intended to be a community-maintained nursery
of plugins and extensions to extend JRuby's capabilities and to provide
Java-based versions of many popular C extensions. Here's a short list of
projects to be nurtured under the JRuby Extras banner:

- A Mongrel for JRuby, with Java-based http11 and tst extensions
- An ActiveRecord JDBC adapter, which will eventually promise full database
independence for Rails apps
- A set of Java-aware Rake tasks to finally allow poor, sad Java developers
to eliminate ten-thousand-line Ant scripts for their builds
- An "AntBuilder" project, to allow defining those ten-thousand-line ant
scripts in something less similar to angle-bracket insanity
- And much more to come!

JRuby opens up a whole new world to Rubyists, but there are little gaps to
fill to support all the popular apps. JRuby Extras will be the answer to
those gaps. Success for Ruby on the JVM means more success for Ruby
overall...and that's what we all want, isn't it?

Anyone interested in porting an extension to Java or making their favorite
Ruby app run under JRuby should join the project! Visit jruby-extras at
RubyForge:

http://rubyforge.org/projects/jruby-extras/

And for those of you interested, JRuby has moved to Codehaus as of this
week. We're blazing ahead on performance and compatibility initiatives, and
the future is looking great for Ruby on the JVM.

Visit http://www.jruby.org

Thank you!

···

--
Contribute to RubySpec! @ www.headius.com/rubyspec
Charles Oliver Nutter @ headius.blogspot.com
Ruby User @ ruby.mn
JRuby Developer @ www.jruby.org
Application Architect @ www.ventera.com

The tst is going away. 0.4 won't have it so you're better off doing an
alternative to http11. The code for this is in the svn, ask me for help
getting it.

Also, please please please please please please please please please
please please please please please please please don't don't don't don't
don't don't don't don't don't don't ... hand code the HTTP parser.

Use a parser generator.

Anyway, feel free to hit me up for help.

···

On Thu, 2006-08-03 at 14:40 +0900, Charles O Nutter wrote:

I'm happy to announce the JRuby Extras project, on RubyForge as
jruby-extras. This project is intended to be a community-maintained nursery
of plugins and extensions to extend JRuby's capabilities and to provide
Java-based versions of many popular C extensions. Here's a short list of
projects to be nurtured under the JRuby Extras banner:

- A Mongrel for JRuby, with Java-based http11 and tst extensions

--
Zed A. Shaw

http://mongrel.rubyforge.org/
http://www.railsmachine.com/ -- Need Mongrel support?

Zed Shaw wrote:

I'm happy to announce the JRuby Extras project, on RubyForge as
jruby-extras. This project is intended to be a community-maintained nursery
of plugins and extensions to extend JRuby's capabilities and to provide
Java-based versions of many popular C extensions. Here's a short list of
projects to be nurtured under the JRuby Extras banner:

- A Mongrel for JRuby, with Java-based http11 and tst extensions

The tst is going away. 0.4 won't have it so you're better off doing an
alternative to http11. The code for this is in the svn, ask me for help
getting it.

Also, please please please please please please please please please
please please please please please please please don't don't don't don't
don't don't don't don't don't don't ... hand code the HTTP parser.

Use a parser generator.

Anyway, feel free to hit me up for help.

Well, the TST took only 1 hour to port, so I believe it's OK to waste that time. Regarding the parser, we've discussed it back and forth. The problem is that Ragel isn't available on Java yet. But hand coding it was never an option (I've read your statements about how many security holes get fixed by having a parser generator). Right now Danny Lagrouw have created a JavaCC version which seems really good.

No worries, we want Mongrel on JRuby because it's _good_ at what it does, so it would defeat our purposes to change any of that.

···

On Thu, 2006-08-03 at 14:40 +0900, Charles O Nutter wrote:

--
  Ola Bini (http://ola-bini.blogspot.com)
  JvYAML, RbYAML, JRuby and Jatha contributor
  System Developer, Karolinska Institutet (http://www.ki.se)
  OLogix Consulting (http://www.ologix.com)

  "Yields falsehood when quined" yields falsehood when quined.

Ola already replied, but we're definitely better of as you say using a
parser generator, even if it is JavaCC-based. The best way you could
probably help us is paving the way for this to be included in mongrel-core
at some point. Ideally we'd eventually like Ruby and JRuby users alike to
just install the same gems, knowing they'll come along with the appropriate
native bits for the target implementation. That's the big goal,
anyway...avoiding JRuby forks of all the same projects.

···

On 8/3/06, Zed Shaw <zedshaw@zedshaw.com> wrote:

The tst is going away. 0.4 won't have it so you're better off doing an
alternative to http11. The code for this is in the svn, ask me for help
getting it.

Also, please please please please please please please please please
please please please please please please please don't don't don't don't
don't don't don't don't don't don't ... hand code the HTTP parser.

Use a parser generator.

--
Contribute to RubySpec! @ Welcome to headius.com
Charles Oliver Nutter @ headius.blogspot.com
Ruby User @ ruby.mn
JRuby Developer @ www.jruby.org
Application Architect @ www.ventera.com

That's cool, but the problem isn't how easy it is to write, the problem
is that _why wrote a completely different URI classifier that allows for
nicer notifiers and registrations and all in pure Ruby. It's in the 0.4
code, so your work was basically for nothing really.

We should maybe coordinate on this a bit so that you folks get the right
code to base your work on and we can sync up with the 0.4 release.

···

On Thu, 2006-08-03 at 16:20 +0900, Ola Bini wrote:

Zed Shaw wrote:
> On Thu, 2006-08-03 at 14:40 +0900, Charles O Nutter wrote:
>> I'm happy to announce the JRuby Extras project, on RubyForge as
>> jruby-extras. This project is intended to be a community-maintained nursery
>> of plugins and extensions to extend JRuby's capabilities and to provide
>> Java-based versions of many popular C extensions. Here's a short list of
>> projects to be nurtured under the JRuby Extras banner:
>>
>> - A Mongrel for JRuby, with Java-based http11 and tst extensions
>
> The tst is going away. 0.4 won't have it so you're better off doing an
> alternative to http11. The code for this is in the svn, ask me for help
> getting it.
>
> Also, please please please please please please please please please
> please please please please please please please don't don't don't don't
> don't don't don't don't don't don't ... hand code the HTTP parser.
>
> Use a parser generator.
>
> Anyway, feel free to hit me up for help.
>

Well, the TST took only 1 hour to port, so I believe it's OK to waste
that time. Regarding the parser, we've discussed it back and forth.

--
Zed A. Shaw

http://mongrel.rubyforge.org/
http://www.railsmachine.com/ -- Need Mongrel support?

Absolutely...I think the jruby-extras devs involved in the mongrel effort
should connect with y'all and do it up right. Thanks for the help!

···

On 8/3/06, Zed Shaw <zedshaw@zedshaw.com> wrote:

On Thu, 2006-08-03 at 16:20 +0900, Ola Bini wrote:
> Well, the TST took only 1 hour to port, so I believe it's OK to waste
> that time. Regarding the parser, we've discussed it back and forth.

That's cool, but the problem isn't how easy it is to write, the problem
is that _why wrote a completely different URI classifier that allows for
nicer notifiers and registrations and all in pure Ruby. It's in the 0.4
code, so your work was basically for nothing really.

We should maybe coordinate on this a bit so that you folks get the right
code to base your work on and we can sync up with the 0.4 release.

--
Contribute to RubySpec! @ Welcome to headius.com
Charles Oliver Nutter @ headius.blogspot.com
Ruby User @ ruby.mn
JRuby Developer @ www.jruby.org
Application Architect @ www.ventera.com