<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 2013-02-20 21:25, William Woodall
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAFCzvrshrL6-jPNLvLKVuMOo8kZcFwQdKXdbJC66sOZjJhatsg@mail.gmail.com"
      type="cite">I have drafted a REP, tentatively REP-136, which is an
      Informational REP providing a recommendation for how to release
      third party packages into the ROS ecosystem. In this context a
      third party package is any software package which is used in the
      ROS ecosystem, but exists outside of the ROS ecosystem, and
      therefore is neither catkin based nor rosbuild based.
      <div>
        <br>
      </div>
      <div>You can find this draft REP here:</div>
      <div><br>
      </div>
      <div><a moz-do-not-send="true"
href="https://github.com/ros-infrastructure/rep/blob/release_third_party/rep-0136.rst">https://github.com/ros-infrastructure/rep/blob/release_third_party/rep-0136.rst</a></div>
    </blockquote>
    <br>
    +1<br>
    <br>
    After using the previous version in bloom/catkin this new REP has
    some great improvements for third-party (non-catkin) packages such
    as OctoMap, and the explanations clear up many things.<br>
    <br>
    <br>
    <blockquote
cite="mid:CAFCzvrshrL6-jPNLvLKVuMOo8kZcFwQdKXdbJC66sOZjJhatsg@mail.gmail.com"
      type="cite">
      <div><br>
      </div>
      <div>And the pull request containing the drafting history is here:</div>
      <div><br>
      </div>
      <div><a moz-do-not-send="true"
          href="https://github.com/ros-infrastructure/rep/pull/23">https://github.com/ros-infrastructure/rep/pull/23</a></div>
      <div><br>
      </div>
      <div>To summarize the recommendation, third party packages should:</div>
      <div>
        <ul>
          <li>Have a package.xml</li>
          <ul>
            <li>Which run_depend's on catkin</li>
            <li>Has a <build_type> tag in the <export>
              section</li>
          </ul>
          <li>Install the package.xml</li>
        </ul>
      </div>
    </blockquote>
    <br>
    This and the motivation / rationale in the REP sound like it's
    recommended to put the package.xml in the the upstream source repo,
    while the specification recommends to inject the templated version
    into the release-repo (putting package.xml into the upstream repo is
    only mentioned as alternative). This should probably be cleared up
    with a clear preference on one method. From the maintenance
    overhead, putting package.xml into the upstream source repo sounds
    like the best to me (if there is control of the upstream repo by the
    maintainer).<br>
    <br>
    Or maybe it's just not clearly worded? The specification section
    mentions "Inject a templated package.xml into the upstream using
    bloom". Here, "upstream" probably means the upstream branch in the
    ros-gbp release repo, whereas in other places it also refers to the
    upstream repository. This should be clearly differentiated, as the
    context may not always be clear to the uninitiated reader.<br>
    <br>
    Other than that I only found a small (but potentially confusing)
    typo. Pull request here:
    <a class="moz-txt-link-freetext" href="https://github.com/ros-infrastructure/rep/pull/28">https://github.com/ros-infrastructure/rep/pull/28</a><br>
    Is that how the process should work on GitHub?<br>
    <br>
    Best,<br>
    <pre class="moz-signature" cols="72">-- 
Armin Hornung
Humanoid Robots Lab, Albert-Ludwigs-Universität Freiburg
Contact: <a class="moz-txt-link-freetext" href="http://www.informatik.uni-freiburg.de/~hornunga">http://www.informatik.uni-freiburg.de/~hornunga</a></pre>
  </body>
</html>