ayedo / jooq-modelator

Gradle plugin to generate the jOOQ metamodel from Flyway & Liquibase migrations using a dockerized database
Apache License 2.0
35 stars 8 forks source link

YAML parsing for Liquibase broken in 3.7+ #16

Open robfletcher opened 4 years ago

robfletcher commented 4 years ago

Upgrading from 3.6.0 to 3.8.0 I now get a failing Gradle build with the following error:

liquibase.exception.UnknownChangelogFormatException: Cannot find parser that supports /Users/fletch/netflix/spinnaker/workspace/keel/keel-sql/src/main/resources/db/databaseChangeLog.yml

It's not clear if this is a bug or whether I'm now expected to add an additional dependency.

I tried 3.7.0 and I get the same error.

robfletcher commented 4 years ago

Adding jooqModelatorRuntime("org.yaml:snakeyaml") also makes no difference

ayedo commented 4 years ago

Thank you for your report.

I can reproduce the problem, and have written a new test for it.

I have a workaround that I could quickly deploy, but I have the feeling that other Liquibase Classloader issues (#12) are related to this, and I'll need some more time to look into them.

ursjoss commented 4 years ago

Might be related with https://liquibase.jira.com/browse/CORE-3495, even though in that ticket, it was liquibase 3.8.0 that introduced the issue. Here it was still working with 3.8.0 IMHO.

ayedo commented 4 years ago

Thanks @ursjoss for your hint. I'll keep an eye on that issue.

I still could not find out how to set the classpath correctly for Liquibase. I have added snakeyaml to the plugin classpath as a workaround while I'm figuring this out. The new test I wrote passes like that.

@robfletcher Can you please check with version 3.9 if this resolves your issue as well?

robfletcher commented 4 years ago

@ayedo yes, 3.9.0 works for me. Thanks for the update.