ModelDriven / Alf-Reference-Implementation

Open-source implementation of the Action Language for fUML (Alf) specification.
30 stars 2 forks source link

Issue #77 - Externalize the target platform into definition file #78

Closed abstratt closed 5 years ago

abstratt commented 5 years ago
abstratt commented 5 years ago

Thanks @seidewitz, that was something I was unsure about. Done.

abstratt commented 5 years ago

@seidewitz I tried to infer the versions of upstream projects based on the minimum bundle versions you had specified. Is this giving you different results than the approach you used so far (resulting in unexpected - too old or to new - versions of dependencies)?

Updating this to a more recent set of dependencies makes sense. Maybe we could that later as a separate task, assuming the dependencies proposed here are not incorrect?

seidewitz commented 5 years ago

Actually, you did pretty much get the versions right, and I am, in fact, still using Oxygen for RI development. You can probably also add http://eclipse-javacc.sourceforge.net (SF JavaCC Eclipse plugin feature 1.5.33) to the platform.

I originally stayed on Oxygen/4.7 (and, in fact, until recently, was still testing on 4.6, too) for compatibility with a user that is no longer relevant. I have been thinking for a while that it is finally time to move on to the current Eclipse version, but haven't had a chance to do so. However, doing that as a separate task probably makes sense -- it is lower priority than making progress on Issue #75.

abstratt commented 5 years ago

@seidewitz The target platform needs to contain the bare minimum bundles that the project's own bundles are compiled against. it does not affect the functionality available to the IDE during development time. For instance, we can still use an old version of Eclipse as the target platform (because the Alf RI does not require a newer version) and use the latest Eclipse as our development environment.

Re: the JavaCC plug-in for Eclipse - since JavaCC itself or the JavaCC Eclipse plug-in are not used for compiling the code, at this time it seems it is not needed in the target platform. Do you see a reason for us to include it?

Re: versions - the target platform should reflect our minimum requirements, so making it rely on recent versions of Eclipse, Eclipse UML2 or Papyrus mean dropping compatibility for earlier versions, even if as recent as last year's. No problem with that, if that is really what you are looking for. At least for the Eclipse Platform, I would try to have the oldest possible version the Alf RI can work on as a prerequisite.

seidewitz commented 5 years ago

Not sure if including the Javacc plugin in the platform might be necessary if we better automate the build process in the future. But that's not important for now.