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

< Nebula
Revision as of 20:32, 5 January 2012 by Wim.jongman.remainsoftware.com (Talk | contribs) (Organize your Code)

New Contributions

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

Introduce Yourself

If we don't know you, please take the time to introduce yourself to the Nebula mailing list. Be elaborate. Tell about your contributions, the bugs that you have filed, the patches that you committed. We need to know that you are a good Eclipse Citizen (Although this is not really necessary if you have a killer UI component to contribute ;).

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 for a while: be patient and persistent. We love new contributions.

File a Bug

You will be instructed by one of the project leads to file a bug against Nebula core in bugzilla. Before you can do that, you need to get an Eclipse account. This can be done on the Bugzilla landing page. Once the account has been created you need to file a bug against Nebula Core.

Here are some example bugs of previous contributions:

You need to include the source code and additional resources like images and stuff like that (one or more plug-in projects) as an attachement. Only the code that you own and have the copyright. Each source member needs to have the standard EPL header like you see in every Eclipse source. Do not include any third party code. Do not include any zip files in the projects. Just your sources and other resources. You can include somoe additional information like links to the working product or links to screenshots.

In addition, You need to declare that:

  • I authored 100% of the content
  • I have the right to contribute the content to Eclipse
  • I contribute the content under the EPL

Once you are ready, file the bug against Nebula/Core.

Assess

We will take a look at your code to assess the quality. If we have problems with it we will let you know on the bug. We will also do a preliminary check on any IP (Intelectual Property) issues. After this is done, one of the project leads will file a new bug in a separate Bugzilla system known as IPZilla. This bug is called a CQ (Contribution Questionnaire).

Here an automatic scanning of the source will take place. It will be examined on foul words, religious statements, terroristic information and all that. You will also need to declare that you have the rights to the code.

One of the Eclipse PMC members will do some magic and authorize the CQ. After this has been done, we have to wait on the Eclipse legal team to do a triage on the code and give their final OK.

Become a Committer

Roughly during the same time, you will be voted into the Nebula committer community. This is a process of the community and is in general a formality but you cannot have any votes against you. Once you are voted in, you will be provided with an Eclipse committer ID by the Eclipse Webmasters.

Organize your Code

You will get your own personal slot in the Nebula git repository. we are forked on github and your component will be included into this folder. The official repository is hosted at Eclipse.

You will need to provide several components to become part of the Nebula code.

Lets take a look at the structure of the Oscilloscope widget.

  • org.eclipse.nebula.widgets.oscilloscope
    This is the main code of this widget. It is included in one project but your UI component can span more than one project. Please follow the namespace and discuss on the mailing list what the best name of the component can be.
  • org.eclipse.nebula.widgets.oscilloscope.example
    This is the contribution to the Example view. Every component is required to contribute to the example view. Here you can showcase your widget. Make it as fancy as possible.
  • org.eclipse.nebula.widgets.oscilloscope.feature
    The feature project that will contain only your UI component. Please take a look at the contents of other features for inspiration. Make sure to provide the correct naming and descriptions in the feature and follow the same pattern as the other features.
  • org.eclipse.nebula.widgets.oscilloscope.snippets
    This contains the snippets for your code. Snippets contain short code examples on how to use your widget. This is mandatory. See other snippet projects for some inspiration.
  • org.eclipse.nebula.widgets.oscilloscope.tests
    This contains the unit tests for your component. Obviously this is also mandatory. Please provide a code coverage of at least 80%.

Back to the top