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.
Difference between revisions of "SWTBot/Contributing"
(→Target Platform) |
|||
Line 20: | Line 20: | ||
* ... Any other tool that makes you write better code faster ... | * ... Any other tool that makes you write better code faster ... | ||
− | === Target | + | === Target Platforms === |
− | You can find | + | You can find some ready-to-use target platforms for development in the ''devtools/target-platforms'' folder. Each target-platform basically target a version of the Eclipse release train. It's recommended to use one of these target-platform since it contains all SWTBot dependencie. These target-platforms are also used at build time, so your dependencies in IDE will be consistent with dependencies during build. Enable the selected target-platform by opening it in IDE with the target definition editor, and click ''Set As Target Platform''. |
+ | |||
+ | In case something is not working well, please report them as a bug. | ||
== Building SWTBot == | == Building SWTBot == |
Revision as of 14:57, 28 March 2013
SWTBot |
Website |
Update Sites |
Community |
Mailing List |
Forums/Newsgroups |
IRC |
Contribute |
Open Bugzilla tickets |
Open Gerrit reviews |
Browse Source |
Continuous Integration |
Contents
Getting the source
You can use a git mirror of that repository:
git clone git://git.eclipse.org/gitroot/swtbot/org.eclipse.swtbot.git |
You can also browse the repository using a web interface or even by monitoring the mirror of the repository on GitHub.
To contribute changes to the website, use this git repo: https://git.eclipse.org/c/www.eclipse.org/swtbot.git
IDE tips
Recommended Eclipse plugins
It's advised that you use the following plugins in Eclipse:
- EGit
- FindBugs
- Configure JDT in "pedantic" mode (make all violations send a warning, ignore nothing)
- EclEmma is useful to analyze Coverage Reports
- ... Any other tool that makes you write better code faster ...
Target Platforms
You can find some ready-to-use target platforms for development in the devtools/target-platforms folder. Each target-platform basically target a version of the Eclipse release train. It's recommended to use one of these target-platform since it contains all SWTBot dependencie. These target-platforms are also used at build time, so your dependencies in IDE will be consistent with dependencies during build. Enable the selected target-platform by opening it in IDE with the target definition editor, and click Set As Target Platform.
In case something is not working well, please report them as a bug.
Building SWTBot
- First Get the sources, as explained a few lines above.
- then mvn clean verify
- That's all!
NOTE: default build performs against Eclipse Indigo. You can test and build against Juno instead by activatin the "juno" profile: mvn clean install -P juno
Continuous integration
Continuous integrations build for swtbot are available here:
- https://hudson.eclipse.org/hudson/job/swtbot-tycho/
- https://hudson.eclipse.org/hudson/job/swtbot-tycho-e4.2/
A view also exists, it contains also older build configurations: https://hudson.eclipse.org/hudson/view/SWTBot/
Sonar
Sonar is used in order to track Code Quality:
- https://dev.eclipse.org/sonar/dashboard/index/1
- contains results of dedicated build https://hudson.eclipse.org/sandbox/job/SWTBot-Sonar/
Submit a contribution
Generalities
Patches and contributions are always welcome! There are many general articles about contributing to Eclipse projects:
- How to contribute to Eclipse projects...
- Getting started with Eclipse plug-ins: contributing to Eclipse
- How to Fix a Bug in Eclipse
Contributions list
- Unresolved Bugzilla tickets: https://bugs.eclipse.org/bugs/buglist.cgi?list_id=2369532;classification=Technology;query_format=advanced;bug_status=UNCONFIRMED;bug_status=NEW;bug_status=ASSIGNED;bug_status=REOPENED;product=SWTBot
- Open Gerrit reviews: https://git.eclipse.org/r/#/q/status:open+project:swtbot/org.eclipse.swtbot,n,z
Be notified
- To receive notifications from Gerrit, go to https://git.eclipse.org/r/#/settings/projects , add project swtbot/org.eclipse.swtbot.git and tick all checkboxes for this project to receive notifications.
- To receive notifications from Bugzilla, go to https://bugs.eclipse.org/bugs/userprefs.cgi?tab=email , and add in User watching the following mail: swtbot-inbox@eclipse.org.
Provide a contribution using Gerrit
- First, read carefully this documents: Gerrit to set up commit hooks and other things. We recommand using the EGit-Gerrit connector.
In case you work without EGit Gerrit connector:
- Make your change locally, and git commit them in your local repo. Commit message must contain Bug Number.
- when you're ready, git push your change to Gerrit using the following command: git push ssh://username@git.eclipse.org:29418/swtbot/org.eclipse.swtbot.git HEAD:refs/for/master
- After the push, log tells you about a URL which tracks the contribution
In any case
- Share this URL on the bug you're working on.
Provide a patch (Deprecated in favor of Gerrit)
In order to provide a patch, follow the following process:
- git checkout branch_you_want_to_edit
- Modify code
- git add your/modified/file1 your/modified/file2 ...
- git commit Put number of the bug you are working on at the beginning of commit message
- git format-patch HEAD^
- Attach generated patch to the bug you want to contribute to.
Committers
- Committer must subscribe to notifications to not miss a contribution. See how to set up nofications
- Committer have to use Gerrit too and follow same process as contributors. They can approve their own contributions, but asking review from another contributor is a cool thing.
- A Gerrit contribution is automatically merged when all "acceptance flags" (Verification, review, IP) are OK.
Editing website
Website can also be edited using Git and Gerrit process mentioned about for sources:
- Gerrit repo is https://git.eclipse.org/r/p/www.eclipse.org/swtbot.git