Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Nebula/Contributions

This guide is under maintenance: We have switched from Gerrit to Github pull requests. The repo link is below.
https://github.com/orgs/eclipse/teams/eclipse-nebula

Hi,

Welcome to the Eclipse Nebula project. We love new contributions. We provide the Eclipse community with a large set of rich UI compoments. So thank you for considering your contribution.

Contact

Patches

We use Gerrit to accept all your patches.

Get your Eclipse Credentials

To provide patches to Nebula, create an Eclipse account, sign the ECA and get a GitHub account.

Create a GitHub Account

Create a GitHub account (or use your existing one)

Create an Eclipse Account

Create an Eclipse Account (or use your existing one) and set your GitHub account (this will tell Eclipse who you are on GitHub)

Sign the ECA

Sign the ECA

Three Ways to Setup Your IDE

To setup your IDE there are three possibilities. Using the project set file is the easiest for newcomers.

  1. Import our PSF file
  2. Use Oomph
  3. Setup manually

1. Import Project Set File

In an empty workspace select the URL below and open File/Import... en find Team/Team Project Set. Paste the url in the wizard that appears and lean back.

The PSF file will import all wizards and assign projects to working sets for your convenience.

The wizard will fail if git was not setup correctly or if the nebula git directory already exist or if any of the projects already exists. In this case, install git, remove the nebula directory, run with a clean workspace or any combination of the previous options.

https://raw.githubusercontent.com/eclipse/nebula/master/releng/org.eclipse.nebula.feature/Nebula_All.psf


2. Import with Oomph

Use the Eclipse installer or, if you have already installed Oomph, use the Oomph import wizard and select Nebula. If Nebula is not in the list, add this setup file.
https://raw.githubusercontent.com/eclipse/nebula/master/oomph.setup


3. Clone the GIT Repo Manually

The Nebula repository on GitHub is here: https://github.com/eclipse/nebula. For example:

 C:\Users\You\git>git clone https://github.com/eclipse/nebula.git

Find the Nebula Examples View

Run Eclipse

Create a new run configuration and press Run

Nebula ide3.png

Open Nebula Perspective

Open the Nebula perspective and find the example view for your widget and test your changes. You can also test your changes by using the widget in a snippet or in your own project.

File a bug

File a bug against the correct component and version.

Patches with a signed CLA

To provide patches to Nebula, create an Eclipse account, get your Gerrit password and push your changes to the Gerrit git repo.

Please always use a valid bugnumber and use the following commit message:

Bug bugnumber  bug description 
<empty line>
Good description of the changes you made.

Change-Id: I0000000000000000000000000000000000000000 
Signed-off-by: Wim Jongman <wim.jongman@remainsoftware.com>

To update an Existing commit, use the change Id that Gerrit has created for your original commit:

Bug bugnumber  bug description 
<empty line>
Good description of the changes you made.

Change-Id: yaddieyaddieyaddieyaddieyaddieyaddieyaddieyaddie
Signed-off-by: Wim Jongman <wim.jongman@remainsoftware.com>

Patches without a signed CLA

We cannot accept patches, in any form, without a signed CLA.

Building on our build server

Every patch you supply with Gerrit gets build immediately. You can find the Gerrit jobs here which also includes the build repository.

Building locally

To build locally refer to the builds page

New Committers

Before you decide to contribute your code to Eclipse, keep in mind that your code must follow the EPL, Eclipse's Public License. This means that committers and contributors need to follow some rules.

A good overview of what this entails and how this affects you can be read here.

There are a number of ways you can contribute.

  1. A new project inside Nebula
  2. New widgets in the Nebula Release project (production ready).
  3. New widgets in the Nebula Incubation project.
  4. Maintain existing widgets

If you choose the first option please contact the Nebula lead through the mailing list and make your intentions clear. Then continue to read on this page.

New Widgets

The new widget process is described here:

Nebula/Contributions/New Widgets

Introduce Yourself

If we don't know you, please take the time to introduce yourself to the Nebula mailing list. Be elaborate. Things that you talk about could be your contributions, the bugs that you have filed, the patches that you committed, your experience in UI development, etcetera. We need to know that you are a the kind of person that we want to have on board. If you are not comfortable with this, it could also be enough to point to the code that you want to contribute and tell us how this could be useful to the greater Nebula community.

You can subscribe to the mailing list by writing a mail to the mailing list administrator. How this is done is all explained on this page. Tell us what your plans are and what your UI component does. Then wait for the discussion. If nothing happens immediately: be patient and persistent. We love new contributions.

Code Quality and Citizenship

Once part of the Nebula project, your code is visible to thousands of developers. Make sure that you provide quality code. Also make sure that your widget is stable even if your API is not. The work that you provide represents the complete Nebula community. Ask on the list if you are not sure. Take a look at the widget author tips. The user interface is a very important part of any application.

Once you are in the project, take care of your bug reports and make sure that they are followed up. We require that you do not only take care of your own component but also look after the greater Nebula together with the other active committers.

Add Documentation to the Wiki

Your component needs to be documented on the main Nebula wiki page.

Watch nebula-inbox

It is required that all committers watch this email address in bugzilla to stay up to date with what is going on in our community. Please login to bugzilla and then change your users-watching settings here:

https://bugs.eclipse.org/bugs/userprefs.cgi?tab=email

Become a committer

If you do not provide a new widget contribution but still want to become a Nebula committer then the following applies:

Based on your role in the Eclipse community you can become a full committer in the Nebula project. For this you have to show commitment to the project by maintaining your code and play an active role in the Nebula community as a whole. Once this is established, you are invited by one of current committers of the Nebula project to become a committer. If you feel that you are ready for full committer status but you are not yet invited, you can solicit for the position yourself either through the list or by personal mail to the project lead.

The voting process is a formality but you cannot have any votes against you (-1). Once you are voted in (three or more +1), you will be provided with an Eclipse committer ID by the Eclipse Webmasters.

Back to the top