| Summary: | Helios Eclipse Modeling Package | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Modeling] AMP | Reporter: | Cedric Brun <cedric.brun> | ||||||
| Component: | General | Assignee: | Miles Parker <milesparker> | ||||||
| Status: | VERIFIED FIXED | QA Contact: | |||||||
| Severity: | normal | ||||||||
| Priority: | P3 | ||||||||
| Version: | unspecified | ||||||||
| Target Milestone: | --- | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| Whiteboard: | |||||||||
| Bug Depends on: | |||||||||
| Bug Blocks: | 302435 | ||||||||
| Attachments: |
|
||||||||
|
Description
Cedric Brun
Wow, thanks Cédric! Here's the relevant info you requested along with a couple of other issues. One line: Agent Modeling Platform (Incubation), including Agent Modeling Framework, Agent eXecution Framework, Agent Graphics and Visualization Framework, and Escape. Description: The Agent Modeling Platform (AMP) provides extensible frameworks and exemplary tools for representing, editing, generating, executing and visualizing agent-based models (ABMs) and any other domain requiring spatial, behavioral and functional features. AMP has two parts: 1) The Agent Modeling Framework (AMF) which provides an Agent-Based Model (ABM) meta-model representation, editor, development environment and code generators for popular ABM platforms. 2) The AMP platform tools. The Agent Execution Framework (AXF) provides services and UI for model management, execution, and views. The Agent Graphics Framework (AGF) extends GEF, GEF3D, Zest, and the BIRT charting engine to support real-time visualization of and interaction with agent models. Escape is a complete ABM environment for Eclipse. Web: http://eclipse.org/amp Feature ID: org.eclipse.amp.all A couple of key issues: 1. The amp.all build has a dependency on a third party update site which comes from GEF3D. I can chop out the 3D bits and provide a less full-featured feature if necessary, but I'd like to leave it in if possible. Technically and legally possible? 2. I'm still a bit unclear on Helios reqs. I hope this isn't one of those "if you have to ask" questions.. All IP requirements out of the way. Quality wise, we're in decent shape, though there is definitely work to done there, mostly in the areas of internal documentation and unit testing. I have been thinking about doing some triage of features so that I can focus on getting a 1.0 release with stable API sooner rather than later. (This mostly has to do with locking down the meta-model as it stands and waiting for a follow on release to do the newer version of it.) Created attachment 160532 [details]
Screenshot of AMP Escape Model running.
Created attachment 160534 [details]
AMP Logo 32 x 32
I realized that my edited description is a bit redundent., Description: The Agent Modeling Platform (AMP) provides tools for modeling and running Agent-based Models (ABMs) as well as support for generic software agents in any domain requiring spatial, behavioral and functional features. AMP has two parts: 1) The Agent Modeling Framework (AMF) which provides an Agent-Based Model (ABM) meta-model representation, editor, development environment and code generators for popular ABM platforms. 2) The AMP platform tools, including: The Agent Execution Framework (AXF) provides services and UI for model management, execution, and views; The Agent Graphics Framework (AGF) extends GEF, GEF3D, Zest, and the BIRT charting engine to support real-time visualization of and interaction with agent models; and Escape, a complete ABM environment for Eclipse. thanks Miles, a few comments: your "one line" description is way too long for the UI and is not really explaining what AMP is about. 1. I need an update-site will all the required dependencies which are not in helios and GEF3D will be one of those, we can, both technically and legaly, make the UI install AMP from a "non eclipse update-site" including all the parts you want, but then the user will get a popup explaining that when selecting AMP. It's up to you, XText will already do that for their ANTLR dependency which cannot be hosted on Eclipse.org . For your information, the Eclipse foundation board will provide a policy for these cases but so far we're good if we stick to what mylyn does as an example. Its up to you :) 2. So far you don't need to fulfill all the Helios requirements to be part of the discovery ui, that said you have no choice than being compliant with the Eclipse Development Process and have a release review. All I'll ask you is to test installation of AMP in the resulting bundle and if there are issues then we'll try to fix it. re: one-liner, I was thinking that you were wanting the feature name. So I'm not quite sure which line of the discovery UI this is for, so I'll give you all three w/ their analagous entries from discovery UI:
Category / "Model to Text": Agent Modeling
This is the category name I use for P2 -- the idea here being that it's general enough that other projects could use the same category.
Category Description / "Model to Text (also known..)": Agent Modeling tools and technologies.
Descriptive Text ("Acceleo is.."): AMP provides a complete set of modeling tools as well as graphics and execution support for models of complex real-world systems.
BTW, it might be somewhat awkward that Agent Modeling appears first in the list alphabetically -- I won't be hurt if you want to rearrange to have the more popular tools up top. :)
followup Qs:
1. If I refer to an external site, do I need to use that entirely, or can I use two URLs and still get the bulk of the stuff from Eclipse.org? This is a big issue for me, as I don't really think it makes sense to maintain a complete build and download off of Eclipse / Hudson but I do have this one tiny dependency. (And actually, the GEF3D guys are trying to change to a different 3D engine, but I doubt that will be pre-Helios.)
2. OK, I'm going to go for it then. :) Sorry for the dumb question, but by release review, do you mean that I have to be 1.0, or can I still be Incubation? I ask because you mention Incubation as being potentially included in the original discussion.
I think this is really a great approach, BTW!
1. Ok, just updated the discovery code to be able to handle "multi-update-sites" contributions, that should work for you then, you can give me several features and several update-sites. You'll probably need to test the discovery UI a bit more though as that's not the general case. 2. Being in incubation is not a problem *at all*, but if you want to release a new version of AMP, you *need* a release review for it, whether your incubating or not has no effect here. http://www.eclipse.org/projects/dev_process/development_process.php#6_3_3_Release_Review (In reply to comment #7) > 1. Ok, just updated the discovery code to be able to handle > "multi-update-sites" contributions, that should work for you then, you can give > me several features and several update-sites. You'll probably need to test the > discovery UI a bit more though as that's not the general case. Great, thanks. Actually, I think it could be fine to have the first case where the user simply clicks through the 3D box. That's dependent on one more question.. if the user were to click "no" on the third party box, could everything but the stuff with the dependencies on third party be installed? I'm thinking that that is how XText would want it as well, since their ANTLR dependency is really optional. > > 2. Being in incubation is not a problem *at all*, but if you want to release a > new version of AMP, you *need* a release review for it, whether your > incubating or not has no effect here. > http://www.eclipse.org/projects/dev_process/development_process.php#6_3_3_Release_Review OK, I really need to get on that.. I'm scrambling with another release issue but I'll but this on top of priority list, though I'm thinking that not a lot is going to be happening process wise through the next couple of weeks. Sorry, ignore the first part of that last comment. Fighting off a cold and a bit bleary so I lost my place in the thread context. :) To try to be a bit more clear. Given this scenario: A is all Eclipse Project with no external dependencies. X is external (non CQ'd) dependencies. B is additional Eclipse project stuff with third party dependencies. A + X + B = C (Ideal package) I think there are (at least) three possibilities here: 1. We could have one listed feature pull from two sites: _My Project Complete SDK_ A http://eclipse.org X http://icky_license.org B http://eclipse.org User must click through third party IP to get A + B + X. If user clicks no, they get nada. 2. As 1., but if user clicks "no" they get just A. 3. _My Project Without External_ A http://myexternalsite.org X http://myexternalsite.org B http://myexternalsite.org All or nothing. This seems like how XText is doing things with Itemis site. 4. _My Project Without External_ A http://eclipse.org _My Project with External_ X http://icky_license.org B http://myexternalsite.org Case 2 would be ideal, but case 1. would work fine too. Case 3 would actually be almost less attractive as then I have to maintain two separate sites. So which cases would I be able to do? -Miles Oops, read "Case [4] would actually be almost less attractive .." I had to read a few times to make sure I understand ;) Right now we only support case 1, we can install one or many features from one or many update-sites but features are not linked to the "acceptance" of a popup. Case 2 looks would be possible but I would need to update the discovery code a bit and I'm not sure, given the timeframe, I'll be able to. Furthermore we would then have more scenarios to test, let's keep that for v2 ;) As for the "popup", right now we discussed with XText and the foundation and we're arriving at that : https://bugs.eclipse.org/bugs/attachment.cgi?id=161460 There is no popup but a link to a website explaning what is "non ip-approved". If you're going this way I'll need this web URL explaining the AMP case, XText is using this page : http://www.eclipse.org/Xtext/download/ Cédric,
I keep meaning to circle back to this and then something comes up. I think that XText link is a dead link. But I checked with GEF3D team -- they have the only non-IP dependency and I have an (optional) depdency on them. Here's the deal quoting from Jens on GEF-3D dev list..
[snip]
>On 26.05.10 02:43, Miles Parker wrote:
>I'm trying to remember what the deal is with LWJGL libraries WRT to IP. They claim on the website that >it's BSD, but does it contain something that isn't?
Short answer: Probably yes.
Longer answer:
* It contains SGI header files (well, almost every OpenGL related
software will contain SGI header files), these files are published
under the SGI free license. Fortunately, the latest version of
this license is compatible to EPL, although it is not BSD.
Actually, this is true for JOGL as well. However, it is possible
to replace these files with Mesa versions, which is licensed under
the MIT license (but frankly, I'm not sure what's inside Mesa...)
* The LWJGL project has not been concerned with provenance of the
contributions. That is, authors contributing to LWJGL have not
explicitly confirmed their ownership of the submissions. Since it
is impossible to get a list of all authors and what they have
contributed, it is impossible to get these confirmations a
posteriori. So, there might be some code which is not BSD, but we
will probably never know...
So, the deal with respect to IP is as follows: LWJGL has not been approved for use within Eclipse due to unsettled code provenance.
[/snip]
Given this I guess I'm not sure exactly what to put in such a URL and I can't locate the XText caveat. Any suggestions for language? Otherwise once I get release post Helios wrap-up then I guess we're good to go?
Hi Miles, That's right, the link is not clickable in the discovery UI, I'm fixing it for RC4. The XText link was http://www.eclipse.org/Xtext/download/ but there is no more legal notice there (I just tracked bug #316170 for the xText team) I can't recall the exact wording but we can ask the fondation or even the xText team. I can only find this : "Due to IP restrictions, they may not be provided off the Eclipse website, so we decided to make them available here." here : http://oaw.itemis.com/openarchitectureware/downloads/language=en/20361/update-site but this message is not clear enough in my opinion. a message like "This contribution depends on the LWJGL component which has not been approved for use within Eclipse due to unsettled code provenance." on a web page looks quite clear to me. As we're not providing the ability for the end user to say "ok, I'm going to install AMP withouth LWJGL" you should probably explain, on this webpage, how to install it through the update-site. Once this is done and your release is validated by the foundation you're good to go :) Great thanks Cédric. I'll send a note to the foundation emo. My release will be after Helios for obvious reasons. :) Hi Cédric, I've got the text in place, heres' the link: http://www.eclipse.org/amp/installing/about_discovery.php And, I have a release review scheduled next week the day of the Helios realease, somewhat coincidently. So hopefully we'll be able to add this in post Helios. cheers, Miles We're all set, now that your release has been done I activated the AMP contribution in the discovery UI. I installed it and it worked correctly, feel free to reopen this bug if there is any problem. OMG..that is so unbelievably cool!! I've been working on a full IDE build, but with this working I really don't think I need it. Thanks Cédric..great work on pushing this forward. As a note re: discovery licensing see bug 318758. |