Community
Participate
Working Groups
Created attachment 203164 [details] Move Review v0.1 I plan to move some generic parts from the Virgo Server Editor (Virgo Tooling) to Libra. These are the Bundle Overview, the Bundle Dependency Graph and the Server Console editor parts. Such move has been discussed during the proposal phase of the Libra project. I think now is the best moment to make this for Juno, and I have some time to invest in this task. Since this is a move of a "significant chunk of code" from one Eclipse project to another, we have to go through a Move Review as described by the Eclipse Development Process. Attached is an initial draft of the Move Review paperwork. You can find more details about the planned move inside the document. I expect the document to evolve based on the discussion in this bug. The final version of the document will be the paperwork for the actual Move Review. I add several persons to Cc of this bug: - Martin Lippert, Glyn Normington and Christopher Frost as committers in both Libra and Virgo project - Wayne Beaton as a mentor for the Eclipse Development Process If you think that anyone else would be interested to this move, then please add it to the Cc list. I will also post to the libra-dev and virgo-dev mailing lists. As first step, please read the attached document and comment any opinion in this bug.
Targeting for Juno M3 as a first guess.
I committed an initial set of Java classes to be moved from Virgo Tooling in a separate branch in Libra Git repository called '357386': http://git.eclipse.org/c/libra/org.eclipse.libra.git/commit/?h=357386&id=6ee9ae2690f69611f4c657853146d27107e7b431 Note, that branch '357386' is not built by any Hudson job. Actually, the code committed their does not compile yet. I need this branch to track my changes. It will be also useful if anyone else wants to join this activity. The work in the '357386' branch will not be merged to the 'master' branch (our Juno stream) until the Move Review is completed.
(In reply to comment #2) > I committed an initial set of Java classes to be moved from Virgo Tooling in a > separate branch in Libra Git repository called '357386': > > http://git.eclipse.org/c/libra/org.eclipse.libra.git/commit/?h=357386&id=6ee9ae2690f69611f4c657853146d27107e7b431 > > Note, that branch '357386' is not built by any Hudson job. Actually, the code > committed their does not compile yet. I need this branch to track my changes. > It will be also useful if anyone else wants to join this activity. > > The work in the '357386' branch will not be merged to the 'master' branch (our > Juno stream) until the Move Review is completed. Uh. This is not a big deal... but, the code probably shouldn't be moved until after the move review is complete. The point of the move review is to inform the community of the *pending* change. FWIW, I am willing to discuss why this is a stupid policy and work on an alternative.
Wayne, although I pushed some changes to Libra git repo, the code is not formally moved... at least from my point of view. Branch '357386' is some dummy branch that is not used for release engineering and hence this code cannot be delivered to users. And as I state this branch won't be merged to the productive branch until we have the Move Review completed. This step will just help me making experiments and persist the result in a remote (and more reliable) version control, rather than on my own local one. I could do the same on github, but I believe a dummy branch in Eclipse Git is more appropriate. Does this above explanation justify my action better? Or should I use github instead?
To be on the safe side with EDP, I've deleted the '357386' branch from the Libra git repo. I will do my experiments on my own repo on GitHub. If anyone wants to watch them, just follow this link: https://github.com/kaloyan-raev/libra/tree/bnddep
This is great news and we will provide all the help we can. Martin Lippert knows our tools best and has looked over the move review. I do have one question, do you intend this to be the only move of code and what is your intention with Bundlor as we would like to donate that as well.
Indeed, great news and progress on this! Like it very much and will be happy to help whenever I can. We should somehow take care of coordinating the work on the tooling within the libra project and the virgo tooling part to avoid double work on this. So the basic question would be what happens if we change code in the virgo space after you have put some parts into the move repo. Or should we just try to avoid that and wait for the code to be moved before workking on those parts again? What do you think?
Thank you for the positive feedback. Chris, I've spent some time looking at the Virgo Tooling. I've found those editor parts to be an easy move with big return of invested time. So, it looks like a good *first* move from Virgo Tooling to Libra. I would not say that this would be the *only* move, but having in mind the resources I have, I don't plan any other activities for the short term. Nevertheless, if you have the time you are welcome to propose and work on moving other chunks of functionality. I'll be available to help with the coordination and integration efforts. Martin, I hope this move will complete in the Juno M3 time frame. I don't see any problem if relatively small changes are done in the original code of the moving parts. Especially, if they don't introduce new dependencies. It shouldn't be a problem to rebase/merge these changes to the code in Libra. However, if you plan any significant change for Juno M2/M3, then it would be better that we take a look at them and see if they can affect the move.
Wayne, do you think we can go ahead with the official Move Review? Could you check the document and tell me if anything else is required as paperwork?
The documentation looks fine to me. Before we can initiate the move review, we'll need to approve the Virgo's IP Log. I just took a quick look and it seems like everything is in place. Somebody from the project just needs to log in and submit it citing this move review as the reason. If we can get this done today, I'll schedule the review to run from Sept 15-21.
Done. (In reply to comment #10) > The documentation looks fine to me. > > Before we can initiate the move review, we'll need to approve the Virgo's IP > Log. I just took a quick look and it seems like everything is in place. > Somebody from the project just needs to log in and submit it citing this move > review as the reason. > > If we can get this done today, I'll schedule the review to run from Sept 15-21.
The Restructuring (Move) Review has been successful. We may now move the code to the Libra Git repository. I plan to do this shortly after Juno M3 starts. Meanwhile I will continue working on the code in github: https://github.com/kaloyan-raev/libra/tree/bnddep. So far, I achieved detaching the code from any Virgo (and Mylyn) dependencies. I am now trying to integrate it with the server editor of the Libra Equinox server adapter (good progress). Once I achieve this, I will invent some generic way for consuming these editor parts in adopter's server adapters.
The move of the code from Virgo to Libra is almost complete. Take a look at the following git commit: http://git.eclipse.org/c/libra/org.eclipse.libra.git/commit/?id=e4070413d23777379ca6aa0e05acbfa39bba8ea1 All of the moved code is now in the org.eclipse.libra.framework.editor.ui plugin. There is another plugin - org.eclipe.libra.framework.editor.core - which contains several interfaces that provide the necessary abstraction layer between the editor parts and the WTP server runtime (like Virgo). The code is already integrated with the Libra build and the plugins are available on the Libra Nightly repository. There are some minor things left to be done - like javadoc for the new interfaces and plugin metadata. Once I finish them, I will close this bug. I will open separate bugs for: - integrating the moved editor parts with Virgo Tools. - integrating the moved editor parts with Libra Launchers.
Added Javadoc to the interfaces in the editor.core plugin: http://git.eclipse.org/c/libra/org.eclipse.libra.git/commit/?id=3ed7b638a50af962ae11b7276abfe875226fb899
I am closing this bug. Any new work on the moved code will be tracked in separate bugs. Integration with Virgo Tooling is tracked in bug 360366. Integration with Libra Launchers is tracked in bug 360367.
I created an adopter guide how to integrate the moved editor parts in an adopter server adapter: http://wiki.eclipse.org/Libra/Adopter_Guide#Integrating_OSGi_Framework_Editor_parts_in_a_WTP_server_adapter