Grails Diary - weeks 35-36 in 2016

13 September 2016

This edition of the Grails Diary is a lot longer than the previous, proving the Groovy Ecosystem is alive and kicking! Lots of new releases, and a few requests for feedback highlights this issue.

The OCI team behind Grails would like to hear your general input to features like would to see in future Grails versions?. If you have an opinion on the future of Angular integration with Grails, then please provide a response to this poll.

The Grails team have released Grails 3.1.11, with bug fixes and minor improvements. More cutting edge, Grails 3.2 Release Candidate 1 is out, where the biggest news are GORM 6.0, RxJava support, build script with Gradle 3.0 and Spring Boot 1.4 support. The manual for Grails 3.2, which includes a section on what's new also reveals a return of the "run-script" command from Grails 2, the ability to skip the Bootstrap process with a system property, better HAL support and some changes to data binding with the body of a request (request bodies in GET and DELETE requests will be ignored for data binding).

For the above release, GORM 6.0 RC1 has been released. See details on the GORM website. Especially usefull are the samples on using GORM 6 for Hibernate 5 in Grails, Spring Boot and Standalone.

Brandon/Area 432 has built a Craigslist clone to test Grails 3.2 with Gorm 6 multi-tenancy, which is a good way to see multi-tenancy using discriminators and subdomain tenant resolver. You can find the code on Github Multi-tenancy in short is different data sets per user (tenant). Multitenancy makes it possible to fully segregate data through the database layer.

The video from the latest Boston Groovy Grails Spring Meetup featuring Ken Kousen is available in the video section, but it is worth noting that the UG now also can be followed on Twitter, to go along with the Youtube Channel

In the DFW Groovy & Grails User Group, the September meetup featured David Clark talking about High Performance Groovy. The code and presentation is available here

Ratpack 1.4.2 is now available! This release fixes several issues with the HTTP client and Server Sent Events. The details can be found in the issue list

If you are a Windows user of Groovy, you should take a moment to help Keegan Witt to test the Groovy binaries for Windows. See the details on the Groovy Mailinglist

The Gradle team has the first release candidate of Gradle 3.1 out. It has initial support for composite builds, dependency resolution speed improvements especially for Android, more support for Play 2.5 and more

Craig Burke have released an upgraded version of the client-dependencies-gradle plugin, which allows you to declare client side dependencies in build.gradle from bower, npm or git. Contributions also credited to Janne Ruuttunen. (Internal joke: Kyle Boon has not blogged in the latest week or two, so point goes to Craig this week)

The website for GrooCSS has received a lot of love, and has been moved to Github pages, and can be found at Meanwhile version 0.7 of GrooCSS has been released! It is available on Bintray.

Sometime a lot of nice documentation appears in answers on Stack Overflow. I resently stumbled on "How do you exclude implicit Groovy closure classes from JaCoCo test resport with Gradle", Which explains how you can do this in a generic way, even if you have multiple Test and JacocoReport tasks.

Grooscript, the Groovy to Javascript transpiler is out in version 1.3.0. The Grooscript changelog informs us PhantomJs tests, jquery lib and Observable have been removed, it is now a smaller jar, with less dependencies, the build is upgraded to Gradle 3, and it has improved speed in conversions.

Burt Beckwith, who also gave the excellent keynote last year at GR8Conf India, has been anounced as speaker for this January's edition of the conference. Remember the Call for Papers are open for both GR8Conf India in January and GR8Conf EU in June.


Podcasts and Videos of Presentations

Blogs, Articles, etc.

Updated Grails 3 Plugins

  • embedded-mongodb (1.0.1) Executes an embedded mongo database for integration or functional testing.
  • segment (2.0.5) Grails Segment plugin.
  • slack (3.1.1) Grails Slack Integration Plugin.
  • actuator-ui (1.1) Grails actuator-ui plugin.
  • gravatar (1.0.2) Grails plugin for displaying avatars from Gravatar.
  • sass-asset-pipeline (2.11.2) Provides fast and easy .sass and .scss file support for Transpiling to CSS. This plugin takes advantage of jsass and libsass for maximum performance..
  • less-asset-pipeline (2.11.2) LESS Compiler for the Asset-Pipeline.
  • handlebars-asset-pipeline (2.11.2) Provides native Handlebars file support in the asset-pipeline. Easily convert .hbs or .handlebars files into javascript template caches for use with the handlebars runtime..
  • ember-asset-pipeline (2.11.2) Compiles hbs or handlebars files for the asset-pipeline into the Ember.TEMPLATES cache.
  • compass-asset-pipeline (2.11.2) Provides Compass/SCSS Build support using the jruby runtime. Any compass project can be adjusted to be built by the asset-pipeline and used in applications..
  • coffee-asset-pipeline (2.11.2) Easily process coffee-script files with the asset-pipeline plugin. Package includes both jvm coffee runtime as well as the ability to use the coffeescript npm module if detected..
  • asset-pipeline-grails (2.11.2) 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..
  • seed-me (3.0.9) Implements a standard convention for adding seed data to your application...
  • angular-scaffolding (1.0.0.RC3) Provides scaffolding for AngularJS 1.x applications.
  • grails-views (1.1.0.RC2) Grails Views.
  • views-json-templates (1.1.0.RC2) Grails views-json-templates plugin.
  • views-gradle (1.1.0.RC2) Grails views-gradle plugin.
  • spring-security-oauth2-github (1.0.2) This plugin provides the capability to authenticate via Github-oauth provider. Depends on grails-spring-security-oauth2..
  • cassandra (6.0.0.RC1) GORM - Grails Data Access Framework.
  • redis-gorm (6.0.0.RC1) GORM - Grails Data Access Framework.
  • rx-gorm-rest-client (1.0.0.RC1) Provides a RxGORM Object Mapping implementation for communication with REST web services.
  • neo4j (6.0.0.RC1) GORM - Grails Data Access Framework.
  • modninfobip (1.0.2) Infobip SMS Grails plugin.
  • rx-mongodb (6.0.0.RC1) GORM - Grails Data Access Framework.
  • mongodb (6.0.0.RC1) GORM for MongoDB.
  • hibernate5 (6.0.0.RC1) GORM - Grails Data Access Framework.
  • hibernate4 (6.0.0.RC1) GORM - Grails Data Access Framework.
  • facebook-sdk (2.7.0) Grails Facebook SDK plugin.
  • org.grails.plugins:enforcer (1.3.1) A plugin for enforcing business rules/permissions, that works with Spring Security Core, is easier to implement, and extend. It can also be used as an alternative to Spring Security ACL.
  • cache (3.0.3) Grails cache plugin.
  • fields (2.1.3) Grails fields plugin.

New Grails 2 Plugins

Updated Grails 2 Plugins

  • Redis Session Plugin Stores HTTP sessions in a Redis data store.
  • Slack Plugin This plugin provides integration with Slack by Incoming Webhooks
  • Grails DataTables Plugin This plugin allows you to quickly add feature-rich tables to your Grails application. It uses the excellent DataTables plugin for jQuery created by SpryM
  • Facebook SDK Plugin The Facebook SDK Plugin allows your Grails application to use the Facebook Platform and develop Facebook apps on or on web sites (with Facebook Connect). It is a port of the official Facebook PHP SDK to Grails 2.0.
  • The Enforcer Plugin A plugin for enforcing business rules/permissions, that works with Spring Security Core, is easier to implement, and extend. It can also be used as an alternative to Spring Security ACL

Interesting Tweets


Conferences and meetups