Universal-Variability-Language / uvl-lsp

Language server protocol for the Universal Variability Language (UVL)
MIT License
10 stars 3 forks source link

Issue#7 Conversion for Language Level Type #130

Closed ThiBruUU closed 5 months ago

ThiBruUU commented 8 months ago

fixes issue https://github.com/Universal-Variability-Language/uvl-lsp/issues/7

Adds some functions as a quickfix to convert the existing feature model into a feature model suitable for the included language levels if language levels are missing (Type, Type.numeric-constraints, Type.string-constraints).

SundermannC commented 8 months ago

On my system, it seems like the changes are not really robust. Especially when having constraints and features that illegally use type level, UVLS crashed entirely or shows this message often: image It won't leave this state and UVLS appears to be much slower during it. For instance, UVLS requires multiple seconds for a single autocomplete. While it is not 100% deterministic, it happens most of the time for me.

With the master branch, the crashes do not seem to happen for me.

Here is the model:

include
    Boolean
    Arithmetic

features
    Root {Numeric 25}
    Fun {String ''}
    Real noFun

constraints
    noFun > 3

Does this issue occur for you as well?

MartinMUU commented 7 months ago

On my system the changes seem to work as intended. Also the example model is working correctly.

grafik

SundermannC commented 7 months ago

Strange, did you make edits? For me, I can perform quick fixes initially sometimes, but problems occur consistently within a few small changes.

Could this be related to the OS? Did you introduce any changes to implementation using file system operations?

MartinMUU commented 7 months ago

I tested it again with a lot of changes and edits, but I still can't reproduce the bug. I tested it on Windows. We did not change anything in relation to the file System as far as I know.