OpenLiberty / liberty-language-server

The Liberty Config Language Server provides language server features for Liberty server configuration files through any of the supported client IDEs.
Eclipse Public License 2.0
6 stars 12 forks source link

Feature auto-complete should exclude different versions of already included features. #161

Open jvanhill opened 1 year ago

jvanhill commented 1 year ago

The feature auto-complete for server.xml should exclude features that are a different version of the a feature that is already included. For example, if servlet-3.1 is included, servlet-4.0 and servlet-5.0 should not be included in the auto-complete options.

Additionally, it would be good if the user included a feature that is specific to an EE version, that features that don't support that EE version were excluded as well. That would probably need to be another issue (and may be too complex to determine from the tools).

cherylking commented 1 year ago

@jvanhill Thank you for the feedback. Initially I thought your first suggestion made complete sense. But what if they decided they needed to change which version of a feature they wanted to use? They would no longer be able to see all the versions available. Perhaps we just need a diagnostic if they specify multiple feature elements with different versions (e.g. they have both servlet-4.0 and servlet-5.0 in their feature section). What do you think?

As for the second suggestion, I don't believe we have data available at the language server level that would tell us which features are for which EE version.

cherylking commented 9 months ago

Just wanted to note here that with this PR additional info is displayed for features, including what features enable the feature as well as what features are enabled by the feature. This can sometimes shed some light on which EE version a feature is part of.