<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Ankit,<div class=""><br class=""></div><div class="">I like the proposal very much. One question about SystemPackageProvider:</div><div class=""><div class=""><br class=""></div><div class="">Sometimes it's neccessary to pass options to brew or apt-get, for example:</div><div class="">brew install libxml2 --with-python</div><div class=""><br class=""></div><div class="">Should they be added to package name or have a separate field? Adding the field in the future will break compatibility.</div><div class=""><br class=""></div><div class=""><div class="">let package = Package(</div><div class="">&nbsp; &nbsp; providers: [</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp; .brew(["libxml2 --with-python"]),</div><div class="">&nbsp; &nbsp; ]</div><div class="">)</div></div><div class=""><br class=""></div><div class="">Another thing which comes to mind is a human-readable description field which could be helpful in some situations. I.e. "don't forget to generate a private key by running XXX". I think of something like this:</div><div class=""><br class=""></div><div class=""><div class=""><div class="">let package = Package(</div><div class="">&nbsp; &nbsp; providers: [</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp; .brew([</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; "openssl",</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SystemPackage(name: "libxml2", options: "--with-python", description: "........")</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp; ]),</div><div class="">&nbsp; &nbsp; ]</div><div class="">)</div></div></div><div class=""><br class=""></div><div class="">Regards,</div><div class="">Andrey</div><div class="">
<div class=""><br class=""></div><br class="Apple-interchange-newline">

</div>

<br class=""><div><blockquote type="cite" class=""><div class="">On 14 Mar 2017, at 19:29, Rick Ballard via swift-build-dev &lt;<a href="mailto:swift-build-dev@swift.org" class="">swift-build-dev@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">Proposal link:<br class="">&gt; &nbsp;<a href="https://github.com/apple/swift-evolution/blob/master/proposals/0158-package-manager-manifest-api-redesign.md" class="">https://github.com/apple/swift-evolution/blob/master/proposals/0158-package-manager-manifest-api-redesign.md</a></div><div class=""><br class=""></div><div class="">Thanks for this feedback. We'll revise it to "from:".</div><div class=""><br class=""></div><div class="">Since we're still making minor revisions to this proposal, I'm going to extend the review period by another day to make sure we don't have any other important feedback pending.</div><div class=""><br class=""></div><div class=""><span class="Apple-tab-span" style="white-space:pre">        </span>- Rick</div><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Mar 14, 2017, at 12:28 AM, David Hart &lt;<a href="mailto:david@hartbit.com" class="">david@hartbit.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Yep, after does sound confusing. I prefer from.<br class=""><br class=""><blockquote type="cite" class="">On 14 Mar 2017, at 08:22, Ankit Aggarwal via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>&gt; wrote:<br class=""><br class="">Hi,<br class=""><br class=""><blockquote type="cite" class="">– Dave Sweeris' point about this reading wrong in English as .upToNextMajor("x.y.z") (vs. of "x.y.z".upToNextMajor) makes sense to us too. As a result, we're going to clarify this by changing it to .upToNextMajor(after:"x.y.z") and .upToNextMinor(after:"x.y.z").<br class=""></blockquote><br class=""><br class="">The "after" in .upToNextMajor(after: "x.y.z") sounds like we're going to pick the version after `x.y.z`, for e.g. `x.y.(z+1)`, and go upto the next major version. I think we should use `from` instead of `after`, which is more clear IMO. It also feels like `after` and `from` (in shorthand) do different things, and if we use `form`, it will also be reasonable to assume that the `.package(url:from:)` is a shorthand form.<br class=""><br class="">- Ankit<br class="">_______________________________________________<br class="">swift-evolution mailing list<br class=""><a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a><br class=""><a href="https://lists.swift.org/mailman/listinfo/swift-evolution" class="">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br class=""></blockquote><br class=""></div></div></blockquote></div><br class=""></div>_______________________________________________<br class="">swift-build-dev mailing list<br class=""><a href="mailto:swift-build-dev@swift.org" class="">swift-build-dev@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-build-dev<br class=""></div></blockquote></div><br class=""></div></body></html>