loonwerks / AGREE

Assume-Guarantee REasoning Environment
BSD 3-Clause "New" or "Revised" License
12 stars 5 forks source link

Please release AGREE 2.4.2 for OSATE 2.7.0 #19

Closed tuxji closed 4 years ago

tuxji commented 4 years ago

Due to an unfortunate use of explicit versions in the target definition file, AGREE 2.4.1 has a hard dependency on OSATE 2.6.0.vfinal so we cannot use both AGREE 2.4.1 and OSATE 2.7.0 together in our own plugin:

[ERROR] Cannot resolve target definition:
[ERROR]   Software being installed: com.rockwellcollins.atc.agree.feature.feature.group 2.4.1
[ERROR]   Missing requirement: com.rockwellcollins.atc.agree.feature.feature.group 2.4.1 requires 'org.osate.core.feature.feature.group [2.6.0.vfinal,2.7.0)' but it could not be found

Will you please consider removing the following explicit versions from your target definition file, updating the repository locations wherever necessary, and releasing AGREE 2.4.2 (we would need 2.4.2 added to AGREE_Updates since we are using that update site)?

diff --git a/com.rockwellcollins.atc.agree.target/com.rockwellcollins.atc.agree.target.target b/com.rockwellcollins.atc.agree.target/com.rockwellcollins.atc.agree.target.target
index 0873a8b..fbd21e5 100644
--- a/com.rockwellcollins.atc.agree.target/com.rockwellcollins.atc.agree.target.target
+++ b/com.rockwellcollins.atc.agree.target/com.rockwellcollins.atc.agree.target.target
@@ -50,18 +50,18 @@
                <repository location="http://download.eclipse.org/modeling/tmf/xtext/updates/orbit/2019-09"/>
        </location>
        <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
-               <unit id="org.eclipse.xtend.sdk.feature.group" version="2.19.0.v20190902-1322"/>
-               <unit id="org.eclipse.xtext.sdk.feature.group" version="2.19.0.v20190902-1322"/>
+               <unit id="org.eclipse.xtend.sdk.feature.group" version="0.0.0"/>
+               <unit id="org.eclipse.xtext.sdk.feature.group" version="0.0.0"/>
                <repository location="http://download.eclipse.org/modeling/tmf/xtext/updates/releases/2.19.0"/>
        </location>
        <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
-               <unit id="org.osate.ba.feature.feature.group" version="1.0.0.v20190813-0632"/>
-               <unit id="org.osate.core.feature.feature.group" version="2.6.0.vfinal"/>
-               <unit id="org.osate.ge.feature.feature.group" version="2.6.0.vfinal"/>
-               <unit id="org.osate.ocarina.feature.feature.group" version="0.0.1.v20190417-1800"/>
-               <unit id="org.osate.plugins.feature.feature.group" version="2.6.0.vfinal"/>
-               <unit id="org.osate.utils.feature.feature.group" version="1.0.0.v20181114-1614"/>
-               <unit id="org.osate.xtext.aadl2.errormodel.feature.feature.group" version="2.6.0.vfinal"/>
+               <unit id="org.osate.ba.feature.feature.group" version="0.0.0"/>
+               <unit id="org.osate.core.feature.feature.group" version="0.0.0"/>
+               <unit id="org.osate.ge.feature.feature.group" version="0.0.0"/>
+               <unit id="org.osate.ocarina.feature.feature.group" version="0.0.0"/>
+               <unit id="org.osate.plugins.feature.feature.group" version="0.0.0"/>
+               <unit id="org.osate.utils.feature.feature.group" version="0.0.0"/>
+               <unit id="org.osate.xtext.aadl2.errormodel.feature.feature.group" version="0.0.0"/>
                <repository location="https://osate-build.sei.cmu.edu/download/osate/stable/2.6.0/updates/"/>
        </location>
 </locations>

The above diff shows the changes that would make AGREE 2.4.2 upward compatible with newer Xtext and OSATE versions. It's true that new OSATE versions might change the OSATE API in some way that old AGREE code can't handle but please let us take that risk.

kfhoech commented 4 years ago

Upgrade to the OSATE 2.7.x series has been on our To-Do list for several weeks. We had opted to postpone this until after the 2020-February PI meeting. That is past now and we are moving ahead to support OSATE 2.7.x.

Prior to 2.7.x, release OSATE did not support semantic versioning. Changes in the OSATE API had resulted in problems due to removal of API features or changes in their behavior. Accordingly, we needed to lock each specific version AGREE to a specific version of OSATE. Hopefully, now that OSATE claims to support semantic versioning, we can be more flexible with the versioning.

We will be conducting the upgrade to OSATE 2.7.x over the next few days and plan to evaluate a less strict tying of versions.

kfhoech commented 4 years ago

AGREE, Resolute, and BriefCASE have been updated to support OSATE 2.7.x (and beyond via semantic versioning).