-
Notifications
You must be signed in to change notification settings - Fork 172
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
Extract CLI Java components into new submodule #1149
Extract CLI Java components into new submodule #1149
Conversation
520e506
to
80b18bb
Compare
A few extra questions...
|
Great idea! The maven or gradle plugin shouldn't have to download jcommander.
Yes, it would be great to have sth like this: project.ext.publicationName = "mavenAsciidoctorJCli" Right now the name conflicts with the publicationName of the asciidoctorj module.
Running
Yes, that test can get a better name.
Yes, that makes sense. |
80b18bb
to
648e0e7
Compare
* Create new sub-module asciidoctorj-cli: migrated 'org.asciidoctor.jruby.cli' classes and related tests to it. * Created CliOptions in AsciidoctorUtils from values in AsciidoctorCliOptions to avoid circular dependency. * Updated README with new sub-module information. * Fix jar names in command in README. * Minor refactors and fixes. Fixes asciidoctor#246
It feels good when we have free hand for breaking changes 👯 In the final structure, which imo makes more sense, we have the general package We could have an |
If it's ok, can I push "merge" myself? 🥺 |
Done😊 |
Kind of change
Description
What is the goal of this pull request?
Extract cli components into it's own submodule.
The main motivation is avoiding downloading jCommander for users of Asciidoctorj. In terms of jar size it's not reducing much.
How does it achieve that?
Are there any alternative ways to implement this?
There's an opinionated decision of exposing
asciidoctorj
&asciidoctorj-api
asapi
so the cli module doesn't need to require them one by one.Semantically it's consistent imo, but I am open to debate.
Are there any implications of this pull request? Anything a user must know?
If someone is using
AsciidoctorInvoker
, they'll need to add new newasciidoctorj-cli
as dependency.Issue
If this PR fixes an open issue, please add a line of the form:
Fixes #Issue
Fixes #246
Release notes
Please add a corresponding entry to the file CHANGELOG.adoc