Grails Diary - Week 25-28 in 2015

13 July 2015

Nearly a month has passed since the last Grails Diary. I was volounteering at the Roskilde Festival doing IT infrastructure, but the Diary should be back in a somewhat weekly form again from now on. I've likely missed a few items and appologise to the forgotten ones :(

The Grails team is on a roll, with two bugfix releases since the last diary. In version 3.0.2 a total of 43 issues was closed, solving some of the bumps on the Grails 3 path, including some performance issues. In version 3.0.3 the number of issues are 31, which includes an update on the underlying Spring Boot to version 1.2.5 and Reactor to version 2.0.3, and significant improvements to development time reloading.

It also appears the Grails Core team is focussing on getting some of the vital plugins upgraded and available for Grails 3. The list of Grails 3 Priority Upgrade Plugins holds a status of the effort, and in this thread there is input for why the lists contains the plugins it does.

The bintray page with Grails 3 plugins does not give quite the same overview or possibilities as the plugin portal for Grails < 3, but it is still the place to go for the updated plugins.

Uday Pratap Singh, Mansi Arora, Imran Mir, Puneet Behl and more from To The New Digital has done a huge job on upgrading many of the old plugins. Within long there is no reason not to switch to Grails 3! Starting next week, I'll track the updated Grails 3 plugins!

Jeff Scott Brown worked on Grails 3 Clojure plugin, and has a demo ready. And finally, you should try the Quartz plugin (Milestone 5) and supply feedback before the final release

Gradle version 2.5 is official, with the biggest highliht being the "Continuous build" support. It can watch filesystem changes and initiate a build when there are changes. The support for building C and C++ projects has been improved with precompiled header support and the ability to run GoogleTest. You can see all the new features and the bugs that have been resolved in the Gradle Release Notes.

Gradle Beyond the Basics is available as a free ebook from The 3rd. beta of Groovyvfs, the DSL for Groovy on top of Apache VFS2, is out now.

The Geb framework for functional testing has, besides its 5th birthday, also been released in version 0.12.0.. The entire Book of Geb has been rewritten to Asciidoctor, and all examples are now executable and thus testable. This is the first time in Geb history deprecations are featured, from moving the module() method to Navigator etc. See the full list of changes in the Book of Geb

The GradleTest plugin, for testing compatibility with various versions of Gradle, has been released in version 0.5.4 with a updates for Gradle 2.5. Also in a new release: Grailsflow 1.7.1. Check more at the release notes

Grooscript is out in version 1.1.2 of both the main project and the grooscript gradle plugin. Some of the Gpars stuff is moved to the Gradle build. Furthermore, Grooscript is now available as a Grails 3 plugin.

Masato Nagai has released GProf, the Groovy Profiler, which now supports Groovy 2.4 in the new release version 0.3.1.

With just two weeks to GR8conf US in Minneapolis, it is about time to secure your ticket! GR8conf US + SpringOne2gx

Groovy has been downloaded as many times this first half of 2015 as the entire year of 2014: 4.5 million times, according to Guillaume Laforge

Grain has been released in version 0.6.4, with added AsciiDoc include support, unsafe mode support and exception dumping.

The july release of Ratpack was version 0.9.18. If you take a look at the issues that are marked pre-1.0, (currently 3) it appears a 1.0 release is close! Dan Woods replies to the question: Is Ratpack Production Ready?

This is the very first selfie I've posted in the diary, but with Groovy in Action 2ed. arriving when I was on vacation, this calls for one. Lego-homer also approves :)



Podcasts and Videos of Presentations

Blogs, Articles, etc.

Updated Grails 2.x Plugins

  • Swaggydoc Plugin Uses swagger to document Grails Controllers
  • Geb integration for Grails Integrates the geb functional testing framework
  • Cucumber Plugin Test your Grails apps with Cucumber
  • Little Goblin Plugin Little Goblin is a browser game framework written in Grails.
  • CodeNarc plugin Runs CodeNarc static analysis rules for Groovy source.
  • Apache Tika Plugin Bundles the Apache Tika along with a parser service.
  • SASS/SCSS Asset-Pipeline Plugin Provides SASS/SCSS Compass support for the asset-pipeline static asset management plugin.
  • camunda Grails Plugin This plugin integrates camunda BPM platform (all versions) with Grails. camunda BPM is a flexible framework for workflow and process automation. It's core is a native BPMN 2.0 process engine running inside the Java Virtual Machine. It is a perfect match for the Spring Framework, and therefore for Grails, too.
  • AngularJS Annotate Asset-Pipeline Plugin Provides AngularJS dependency injection annotation support for the asset-pipeline static asset management plugin.
  • AWS SDK Plugin The AWS SDK Plugin allows your Grails application to use the Amazon Web Services infrastructure services. It provides simple wrapper service around the official AWS SDK
  • AngularJS Resources Plugin Angular JS resources plugin
  • I18n Asset Pipeline Plugin An asset-pipeline plugin for client-side i18n. It generates JavaScript files from i18n resources for use in client-side code.
  • Wkhtmltopdf Plugin Provides a Wrapper for wkhtmltopdf, a simple shell utility to convert HTML to PDF using the WebKit rendering engine and Qt
  • Websocket Chat Plugin Default WebSocket Multi-chat room plugin, supports Admin privilages, kicking banning users. Webcam support for chrome/firefox. WebRTC (audio/video & screen) support 0.24+
  • Yeoman Frontend Plugin The Yeoman-Frontend is a plugin used for managing and processing a frontend developed with Yeoman. The plugin integrates the frontend (preserving the Yeoman's directory structure) with a Grails web container during development of a Grails backend application; it assembles the frontend into a Web Application Archive (WAR) file during deployment of the Grails application.
  • Grails Pjax Plugin Grails Pjax Plugin: more easy pjax in Grails.See more
  • Asset Pipeline Plugin The Asset-Pipeline is a plugin used for managing and processing static assets in Grails applications. Asset-Pipeline functions include processing and minification of both CSS and JavaScript files. It is also capable of being extended to compile custom static assets, such as CoffeeScript.
  • ElasticSearch Grails Plugin The revived Elasticsearch plugin for Grails.
  • AWS Org-User-Folder Plugin Uses AWS DynamoDB to store relationships between Orgs, Users and Folders (Teams).
  • AWS App Config Plugin Uses AWS DynamoDB to store (versioned) application configuration.
  • Remote SSH Plugin Uses the Ganymed SSH-2 library to provide RemoteSSH, RemoteSCP, RemoteSCPDir, and RemoteSCPGet
  • Audit Logging Plugin Automatically log change events for domain objects. The Audit Logging plugin additionally adds an instance hook to domain objects that allows you to hang Audit events off of them. The events include onSave, onChange, and onDelete. When called, the event handlers have access to oldObj and newObj definitions that will allow you to take action on what has changed.
  • Spud Cms Plugin Provides CMS functionality for Spud
  • Grailsflow GrailsFlow is an open source Workflow and Process Engine.
  • Redis Plugin The Redis plugin provides integration with a Redis datastore. Redis is a lightning fast 'data structure server'. The plugin enables a number of memoization techniques to cache results from complex operations in Redis.
  • Security Bridge Plugin Defines a standard corss-plugin security bridge implementation for better decoupling of authentication in plugin heavy applications.
  • AngularJS Template Asset-Pipeline Plugin Provides AngularJS template support for the asset-pipeline static asset management plugin.
  • Karman Plugin Karman is a standardized / extensible interface plugin for dealing with various cloud services including Local and S3.
  • Film Strip Plugin Creates a nice HTML-view showing all screenshots generated by Geb.
  • Ajax Dependancy Selection Plugin Defines next auto completion/selection form field values ensuring it is bound on previous auto completed/selected form field. This can be used on two or more objects of hasMany and belongsTo. Provides: g:autocomplete, g:autoCompletePrimary, g:autoCompleteSecondary, g:autoCompleteSecondaryNR, g:selectPrimary, g:selectSecondary , g:selectSecondaryNR & g:selectController. g:selectAutoComplete and g:selectPrimaryNR. Now also supporting 1 object with multiple dependencies.
  • LESS Asset-Pipeline Plugin Provides LESS support for the asset-pipeline static asset management plugin.
  • Stylus Asset Pipeline Plugin Provides Stylus support for the asset-pipeline static asset management plugin.
  • Content Management Services for GR8 CRM This plugin provide storage and services for managing content in GR8 CRM applications.Content can be any type of media like plain text, Microsoft Word, PDF, and images.Content can be stored in folders or attached to domain instances.Content can be shared with users of the application or shared publicly to the world.

Interesting Tweets


Conferences and meetups