-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mongodb Liquibase extension #18573
Mongodb Liquibase extension #18573
Conversation
Thanks for your pull request! The title of your pull request does not follow our editorial rules. Could you have a look?
|
9dd7e9a
to
3f65171
Compare
This workflow status is outdated as a new workflow run has been triggered. 🚫 This workflow run has been cancelled. Failing Jobs - Building 3f65171
|
3f65171
to
62d6459
Compare
62d6459
to
a7dd23e
Compare
a7dd23e
to
0dae7bf
Compare
This workflow status is outdated as a new workflow run has been triggered. ✖ This workflow run has failed but no jobs reported an error. Something weird happened, please check the workflow run page carefully: it might be an issue with the workflow configuration itself. |
Nice! I have a large backlog to catch up on, so I am not sure I'll get to this in the next 48 hours. |
Happy you're back and hope you have a good PTO. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems pretty similar to the liquibase proper extension, so it looks good
...odb/deployment/src/main/java/io/quarkus/liquibase/mongodb/deployment/LiquibaseProcessor.java
Outdated
Show resolved
Hide resolved
0dae7bf
to
53ff6fc
Compare
53ff6fc
to
28fcf09
Compare
28fcf09
to
b77e500
Compare
b77e500
to
d7f3bbf
Compare
d7f3bbf
to
48b365f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine to me modulo a couple of style questions.
...ns/liquibase-mongodb/runtime/src/main/java/io/quarkus/liquibase/LiquibaseMongodbFactory.java
Show resolved
Hide resolved
liquibase.database.jvm.JdbcConnection.class.getName())); | ||
|
||
reflective.produce(new ReflectiveClassBuildItem(true, true, true, | ||
liquibase.parser.ChangeLogParserCofiguration.class.getName(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
any reason for the FQCNs here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same reason as for your other comment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, in fact if I use simple name this will ends up with tens of imports. I think that's why it has been done like this in the liquibase extension. Maybe using String would be better as it would avoid loading the class.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Howerver, when using String, you can ends up registering for reflection classes that didn't exist anymore as you'll not be notified when they'll deleted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe @geoand have an advice on this ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
personally, i'd rather have imports i can collapse away but don't hold up the merge just for this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should be just fine the way you have it.
@@ -159,6 +159,7 @@ | |||
<flyway.version>7.14.0</flyway.version> | |||
<yasson.version>1.0.9</yasson.version> | |||
<liquibase.version>4.4.3</liquibase.version> | |||
<liquibase-mongodb.version>4.4.3</liquibase-mongodb.version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A bit late to the party but is there a reason to have a separate version? Aren't they part of the same build?
Asking because it might be a pain for Dependabot.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll check, when I first start working on it month ago they had totally different versions, but the mongodb one was experimental.
If they are now always the same, I'll change it when I write the guide (before 2.3)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool, thanks. And yes, I just think it needs a change if we are guaranteed they are built at the same time. What I'm worried about is Dependabot updating one at a time and thus having partial failing PRs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So the version of the mongodb extension follow the one of the core liquibase but it's not release on the same day. I may have up to 10 days between a release of the core liquibase lib and the mongodb one.
There also can exist patch version for bugfixes on the liquibase mongodb extension (for ex 4.1.1.1 that don't exist for liquibase core).
Fixes #18009, #9801