<p>What if every module had a bom that was imported, or if this were handled in the seam-bom?</p>
<p>John</p>
<div class="gmail_quote">On Aug 16, 2011 11:06 PM, &quot;Dan Allen&quot; &lt;<a href="mailto:dan.j.allen@gmail.com">dan.j.allen@gmail.com</a>&gt; wrote:<br type="attribution">&gt; On Tue, Aug 16, 2011 at 22:57, Shane Bryzak &lt;<a href="mailto:sbryzak@redhat.com">sbryzak@redhat.com</a>&gt; wrote:<br>
&gt; <br>&gt;&gt;  Of course, but we break that rule.  Solder is one example, there&#39;s<br>&gt;&gt; multiple utility classes in the implementation that are required to compile<br>&gt;&gt; other modules.<br>&gt;&gt;<br>&gt; <br>
&gt; I consider that a bug (or a work in progress, depending on how you look at<br>&gt; it).<br>&gt; <br>&gt; <br>&gt;&gt; Also, by making the implementation runtime-only, the user is forced to<br>&gt;&gt; declare two dependencies for their project, one for the API and one for the<br>
&gt;&gt; implementation.  If the  implementation was compile-scoped, they could just<br>&gt;&gt; declare the implementation dependency and the API would then be pulled in<br>&gt;&gt; automatically.  This is the kind of stuff we need to discuss and come to a<br>
&gt;&gt; resolution on.<br>&gt;&gt;<br>&gt; <br>&gt; Again, I don&#39;t think one dependency is a holy grail. We are making an<br>&gt; optimization that I don&#39;t find necessary. Making an implementation<br>&gt; compile-scoped could be classified as careless programming (by some strict<br>
&gt; architects, let&#39;s say).<br>&gt; <br>&gt; If it&#39;s setup correctly, depending on seam-faces (the impl) should make it a<br>&gt; runtime dep, make the api compile time, make any dependent api compile time<br>&gt; and make any dependency impl runtime. If Maven can&#39;t accommodate that, then<br>
&gt; it&#39;s just a pita (even then, the worse thing that happens is that the user<br>&gt; has two dependencies).<br>&gt; <br>&gt; -Dan<br>&gt; <br>&gt; -- <br>&gt; Dan Allen<br>&gt; Principal Software Engineer, Red Hat | Author of Seam in Action<br>
&gt; Registered Linux User #231597<br>&gt; <br>&gt; <a href="http://www.google.com/profiles/dan.j.allen#about">http://www.google.com/profiles/dan.j.allen#about</a><br>&gt; <a href="http://mojavelinux.com">http://mojavelinux.com</a><br>
&gt; <a href="http://mojavelinux.com/seaminaction">http://mojavelinux.com/seaminaction</a><br></div>