<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div></div><div><br></div><div>On Nov 18, 2016, at 8:59 AM, Daniel Dunbar &lt;<a href="mailto:daniel_dunbar@apple.com">daniel_dunbar@apple.com</a>&gt; wrote:<br><br></div><blockquote type="cite"><div><meta http-equiv="Content-Type" content="text/html charset=utf-8">On Nov 17, 2016, at 10:21 PM, Russ Bishop via swift-build-dev &lt;<a href="mailto:swift-build-dev@swift.org" class="">swift-build-dev@swift.org</a>&gt; wrote:<br class=""><div><blockquote type="cite" class=""><br class="Apple-interchange-newline"><div class=""><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><br class="Apple-interchange-newline">On Nov 17, 2016, at 1:33 PM, Anders Bertelrud &lt;<a href="mailto:anders@apple.com" class="">anders@apple.com</a>&gt; wrote:<br class=""><br class="">Hello Russ,<br class=""><br class="">On 2016-11-17, at 13.01, Russ Bishop &lt;<a href="mailto:xenadu@gmail.com" class="">xenadu@gmail.com</a>&gt; wrote:<br class=""><blockquote type="cite" class="">Did you consider allowing the specification of dependencies as part of the target dependencies? It would be mostly useful for simple leaf packages. If we included a "default" target concept you could omit the name too.<span class="Apple-converted-space">&nbsp;</span><br class=""><br class="">let package = Package(<br class="">&nbsp;name: "MyClientLib",<br class="">&nbsp;targets: [<br class="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Target(name: "MyUtils"),<br class="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Target(name: "MyClientLib", dependencies: [<br class="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.target(name: "MyUtils"),<br class="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.product(name: "Alamofire", package: "Alamofire", url: "<a href="https://github.com/Alamofire/Alamofire" class="">https://github.com/Alamofire/Alamofire</a>", majorVersion: 3)<br class="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;])<br class="">&nbsp;]<br class="">)<br class=""></blockquote><br class="">We didn’t consider this, but I can see the appeal for simple leaf packages. &nbsp;I’m not sure that the convenience makes up for the additional complexity of allowing the package reference directly in the target dependency, however. &nbsp;Since we’d still have to support package references on their own, there would be two different ways of referring to a package, which means that if a new way to reference packages is added, we’d have to make that change in two places.<br class=""><br class="">Would there be anything expressible in this way that wouldn’t also be expressible using a separate package reference?<br class=""><br class="">Thanks,<br class=""><br class="">Anders<br class=""><br class=""></blockquote><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">No, it would just be more convenient. Far more people will be creating leaf packages than anything else… by several orders of magnitude. IMHO it might be worth some affordances for that case.</span><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""></div></blockquote><div><br class=""></div>I agree, this is something we should eventually make more convenient in the common case where you only ever reference a package once.<div class=""><br class=""></div><div class="">I think that is something we can incrementally add on once we get more of the critical structure in place though, I don't think anything we are doing now precludes that.</div><div class=""><br class=""></div><div class="">&nbsp;- Daniel</div></div></div></blockquote><br><div>Fair enough; I like the overall idea.&nbsp;</div><div><br></div><div>Russ</div></body></html>