<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">Geoffrey,<br>
      <br>
      I started to play with a maven and pax-exam based drools-osgi-test
      project were will be possible to run tests in different osgi
      environments (equinox-juno, equinox-kepler, felix, knoplerfish,
      jboss-osgi and karaf).<br>
      <br>
      That project will let us to know the right manifest generation
      that will be needed for all env.<br>
      <br>
      btw, where should I put this project ?<br>
      <br>
      I added some comments below...<br>
      <br>
      regards,<br>
      <br>
      Cristiano<br>
      <br>
      On 26/03/13 08:54, Geoffrey De Smet wrote:<br>
    </div>
    <blockquote cite="mid:kis2a9$g6m$1@ger.gmane.org" type="cite">
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      Christiano, Charles,<br>
      <br>
      Your pull requests conflicted massively with each other :(<br>
      <br>
      I 've done my best to apply the best of both worlds.<br>
      Due to the conflict, changes might be lost. Sorry if that has
      happened.<br>
      Contradicting conflicts have been written below.<br>
      <br>
      Some notes on this approach and the current state:<br>
      <ul>
        <li><b>All common felix properties have been extracted to the
            droolsjbpm-parent pom.</b> Individual modules should not
          define any of these specifically.</li>
        <ul>
          <li>If you want to add/remove/change any of those, change them
            in the parent pom only:</li>
          <ul>
            <li><a moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://github.com/droolsjbpm/droolsjbpm-build-bootstrap/blob/master/pom.xml">https://github.com/droolsjbpm/droolsjbpm-build-bootstrap/blob/master/pom.xml</a><br>
            </li>
          </ul>
          <li>These are currently in the parent pom:</li>
          <ul>
            <li>&lt;extensions&gt;true&lt;/extensions&gt;</li>
            <li>&lt;excludeDependencies&gt;true&lt;/excludeDependencies&gt;<br>
            </li>
            <li>&lt;_removeheaders&gt;Ignore-Package&lt;/_removeheaders&gt;</li>
            <ul>
              <li>What does this mean? Christiano wants to remove this.</li>
              <li>@charles are you ok with removing this?<br>
              </li>
            </ul>
            <li>&lt;_nouses&gt;true&lt;/_nouses&gt;</li>
            <ul>
              <li>What does this mean? Christiano wants this.<br>
              </li>
            </ul>
          </ul>
        </ul>
      </ul>
    </blockquote>
    &nbsp;&nbsp;&nbsp; bnd adds a :uses for each exported package. I use
    &lt;_nouses&gt; to help create the manifest, but I think it should
    be removed once we mature the manifest. This is a good article for
    the curious:
<a class="moz-txt-link-freetext" href="http://blog.springsource.org/2008/10/20/understanding-the-osgi-uses-directive/">http://blog.springsource.org/2008/10/20/understanding-the-osgi-uses-directive/</a><br>
    <br>
    <blockquote cite="mid:kis2a9$g6m$1@ger.gmane.org" type="cite">
      <ul>
        <ul>
          <ul>
            <ul>
              <li> <br>
              </li>
            </ul>
            <li>&lt;_snapshot&gt;${osgi-version-qualifier}&lt;/_snapshot&gt;</li>
            <ul>
              <li>Christiano: "To make eclipse happy"<br>
              </li>
            </ul>
            <li>&lt;Bundle-Version&gt;${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${osgi.version.qualifier}&lt;/Bundle-Version&gt;</li>
            <ul>
              <li>Christiano: "To make eclipse happy"</li>
            </ul>
          </ul>
        </ul>
        <ul>
          <li>There are not added (because less code is better
            maintainable):<br>
          </li>
          <ul>
            <li>&lt;DynamicImport-Package&gt;*&lt;/&gt; has been removed
              everywhere, as per Christiano's change</li>
            <ul>
              <li>@charles @christiano If you need it anyway, edit the
                droolsjbpm-parent pom and supply a pull request<br>
              </li>
            </ul>
          </ul>
        </ul>
        <ul>
          <ul>
            <li>&lt;Bundle-ActivationPolicy&gt;lazy&lt;/&gt; has not
              been added anywhere, as Charles didn't seem to need it<br>
            </li>
          </ul>
        </ul>
      </ul>
    </blockquote>
    &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; That is good when using Declarative
    Services and do not require you explicitly start and activate the
    bundle... <br>
    <blockquote cite="mid:kis2a9$g6m$1@ger.gmane.org" type="cite">
      <ul>
        <ul>
          <ul>
            <li> <br>
            </li>
            <ul>
              <li>@christiano @charles If you need it anyway, edit the
                droolsjbpm-parent pom and supply a pull request</li>
            </ul>
          </ul>
        </ul>
        <li>Generally, christiano's imports/export statements survived.
          (I found they to contain little or no dead imports/exports.)</li>
        <ul>
          <li>Some of Charles imports/export statement changes were
            added too.</li>
          <li>The original state of the imports/exports was mostly
            ignored as they were totally out-of-date.</li>
        </ul>
        <li>The singleton discussion is lost to me. As Charles is
          supplying the unit test in droolsjbpm, I believe he should
          make the call which modules should be singleton and which
          should not, taking Christiano's advice into consideration of
          course.<br>
        </li>
        <ul>
          <li>Some modules currently have singleton=true, others don't.
            This seems to be the way you guys wanted: it's differs per
            module</li>
          <ul>
            <li>Pull Request to add/remove singleton as needed welcome</li>
          </ul>
        </ul>
        <li>Empty&lt;Private-Package&gt; have been removed everywhere</li>
      </ul>
    </blockquote>
    <br>
    That was used to trick BND and should be maintained in projects that
    contains "impl" in the package name because that packages are not
    exported.<br>
    <br>
    <blockquote cite="mid:kis2a9$g6m$1@ger.gmane.org" type="cite">
      <ul>
        <li>&lt;Require-Bundle&gt; has been removed everywhere.</li>
        <ul>
          <li>This makes our build and release procedure far less
            complex (no more separate osgi.version property).</li>
          <ul>
            <li>Don't add it back pls: I strongly prefer it stays dead.<br>
            </li>
          </ul>
        </ul>
      </ul>
      <p>I've now spend a lot of time on drools OSGi, and I really need
        to focus on optaplanner issues.<br>
        Edson has agreed to look into future osgi related pull requests
        for drools.<br>
      </p>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
rules-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a></pre>
    </blockquote>
    <br>
  </body>
</html>