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

Improve IDE compatibility #564

Closed
nicolaferraro opened this issue Mar 18, 2019 · 5 comments
Closed

Improve IDE compatibility #564

nicolaferraro opened this issue Mar 18, 2019 · 5 comments
Labels
area/ux Improves user experience help wanted Extra attention is needed status/stale
Milestone

Comments

@nicolaferraro
Copy link
Member

It would be awesome if we could define a syntax (groovy or kotlin based) for integrations in such a way that we can configure a IDE for autocompletion.

E.g. a groovy file using grape may import all required libraries.

We may add a builder like the one in this old discussion: https://twitter.com/ro14nd/status/1014124955120951297?s=19

.. to have IDE autocompletion.

Unfortunately, all attempts I've made to find a good combination failed. E.g. grape fails.

Another option I was investigating is to add a command like 'kamel init routes.kts' that generates a initial hello world with a gradle.build file to configure the IDE.

Open to better alternatives. Ideas?

@nicolaferraro nicolaferraro added the help wanted Extra attention is needed label Mar 18, 2019
@nicolaferraro
Copy link
Member Author

@lburgazzoli , @astefanutti you may have some hints

@astefanutti
Copy link
Member

Not sure that will help as it may be out of the question scope you have in mind, but just to share the info: In OpenShift 4 console, the user will have the ability to instantiate CR managed by installed operators. For instance, user would be able to create integration CR when the Camel K operator is installed via OLM. The console will provide a basic UI at the beginning, with a plain YAML editor, but some people have suggested that LSP could be eventually used, as a way to provide a smarter UI, e.g., with validation, auto-completion, ... It's not there yet, still LSP is used by VS Code and is a reusable layer for other IDE to use. So maybe we could consider extending Java / Groovy / Kotlin LSP with some Camel K features that would become the foundation for Camel K editors / IDE support.

@nicolaferraro nicolaferraro added this to the 1.0.0 milestone May 28, 2019
@nicolaferraro nicolaferraro added the area/ux Improves user experience label May 28, 2019
@jcordes73
Copy link

IMO it would be good to have a kamel init command, at least for maven and gradle as most IDE's have plugins for those two project setups.

@nicolaferraro nicolaferraro modified the milestones: 1.0.0, post 1.0.0 May 5, 2020
@nicolaferraro nicolaferraro modified the milestones: 1.3.0, 1.4.0 Dec 22, 2020
@samuelhnrq
Copy link

samuelhnrq commented Jan 1, 2021

How about an gradle plugin?

We then try to explain the global scope of groovy, file structure (TBD #1135), and whatnot to the build tool and let whatever first party build tool integration of the IDE do the rest of the magic?

Obvious cons:

  • First and foremost, it's probably overkill to involve the elephant that is gradle here:
  • it's not even going to build anything
  • Confuse developers adding dependencies and not having them reflected

UNLESS we give in to gradle overlords and use it instead of the cli, kamel run as a target, kamel run --dev as another target so on and so forth, test as a target as well, dependencies, configuration with it etc etc. Which I would personally love, huge gradle fan here

EDIT: But I know that would be tremendously drastic, no idea about viability, just brainstorming

@nicolaferraro nicolaferraro modified the milestones: 1.4.0, 2.0.0 Mar 16, 2021
@github-actions
Copy link
Contributor

github-actions bot commented Apr 1, 2022

This issue has been automatically marked as stale due to 90 days of inactivity.
It will be closed if no further activity occurs within 15 days.
If you think that’s incorrect or the issue should never stale, please simply write any comment.
Thanks for your contributions!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/ux Improves user experience help wanted Extra attention is needed status/stale
Projects
None yet
Development

No branches or pull requests

4 participants