Tuesday, May 25, 2010

Google App Engine 0.0.13 gems released

We just released the 0.0.13 google-appengine gem. We published the latest App Engine SDK, and we're now using the jruby-jars gem published by the JRuby team. We also have some bug fixes to the appengine-apis gem, and the dm-appengine gem now supports Discriminators (single-table-inheritance):
  • App Engine Tools updated to version 0.0.13
  • App Engine Rack updated to version 0.0.9
  • App Engine SDK updated to version 1.3.4
  • App Engine APIs updated to version 0.0.16
Currently, appengine-rack depends on jruby-jars 1.4.1, but we have a pre-release version that will allow you to install any version of JRuby you want (by specifying it in the Gemfile).
More Coming Soon - We found an obscure issue with JRuby 1.5.0 on App Engine, but we expect to see this addressed in JRuby 1.5.1. Folks that want to use jruby-openssl 0.7 will need to hold untill JRuby 1.5.1. In the next few days, I plan to publish guides for Rails 2.3.8 and pure-Java Nokogiri.
RailsConf Session - Ryan Brown and I will be giving a talk at RailsConf, "Scaling Rails on App Engine with JRuby and Duby". You won't believe how far we've come in one year. David Masover will be there to bring us up-to-speed on the work he's doing with the DataMapper adapter. We'll also share highlights from Google I/O, and review the App Engine product roadmap.
Hackfest at RailsConf - Google is sponsoring a Hackfest at RailsConf on June 9. We'll have food, drinks, and even some swag to give away. Ryan and I will be helping folks with Duby and JRuby on App Engine. Other Googlers will be on-hand to help folks with Apps Marketplace integration and we'll get folks signed-up beforehand to use Google Storage for Developers. More details to follow.

Wednesday, May 5, 2010

Google App Engine 0.0.12 gems released

We just released the 0.0.12 google-appengine gem. We published the latest App Engine SDK, and did some cleanup on the tools to properly set ENV['RACK_ENV'] for Sinatra::Reloader. We also fixed some issues with threads hanging in the development console:
  • Both JRuby 1.4.1 and 1.5.0.dev are available
  • App Engine Tools updated to version 0.0.12
  • App Engine Rack updated to version 0.0.8
  • App Engine SDK updated to version 1.3.3.1
  • App Engine APIs updated to version 0.0.15
JRuby OpenSSL - Simply install our prerelease version of JRuby 1.5, and the latest jruby-openssl gem will work just fine. Folks that have been using an altered version of jruby-openssl 0.5.2 should update to jruby-openssl 0.7.
    sudo gem install google-appengine
    sudo gem install appengine-jruby-jars --pre


Contributions - Lots of great posts have been coming into the list recently. John Wang wrote up a nice blog post on generating JSON on Rails. Stefan Michaelis just wrote up a detailed gist on custom Authentication and Authorization.Local Meetup - Around 100 local Rubyists attended the App Engine Meetup last night. I presented summary slides form developers in Hawaii, Taiwan and Greece, and dissected a Rails application. Right after the meetup, Sarah Allen wrote up this fantastic blog post. I've also made my presentation available.Conferences - We're excited about a couple upcoming conferences. On Thursday I'll be at the Red Dirt RubyConf, I'll lead off the Servers/Hosting theme with a talk on JRuby on Google App Engine. A couple weeks later is Google I/O, we expect to hear some exciting announcements about App Engine. Those attending won't want to miss What's hot in Java for App Engine.

Thursday, April 8, 2010

Google App Engine 0.0.11 gems released

We recently released the 0.0.11 google-appengine gem. We published the latest App Engine SDK, and now use bundler to fetch the jruby-rack gem. The latest App Engine APIs include bug fixes for memcache and HTTPS, and we pushed a new DM adapter with some experimental new features:
  • App Engine Rack updated to version 0.0.7 and now includes
    deferred dispatcher and depends on JRuby-Rack 0.9.7 gem
  • App Engine SDK updated to version 1.3.2
  • App Engine APIs updated to version 0.0.14
  • DM Adapter updated to version 0.0.8
Reliable Spin-up - Our biggest show-stopper has been apps not consistently initializing within 30 seconds. Thankfully, @urekat came up with a simple solution to mitigate this problem, using redirects to break-up loading requests. We've packaged the deferred dispatcher with appengine-rack for your convenience.
JRuby Updates - A new version of Warbler was just release, we hope to take advantage of some of the new features for our Rails 3 setup process. We also expect to see a release candidate of JRuby 1.5 any day now, and jruby-openssl 0.6.1 should follow.
OAuth & OpenID - Thanks to some hard work from @ribrdb and @nahi, the jruby-openssl 0.6.1 gem will work properly on App Engine. The lack of a released gem has not stopped some developers from forging ahead. You should wait for jruby-openssl 0.6.1, but here are a couple examples from @azazeal and @baroquebobcat that use an altered gem to support OAuth and OpenID.
Nokogiri Java Port - As @headius has recently reported, the pure-Java version is very close to 100% passing. Thanks to an epic effort from Sergio Arbeo, Patrick Mahoney, Yoko Harada and others. It looks like they'll push it over the edge very soon.
App Engine Birthday - App Engine had a second birthday last week, and App Engine for Java is now only one year old. JRuby developers should be very excited with the recently published product roadmap. There was also an interesting TechCrunch article today.
Success Stories - A recent tweet from @app engine links to a blog post about Starting your business in less than a week with Rails on App Engine. The app runs Rails 2.3.5 with DataMapper on App Engine. The timing was just right when @azazeal started building his app, and he was determined to push through any issues. We also have a lot of utility apps like jruby-ci, so if you've been on the fence, consider using App Engine for your next Ruby app.

Saturday, February 27, 2010

Google App Engine 0.0.10 gems released

We just released the 0.0.10 google-appengine gem. Working with cron.yaml has been fixed with the latest version of App Engine Tools. We also include AppEngine SDK 1.3.1. I've posted a few more examples. I show how to configure ActionMailer, special thanks to Michael Rykov. I also show how to work with a gem that doesn't have the java extensions in a jar.
  • App Engine Tools updated to version 0.0.10
  • App Engine SDK updated to version 1.3.1
We've also published a gem that includes JRuby 1.5.dev from head. People that have been having issues lately, especially with Rails, should try installing this gem:
    sudo gem install appengine-jruby-jars --pre

Our video from RubyConf, Scaling on App Engine with Ruby and Duby, has finally been posted. Also, JRuby commits can now be tracked at @jrubyci thanks to @koichiroo: http://jruby-ci.appspot.com
Works with bundler08, and JRuby-Rack 0.9.7. We had some great demos published recently:

Tuesday, January 26, 2010

Google App Engine 0.0.9 gems released

We just released the 0.0.9 google-appengine gem. This new version of App Engine Tools addresses a previous issue with JRuby-Rack and facilitates bundling gems with Java extensions. I've created a couple sample apps, that use some common gems.
Later today, during the "Google Appengine Java: Groovy baby!" talk at Jfokus in Stockholm, Peter Lind will be giving a presentation about JRuby on AppEngine.

Thursday, January 21, 2010

Google App Engine 0.0.8 gems released

We recently released the 0.0.8 google-appengine gem. This new version of App Engine Tools is compatible with the latest version of Gem Bundler. We also added support for Rails 2.3.5 by including JRuby-Rack 0.9.6. Unfortunately, there is an incompatibility with App Engine, but we'll have a new release to fix this very soon. You can fix it from your app directory like so:

  cd app_dir
  curl -sO http://jruby-primer.appspot.com/tools/fix008.rb
  ruby fix008.rb


We have had a great deal of community contribution recently. We assumed Rails 2 would not work without rubygems, so we were waiting for Rails 3. Fortunately, Takeru Sasaki was able to patch the Rails 2.3.5 calls to rubygems, and now we have it working. Rails 2.3.5 currently spins up several seconds faster than Rails 3, and just a few seconds behind Sinatra.

Takeru also created a datastore adapter called TinyDS. I created a TinyDS integration plugin that handles ActiveRecord method calls. Josh Moore also created a DM integration plugin, so now we have both adapters working effortlessly with Rails 2.3.5 generated scaffold.

Wednesday, December 23, 2009

Google App Engine 0.0.7 gems released

We recently released the 0.0.7 google-appengine gem, with support for the latest App Engine SDK and Gem Bundler. We also have new versions of App Engine APIs, and the DataMapper adapter now supports the NOT_EQUAL and IN operators.

We also published JRuby on App Engine and Introducing Duby to YouTube. Duby is a new language with Ruby-inspired syntax, that compiles directly to Java bytecode. Ryan Brown explains why Duby is especially powerful for App Engine development.
This release includes updates to the following packages:
  • App Engine SDK updated to version 1.3.0
  • App Engine APIs gem updated to version 0.0.12
  • App Engine tools gem now works with Bundler 0.7.2
  • DM Adapter gem updated to version 0.0.7