โฏ Guillaume Laforge

CamelCaseCon Groovy conference in Germany

If you’re in Germany, don’t miss the CamelCaseCon conference in Dรผsseldorf! A conference dedicated to the Groovy ecosystem: Groovy, Grails, Gradle, CodeNarc and Spock.
Dierk Kรถnig, Hans Dokter, Peter Niederwieser, Joachim Bauman, Stefan Glase, will cover all these Groovy-related topics, so you’ll hear the latest news from renowned experts.


On CloudFoundry micro-cloud

VMware released the announced CloudFoundry micro-cloud.
First, what is that micro-cloud about? From the announcement on the website:

Micro Cloud Foundry is a complete version of Cloud Foundry that runs in a virtual machine on a developerโ€™s Mac or PC. It is a full instance of Cloud Foundry that provides the flexibility of local development while preserving your options for future deployment and scaling of your applications.

I’m quite happy that this virtualized version of the real CloudFoundry is available, as this will greatly simplify the process for developing and testing your application locally.

Read more...

Already 8 years of Groovy!

Today is the 8th birthday of the Groovy dynamic language project!

I hardly believe I’ve been involved with the project for almost as long! I started contributing to the project very early, but only became committer 4 months or so later. It’s been such a great fun, great ride, meeting all those great persons, and seeing the community forming around the project, and further along, the wealth of satellite projects!

There are still so many good things ahead of us, but we already have a solid, healthy, successful and popular project project, and that’s also thanks to all our users, and those who contributed in a way or another. So thanks to you all for all those great years!

Read more...

Gaelyk 1.0 is out

I’m very happy to announce the final release of Gaelyk 1.0, the lightweight Groovy toolkit for Google App Engine!
It took some time to get to 1.0, but it’s now here, with the key feature I’ve been missing since the beginning of the project, in particular the Query DSL which allows you to write queries like this one:

def latestArticles = datastore.execute {  
    select all from articles  
    sort desc by dateCreated  
    where author == params.author  
    limit 10  
}

If you want to learn more about this lightweight framework, head over to: http://gaelyk.appspot.com/
You can learn everything through the tutorial.

Read more...

Blog.reboot()

It was time I rebooted my old blog! It used to be in PHP, and it’s time to move to the next millenium with a blog engine written in Groovy, using the Gaelyk lightweight toolkit, and deployed on Google App Engine.


Groovy 1.8-final is out the door!

The Groovy development team is really pleased and proud to announce the release of the final version of Groovy 1.8.0!

After a lot of work and efforts throughout four betas and four release candidates, version 1.8 of Groovy has been long in the making, but is packed with tons of new features and enhancements, for your productivity, and your pleasure. In particular, you’ll be happy to learn about:

To get all the details, with code samples, we have prepared an in-depth release notes document. Please have a look at it to learn more about the features listed above, and discover other smaller enhancements as well.

Read more...

GR8Conf Europe 2011 - a conference dedicated to the Groovy Ecosystem

It is this time of the year: GR8Conf Europe 2011 is ready to rock the Groovy world!

Register now to save โ‚ฌ300 with the Early Bird rate!

Three days packed with Groovy, Grails, Griffon, Gradle, Spock, GPars, Gaelyk, AST transformations, GContracts, Grails Plugins development, and lots of other gr8 stuff.

This year, the conference is growing. We kick of the conference with a university day, with two tracks, one intermediate and one advanced, with workshops and hands-on training:

Read more...

New important milestone for Gaelyk, with version 0.6 released

I’m very pleased to announce the release of Gaelyk 0.6.

This new version is a pretty significant milestone, both in terms of features and quality. We’re really approaching a final 1.0 version!

Here’s a list of the novelties, updates, and bug fixes.

  • Updated to GAE SDK 1.4.0 and Groovy 1.7.6
  • Channel service added in the binding and added a convenient method for sending messages
  • Ability to specify the “warmup request” handler through a route definition
  • Added app.gaelyk.version in the binding
  • Use a servlet context listener for initializing the plugin system
  • Initial support for the asynchronous datastore
  • Updated the task queue enhancements to use the new package (as task queues migrated from labs)
  • Introduced a Gradle build script for building Gaelyk itself
  • Increased the code coverage of the project to over 82%
  • Added before{} request and after{} request lifecycle hooks to plugins
  • Added initial Eclipse project files in the template project
  • Fixed a bug with ignore URL routes which triggered NPEs after the capabilities routing was added
  • Corrected typos in the tutorials

Be careful, however, as there are two breaking changes compared to previous versions:

Read more...

Gaelyk 0.4.4 out with namespace/multitenancy support

I’m pleased to announce the release of Gaelyk 0.4.4!

What’s new?

  • Updated the Google App Engine SDK to the latest 1.3.7 version
  • Jabber and incoming email groovlets now have their implicit logger (gaelyk.email and gaelyk.jabber)
  • Plugins are now impacting Jabber and incoming email groovlets as well
  • Fixed a bug the conversion of String to Datastore’s Category type
  • Internal refactorings of the caching logic
  • Added namespace support for multitenancy, added in SDK 1.3.7:
    • a namespace is added in the binding, pointing at NamespaceManager, the SDK class dealing with namespaces
    • a new method namespace.of("customerA") { ... } to execute a closure in the context of a specific namespace

Although I haven’t mentioned it in the notes above (on on the download page), some of the internal refactorings of the caching and routing logic have also helped solving problems with the blobstore support. Please report back to me if it’s working as expected, for text content as well as binary content stored in blobstore (the latter was problematic in 0.4.3).

Read more...

Nicer DSLs in Groovy 1.8 thanks to Extended Command Expressions

A quick heads-up to tell you about an upcoming Groovy 1.8 feature which will allow us to make nicer DSLs. This feature will be available in Groovy 1.8-beta-2, which will probably be released before JavaOne.

Lidia Donajczyk was our Google Summer of Code student this year, working on the implementation of GEP-3, an extension to Groovy’s command expressions. You can have a look at the GEP-3 page for the guiding ideas behind this enhancement proposal.

Read more...