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

breaking changes in JLine 3.15.0 #1098

Closed
thetoothpick opened this issue Jun 2, 2020 · 6 comments · Fixed by #1117
Closed

breaking changes in JLine 3.15.0 #1098

thetoothpick opened this issue Jun 2, 2020 · 6 comments · Fixed by #1117
Labels
theme: integration An issue or change related to integration with other frameworks, shells or operating systems theme: shell An issue or change related to interactive (JLine) applications type: doc 📘
Milestone

Comments

@thetoothpick
Copy link
Contributor

Hello,

JLine has released version 3.15.0, and it includes some breaking changes (some classes in org.jline.builtins were moved to org.jline.console), so picocli-shell-jline3 4.3.2 doesn't compile against it.

mattirn added a commit to mattirn/picocli that referenced this issue Jun 2, 2020
mattirn added a commit to mattirn/picocli that referenced this issue Jun 2, 2020
@remkop
Copy link
Owner

remkop commented Jun 2, 2020

Thank you for raising this!

We will make picocli-shell-jline3 4.4.0+ depend on jline 3.15.

It looks like one of the JLine authors, @mattirn, has already submitted a pull request to change the dependency and the corresponding picocli-shell-jline3 code. I will merge this shortly when I get a chance to review it.

I would like to also update the documentation to show examples for the picocli-shell-jline3-4.3.2 with jline-3.14.1 combination, separately from examples for the picocli-shell-jline3-4.4.0+ with jline-3.15 combination. @thetoothpick or @mattirn, will you be able to provide a pull request for this?

@remkop remkop added this to the 4.4 milestone Jun 2, 2020
@remkop remkop added theme: integration An issue or change related to integration with other frameworks, shells or operating systems theme: shell An issue or change related to interactive (JLine) applications labels Jun 2, 2020
@thetoothpick
Copy link
Contributor Author

Thanks for the quick turnaround, @mattirn!

Regarding the documentation, instead of keeping multiple versions of Example.java in the README file, would it make more sense to link to the relevant historical versions of picocli-shell-jline3/src/test/java/picocli/shell/jline3/example/Example.java? That file would then need to be kept up-to-date (which it is already).

The README.md file could then contain the notes with links to the files locked to their relevant commits (e.g. JLine 3.13.2 and Picocli 4.1.2).

Having multiple versions of the file in the README seems hard to maintain, and all the example changes have to be duplicated to the README.

I can make a PR for this once #1099 goes in, if you'd like.

@remkop remkop closed this as completed in d0cbcd5 Jun 3, 2020
@remkop
Copy link
Owner

remkop commented Jun 3, 2020

@thetoothpick I merged #1099 into master.

I would like for the documentation to show actual code, at least for the latest version, rather than a link.
How about creating a separate documentation page for previous versions?
Then we can make the README page cleaner since it only shows the most recent version, and from the README we link to the page with example code for older versions.

Also, the code may be a bit long, we can look into making it shorter. Or perhaps have a short initial example and a longer full example.

Thoughts?

@remkop remkop reopened this Jun 3, 2020
@thetoothpick
Copy link
Contributor Author

Yea, I think that makes sense to split out the older versions and keep the latest in the README.

@remkop
Copy link
Owner

remkop commented Jun 19, 2020

Hi @thetoothpick, have you had a chance to take a look at this?
I'm hoping to do a new picocli release in a week or so, and it would be good to improve the docs in this area.

thetoothpick added a commit to thetoothpick/picocli that referenced this issue Jun 21, 2020
thetoothpick added a commit to thetoothpick/picocli that referenced this issue Jun 21, 2020
thetoothpick added a commit to thetoothpick/picocli that referenced this issue Jun 21, 2020
@thetoothpick
Copy link
Contributor Author

@remkop I created a wiki page for the old examples. Looking at the latest PR, the example didn't actually change for the latest version, so I left the minimum versions as they were. The example for JLine 3.13.2 and Picocli 4.1.2 is now on this wiki page.

I also opened a PR (#1117). I'll add some comments about cleaning up the example there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
theme: integration An issue or change related to integration with other frameworks, shells or operating systems theme: shell An issue or change related to interactive (JLine) applications type: doc 📘
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants