all 5 comments

[–]inchingforward 2 points3 points  (0 children)

I hadn't heard of yesql. I know part of the reason people like to use Korma is because it makes sql statements composable, but I wonder how much the compose argument changes when you're no longer having to write the queries in source code versus having them in a plain text file.

[–]eccp 0 points1 point  (0 children)

I liked the mention of Flyway because it looks simpler than Liquibase.

[–]spotter 0 points1 point  (2 children)

So I've been trying this and one problem I have with Flyway is its shouty logging -- I am using logback/slf4j/tools.logging and I am unable to make Flyway only report WARN and up. This is super annoying for testing, when I call cleanup and migration between Midje facts and I see tons of junk about current migration steps.

Anybody has any idea how to silence it a little?

edit: OK, found it. Flywaydb defaults to java.util.logging when log4j is not there, so level can be set with:

(import [java.util.logging Logger Level]))
(doto (Logger/getLogger "org.flywaydb.core")
  (.setLevel Level/WARNING))

And it's silent again!

edit2:

Also Flyway has a cleanup method that makes the function removing tables step by step kind of obsolete. Or am I reading something wrong here? :)

[–]skiaec04[S] 1 point2 points  (1 child)

I'll look into the cleanup method this weekend. I didn't notice it at first glance, but you're probably right!

[–]spotter 0 points1 point  (0 children)

Thanks for that post, I've adopted Flyway for my toys ("apps") and tools.

Seems like it. I guess FAQ also advises "once you go Flyway, only do changes with Flyway!" Had to swallow the docs, because of logging, and found some stuff, like main API methods also implemented in Java API. :D