blob: ca6f1fd4f3f418d8af52da3af115cca116170018 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- This is broken by doc revisioning.
-->
<link rel="shortcut icon" href="../../img/favicon.ico">
<title>FAQ - Apache Mynewt</title>
<link href="../../css/bootstrap-3.0.3.min.css" rel="stylesheet">
<link rel="stylesheet" href="../../css/highlight.css">
<link href="../../css/base.css" rel="stylesheet">
<link href="../../css/custom.css" rel="stylesheet">
<link href="../../css/v2.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->
<script>
(function(i, s, o, g, r, a, m) {
i["GoogleAnalyticsObject"] = r;
(i[r] =
i[r] ||
function() {
(i[r].q = i[r].q || []).push(arguments);
}),
(i[r].l = 1 * new Date());
(a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m);
})(window, document, "script", "//www.google-analytics.com/analytics.js", "ga");
ga("create", "UA-72162311-1", "auto");
ga("send", "pageview");
</script>
</head>
<body class="FAQ">
<div class="container">
<div class="row v2-main-banner">
<a class="logo-cell" href="/">
<img class="logo" src="/img/logo.png">
</a>
<div class="tagline-cell">
<h4 class="tagline">An OS to build, deploy and securely manage billions of devices</h4>
</div>
<div class="news-cell">
<div class="well">
<h4>Latest News:</h4> <a href="/download">Apache Mynewt 1.11.0, Apache NimBLE 1.6.0 </a> released (September 7, 2023)
</div>
</div>
</div>
</div>
<nav id="navbar" class="navbar navbar-inverse affix-top" data-spy="affix" data-offset-top="150" role="navigation">
<div class="container">
<!-- Collapsed navigation -->
<div class="navbar-header">
<!-- Expander button -->
<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>
</div>
<!-- Expanded navigation -->
<div class="navbar-collapse collapse">
<!-- Main navigation -->
<ul class="nav navbar-nav navbar-right">
<li
class=""
>
<a href="/"><i class="fa fa-home" style="font-size: larger;"></i></a>
</li>
<li
class="important"
>
<a href="/quick-start/">Quick Start</a>
</li>
<li
class=""
>
<a href="/about/">About</a>
</li>
<li
class=""
>
<a href="/talks/">Talks</a>
</li>
<li
class="active"
>
<a href="/documentation/">Documentation</a>
</li>
<li
class=""
>
<a href="/download/">Download</a>
</li>
<li
class=""
>
<a href="/community/">Community</a>
</li>
<li
class=""
>
<a href="/events/">Events</a>
</li>
</ul>
</div>
</div>
</nav>
<div class="container">
<div class="row">
<div class="col-md-3 v2-sidebar sidebar-container"><div id="docSidebar" class="hidden-print" role="complementary">
<div class="top">
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<div class="form-group">
<input type="text" name="q" class="form-control" placeholder="Search documentation" />
</div>
</form>
</div>
</div>
<ul class="toc-nav">
<li class="doc-version"><select class="form-control" onchange="if (this.value) window.location.href=this.value">
<option value="/latest">
Version: master
</option>
<option value="/v1_11_0/" >
Version: 1.11.0
</option>
<option value="/v1_10_0/" >
Version: 1.10.0
</option>
<option value="/v1_9_0/" >
Version: 1.9.0
</option>
<option value="/v1_8_0/" >
Version: 1.8.0
</option>
<option value="/v1_7_0/" >
Version: 1.7.0
</option>
<option value="/v1_6_0/" >
Version: 1.6.0
</option>
<option value="/v1_5_0/" >
Version: 1.5.0
</option>
<option value="/v1_4_0/" >
Version: 1.4.0
</option>
<option value="/v1_3_0/os/introduction" >
Version: 1.3.0
</option>
<option value="/v1_2_0/os/introduction" >
Version: 1.2.0
</option>
<option value="/v1_1_0/os/introduction" >
Version: 1.1.0
</option>
<option value="/v1_0_0/os/introduction" >
Version: 1.0.0
</option>
<option value="/v0_9_0/os/introduction" selected="selected" >
Version: 0.9.0
</option>
</select></li>
<li ><a href="../../os/introduction/">Mynewt Documentation</a>
</li>
<li><a href="
../how_to_edit_docs/
">Appendix</a>
<ul>
<li >
<a href="../how_to_edit_docs/">Edit Docs</a>
</li>
<li class="active">
<a href="./">FAQ</a>
</li>
</ul>
</li>
</ul>
</div></div>
<div class="col-md-9" role="main">
<div class="doc-header">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="/documentation/">Docs</a></li>
<li>&raquo; <a href="faq/how_to_edit_docs/">Appendix</a></li>
<li>&raquo; FAQ</li>
</ul>
</div>
</div>
<div class="alert alert-warning">
<p>
Version 0.9.0 is not the most recent version of the Apache Mynewt
documentation. Click <a href="/latest">here</a> to read the latest
version.
</p>
</div>
<h3 id="how-do-i-submit-a-bug">How do I submit a bug?</h3>
<p><br></p>
<p>If you do not have a JIRA account sign up for an account on <a href="https://issues.apache.org/jira/secure/Signup!default.jspa">JIRA</a>.</p>
<p>Submit a request to the @dev mailing list for your JIRA username to be added to the Apache Mynewt (MYNEWT) project. You can view the issues on JIRA for the MYNEWT project without an account but you need to log in for reporting a bug. </p>
<p>Log in. Choose the "MYNEWT" project. Click on the "Create" button to create a ticket. Choose "Bug" as the Issue Type. Fill in the bug description, how it is triggered, and other details. </p>
<h3 id="how-do-i-request-a-feature">How do I request a feature?</h3>
<p><br></p>
<p>If you do not have a JIRA account sign up for an account on <a href="https://issues.apache.org/jira/secure/Signup!default.jspa">JIRA</a>.</p>
<p>Submit a request to the @dev mailing list for your JIRA username to be added to the Apache Mynewt (MYNEWT) project. You can view the issues on JIRA for the MYNEWT project without an account but you need to log in for reporting a bug. </p>
<p>Log in. Choose the "MYNEWT" project. Click on the "Create" button to create a ticket. Choose "Wish" as the Issue Type. Fill in the feature description, benefits, and any other implementation details. Note in the description whether you want to work on it yourself. </p>
<p>If you are not a committer and you wish to work on it, someone who is on the committer list will have to review your request and assign it to you. You will have to refer to this JIRA ticket in your pull request.</p>
<h3 id="i-am-not-on-the-committer-list-how-do-i-submit-a-patch">I am not on the committer list. How do I submit a patch?</h3>
<p><br></p>
<p><strong>You submit your proposed changes for your peers with committer status to review and merge.</strong></p>
<p>The "develop" branch on Mynewt's repository contains the most recent changes made by the community of developers. Contributions from you need to go into this branch. The essential steps to setting up your project space for working with the latest code from "develop" and make pull requests into "develop" to get your code added are the following:</p>
<p><strong>Step 1:</strong> Create a fork of the entire Mynewt repository on github.com.</p>
<p><strong>Step 2:</strong> Setup repository on your laptop to use code in “develop” branch. You then create a new branch “mybranch” using “git checkout –b”. You also add a remote handle named “fork” that points to the github fork you created in Step 1.</p>
<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%;"><span></span><code> $ newt new devproject
$ cd devproject
$ vi project.yml
# change version to 0-dev for repository.apache-mynewt-core
$ newt install
$ cd repos/apache-mynewt-core
$ git status
On branch develop
Your branch is up-to-date with &#39;origin/develop&#39;.
nothing to commit, working directory clean
$ git checkout –b mybranch
$ git remote -v
origin https://github.com/apache/incubator-mynewt-core.git (fetch)
origin https://github.com/apache/incubator-mynewt-core.git (push)
$ git remote add fork https://github.com/&lt;user&gt;/incubator-mynewt-core
$ git remote -v
origin https://github.com/apache/incubator-mynewt-core.git (fetch)
origin https://github.com/apache/incubator-mynewt-core.git (push)
fork https://github.com/&lt;user&gt;/incubator-mynewt-core (fetch)
fork https://github.com/&lt;user&gt;/incubator-mynewt-core (push)
</code></pre></div>
<p><strong>Step 3:</strong> Check you are in “mybranch”. Write code. Stage and commit your changes
(example shows adding all).</p>
<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%;"><span></span><code> $ git checkout mybranch
$ git add .
$ git commit –m “your message about your code changes”
</code></pre></div>
<p><strong>Step 4:</strong> Always pull the latest from develop on Apache mirror to “mybranch” before pushing any changes to remotes. If you see merge conflicts, resolve them first.</p>
<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%;"><span></span><code> $ git pull --rebase origin develop
</code></pre></div>
<p><strong>Step 5:</strong> Push your changes to “mybranch” branch on your github fork. If “mybranch” does not exist yet on your github fork, the command automa;cally creates it.</p>
<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%;"><span></span><code> $ git push fork mybranch
</code></pre></div>
<p><strong>Step 6:</strong> Generate a pull request from “mybranch” in your fork to “develop” in Mynewt using the "New pull request" button on github.com.</p>
<p><img alt="Mynewt Dev Cycle" src="../mynewt_dev_cycle.jpg" /></p>
<h3 id="i-would-like-to-make-some-edits-to-the-documentation-what-do-i-do">I would like to make some edits to the documentation. What do I do?</h3>
<p><br></p>
<p>You submit your proposed changes for your peers with committer status to review and merge. </p>
<p>Go to the <a href="https://github.com/apache/incubator-mynewt-site">documentation mirror</a> on github.com.</p>
<p>Navigate to the file you wish to edit on github.com. All the technical documentation is in Markdown files under the <code>/docs</code> directory. Click on the pencil icon ("Edit the file in your fork of this project") and start making changes.</p>
<p>Click the green "Propose file change" button. You will be directed to the page where you can start a pull request from the branch that was created for you. The branch is gets an automatic name <code>patch-#</code> where # is a number. Click on the green "Compare &amp; pull request" to open the pull request.</p>
<p>In the comment for the pull request, include a description of the changes you have made and why. Github will automatically notify everyone on the commits@mynewt.incubator.apache.org mailing list about the newly opened pull requests. You can open a pull request even if you don't think the code is ready for merging but want some discussion on the matter.</p>
<p>Upon receiving notification, one or more committers will review your work, ask for edits or clarifications, and merge when your proposed changes are ready.</p>
<p>If you want to withdraw the pull request simply go to your fork <code>https://github.com/&lt;your github username&gt;/incubator-mynewt-site</code> and click on "branches". You should see your branch under "Your branches". Click on the delete icon.</p>
<h3 id="i-would-like-to-make-some-edits-to-the-documentation-but-want-to-use-an-editor-on-my-own-laptop-what-do-i-do">I would like to make some edits to the documentation but want to use an editor on my own laptop. What do I do?</h3>
<p><br></p>
<p>You submit your proposed changes for your peers with committer status to review and merge. </p>
<p>Go to the <a href="https://github.com/apache/incubator-mynewt-site">documentation mirror</a> on github.com. You need to create your own fork of the repo in github.com by clicking on the "Fork" button on the top right. Clone the forked repository into your laptop (using <code>git clone</code> from a terminal or using the download buttons on the github page)and create a local branch for the edits and switching to it (using <code>git checkout -b &lt;new-branchname&gt;</code> or GitHub Desktop). </p>
<p>Make your changes using the editor of your choice. Push that branch to your fork on github. Then submit a pull request from that branch on your github fork.</p>
<p>The review and merge process is the same as other pull requests described for earlier questions.</p>
<div class="row">
<ul class="nav nav-pills" style="margin-bottom: 10px">
<li>
</li>
<li class="pull-right">
</li>
</ul>
</div>
<footer class="row">
<div class="col-xs-12">
<p class="copyright">Apache Mynewt (incubating) is available under Apache License, version 2.0.</p>
</div>
<div class="col-xs-12">
<div class="logos">
<a href="https://www.apache.org/">
<img src="/img/asf_logo_wide_small.png" alt="Apache" title="Apache">
</a>
<p>
Copyright © 2015-2021 The Apache Software Foundation.<br>
<small class="footnote">
Apache Mynewt, Mynewt, Apache, the Apache feather logo, and the Apache Mynewt
project logo are either registered trademarks or trademarks of the Apache
Software Foundation in the United States and other countries.
</small>
</p>
<a href="">
<img src="https://www.countit.com/images/add_to_slack.png" alt="Slack Icon" title="Join our Slack Community" />
</a>
</div>
</div>
<a href="https://www.apache.org/licenses/">
<button class="button-footer-asf">
License
</button>
</a>
<a href="https://www.apache.org/foundation/sponsorship.html">
<button class="button-footer-asf">
Sponsorship
</button>
</a>
<a href="https://www.apache.org/foundation/thanks.html">
<button class="button-footer-asf">
Thanks
</button>
</a>
<a href="https://www.apache.org/security/">
<button class="button-footer-asf">
Security
</button>
</a>
<a href="https://apache.org/events/current-event">
<button class="button-footer-asf">
ASF Events
</button>
</a>
</footer>
</div>
</div>
</div>
<script src="../../js/jquery-1.10.2.min.js"></script>
<script src="../../js/bootstrap-3.0.3.min.js"></script>
<script src="../../js/highlight.pack.js"></script>
<script src="../../js/base.js"></script>
<script src="../../js/custom.js"></script>
<script src="search/main.js"></script>
</body>
</html>