From headius at headius.com Wed Aug 2 19:21:26 2006 From: headius at headius.com (Charles O Nutter) Date: Wed, 2 Aug 2006 18:21:26 -0500 Subject: [Jruby-extras-devel] [jruby-dev] Fwd: RubyForge Project Approved In-Reply-To: References: <20060802181755.A3CD4524118E@rubyforge.org> <21ef583e0608021126r6a953330ue8354ac92e9f7b7b@mail.gmail.com> <21ef583e0608021137o593e4174w9ebf5e6472a0053c@mail.gmail.com> <44D121A9.8040409@tigerfive.com> <44D124A9.1090104@tigerfive.com> Message-ID: Well crap, I've been bitten by the following bug in Subversive: http://forums.polarion.org/viewtopic.php?t=412&start=0 I'll get the dirs made shortly, but I'll toss out two suggestions here: Shall we do this: /trunk/ where project is multiple top-level projects like antbuilder, activerecord-jdbc, mongrel-java etc /branches/- /tags/- Or this: /trunk/jruby-extras/ /branches/ where a branch is a branch of all jruby-extras /tags/ where a tag is a tag of all jruby-extras Or this (maybe not as nicely supported by trunk/branch/tags-aware SVN clients like Subversive): /trunk/ /branches// /tags// On 8/2/06, Charles O Nutter wrote: > > Done! I think a top-level "antbuilder" project is probably just as good as > anything. I'll get the basic SVN dirs created immediately. > > > On 8/2/06, Tim Azzopardi wrote: > > > > Doh, sorry I meant rubyforge. Same login on both. > > > > > -- > 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 > -- 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060802/156be6ae/attachment.html From headius at headius.com Wed Aug 2 22:37:13 2006 From: headius at headius.com (Charles O Nutter) Date: Wed, 2 Aug 2006 21:37:13 -0500 Subject: [Jruby-extras-devel] Fwd: [ruby.mn] RubyConf registration open! In-Reply-To: References: Message-ID: ---------- Forwarded message ---------- From: Nick Sieger Date: Aug 2, 2006 7:45 PM Subject: [ruby.mn] RubyConf registration open! To: ruby.mn at ruby.mn Go now! Go go go! https://www.regonline.com/101503 /Nick -- 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060802/1bbafa08/attachment.html From ola.bini at ki.se Sun Aug 6 09:41:25 2006 From: ola.bini at ki.se (Ola Bini) Date: Sun, 06 Aug 2006 15:41:25 +0200 Subject: [Jruby-extras-devel] Mongrel and stuff. Message-ID: <44D5F185.7020805@ki.se> Hi, Ok, so now there's a new jruby-extras project in town, called mongrel-support. At this moment I've just put three sub directories with my TST and Danny's JavaCC-generated parser and initial implementation to knit it together. The immediate plans for Mongrel support (from my angle), is partly to get Camping working with WEBrick (this is important since Mongrel now contains some _why-wizardry), get the Java extension loading into JRuby working, and use Mongrel 0.4 for development. That means, some of the code should be rechecked. Danny probably needs to check the JavaCC definitions against the new version. And I'll slowly (when I have time, that is) go about unifying the project so we have one build to rule them all, etc) Comments? I'll probably try some more with Camping tomorrow. Today I got a totally different error, which feels strange: [2006-08-06 15:39:03] INFO WEBrick 1.3.1 [2006-08-06 15:39:03] INFO ruby 1.8.4 (0) [java] [2006-08-06 15:39:04] INFO WEBrick::HTTPServer#start: pid=7214088 port=3301 [2006-08-06 15:39:27] ERROR NativeException: java.lang.NullPointerException: null org.jruby.internal.runtime.RubyNativeThread.(RubyNativeThread.java:53) [2006-08-06 15:39:39] ERROR NativeException: java.lang.NullPointerException: null org.jruby.internal.runtime.RubyNativeThread.(RubyNativeThread.java:53) [2006-08-06 15:39:55] ERROR NativeException: java.lang.NullPointerException: null org.jruby.internal.runtime.RubyNativeThread.(RubyNativeThread.java:53) For some reason I can't even get it working basically anymore. =/ I would like to wait with filing a JIRA-report until I have something more to go on, though. -- 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. From ola.bini at ki.se Sun Aug 6 11:17:17 2006 From: ola.bini at ki.se (Ola Bini) Date: Sun, 06 Aug 2006 17:17:17 +0200 Subject: [Jruby-extras-devel] Mongrel-support, some additions. Message-ID: <44D607FD.7030208@ki.se> Hi, I've now added a basic structure for building to mongrel-support. I've also added two classes, one called Http11Service, which follows the structure I've detailed for extensions on dev at jruby.codehaus.org. I've also added the class org.jruby.mongrel.HttpParser which is a JRuby class implementation which dummy methods for everything we have to support. Basically, we just need correct implementations of these few methods, and everything is good to go! =) -- 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. From danny.lagrouw at gmail.com Sun Aug 6 18:11:28 2006 From: danny.lagrouw at gmail.com (Danny Lagrouw) Date: Mon, 7 Aug 2006 00:11:28 +0200 Subject: [Jruby-extras-devel] Mongrel-support, some additions. In-Reply-To: <44D607FD.7030208@ki.se> References: <44D607FD.7030208@ki.se> Message-ID: <878e72900608061511n615d8b89q80289a99e36e03fd@mail.gmail.com> Hi Ola, I already posted an implementation of HttpParser on the list a few days ago (in the 2 zip files). I've also written a URIClassifier class for the TST methods. I'll attach both classes to this post (I would commit them to SVN, but I'd rather test them first with the code that you've put in there already--hopefully tomorrow night). -- Regards, Danny Lagrouw (danny.lagrouw at gmail.com ) Read my blog: http://blog.dannynet.net On 8/6/06, Ola Bini wrote: > > Hi, > > I've now added a basic structure for building to mongrel-support. I've > also added two classes, one called Http11Service, which follows the > structure I've detailed for extensions on dev at jruby.codehaus.org. I've > also added the class org.jruby.mongrel.HttpParser which is a JRuby class > implementation which dummy methods for everything we have to support. > Basically, we just need correct implementations of these few methods, > and everything is good to go! =) > > -- > 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. > > > _______________________________________________ > Jruby-extras-devel mailing list > Jruby-extras-devel at rubyforge.org > http://rubyforge.org/mailman/listinfo/jruby-extras-devel > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060807/3bc0faf8/attachment-0001.html -------------- next part -------------- A non-text attachment was scrubbed... Name: URIClassifier.java Type: application/octet-stream Size: 6281 bytes Desc: not available Url : http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060807/3bc0faf8/attachment-0002.obj -------------- next part -------------- A non-text attachment was scrubbed... Name: HttpParser.java Type: application/octet-stream Size: 5105 bytes Desc: not available Url : http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060807/3bc0faf8/attachment-0003.obj From ola.bini at ki.se Mon Aug 7 02:00:37 2006 From: ola.bini at ki.se (Ola Bini) Date: Mon, 07 Aug 2006 08:00:37 +0200 Subject: [Jruby-extras-devel] Mongrel-support, some additions. In-Reply-To: <878e72900608061511n615d8b89q80289a99e36e03fd@mail.gmail.com> References: <44D607FD.7030208@ki.se> <878e72900608061511n615d8b89q80289a99e36e03fd@mail.gmail.com> Message-ID: <44D6D705.30205@ki.se> Danny Lagrouw wrote: > Hi Ola, > > I already posted an implementation of HttpParser on the list a few days > ago (in the 2 zip files). I've also written a URIClassifier class for > the TST methods. I'll attach both classes to this post (I would commit > them to SVN, but I'd rather test them first with the code that you've > put in there already--hopefully tomorrow night). > Danny! Yes, I saw your implementation, and test files. But the HttpParser I created (which maybe should've been called RubyHttpParser) extends RubyObject and is available to the Ruby runtime with registered callbacks instead of using the include_class Java-support. In this way Mongrel will see http11 as an extension in the same way the C-version is done. -- 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. From danny.lagrouw at gmail.com Mon Aug 7 02:13:07 2006 From: danny.lagrouw at gmail.com (Danny Lagrouw) Date: Mon, 7 Aug 2006 08:13:07 +0200 Subject: [Jruby-extras-devel] Mongrel-support, some additions. In-Reply-To: <44D6D705.30205@ki.se> References: <44D607FD.7030208@ki.se> <878e72900608061511n615d8b89q80289a99e36e03fd@mail.gmail.com> <44D6D705.30205@ki.se> Message-ID: <878e72900608062313v1836724fn6c0ef2d30500e5b2@mail.gmail.com> Ok, no problem; I guess I would have noticed had I had the time to look at what you checked in ;) Tonight, I will first try to get things working with the "old" Mongrel, just to see if our code is any good. I'll also check the new HTTP parser against ours. Danny On 8/7/06, Ola Bini wrote: > > Danny Lagrouw wrote: > > Hi Ola, > > > > I already posted an implementation of HttpParser on the list a few days > > ago (in the 2 zip files). I've also written a URIClassifier class for > > the TST methods. I'll attach both classes to this post (I would commit > > them to SVN, but I'd rather test them first with the code that you've > > put in there already--hopefully tomorrow night). > > > > Danny! > > Yes, I saw your implementation, and test files. But the HttpParser I > created (which maybe should've been called RubyHttpParser) extends > RubyObject and is available to the Ruby runtime with registered > callbacks instead of using the include_class Java-support. In this way > Mongrel will see http11 as an extension in the same way the C-version is > done. > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060807/7e26b724/attachment.html From ola.bini at ki.se Mon Aug 7 02:21:26 2006 From: ola.bini at ki.se (Ola Bini) Date: Mon, 07 Aug 2006 08:21:26 +0200 Subject: [Jruby-extras-devel] Mongrel-support, some additions. In-Reply-To: <878e72900608062313v1836724fn6c0ef2d30500e5b2@mail.gmail.com> References: <44D607FD.7030208@ki.se> <878e72900608061511n615d8b89q80289a99e36e03fd@mail.gmail.com> <44D6D705.30205@ki.se> <878e72900608062313v1836724fn6c0ef2d30500e5b2@mail.gmail.com> Message-ID: <44D6DBE6.6000200@ki.se> Danny Lagrouw wrote: > Ok, no problem; I guess I would have noticed had I had the time to look > at what you checked in ;) > Tonight, I will first try to get things working with the "old" Mongrel, > just to see if our code is any good. I'll also check the new HTTP parser > against ours. > > Danny Great! I may have some time to check during the day, too. I'll keep you posted. Btw, if you haven't found it, you can check out 0.4 anonymously from rubyforge, under branch/mongrel-0.4 -- 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. From ola.bini at ki.se Mon Aug 7 02:22:52 2006 From: ola.bini at ki.se (Ola Bini) Date: Mon, 07 Aug 2006 08:22:52 +0200 Subject: [Jruby-extras-devel] First release! Message-ID: <44D6DC3C.7090600@ki.se> Hi JRuby-extras have release it's first package. It's version 0.0.1 of the ActiveRecord-JDBC-connector, released as a gem. Also, the trunk version is now installable through rails script/plugin! (Charles, I don't have rights to add this to news, could you write something?) -- 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. From ola.bini at ki.se Mon Aug 7 09:17:16 2006 From: ola.bini at ki.se (Ola Bini) Date: Mon, 07 Aug 2006 15:17:16 +0200 Subject: [Jruby-extras-devel] Mongrel status. Message-ID: <44D73D5C.2030303@ki.se> I did some more work on mongrel-support today. I've managed to integrate the different parts into one whole. I've renamed Danny's original org.jruby.mongrel.HttpParser into org.jruby.mongrel.HttpParserImpl, and done a class org.jruby.mongrel.HttpParser that extends RubyObject and delegates all operations to HttpParserImpl. In my local source where I have the extension mechanism for loading java-extensions from jar-files I know actually can run test_http11.rb (from mongrel subversion) almost unmodified (the modifications needed is to remove require 'mongrel', and remove some tests for HttpRequest which we aren't interested right now.) What is _really_ fun is that most of the tests actually work! The http-parser Danny has put together is awesome. It fails on very long header-fields though, but it's really great progress. I've added our version of test_http11.rb to our source code too. I also created a crude performance tests that check how fast the parser is for easy GET-requests. We are about 10 times slower than http11.c. We manage 100_000 parses in 12.38 seconds, while http11.c does it in 1.4s. So, what's left? We must of course implement the rest of http11.c in Java, but that's pretty close already. After that getting all tests to run will be the major challenge. I have JRuby loading Mongrel, but when we actually start doing something I get a TCPSocket error. I'm filing this on the JRuby-dev-list. In the meantime, please take a look at the new contents in jruby-extras. -- 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. From danny.lagrouw at gmail.com Mon Aug 7 15:39:39 2006 From: danny.lagrouw at gmail.com (Danny Lagrouw) Date: Mon, 7 Aug 2006 21:39:39 +0200 Subject: [Jruby-extras-devel] Mongrel status. In-Reply-To: <44D73D5C.2030303@ki.se> References: <44D73D5C.2030303@ki.se> Message-ID: <878e72900608071239k57382cd1h58edaa58f7f935f4@mail.gmail.com> Ola, I'm afraid you've lost me. I checked out the mongrel-support from RubyForge, but I can't get anything to work anymore. Could we integrate the 4 separate src trees that we have now into one, and have one build script to compile everything (including maybe a temp library with the extension mechanism)? On 8/7/06, Ola Bini wrote: > > ...... It fails on very long header-fields though, but it's really great > progress. Hmm... That's why I'd like to test it myself ;) So, what's left? We must of course implement the rest of http11.c in > Java, but that's pretty close already. After that getting all tests to > run will be the major challenge. A few days ago I did a few of the URIClassifier tests using the class that I sent you earlier; not many problems there, except for the returned Object[] arrays not being received in a Ruby parameter list, as I mentioned on the jruby-dev-list. But maybe that won't be an issue if you use your extension mechanism. -- Regards, Danny Lagrouw (danny.lagrouw at gmail.com ) Read my blog: http://blog.dannynet.net -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060807/942c6f42/attachment.html From headius at headius.com Tue Aug 8 00:55:25 2006 From: headius at headius.com (Charles O Nutter) Date: Mon, 7 Aug 2006 23:55:25 -0500 Subject: [Jruby-extras-devel] [jruby-dev] DRb (and other IO) issue resolved. In-Reply-To: <44D81477.5050705@cavoksolutions.com> References: <44D7C9CF.7040504@cavoksolutions.com> <44D805E0.3040207@cavoksolutions.com> <44D81477.5050705@cavoksolutions.com> Message-ID: Blogged. Even if it's not perfect (and I'm sure there's going to be more bugs) the fact that it's working at all is really cool. PROJECT IDEA for JRUBY-EXTRAS: A nice, automated, DRb-to-EJB gateway. On 8/7/06, Blane Dabney wrote: > Yes it does :) DRb doesn't seem to be acting exactly like I want, but > its not a 'problem' per-se (more like operator error), and its not > limited to JRuby. Seems to be working well. > > Charles O Nutter wrote: > > > Yep, this does appear to have fixed the issues with WEBrick! As far as > > my sequence of tests goes, this patch seems good, and it fixes a > > pretty major breakage with socket IO. I vote to commit, but I'll let > > it stew for a day. > > > > My previous question still stands though...did this let your DRb app > > work as expected? No new issues yet? > > > > On 8/7/06, Charles O Nutter wrote: > > > >> I'll give the updated patch a shot. > >> > > > > > --------------------------------------------------------------------- > To unsubscribe from this list please visit: > > http://xircles.codehaus.org/manage_email > > -- 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 From ola.bini at ki.se Tue Aug 8 03:00:17 2006 From: ola.bini at ki.se (Ola Bini) Date: Tue, 08 Aug 2006 09:00:17 +0200 Subject: [Jruby-extras-devel] Mongrel status. In-Reply-To: <878e72900608071238n1cced118ib17735e944501a08@mail.gmail.com> References: <44D73D5C.2030303@ki.se> <878e72900608071236h94cb385y6ef2d0202ad15ee7@mail.gmail.com> <878e72900608071238n1cced118ib17735e944501a08@mail.gmail.com> Message-ID: <44D83681.8030604@ki.se> Danny Lagrouw wrote: > Argh! Just read your post on the extension mechanism! Okay, that answers > one of my questions... > > On 8/7/06, *Danny Lagrouw* < danny.lagrouw at gmail.com > > wrote: > > Ola, > > I'm afraid you've lost me. I checked out the mongrel-support from > RubyForge, but I can't get anything to work anymore. Could we > integrate the 4 separate src trees that we have now into one, and > have one build script to compile everything? Is your extension > mechanism available in the JRuby trunk already (if not, can the > mongrel-support code run at all on my system)? > Hi, Sorry about this, I've been doing some work getting everything together, and also trying to get the extension API workable, including generating multi-stubs. Anyway. I've integrated the different projects and removed their sub directories, so if you just check out mongrel-support, change your build.properties to match, you should be set to go. The problem is the extension API and other customizations in my local tree. There is therefore a goal called wbuild that build without these restrictions. The cavaet is that it only builds the httpp-packet and org.jruby.mongrel.HttpParserImpl, but this allows Danny to continue testing (the test script from the jruby-mongrel sub package can now be found in src/test/testParserImpl.rb). We can't use this strategy with the mongrel tests, though, since we need the extension API for this. but it will allow development of the httpparser to continue. Regarding targeting earlier versions of mongrel than 0.4 seems to be a bad idea. I don't really fancy coding stuff that will be ripped out in two or three weeks... -- 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. From ola.bini at ki.se Fri Aug 18 09:35:23 2006 From: ola.bini at ki.se (Ola Bini) Date: Fri, 18 Aug 2006 15:35:23 +0200 Subject: [Jruby-extras-devel] Http11-lib working better. Message-ID: <44E5C21B.8090709@ki.se> Hi, I have just checked in a new version of the Http11Parser into our repository. The new version actually passes all test cases for Http11 in Mongrel (YIHAH!). Since we need the extension API in trunk to test it with mongrel (I have run the test cases with my dev-branch, which is really worse for wear right now... It doesn't run Mongrel at all, but that's because I have played with it too much). Anyway, right now we need the extension API, and then we can start trying Mongrel 0.4 out, and see if it works. -- 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. From tim at tigerfive.com Sun Aug 20 08:17:27 2006 From: tim at tigerfive.com (Tim Azzopardi) Date: Sun, 20 Aug 2006 13:17:27 +0100 Subject: [Jruby-extras-devel] subversive update 1.0.2 working against rubyforge svn+ssh: Message-ID: <44E852D7.80801@tigerfive.com> just installed the subversive update and it seems to be working against svn+ssh://rubyforge.org/var/svn/jruby-extras Using ssh password authentication. Couldn't get it working with my private key, but then I didn't try very hard. Committed some antbuilder documentation. More to follow... From headius at headius.com Mon Aug 21 16:47:59 2006 From: headius at headius.com (Charles O Nutter) Date: Mon, 21 Aug 2006 15:47:59 -0500 Subject: [Jruby-extras-devel] [jruby-dev] Http11-lib working better. In-Reply-To: <878e72900608211335q13e7636u193569c617a76378@mail.gmail.com> References: <44E5C21B.8090709@ki.se> <878e72900608211335q13e7636u193569c617a76378@mail.gmail.com> Message-ID: My fault for redirecting this back on to just JRuby dev. So you're saying that the 0.4 parser is simpler/more primitive than the 0.3parser? So basically, they branched it at some point in the past and have made more updates to the 0.3 parser since then. And you think it's possible they'll merge 0.4 back and use the updated 0.3 parser. >From Zed's email last week it sounded like things were simplified in 0.4, so it's possible the simpler HTTP stuff is intentional. We should get them on the line, so we can confirm what we need to support. I think we should target whatever they're planning to include in the next major Mongrel release, and forget about any 0.3 stuff that's going away. If it's actually going to be a simpler parser, so be it. We should also start figuring out the best way to wrap this into Mongrel proper. Ideally, we need to come up with a good plan for how the extension logic can work with RubyGems to install Java extensions when appropriate. We need to get JRubyists, you extension devs/designers, and The RubyGems folks together to come up with something that works. Eventually I want to be able to just "gem install mongrel" under JRuby and have it install everything I need. On 8/21/06, Danny Lagrouw wrote: > > The extension mechanism appears to be working with the http11 testcase > allright, fresh from the headius branch. I'm still getting a > " exception expected but none was thrown." > however; Ola, I thought that would be fixed with the > RaiseException/HttpParserError you put in HttpParser.java. Am I missing > something? > > BTW, the http11 parser file in the 0.4 branch is way behind the current > 0.3.x version. It's no use updating our own http11 parser to the 0.3version as long as we're using the > 0.4 branch. On the other hand, if 0.4 gets merged back into 0.3 (which I > assume will happen at some point), we'll have to have a new version ready. I > hope I'll find some time before my vacation... > > Danny > > > On 8/21/06, Charles O Nutter wrote: > > > > On 8/18/06, Ola Bini < ola.bini at ki.se> wrote: > > > > > > I have just checked in a new version of the Http11Parser into our > > > repository. The new version actually passes all test cases for Http11 > > > in > > > Mongrel (YIHAH!). > > > > > > Since we need the extension API in trunk to test it with mongrel (I > > > have > > > run the test cases with my dev-branch, which is really worse for wear > > > right now... It doesn't run Mongrel at all, but that's because I have > > > played with it too much). > > > > > > Anyway, right now we need the extension API, and then we can start > > > trying Mongrel 0.4 out, and see if it works. > > > > > > The basic extension API has been committed to my branch, so it's > > available for use now. I'm taking the direction of doing most of my work and > > commits against my branch, since I typically have other changes there that > > are quite different from trunk. > > > > Anyway, if you run with headius branch you ought to be able to start > > wiring in Mongrel extensions. I'm anxious to see it working, so we can > > really demo Camping and Rails in a production-style setup. > > > > -- > > 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 > > > > -- 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060821/8588b56b/attachment.html From ola.bini at ki.se Tue Aug 29 00:17:01 2006 From: ola.bini at ki.se (Ola Bini) Date: Tue, 29 Aug 2006 06:17:01 +0200 Subject: [Jruby-extras-devel] Rake tasks. Message-ID: <44F3BFBD.7010508@ki.se> Hi, Just wanted to know if someone has any Java Rake tasks. Otherwise I was thinking about implementing the most basic ones, trying it out for size, etc... -- 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. From headius at headius.com Tue Aug 29 00:52:07 2006 From: headius at headius.com (Charles O Nutter) Date: Mon, 28 Aug 2006 23:52:07 -0500 Subject: [Jruby-extras-devel] Rake tasks. In-Reply-To: <44F3BFBD.7010508@ki.se> References: <44F3BFBD.7010508@ki.se> Message-ID: By all means, give it a shot. I know a number of people, including myself, have expressed an interest in making a set of Rake tasks that could help it replace Ant. I'm going to be focused almost exclusively on Rails until RailsConf, but I'll try to offer what input I can. Feel free to make a new project. jake? jrake? drake? rant? antrake? On 8/28/06, Ola Bini wrote: > > Hi, > > Just wanted to know if someone has any Java Rake tasks. Otherwise I was > thinking about implementing the most basic ones, trying it out for size, > etc... > > -- > 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. > > _______________________________________________ > Jruby-extras-devel mailing list > Jruby-extras-devel at rubyforge.org > http://rubyforge.org/mailman/listinfo/jruby-extras-devel > -- Contribute to RubySpec! @ www.headius.com/rubyspec Charles Oliver Nutter @ headius.blogspot.com Ruby User @ ruby.mn JRuby Developer @ www.jruby.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060828/fdab4a83/attachment.html From ola.bini at ki.se Tue Aug 29 06:20:36 2006 From: ola.bini at ki.se (Ola Bini) Date: Tue, 29 Aug 2006 12:20:36 +0200 Subject: [Jruby-extras-devel] The bleak news that is AR-JDBC. Message-ID: <44F414F4.4080909@ki.se> Hi all. I have spent some time specifically looking at getting complete Oracle support in AR-JDBC, including migrations. This works, but is messy and includes copying lots of methods directly from oracle_adapter.rb. Not a good solution at all. So, I have looked at ways that we can include methods from those classes in our own adapter. Short story, no such luck. Since even loading the file requires OCI8 to be installed (and functional) there isn't any possibility of getting at the classes without clobbering everything. So, idea numero deux. Find a way of doing migrations without resorting to database-specific tricks; short story again; JDBC doesn't include it. As the situation looks right now, I haven't found a way to fix this. The only way I can see us supporting complete AR-JDBC for a driver is to implement all specific operations for that driver. The reason MySQL works so well almost out of the box is because AR have MySQL settings as default... If we want to keep DRY, we have to find a way of fixing this. Even better, is there some higher level tool that sits on JDBC and gives all possible DDL operations? Just for reference, the methods that I need to specify to get Oracle working are these: insert, structure_drop, structure_dump, remove_column, rename_column, change_column, change_column_default, remove_index, drop_table, rename_table, create_table, indexes, current_database, add_limit_offset! and default_sequence_name This may not seem that much, but consider we want support for most JDBC drivers. Preferably all. Writing these methods (and more for some) for all available drivers is big work, and when AR changes we will have a hard time keeping up... -- 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. From headius at headius.com Tue Aug 29 10:28:01 2006 From: headius at headius.com (Charles O Nutter) Date: Tue, 29 Aug 2006 09:28:01 -0500 Subject: [Jruby-extras-devel] [jruby-dev] The bleak news that is AR-JDBC. In-Reply-To: References: <44F414F4.4080909@ki.se> Message-ID: Blast, whenever you include both mailing lists I instinctively just hit "reply" and only the dev list gets it. We can probably keep this discussion in jruby-extras-devel, since what I meant to say below is that this would introduce a dependency on Hibernate into AR-JDBC...we shouldn't need to add anything to JRuby. So for all folks on the JRuby dev list that are interested in future plugin discussions...join jruby-extras-devel on RubyForge now! On 8/29/06, Charles O Nutter wrote: > > On 8/29/06, Ola Bini wrote: > > > > I have spent some time specifically looking at getting complete Oracle > > support in AR-JDBC, including migrations. This works, but is messy and > > includes copying lots of methods directly from oracle_adapter.rb. Not a > > good solution at all. So, I have looked at ways that we can include > > methods from those classes in our own adapter. Short story, no such > > luck. Since even loading the file requires OCI8 to be installed (and > > functional) there isn't any possibility of getting at the classes > > without clobbering everything. > > > That's fair. I can think of a few ways around this, mostly involving > parsing the file and removing requires we know we can't support (or just > removing all requires and only grabbing the methods we need, but that's a > little hacky). There may be something more here, but if not, we'll need > another option. > > So, idea numero deux. Find a way of doing migrations without resorting > > to database-specific tricks; short story again; JDBC doesn't include it. > > > > > That was my experience as well...there's no support in JDBC metadata for > information on DDL. I'm not sure such a feature is even planned. > > As the situation looks right now, I haven't found a way to fix this. > > The only way I can see us supporting complete AR-JDBC for a driver is to > > implement all specific operations for that driver. The reason MySQL > > works so well almost out of the box is because AR have MySQL settings as > > > > default... > > > Well I've been thinking about this a bit, and I think we're still in ok > shape. Here's my ideas: > > - There are a limited number of ways to do DDL...so each operation we need > for AR will have a limited number of options. There would be a few major > databases, and then minor ones would probably do things the same way or > require minor additions. As the set of "DDL Patterns" grows, we'll have > better coverage. This would be a pure-Ruby solution. > - We are not the first ones to try to solve the DDL problem. Many mapping > tools and libraries exist...several of them as open source. For example, > Hibernate includes tools to generate DDL based on a Hibernate HBM > definition. In that case, they've already done the legwork for a number of > databases, and since it's GPL, we could easily piggyback on that work. It > would introduce a dependency on that part of Hibernate into JRuby, but it > might just work. There are other options too, perhaps options that are > lighter-weight and closer to what we need. > - It would also be reasonable to provide an easy way to plug in the > missing methods, so that as users contribute them we're basically done. > Considering that we'll really only need to implement these methods once per > database, a community effort could finish it pretty quick...especially since > many databases already have mappings created in Rails proper. > - We could work with the Rails guys to abstract out the DDL part of the AR > adapters, so that it could be shared with other adapters if needed. It > obviously makes really good sense in our case, and it would be better > abstracted out even in the general case. > > I don't know yet which option is best, but I don't think we're really in > bad shape as it is. Getting DDL to work like we want is important, of > course, and we don't have an easy native JVM way to do it, but we have > options. > > -- > Contribute to RubySpec! @ www.headius.com/rubyspec > Charles Oliver Nutter @ headius.blogspot.com > Ruby User @ ruby.mn > JRuby Developer @ www.jruby.org > -- Contribute to RubySpec! @ www.headius.com/rubyspec Charles Oliver Nutter @ headius.blogspot.com Ruby User @ ruby.mn JRuby Developer @ www.jruby.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060829/30ecf1a7/attachment-0001.html From ola.bini at ki.se Tue Aug 29 11:42:00 2006 From: ola.bini at ki.se (Ola Bini) Date: Tue, 29 Aug 2006 17:42:00 +0200 Subject: [Jruby-extras-devel] [jruby-dev] The bleak news that is AR-JDBC. In-Reply-To: References: <44F414F4.4080909@ki.se> Message-ID: <44F46048.3070505@ki.se> Charles O Nutter wrote: > Blast, whenever you include both mailing lists I instinctively just hit > "reply" and only the dev list gets it. We can probably keep this > discussion in jruby-extras-devel, since what I meant to say below is > that this would introduce a dependency on Hibernate into AR-JDBC...we > shouldn't need to add anything to JRuby. Heh, yes, I have mailed to both the latest issues, when I'm not sure if it's only jruby-extras or both. As you say, there are ways around it. I've spent some googling and right now Hibernate does seem like the best way. I would love to just get the issue out of the way. My hope is that ActiveRecord-JDBC would be small enough to be maintainable. Of course, getting the AR-guys to extract the specific methods into modules would make great sense from our perspective, and not make it that much worse for them. The big problem is that their adapters look like this: begin require_library_or_gem 'oci8' unless self.class.const_defined? :OCI8 module ActiveRecord #etc... end rescue LoadError # stub out the oracle_connection method end Which means that they would have to put the oracle-specific modules outside this block to make it work for us. I really don't think parsing the files ourselves makes good sense in this case. It's too much magic, and once again, AR-JDBC needs to be maintainable. And easy to add to, since AR won't ever stand still... > > On 8/29/06, *Charles O Nutter * > wrote: > > On 8/29/06, *Ola Bini* > wrote: > > I have spent some time specifically looking at getting complete > Oracle > support in AR-JDBC, including migrations. This works, but is > messy and > includes copying lots of methods directly from > oracle_adapter.rb. Not a > good solution at all. So, I have looked at ways that we can include > methods from those classes in our own adapter. Short story, no such > luck. Since even loading the file requires OCI8 to be installed (and > functional) there isn't any possibility of getting at the classes > without clobbering everything. > > > That's fair. I can think of a few ways around this, mostly involving > parsing the file and removing requires we know we can't support (or > just removing all requires and only grabbing the methods we need, > but that's a little hacky). There may be something more here, but if > not, we'll need another option. > > So, idea numero deux. Find a way of doing migrations without > resorting > to database-specific tricks; short story again; JDBC doesn't > include it. > > > That was my experience as well...there's no support in JDBC metadata > for information on DDL. I'm not sure such a feature is even planned. > > As the situation looks right now, I haven't found a way to fix this. > The only way I can see us supporting complete AR-JDBC for a > driver is to > implement all specific operations for that driver. The reason MySQL > works so well almost out of the box is because AR have MySQL > settings as > default... > > > Well I've been thinking about this a bit, and I think we're still in > ok shape. Here's my ideas: > > - There are a limited number of ways to do DDL...so each operation > we need for AR will have a limited number of options. There would be > a few major databases, and then minor ones would probably do things > the same way or require minor additions. As the set of "DDL > Patterns" grows, we'll have better coverage. This would be a > pure-Ruby solution. > - We are not the first ones to try to solve the DDL problem. Many > mapping tools and libraries exist...several of them as open source. > For example, Hibernate includes tools to generate DDL based on a > Hibernate HBM definition. In that case, they've already done the > legwork for a number of databases, and since it's GPL, we could > easily piggyback on that work. It would introduce a dependency on > that part of Hibernate into JRuby, but it might just work. There are > other options too, perhaps options that are lighter-weight and > closer to what we need. > - It would also be reasonable to provide an easy way to plug in the > missing methods, so that as users contribute them we're basically > done. Considering that we'll really only need to implement these > methods once per database, a community effort could finish it pretty > quick...especially since many databases already have mappings > created in Rails proper. > - We could work with the Rails guys to abstract out the DDL part of > the AR adapters, so that it could be shared with other adapters if > needed. It obviously makes really good sense in our case, and it > would be better abstracted out even in the general case. > > I don't know yet which option is best, but I don't think we're > really in bad shape as it is. Getting DDL to work like we want is > important, of course, and we don't have an easy native JVM way to do > it, but we have options. > > -- > Contribute to RubySpec! @ www.headius.com/rubyspec > > Charles Oliver Nutter @ headius.blogspot.com > > Ruby User @ ruby.mn > JRuby Developer @ www.jruby.org > > > > > -- > Contribute to RubySpec! @ www.headius.com/rubyspec > > Charles Oliver Nutter @ headius.blogspot.com > Ruby User @ ruby.mn > JRuby Developer @ www.jruby.org > > > ------------------------------------------------------------------------ > > _______________________________________________ > Jruby-extras-devel mailing list > Jruby-extras-devel at rubyforge.org > http://rubyforge.org/mailman/listinfo/jruby-extras-devel -- 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. From danny.lagrouw at gmail.com Tue Aug 29 14:56:24 2006 From: danny.lagrouw at gmail.com (Danny Lagrouw) Date: Tue, 29 Aug 2006 20:56:24 +0200 Subject: [Jruby-extras-devel] [jruby-dev] Http11-lib working better. In-Reply-To: <44EEB753.10102@ki.se> References: <44E5C21B.8090709@ki.se> <878e72900608211335q13e7636u193569c617a76378@mail.gmail.com> <44EEB753.10102@ki.se> Message-ID: <878e72900608291156l66fb0b0fn586eec786602ca35@mail.gmail.com> Hi Ola, Charles, others, On 8/21/06, Charles O Nutter wrote: So you're saying that the 0.4 parser is simpler/more primitive than the 0.3parser? So basically, they branched it at some point in the past and have made more updates to the 0.3 parser since then. And you think it's possible they'll merge 0.4 back and use the updated 0.3 parser. If you look at the changes made to http11_parser.rl since v293 (the one I used for porting to JavaCC), they have added an extra result field from the parser to the Mongrel code. The comment explains this as "Fixes the differences between mongrel and webrick around request URI, path_info, etc. Adds REQUEST_PATH to disambiguate the whole problem as well." On the other hand, the 0.4 http11_parser.rl was branched 8 weeks ago from v286, and has not been changed since. That's not what I'd call simplifying the code. Perhaps that is still to come, but looking at 0.4 overall, there have not been any updates for 3 weeks now. On 8/25/06, Ola Bini wrote: > > I'm not sure why you get that error. I've recently recreated my > workstation, installing Linux from scratch. I've checked out > jruby/branches/headius/jruby and built this, checked out > mongrel-support, build the jar, copy the http11.jar to > $JRUBY_HOME/lib/ruby/site_ruby/1.8 > and then run $MONGREL_SUPPORT/src/test/test_http11.rb > and this works flawlessly. Are you certain that you have actually > rebuilt the jar in question, and updated everything fresh from SVN? > You're right, $MONGREL_SUPPORT/.../test_http11.rb runs without problems. I was trying to run mongrel-0.4/test/test_http11.rb. Shouldn't that work as well? Unfortunately, I won't be able to incorporate the latest Mongrel 0.3 changes to http11_parser.rl into the JavaCC port before my vacation. But that's probably not the biggest Mongrel/JRuby issue right now either. Also Charles is right, we should contact the Mongrel team about where they're going with 0.4. Maybe at RailsConf? (I won't be there, too bad, I'll be in Oslo at that time; but I'll definitely be at JavaPolis). -- Regards, Danny Lagrouw (danny.lagrouw at gmail.com ) Read my blog: http://blog.dannynet.net -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060829/9774b54b/attachment.html From ola.bini at ki.se Tue Aug 29 15:08:51 2006 From: ola.bini at ki.se (Ola Bini) Date: Tue, 29 Aug 2006 21:08:51 +0200 Subject: [Jruby-extras-devel] [jruby-dev] Http11-lib working better. In-Reply-To: <878e72900608291156l66fb0b0fn586eec786602ca35@mail.gmail.com> References: <44E5C21B.8090709@ki.se> <878e72900608211335q13e7636u193569c617a76378@mail.gmail.com> <44EEB753.10102@ki.se> <878e72900608291156l66fb0b0fn586eec786602ca35@mail.gmail.com> Message-ID: <44F490C3.4050604@ki.se> Danny Lagrouw wrote: > Hi Ola, Charles, others, > > > You're right, $MONGREL_SUPPORT/.../test_http11.rb runs without problems. > I was trying to run mongrel-0.4/test/test_http11.rb. Shouldn't that work > as well? > > Short story, no, not yet. That one includes two or three tests for stuff that isn't in Http11, but in other parts of Mongrel. They should run when the rest of Mongrel works fine. -- 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. From headius at headius.com Tue Aug 29 15:29:52 2006 From: headius at headius.com (Charles O Nutter) Date: Tue, 29 Aug 2006 14:29:52 -0500 Subject: [Jruby-extras-devel] [jruby-dev] Http11-lib working better. In-Reply-To: <44F490C3.4050604@ki.se> References: <44E5C21B.8090709@ki.se> <878e72900608211335q13e7636u193569c617a76378@mail.gmail.com> <44EEB753.10102@ki.se> <878e72900608291156l66fb0b0fn586eec786602ca35@mail.gmail.com> <44F490C3.4050604@ki.se> Message-ID: I will also say this...I know Mongrel is close, but I don't want y'all to break your backs trying to make it good enough for the demo. WEBrick isn't the speediest thing in the world, but it does work and it runs well enough for me to demo just about everything. Mongrel might speed it up a bit, but it's mostly a talking point about how we're approaching libraries and apps with C extensions...and that can be covered pretty well by ActiveRecord-JDC anyway. So short story...if Mongrel can work by the end of this week, great. If not...how bout helping me wrestle through AWDwR and come up with some compelling Rails + Java EE or Hibernate or XYZ demos? -- Contribute to RubySpec! @ www.headius.com/rubyspec Charles Oliver Nutter @ headius.blogspot.com Ruby User @ ruby.mn JRuby Developer @ www.jruby.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/jruby-extras-devel/attachments/20060829/675adada/attachment.html From ola.bini at ki.se Wed Aug 30 08:09:17 2006 From: ola.bini at ki.se (Ola Bini) Date: Wed, 30 Aug 2006 14:09:17 +0200 Subject: [Jruby-extras-devel] [jruby-dev] Http11-lib working better. In-Reply-To: References: <44E5C21B.8090709@ki.se> <878e72900608211335q13e7636u193569c617a76378@mail.gmail.com> <44EEB753.10102@ki.se> <878e72900608291156l66fb0b0fn586eec786602ca35@mail.gmail.com> <44F490C3.4050604@ki.se> Message-ID: <44F57FED.4030703@ki.se> Charles O Nutter wrote: > I will also say this...I know Mongrel is close, but I don't want y'all > to break your backs trying to make it good enough for the demo. WEBrick > isn't the speediest thing in the world, but it does work and it runs > well enough for me to demo just about everything. Mongrel might speed it > up a bit, but it's mostly a talking point about how we're approaching > libraries and apps with C extensions...and that can be covered pretty > well by ActiveRecord-JDC anyway. > > So short story...if Mongrel can work by the end of this week, great. If > not...how bout helping me wrestle through AWDwR and come up with some > compelling Rails + Java EE or Hibernate or XYZ demos? > I believe I can fix Mongrel 0.4 good enough for your demonstration 'til Friday, if someone gets the Socket-issue out of the way. Anyway, depending on your needs, just tell what you need help with. I'm planning on checking in a version of AR-JDBC which handle Oracle with migrations, for now just copied from AR, though. -- 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. From ola.bini at ki.se Wed Aug 30 11:01:12 2006 From: ola.bini at ki.se (Ola Bini) Date: Wed, 30 Aug 2006 17:01:12 +0200 Subject: [Jruby-extras-devel] ActiveRecord-JDBC progress. Message-ID: <44F5A838.3090409@ki.se> Hi there. I have spent some time working on ActiveRecord-JDBC and commmited a fairly big update right now. That said, our dear connector now can exercise these operations: ActiveRecord::Schema.define do create_table :authors do |t| t.column :name, :string, :null => false end add_index :authors, :name, :unique end class Author < ActiveRecord::Base; end Author.destroy_all Author.create(:name => "Arne Svensson") Author.create(:name => "Pelle Gogolsson") Author.find(:first) Author.find(:all) foo = Author.find(:first) foo.destroy bar = Author.find(:first) bar.name = "Pelle Sweitchon" bar.save ActiveRecord::Schema.define do drop_table :authors end on MySQL, Oracle (10g, but should be fine with others too) and PostgreSQL. Progress is nice. -- 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. From ola.bini at ki.se Thu Aug 31 07:14:38 2006 From: ola.bini at ki.se (Ola Bini) Date: Thu, 31 Aug 2006 13:14:38 +0200 Subject: [Jruby-extras-devel] More JDBC-support. Message-ID: <44F6C49E.30509@ki.se> Hiya, I have now checked in a new revision (using only the test case I mailed before, so support is not completely tested yet), which adds MS SQL Server and DB2 to our capabilities. -- 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.