blob: ecfa4af02f1ab2853bf7e54730d64ec4e33915b4 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<head>
<title>Apache Felix - Contributing</title>
<link rel="icon" href="/res/favicon.ico">
<link rel="stylesheet" href="/res/site.css" type="text/css" media="all">
<link rel="stylesheet" href="/res/codehilite.css" type="text/css" media="all">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>
<body>
<div class="title">
<div class="logo">
<a href="https://felix.apache.org/">
<img border="0" alt="Apache Felix" src="/res/logo.png">
</a>
</div>
<div class="header">
<a href="https://www.apache.org/">
<img border="0" alt="Apache" src="/res/apache.png">
</a>
</div>
</div>
<div class="menu">
<style type="text/css">
/* The following code is added by mdx_elementid.py
It was originally lifted from http://subversion.apache.org/style/site.css */
/*
* Hide class="elementid-permalink", except when an enclosing heading
* has the :hover property.
*/
.headerlink, .elementid-permalink {
visibility: hidden;
}
h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
<p><a href="/news.html">News</a> <br />
<a href="/license.html">License</a> <br />
<a href="/downloads.cgi">Downloads</a> <br />
<a href="/documentation.html">Documentation</a> <br />
<a href="/documentation/community/project-info.html">Project Info</a> <br />
<a href="/documentation/community/contributing.html">Contributing</a> <br />
<a href="/sitemap.html">Site Map</a> <br />
<a href="https://www.apache.org/">ASF</a> <br />
<a href="https://www.apache.org/security/">Security</a> <br />
<a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a> <br />
<a href="https://www.apache.org/foundation/thanks.html">Sponsors</a> </p>
<iframe
src="https://www.apache.org/ads/button.html"
style="border-width:0; float: left"
frameborder="0"
scrolling="no"
width="135"
height="135">
</iframe>
</div>
<div class="main">
<div class="breadcrump" style="font-size: 80%;">
<a href="/">Home</a>&nbsp;&raquo&nbsp;<a href="/documentation.html">Documentation</a>&nbsp;&raquo&nbsp;<a href="/documentation/community.html">Community Documentation</a>
</div>
<h1>Contributing</h1>
<style type="text/css">
/* The following code is added by mdx_elementid.py
It was originally lifted from http://subversion.apache.org/style/site.css */
/*
* Hide class="elementid-permalink", except when an enclosing heading
* has the :hover property.
*/
.headerlink, .elementid-permalink {
visibility: hidden;
}
h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
<p>Apache Felix is a volunteer effort, so there is always plenty of work that needs to be accomplished. If you want to help support Felix, this page is intended as a starting point for specific contribution ideas. To further understand how the Felix community operates, refer to the <a href="https://www.apache.org/foundation/how-it-works.html">Community Roles and Processes</a> document and/or join the <a href="/documentation/community/project-info.html">mailing lists</a>.</p>
<p>The Felix project organizes its "to do" list using the <a href="https://issues.apache.org/jira/browse/Felix">JIRA</a> issue tracking system. Specific items from Felix' JIRA issue tracking system are highlighted on this page, but are not limited to it. The purpose of the list here is to highlight issues that are either more important or serve as good entry points for new contributors.</p>
<p>It is important to point out that you do not need to be a programmer to contribute to Felix. As such, we will break out the list of issues below for non-programmers and programmers.</p>
<h2 id="non-programmers">Non-Programmers<a class="headerlink" href="#non-programmers" title="Permanent link">&para;</a></h2>
<ul>
<li>Improve web site or documentation (e.g., create/propose FAQ entries). There is no specific JIRA issue for this task, but any contributions could be posted as new JIRA issues for the Documentation component.</li>
</ul>
<h2 id="programmers">Programmers<a class="headerlink" href="#programmers" title="Permanent link">&para;</a></h2>
<p>Before contributing, make sure to be subscribed to the <a href="/documentation/community/project-info.html">developer mailing list</a>. If you don't have your own issue to scratch, you can browse open issues in <a href="https://issues.apache.org/jira/browse/Felix">JIRA</a> and submit a patch.</p>
<p>Source code contributions fall into two categories: pull requests or grants. This document describes both and how to handle each.</p>
<h3 id="pull-requests">Pull Requests<a class="headerlink" href="#pull-requests" title="Permanent link">&para;</a></h3>
<p>A pull request is a small change to existing code, typically in response to a bug fix or improvement. If you have created a change, you should:</p>
<ol>
<li>Create a <a href="https://issues.apache.org/jira/browse/Felix">JIRA</a> issue (or find a pertinent existing issue) describing the issue needing to be addressed.</li>
<li>Create a pull requests against the git repository containing the code.</li>
<li>The pull request will eventually be reviewed and applied (if accepted) by a Felix committer, but feel free to bug us [nicely]() if you get impatient.</li>
</ol>
<p>Providing pull requests is a very good way to become a committer at Felix, since we'd rather have you review and apply the patches than us. :-)</p>
<h3 id="grants">Grants<a class="headerlink" href="#grants" title="Permanent link">&para;</a></h3>
<p>A grant involves donating a larger chunk of code developed elsewhere. The line dividing a patch and a grant is sort of like the definition of pornography, we know it when we see it. The steps for granting software are a little more complicated since we need to ensure proper IP handling. For grants, you should:</p>
<ol>
<li>Verify that you have the authorization to donate the code.</li>
<li>Review our <a href="/documentation/development.html">developer documentation</a> as well as the general [Apache documentation|https://www.apache.org/foundation/getinvolved.html] to determine whether you would really like be involved with us and how we work.</li>
<li>Assuming you're still interested, create a <a href="https://issues.apache.org/jira/browse/Felix">JIRA</a> issue describing the code you wish to donate.</li>
<li>Attach an archive containing the code along with an MD5 signature of the archive to the above issue. You should remove any existing headers from the source files and add the standard Apache header to each. Note that you keep the rights to your code and can do anything with it you want, you will just grant us the right to use it too.</li>
<li>Allow the community time to discuss the contribution, after which a vote will be called to accept the contribution.</li>
<li>If the vote passes, then you will need to submit a <a href="https://www.apache.org/licenses/software-grant.txt">software grant</a> form.</li>
<li>It is also a good idea to submit an <a href="https://www.apache.org/licenses/icla.txt">ICLA</a> to ease future contributions. Depending on the company you work for, they may also want to contribute a [CCLA|https://www.apache.org/licenses/cla-corporate.txt], although this isn't strictly necessary from an Apache point of view, since it is your responsibility to verify your ability to submit an ICLA.</li>
<li>Once all of this information is received, then we will gather it and perform <a href="https://incubator.apache.org/ip-clearance/index.html">IP clearance</a>.</li>
<li>After a few days, if no red flags are raised, then we'll commit the code and we're good to go.</li>
</ol>
<p>Granting code is also a path to committership at Felix, since we look more highly on contributions from developers who wish to stay involved in the continuing evolution and maintenance of the donated code.</p>
<div class="timestamp" style="margin-top: 30px; font-size: 80%; text-align: right;">
Rev. 1874737 by cziegeler on Tue, 3 Mar 2020 16:11:07 +0000
</div>
<div class="trademarkFooter">
Apache Felix, Felix, Apache, the Apache feather logo, and the Apache Felix project
logo are trademarks of The Apache Software Foundation. All other marks mentioned
may be trademarks or registered trademarks of their respective owners.
</div>
</div>
</body>
</html>