Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Nebula/restructure
Contents
Nebula Restructure Plan
This page is to track the Nebula Restructure. Please add yourself to the Watch list if you want to stay in sync with the changes made to this page.
Please discuss this page on the nebula-dev mailing list.
Restructure based on initial docuware by Tom Schindl.
Move to Git
We will be moving to git. We are currently investigating the steps that are needed to get there. Please expect the cvs repository to become read only before the end of the year and probably sooner.
All activities in the transition will be communicated to the mailing list.
- Create repositories
- Nebula Release
- Nebula Incubation
- Nebula NatTable
- Update References
- Website
- Wiki
- Documentation
The current plan is to ask the webmaster to checkin the current CVS into the Release and Incubation repository, including the history, and then remove the projects that do not belong there.
Rename Projects
All projects will be renamed to the nebula widget standard project renaming as outlined in this page. The concrete in which these standards are poured is still wet so we can still make changes. Also, Nebula should move out of the swt namespace.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=364914
Release Schedule
Nebula Proper must follow a release schedule.
VCS Restructure
We will be restructuring the repository. Every widget will get its own little place in the repository like this:
bundles widget o.e.n.widgets.widget o.e.n.widgets.widget.feature o.e.n.widgets.widget.tests o.e.n.widgets.widget.tests.feature <-- really needed? o.e.n.widgets.widget.example o.e.n.widgets.widget.snippets
In addition there will be some other structures:
releng examples attics
Creating Example Projects
Every widget that is contributed is required to contribute to the examples plugin. The examples plugin contains an extension point that can be used for contribution.
Currently the examples plugin contains many internal references. If we want to include the examples plugin to the build we need to create an example plugin for every widget and remove the references to this plugin from the examples plugin. See the oscilloscope.examples plugin for a reference.
Actions:
- Create an examples plugin for the widget
- Move the widget related code to that new plugin
- Add dependencies on o.e.ui and o.e.core.runtime
- Add a dependency to o.e.nebula.examples
- Create an extension to examples that points to the copied class
- In the examples plugin
- Remove the reference to the widget
- Remove the example java code
- Remove the extension
- Commit the new plugin and the changed example to CVS
Use bug 364900 for commit comment
This has been finished. However, some projects miss the examples view.
Build
- move to download
- http://wiki.eclipse.org/JAR_Signing
- Rename build jobs to remove the "maven" and "nightly" terms
Clean Committer list
There are currenly 24 committers to Nebula. This sounds good but most committers are inactive. We need to find out who is currently committing for Nebula and move all inactive committers from active committer state to the honourable list of committers alumni.
The current list of committers:
- Andrew Finkbeiner
- Ahmed Mahran
- Chris Gross
- Donald Dunne
- Dave Orme
- Emil Crumhorn
- Elias Volanakis
- Eric Wuillai
- Felipe Heidrich
- Grant Gayed
- Ira Fishbein
- Jeremy Dowdall
- Jeff Phillips
- Lukasz Milewski
- Matthew Hall
- Mickaël Istria
- Marty Jones
- Peter Centgraf
- Pavel Petrochenko
- Nicolas RICHETON
- Steve Northover
- Thomas Schindl
- Veronika Irvine
- Wim Jongman
Assign/Deprecate Widgets
We need to find out which widgets are no longer supported and assign new owners. If no new owner can be found for the widget have to deprecate it or keep it in incubation.
Nebula Project Restructuring Proposal
This document describes a proposed restructuring of the Eclipse Nebula project. We solicit additional participation and input from the Eclipse community. Please send all feedback and requests for participation, by April 1st, to the nebula-dev mailing list or indicate interest in participation by submitting a Bugzilla report.
Background
Since its initials conception in 2006, Nebula has welcomed many new supplementary widgets. Many of these widgets are used in production environments around the globe.
Nebula is a place where different Eclipse-Projects and Independent developers collaborate on building Custom SWT widgets and reuseable UI-Components useable in UI-Applications built using SWT and JFace
The Nebula project was created to provide an incubator for the development of
current and future rich widgets with the intent to move them to SWT after
having been matured. None of the widgets produced by the Nebula Project - though stable and production
ready - have ever been moved to SWT.
Objective
The objective of the restructuring is that Nebula releases those supplementary components in a 1.0 release to foster adoption in commercial and opensource projects.
In the last few month many external parties asked for a stable release of Nebula-Components so that they can be used for downstream adoption but because of the different maturity level of the widgets found in Nebula and because of the permanent incubation status of the project we are not able to provide such a release.
The project as it is now will be split into two separate projects:
Project | Description | Type |
---|---|---|
Nebula | This is an example | |
Nebula Incubator | This is another example |
- Nebula
This project contains a selected list of stable widgets. All widgets in this project are maintained by at least one active committer. We want to The objective of the restructuring of the Nebula project into 2 seperate projects gives the mature components the the possibility to work towards a 1.0.0 release whereas new contributions can profit from parallel IP A broad ecosystem of Agile and ALM integrations
The revolutionary task-focused interface Due to the growing adoption of Mylyn’s frameworks, we are planning to restructure the project around its API boundaries for key components such as Tasks and Context. The goal of the proposed sub-projects is to address the growth of Mylyn by creating sub-projects for the components, and to solicit additional participation from ISVs and other stakeholders in the new sub-projects.
Overview
We expect the following structure and participation to evolve while the restructuring is in the proposal phase. "Reference Tools" are open source ALM tools used for reference implementations of the corresponding Mylyn sub-project APIs. The "Reference Standard" implementation is for the Open Services for Lifecycle Collaboration (OSLC) REST APIs for ALM.
Project Summary Reference Tools Reference Standards Tasks Change, issue, defect and user story management Bugzilla, Trac OSLC-CM Context Context management and task focus
JDT, CDT
SCM Source code and configuration management
CVS, EGit
OSLC-SCM
Build Build, release and continuous integration
Hudson
OSLC-Automation
Review Collaborative code review
n/a
Docs Documentation and requirements
WikiText
Commons Rich client, REST and WS utilities
n/a
Compatibility
Binary compatibility with existing Mylyn 3.x releases will be retained under the restructuring.
Projects
Mylyn
Mylyn project and committers remain unchanged (see Mylyn Contributors), with Mik Kersten as the project lead. This project will no longer contain source code, all of which will move into sub-projects. The proposed sub-projects and their committers are listed below. Committers not currently on the Eclipse Mylyn project are described. The sub-projects will actively support interested parties earning commit rights.
Mylyn/Tasks
The scope of this project is integration with Agile, issue, bug and defect tracking servers. The project provides rich task editing, task list management and offline synchronization for ALM servers. The Tasks project is the central portion of the ALM integration framework used by Mylyn. Individuals listed as "New Contributors" have stated their intersted in contributing to the project.
Existing Committers
Steffen Pingel, Lead (Tasktop) Shawn Minto (Tasktop) Robert Elves (Tasktop) Mik Kersten (Tasktop) Frank Becker (individual) New Contributors
Mark Ringer (Rally Software, goal is to help drive support for Agile in Mylyn and server side interoperability) Mylyn/Context
The scope of this project is the implementation of usage monitoring, degree-of-interested modeling and the task-focused interface implementation for Eclipse, which re-aligns the IDE user interface around tasks and provides features such as workspace focusing and one-click multitasking.
Existing Committers
Shawn Minto, Lead (Tasktop) Steffen Pingel (Tasktop) Robert Elves (Tasktop) Mik Kersten (Tasktop) Mylyn/SCM
The scope of this project is Eclipse integration for source code and configuration management tools and bi-directional linking to change management tools. This project and APIs it provides builds on the existing Eclipse "Team" APIs.
Existing Committers
Robert Elves (Tasktop) Steffen Pingel (Tasktop) Mik Kersten (Tasktop) New Contributors
Kevin Sawicki (Perforce, goal is to help drive Mylyn framework changes for support of advanced SCM features) Mylyn/Build
The scope of this project is Eclipse integration of continuous integration and build systems. This is a new project that includes existing Eclipse.org committers who will collaborate on extending Mylyn’s build system APIs.
Existing Committers
Steffen Pingel (Tasktop) David Green, Lead (individual) New Contributors
Henrik Lindberg (Cloudsmith, Eclipse B3 committer) Thomas Hallgren (Cloudsmith, Eclipse B3 committer) Michal Ruzicka (Cloudsmith, Eclipse B3 committer) David Shepherd (Tasktop, created Tasktop’s existing build and CI system APIs) Mylyn/Review (Incubation)
The scope of this project is to provide Eclipse-based code review functionality that’s seamlessly integrated with the Tasks and SCM systems supported by Mylyn.
Committers
Mario Bernhart, Lead (INSO) Christoph Mayerhofer (INSO) Kilian Matt (INSO) Stefan Strobl (INSO) Mylyn/Docs
The scope of this project is Eclipse-based access to documentation systems such as Wikis and other portals. This builds on the Mylyn WikiText framework.
Committers
David Green, Lead (individual) Robert Elves (Tasktop) Mylyn/Commons
The scope of this project is to provide a framework of common UI, web service, REST and test utilities to be used by the rest of Mylyn and by other Eclipse-based tools.
Committers
Steffen Pingel, Lead (Tasktop) Shawn Minto (Tasktop) Mik Kersten (Tasktop) Robert Elves (Tasktop) Mylyn/Incubator (Incubation)
The scope of this project is to provide an place for experimentation. This will subsume the existing Mylyn Sandbox. All committers granted commit rights.
Interested Parties
AccuRev Atlassian Cloudsmith CollabNet HP IBM Microsoft Perforce Polarion Rally Software SpringSource, a division of VMware Tasktop ThoughtWorks Studios VersionOne Zend