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

Difference between revisions of "Nebula/Contributions"

(Assess)
 
(123 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= New Contributions =
+
Hi,  
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 ==
+
Welcome to the Eclipse Nebula project. We love new contributions. We provide the Eclipse community with a large set of rich UI components. So thank you for considering your contribution.
If we don't know you, please take the time to introduce yourself to the Nebula mailing list. You can subscribe to the mailing list by writing a mail to the mailing list administrator. How this is done is all explained [https://dev.eclipse.org/mailman/listinfo/nebula-dev 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 ==
+
__TOC__
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 [https://bugs.eclipse.org/bugs/ 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:
+
=Contact=
 +
* [https://dev.eclipse.org/mailman/listinfo/nebula-dev Mailing list]
 +
* [https://www.eclipse.org/forums/index.php/f/64/ Newsgroup/Forum]
 +
 
 +
=New Users=
 +
* [[Nebula/Contributions/Setup IDE|Setup Your IDE]]
 +
 
 +
= Pull Requests =
 +
We use [https://help.github.com/articles/about-pull-requests/ GitHub Pull Requests] to accept all your patches on the [https://github.com/eclipse/nebula Nebula GitHub repository].
 +
 
 +
See GitHub's extensive documentation on working with Pull Requests. Start with the [https://help.github.com/articles/github-flow/ GitHub flow overview] and then continue with the rest of the [https://help.github.com/categories/collaborating-with-issues-and-pull-requests/ documentation].
 +
 
 +
== File a gitHub Issue==
 +
For administration purposes [https://github.com/eclipse/nebula/issues we require a GitHub issue] for every pull request.
 +
 
 +
== Reference the issue in the pull request ==
 +
Reference the issue number in the Pull Request subject (e.g., "Add loading debug to XViewer #351")
 +
 
 +
== Patches with a signed ECA ==
 +
To provide patches to Nebula, sign the [https://www.eclipse.org/legal/ECA.php ECA] (click on the ECA Form link in the bold paragraph, [https://accounts.eclipse.org/user/register creating a new account] if you do not have one already), fork [https://github.com/eclipse/nebula Nebula] on GitHub and submit a Pull Request.
 +
 
 +
* [[Nebula/Contributions/Setup IDE|Setup Your IDE]]
 +
* [https://wiki.eclipse.org/GitHub All you need to know about GitHub use at Eclipse, and more.]
 +
 
 +
Please always use a valid issue description and number and use the following commit message:
 +
 
 +
Add loading debug to XViewer #351
 +
<empty line>
 +
A good description of the changes you made.
 +
 
 +
Add the new commits to the branch you used for the pull request to update an existing commit.
 +
 
 +
== Patches without a signed ECA ==
 +
We cannot accept patches, in any form, without a signed [https://www.eclipse.org/legal/ECA.php ECA].
 +
 
 +
= Building =
 +
You can find the Jenkins jobs here, which build the pull requests.
 +
 
 +
* https://ci.eclipse.org/nebula/job/nebula.stable.github/
 +
* https://ci.eclipse.org/nebula/job/nebula.incubation.github/
 +
 
 +
 
 +
All members of the [https://github.com/orgs/eclipse/people GitHub Eclipse organization] should have their PRs built automatically as the whole organization is on the whitelist. All other PRs need to be approved before they are built for the first time. To approve a PR, you have to be an admin and say:
 +
 
 +
* "ok to test" to accept this pull request for testing
 +
* "test this please" for a one-time test run
 +
* "add to whitelist" to add the author to the whitelist
 +
 
 +
 
 +
If the build fails for various reasons, you can rebuild.
 +
 
 +
 
 +
* "retest this please" to start a new build
 +
 
 +
See the full documentation for the [https://wiki.jenkins.io/display/JENKINS/GitHub+pull+request+builder+plugin GitHub Pull Request plug-in for Jenkins].
 +
 
 +
== Building locally ==
 +
To build locally [[Nebula/Builds|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 [http://www.eclipse.org/legal/#Committers can be read here.]
 +
 
 +
There are several ways you can contribute.
 +
 
 +
# A new project inside Nebula
 +
# New widgets in the Nebula Release project (production-ready).
 +
# New widgets in the Nebula Incubation project.
 +
# Maintain existing widgets
 +
 
 +
If you choose the first option, please contact the Nebula lead through the [https://dev.eclipse.org/mailman/listinfo/nebula-dev mailing list] and make your intentions clear. [[Development Resources/HOWTO/Starting A New Project|Then continue to read on this page.]]
 +
 
 +
==New Widgets==
 +
The new widget process is described here:
 +
 
 +
<big>[[Nebula/Contributions/New Widgets|Nebula/Contributions/New Widgets]]</big>
 +
 
 +
== 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 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.
  
* https://bugs.eclipse.org/bugs/show_bug.cgi?id=328836
+
You can subscribe to the mailing list [https://dev.eclipse.org/mailman/listinfo/nebula-dev on this page], you need an Eclipse account first, [https://accounts.eclipse.org/user/register create one here]. Let us know 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.
* https://bugs.eclipse.org/bugs/show_bug.cgi?id=365948
+
  
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.
+
== 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 [http://www.eclipse.org/nebula/author_tips.php the widget author tips]. The user interface is an essential part of any application.  
  
In addition, You need to declare that:
+
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 and look after the greater Nebula together with the other active committers.
  
* I authored 100% of the content
+
== Add Documentation to the Wiki ==
* I have the right to contribute the content to Eclipse
+
Your component needs to be documented [[Nebula|on the main Nebula wiki page]].
* I contribute the content under the EPL
+
  
Once you are ready, [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Nebula&component=Core?summary=Contribution%20%of file the bug against Nebula/Core].
+
== Watch the repository ==
 +
It is required that all committers watch the repository to stay up to date with what is going on in our community.
  
== Assess ==
+
= Become a committer=
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_Stuff|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 [[Development Resources/Contribution Questionnaire|CQ (Contribution Questionnaire)]].
+
If you do not provide a new widget contribution but still want to become a Nebula committer, then the following applies:
  
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.  
+
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 the 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.  
  
One of the [http://www.eclipse.org/eclipse/eclipse-charter.php 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.  
+
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 [[Webmaster_FAQ|Eclipse Webmasters]].
  
== Become a Committer ==
+
[[Category:Nebula|Contributions]]
Roughly during the same time, you will be asked to become a Nebula committer. 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 [[Webmaster_FAQ Eclipse Webmasters]].
+

Latest revision as of 12:09, 4 March 2022

Hi,

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

Contact

New Users

Pull Requests

We use GitHub Pull Requests to accept all your patches on the Nebula GitHub repository.

See GitHub's extensive documentation on working with Pull Requests. Start with the GitHub flow overview and then continue with the rest of the documentation.

File a gitHub Issue

For administration purposes we require a GitHub issue for every pull request.

Reference the issue in the pull request

Reference the issue number in the Pull Request subject (e.g., "Add loading debug to XViewer #351")

Patches with a signed ECA

To provide patches to Nebula, sign the ECA (click on the ECA Form link in the bold paragraph, creating a new account if you do not have one already), fork Nebula on GitHub and submit a Pull Request.

Please always use a valid issue description and number and use the following commit message:

Add loading debug to XViewer #351 
<empty line>
A good description of the changes you made.

Add the new commits to the branch you used for the pull request to update an existing commit.

Patches without a signed ECA

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

Building

You can find the Jenkins jobs here, which build the pull requests.


All members of the GitHub Eclipse organization should have their PRs built automatically as the whole organization is on the whitelist. All other PRs need to be approved before they are built for the first time. To approve a PR, you have to be an admin and say:

  • "ok to test" to accept this pull request for testing
  • "test this please" for a one-time test run
  • "add to whitelist" to add the author to the whitelist


If the build fails for various reasons, you can rebuild.


  • "retest this please" to start a new build

See the full documentation for the GitHub Pull Request plug-in for Jenkins.

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 several 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 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 on this page, you need an Eclipse account first, create one here. Let us know 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 an essential 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 and 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 the repository

It is required that all committers watch the repository to stay up to date with what is going on in our community.

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 the 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