-
Notifications
You must be signed in to change notification settings - Fork 57
[MPS 2025.3] Drop MPS.ThirdParty module completely #1639
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
Conversation
|
@alexanderpann can you please review/comment? |
|
The included jars in MPS.IDEA expose more libraries than |
I manually updated references in Mbeddr in mbeddr/mbeddr.core#3219. Both mps-extensions and Mbeddr are passing our CI build. I can think of providing a migration, just not an automated migration. It will probably be a shell script with sed/awk commands.
The proper way to access Kotlin stubs is via Kotlin stubs loader, java class files misrepresent Kotlin. Kotlin stdlib is available via jetbrains.mps.kotlin.stdlib. That said, direct usage of these classes is only possible from Kotlin code (no BaseLanguage-to-Kotlin interop possible atm). At the same time, Kotlin's Continuation interface is not compatible with Java call mechanism: it's a part of Coroutines framework where it implements the "Continuation-Passing" invocation pattern. In short, Kotlin methods accepting Continuation should not be called from Java directly. To be honest, MPS.ThirdParty (and MPS.Kotlin for that matter) is a hack that has no right to exist. IDEA platform is now undergoing a major change and all libraries are being repackaged: instead of being availble in
We can look into this issue, but in the meantime keeping MPS.ThirdParty around makes little sense. |
alexanderpann
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The MPS.ThirdParty solution was also introduced at a time when we did not have access to all jars provided by the IntelliJ plugin, and I agree that it was only a hack. The change is breaking, but at least only in 2025.3, so not directly affecting customer projects. I'll approve the PR when the README is also updated.
No dependencies in mps-extensions on this module. # Conflicts: # code/.mps/modules.xml # code/build/solutions/de.itemis.mps.extensions.build/models/de.itemis.mps.extensions.build.mps
|
I started to uproot MPS.ThirdParty after I found out it was in my way when resolving artifacts from "external layout", which is now a feature supported by build language. Mbeddr core is relying on it (see mbeddr/mbeddr.core#3219). It turned out to be misused: at several locations I found same model imported in parallel both from it and from MPS.IDEA. So, it had to go. I updated the changelog with info on MPS.ThirdParty and MPS.Kotlin. |
No dependencies in mps-extensions on this module.