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
Common features for CS-Studio product #114
Comments
I just pushed implementation for: |
The top level project issue is: |
More work on this. We now have a CS-STUDIO product. Much of it is rebranded. New splash screen and site neutral message. The list of committers in the splash screen is the top committers taken from Ohloh for the past 12 months. We can change it from time to time. The following features were introduced:
I am concentrating on the IDE build at this point. Later we'll make sure that it works with the commandline build. |
The CS-STUDIO product is now fully made of "neutral" features and plugins. It includes BOY, probe and not much else. The plugins should be reviewed and moved to core, in a way that can be used by at least BNL and FRIB. I'll leave Kunal and Eric to work on this. |
As a follow-up to our discussion this morning about how plugins should be added in a feature (ie directly or as a dependency), the Orbit wiki page suggests that third party plugins provided by Orbit should be directly included in the other features. (http://wiki.eclipse.org/Easy_Bake_Builds_with_Orbit_Bundles) In my testing when I put a third party plugin as a dependency, instead of directly including it in a feature, the build breaks. So, now I'm more confused about how this should be done. |
Wow. Can't figure out a decent way to do this then. Having a common feature for all 3rd party libraries is not reasonable, because every time some feature wants one you need to add it, and it becomes a kitchen sink. I guess then each feature would need it declared in their included plug-ins, but then: what are the dependencies for? Maybe we open up a few Eclipse/Mylyn/... features, and see how they do it? The feature.xml file should be there... right? |
If you instead move 3rd party plugins to a designated 3rd party feature, you'd get the one in there. Same actually applies to all plugins: versioning is fine if you list what you need in each feature. If all features are compatible with one and only one version of a plugin: perfect, you get that one in the product. But multiple versions of the same plugin are also possible that way. -Kay |
To recap: CS-STUDIO is built only with common features, except for the product feature and the intro feature. I'll move this to release 3.2.11, since we haven't figured those out yet. Eric: if you prefer to close this issue and open another one for those, go ahead. |
Move to 3.2.11 |
As a first step to a common CS-Studio product, we should factor out all code and features out of the product directories, so that the products only consist of configuration files and references to features.
Common features are at the granularity at what a user will want to install in a product. They are also limited to UI, so we will not break up UI part from non UI part. Therefore, server and rap will not be the aim, as in those cases users will not connect to a p2 repository to install/update features.
Each feature should define:
plug-ins and fragments: there are the plugins that are going to be built as part of the feature. When features are going to be broken into different repositories, these plug-ins and fragments will follow the feature in the new repository. Each plug-in and fragment must be in one and only one feature.
Included features: this is used to break features and regroup them. The Core cs-studio feature, for example, could group pvmanager/menus/startup features.
Dependencies: this is everything that should be installed together. First add the features (for example, CA support depends on pvmanager support) then use compute to get the dependent plug-ins.
Not clear what exactly to put for licenses.
Current strawman layout for some features.
pvmanager (core libraries, ui configuration, utilities)
ca (datasource + caj) -> pvmanager
pva (datasource + pvdata/pvaccess) -> pvmanager
cs-studio utilties (probe, pvtable) -> pvmanager
ca utilities (pv tree) -> ca, pvmanager
BOY -> pvmanager
The text was updated successfully, but these errors were encountered: