Armel Soro

Armel Soro
graalvm, graal, jpa, java, ruby, native-image, jit, aot, jvm, jdk

GraalVM with JPA-based applications (Part 1)

The goal of this blog post is to go beyond the basic HelloWorld program, and see how we can leverage GraalVM against a sample real-world JPA-based application, able to interact with a database. We will walk through what can be done along with the potential limitations.
Armel Soro
Armel Soro
6 min read
Jan 11 2019
code, ghost, blog, highlighting, prism, prismjs, cdn, dart, syntax

Adding Code Syntax Highlighting to a Ghost Blog with Prism.js

Ghost [https://ghost.org/] is an awesome and user-friendly Open-Source platform for blogging. But by default, it does not support syntax highlighting, which may not be very practical if you happen to add code snippets to your posts. Thankfully, Ghost is very easy to customize in different ways, and one way we are going to explore here is via Code Injection [https://blog.ghost.org/post-code-injection/], as in use throughout my own blog. Ghost's Code Injection feature allows to add custom CSS st
Armel Soro
Armel Soro
3 min read
Dec 13 2018
jpa, datanucleus, enhancement, gradle, weaving, oss

Announcing an unofficial DataNucleus Gradle Plugin

Following my previous article [https://rm3l.org/datanucleus-jpa-enhancement-with-gradle/] on JPA enhancement in general and particularly how to perform build-time enhancement / weaving using DataNucleus [http://www.datanucleus.org/] and Gradle [https://gradle.org/] Ant Tasks, a promise is a promise :). I am excited to announce datanucleus-gradle-plugin [https://datanucleus-gradle-plugin.rm3l.org/], an open-source plugin for Gradle-based projects. It aims at providing the same set of capabiliti
Armel Soro
Armel Soro
2 min read
Nov 11 2018
jpa, datanucleus, enhancement, hibernate, eclipselink, gradle, weaving

DataNucleus JPA Enhancement with Gradle

A notable behavior of JPA providers is to enhance JPA classes, by modifying their bytecode to add few capabilities. DataNucleus (DN) currently provides a Maven Plugin for calling its Enhancer. This article walks through calling DN Enhancer in a Gradle build script in a very efficient way.
Armel Soro
Armel Soro
5 min read
Oct 29 2018
junit, tests, postgresql, h2, hsqldb, java, spring

Running Java Integration Tests against a PostgreSQL Embedded database

Today, I'm going to walk you through running integration tests on the JVM against a real production-like PostgreSQL database. All without losing in terms of overall testing time or performance (especially when you have a database with hundreds of tables). In-memory databases (e.g., H2 [http://www.h2database.com/html/main.html], HSQLDB [http://hsqldb.org/], SQLite [https://www.sqlite.org/inmemorydb.html], ...) are very often used as drop-in replacements when running integration tests. This is ge
Armel Soro
Armel Soro
8 min read
Sep 28 2018
vi, vim

Saving a read-only file edited with Vi/Vim

How to save a read-only file edited with Vi or Vim without losing your changes
Armel Soro
Armel Soro
1 min read
Aug 15 2018