<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<!-- 
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

 http://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. 
-->
<html lang="en">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="Apache Olingo provides libraries which enable developers to implement OData producers and OData consumers. The available OData Java library implements OData version 2.0. In future on goal is to provide an OData 4.0 compliant library once the OData standard is published at OASIS. The focus within the community is currently on the Java technology but it is up to the community to discuss if other environments find interest.">
    <meta name="author" content="">
    <link rel="icon" href="/favicon.ico">
    <title>Apache Olingo Library</title>
    <!-- Bootstrap core CSS -->
    <link href="/css/bootstrap.css" rel="stylesheet" type="text/css"><!-- Custom styles for this template -->
    <link href="/css/navbar.css" rel="stylesheet" type="text/css"><!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
    <link href="/css/offcanvas.css" rel="stylesheet" type="text/css"><!-- Custom styles for this template -->
    <link rel="stylesheet" href="/css/main.css">
    <!--[if lt IE 9]><script src="/js/ie8-responsive-file-warning.js"></script><![endif]-->
    <style>
.headerlink {
  visibility: hidden;
}
dt:hover > .headerlink, p:hover > .headerlink, td:hover > .headerlink, h1:hover > .headerlink, h2:hover > .headerlink, h3:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, h6:hover > .headerlink {
  visibility: visible
}    </style>
    <script src="/js/ie-emulation-modes-warning.js" type="text/javascript">
</script><!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->

    <script src="/js/ie10-viewport-bug-workaround.js" type="text/javascript">
</script><!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="/js/html5shiv.min.js"></script>
      <script src="/js/respond.min.js"></script>
    <![endif]-->
  </head>

  <body>
    <div class="container">
      <!-- Static navbar -->
      <div class="navbar navbar-default" role="navigation">
        <div class="container-fluid">
          <div class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
              <span class="sr-only">Toggle navigation</span>
             <span class="icon-bar"></span>
             <span class="icon-bar"></span>
             <span class="icon-bar"></span>
            </button>
              <img class="navbar-brand" src="/img/OlingoOrangeTM.png" style="width:62px;" >
              <a class="navbar-brand" href="/">Apache Olingo™</a>
          </div>
          <div class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
              <li class="dropdown">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown">ASF <b class="caret"></b></a>
                  <ul class="dropdown-menu">
                      <li><a href="http://www.apache.org/foundation/">ASF Home</a></li>
                      <li><a href="http://projects.apache.org/">Projects</a></li>
                      <li><a href="http://people.apache.org/">People</a></li>
                      <li><a href="http://www.apache.org/foundation/getinvolved.html">Get Involved</a></li>
                      <li><a href="http://www.apache.org/dyn/closer.cgi">Download</a></li>
                      <li><a href="http://www.apache.org/security/">Security</a></li>
                      <li><a href="http://www.apache.org/foundation/sponsorship.html">Support Apache</a></li>
                  </ul>
              </li>

              <li><a href="http://www.apache.org/licenses/">License</a></li>

              <li class="dropdown">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Download <b class="caret"></b></a>
                  <ul class="dropdown-menu">
                      <li><a href="/doc/odata2/download.html">Download OData 2.0 Java</a></li>
                      <li><a href="/doc/odata4/download.html">Download OData 4.0 Java</a></li>
                      <li><a href="/doc/javascript/download.html">Download OData 4.0 JavaScript</a></li>
                  </ul>
              </li>

              <li class="dropdown">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown">Documentation <b class="caret"></b></a>
                  <ul class="dropdown-menu">
                    <li><a href="/doc/odata2/index.html">Documentation OData 2.0 Java</a></li>
                    <li><a href="/doc/odata4/index.html">Documentation OData 4.0 Java</a></li>
                    <li><a href="/doc/javascript/index.html">Documentation OData 4.0 JavaScript</a></li>
                  </ul>
              </li>
              <li><a href="/support.html">Support</a></li>
              <li><a href="/contribute.html">Contribute</a></li>

            </ul>

			  <a class="navbar-right" href="http://www.apache.org/foundation/" target="_blank">
          <img class="navbar-right" height="50px" src="/img/asf_logo_url.svg" alt="Apache Software Foundation">
        </a>

			</div><!--/.nav-collapse -->
        </div><!--/.container-fluid -->
      </div><!-- Main component for a primary marketing message or call to action -->
    <h1 id="apache-olingo-how-to-contribute">Apache Olingo - How To Contribute<a class="headerlink" href="#apache-olingo-how-to-contribute" title="Permalink">&para;</a></h1>
<p><strong>Content</strong></p>
<div id="toc"><ul><li><a class="toc-href" href="#overview" title="Overview">Overview</a></li><li><a class="toc-href" href="#contribute-via-git-patchpull-request-and-olingo-jira" title="Contribute via Git-Patch/Pull-Request and Olingo-JIRA">Contribute via Git-Patch/Pull-Request and Olingo-JIRA</a></li><li><a class="toc-href" href="#report-a-bug-or-feature" title="Report a bug or feature">Report a bug or feature</a></li><li><a class="toc-href" href="#develop-the-according-bugfix-feature" title="Develop the according bugfix / feature">Develop the according bugfix / feature</a><ul><li><a class="toc-href" href="#clone-the-olingo-project" title="Clone the Olingo Project">Clone the Olingo Project</a></li><li><a class="toc-href" href="#providing-bugfix-code" title="Providing bugfix / code">Providing bugfix / code</a></li><li><a class="toc-href" href="#prepare-your-code-for-contribution" title="Prepare your code for contribution">Prepare your code for contribution</a></li></ul></li></ul></div>
<h3 id="overview">Overview<a class="headerlink" href="#overview" title="Permalink">&para;</a></h3>
<p>If you want to contribute to the Olingo Project, you can submit patches, report bugs or provide documentation and tutorials. Contributions are managed in the project <a href="https://issues.apache.org/jira/browse/OLINGO">JIRA</a>. So if you found a bug or want to provide a contribution please open a new <a href="https://issues.apache.org/jira/browse/OLINGO">JIRA</a> ticket. Detailed information how to contribute can be found in the following chapter.</p>
<h3 id="contribute-via-git-patchpull-request-and-olingo-jira">Contribute via Git-Patch/Pull-Request and Olingo-JIRA<a class="headerlink" href="#contribute-via-git-patchpull-request-and-olingo-jira" title="Permalink">&para;</a></h3>
<p>The Olingo uses the following process for contributions:</p>
<ol>
<li>Clone the Olingo Project</li>
<li>Report a bug or feature (you must be <a href="https://issues.apache.org/jira/login.jsp">signed in</a> to open an issue)</li>
<li>Develop the according bugfix / feature</li>
<li>Prepare your code for contribution</li>
<li>Submit your JIRA ticket to receive feedback</li>
</ol>
<h3 id="report-a-bug-or-feature">Report a bug or feature<a class="headerlink" href="#report-a-bug-or-feature" title="Permalink">&para;</a></h3>
<p>If have you found a bug, please provide a detailed explanation how the bug can be reproduced.</p>
<p>You should mention the following properties:</p>
<ul>
<li>Version of the library e.g. <code>(Java) V4 4.0.0</code></li>
<li>If a part of the implementation is not compliant to the OData protocol, please link the related part of the speciation or provide a link to the related JIRA issue of OData protocol. The official OASIS-OData JIRA can be found <a href="https://issues.oasis-open.org/browse/ODATA/">here</a></li>
<li>Often bugs are related to the underlying metadata document. Please append the related part of the metadata document to reproduce the bug.</li>
<li>Provide a code snipped to reproduce the bug.</li>
<li>If you receive an exception, provide the stack trace of the exception.</li>
<li>Append further information in which part of the library the bug occurs (if available).</li>
<li>If you have fixed a bug, you can append the solution to the request. Further information how to append your solution to a ticket are provided in the following chapters.</li>
</ul>
<p><strong>Bug/Feature Priorities</strong>
The Olingo project uses the following definition of priorities:</p>
<ul>
<li><em>Blocker</em> - This bug/feature must be fixed/implemented before the next release</li>
<li><em>Critical</em> - This bug/feature should be resolved/implemented immediately and must be fixed/implemented before the next major release.</li>
<li><em>Major</em> - This bug/feature should be resolved/implemented as soon as possible in the normal course of development activity, before the software is released.</li>
<li><em>Minor</em> (<strong>default</strong>) - This bug/feature should be fixed/implemented after serious bugs have been fixed/implemented.</li>
<li><em>Trivial</em> - This bug/feature can be resolved in a future major system revision or not be resolved/implemented at all.</li>
</ul>
<p>The default priority is <strong>Minor</strong>.</p>
<p><strong>Bug/Feature Types</strong>
The Olingo project uses the following <em>types</em> for an issue:</p>
<ul>
<li><em>Feature</em> - An issue that introduced a new feature (behaviour) to the Olingo library (this could be e.g. an additional not yet implemented part of the OData specification or convenience methods)</li>
<li><em>Improvement</em> - An issue that improves an existing feature (behaviour) of the Olingo library (this could be e.g. a convenience method or internal improvements which does not change behavior)</li>
<li><em>Bug</em> - An issue that describes an incorrect behaviour of the Olingo library in relation to the according OData specification.</li>
<li><em>Test</em> - An issue that only improve or extends tests for the  Olingo library.</li>
<li><em>Task</em> - An issue that improve or extends basic parts for the Olingo library without changing code (or logic). This could be e.g. improvements or changes necessary for the build infrastructure.</li>
<li><em>Question</em> - An issue that only is a question related to the Olingo library.</li>
</ul>
<h3 id="develop-the-according-bugfix-feature">Develop the according bugfix / feature<a class="headerlink" href="#develop-the-according-bugfix-feature" title="Permalink">&para;</a></h3>
<h4 id="clone-the-olingo-project">Clone the Olingo Project<a class="headerlink" href="#clone-the-olingo-project" title="Permalink">&para;</a></h4>
<p>The current development version can be found in the Apache git repository.
Please note Olingo provides two different libraries. One one hand Olingo V2 which implements the OData V2 specification and Olingo V4, which implements the OData V4 specification.</p>
<p>To clone the current master branch of the Olingo project please use one of the following commands:</p>
<p><strong>Olingo V2 Code</strong></p>
<pre><code>git clone https://gitbox.apache.org/repos/asf/olingo-odata2
</code></pre>
<p><strong>Olingo V4 code</strong></p>
<pre><code>git clone https://gitbox.apache.org/repos/asf/olingo-odata4
</code></pre>
<h4 id="providing-bugfix-code">Providing bugfix / code<a class="headerlink" href="#providing-bugfix-code" title="Permalink">&para;</a></h4>
<p>To provide a bug fix, checkout the current master branch of the project and develop your solution. In Olingo we truly believe in tests, so your contribution should at least contain tests that show that your contribution works as expected and also tests that reproduces the previous reported bug. If you provide a new feature your tests should reach at least 80 percent test-coverage.</p>
<p>To ensure this we have lots of tests and use <a href="http://cobertura.github.io/cobertura/">Cobertura</a> as <em>code coverage tool</em>. In addition there exists separate build jobs on the Apache Build servers for latest versions of <a href="https://builds.apache.org/job/olingo-odata2-cobertura/">Olingo V2</a> and <a href="https://builds.apache.org/job/olingo-odata4-cobertura/">Olingo V4</a>.</p>
<p>To append your contribution to a JIRA ticket, please create a patch file as explained in the chapter.</p>
<p><strong>Providing documentation for the Apache website</strong>
To provide documentation or tutorials you should write your contribution using <a href="www.apache.org/dev/cmsref#markdown">a Markdown syntax</a>.</p>
<h4 id="prepare-your-code-for-contribution">Prepare your code for contribution<a class="headerlink" href="#prepare-your-code-for-contribution" title="Permalink">&para;</a></h4>
<p>To append you contribution to a JIRA issue, please create a <a href="https://git-scm.com/docs/git-format-patch">patch file</a>. The commit message should contain the JIRA request number (e.g.  OLINGO-42) and a short commit message.</p>
<p><strong>Example - Create a patch file</strong>
You have done several commits and want to provide a single commit which contains all your changes.</p>
<pre><code>...
git commit -m "[OLINGO-42] Start development new feature"
git commit -m "[OLINGO-42] Added new tests"
git commit -m "[OLINGO-42] Typo fixed"
...
git rebase -i HEAD~3
git format-patch -1
</code></pre>
<p>First rebase your local history to create a single commit. After that create a patch file using <code>git format-patch</code>. Now you can upload and append your created patch file to the JIRA issue.</p>
<p><strong>Example - Applying a patch file</strong>
You like to apply a patch file named "OLINGO_42.patch". Use the following commands:</p>
<pre><code>git am --signoff OLINGO_42.patch
</code></pre>

      <div align="center">
	<p>Copyright © 2013-2022, The Apache Software Foundation<br>
				                Apache Olingo, Olingo, Apache, the Apache feather, and
				the Apache Olingo project logo are trademarks of the Apache Software
				Foundation.</p>
        <small><a href="/doc/odata2/privacy.html">Privacy</a></small>
      </div>
    </div><!-- /container -->
    <!-- Bootstrap core JavaScript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="/js/jquery.js" type="text/javascript">
    </script>
    <script src="/js/bootstrap.js" type="text/javascript">
    </script>
    <script src="/js/offcanvas.js" type="text/javascript">
    </script>
    <link rel="stylesheet" href="/css/docco.css">
    <script src="//cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.0.1/build/highlight.min.js"></script>
    <script>hljs.highlightAll();</script>
  </body>
</html>