Skip to content
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

Picocli dependency is not published as optional dependency of liquibase-core #4868

Closed
2 tasks done
mr-serjey opened this issue Sep 11, 2023 · 2 comments · Fixed by #5042
Closed
2 tasks done

Picocli dependency is not published as optional dependency of liquibase-core #4868

mr-serjey opened this issue Sep 11, 2023 · 2 comments · Fixed by #5042
Assignees

Comments

@mr-serjey
Copy link

Search first

  • I searched and no similar issues were found

Description

Despite the fact that liquibase-core incorporates liquibase-cli in a shaded jar, it doesn't export liquibase-cli's dependency called picocli as optional. So the version of picocli that works with a particular version of liquibase-core is vanishes in published liquibase-core artifact. This makes hard to use CLI integration (liquibase.integration.commandline package of liquibase-core) in libraries and/or plugins.

Given the fact that exporting picocli dependency as part of liquibase-core has been already considered...

It would be nice if it come through as an optional dependency, but maven doesn't easily do that...
see:https://github.com/liquibase/liquibase/blob/master/liquibase-core/pom.xml#L45

This can be done to remediate the problem and will help to unblock at least liquibase-gradle-plugin project...

Steps To Reproduce

  1. Create application project with liquibase-core dependency (maven/gradle)
  2. Add LiquibaseLauncher.main(cliArgs) into the application routine
  3. Run the application

Error: class def not found

Expected/Desired Behavior

  1. Create application project with liquibase-core dependency (maven/gradle)
  2. Add LiquibaseLauncher.main(cliArgs) into the application routine
  3. Run the application

No error expected

Liquibase Version

4.+

Database Vendor & Version

No response

Liquibase Integration

cli

Liquibase Extensions

No response

OS and/or Infrastructure Type/Provider

No response

Additional Context

No response

Are you willing to submit a PR?

  • I'm willing to submit a PR (Thank you!)
@filipelautert
Copy link
Collaborator

Hello @mr-serjey - I believe optional is fine. I created PR #5042 to implement this change.

@mr-serjey
Copy link
Author

Great job @filipelautert!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants