[swift-build-dev] [swift-evolution] [Review] SE-0158 Package Manager Manifest API Redesign
Karl Wagner
razielim at gmail.com
Thu Mar 9 16:48:43 CST 2017
> On 9 Mar 2017, at 23:32, Rick Ballard <rballard at apple.com> wrote:
>
> > Proposal link:
> >> https://github.com/apple/swift-evolution/blob/master/proposals/0158-package-manager-manifest-api-redesign.md <https://github.com/apple/swift-evolution/blob/master/proposals/0158-package-manager-manifest-api-redesign.md>
>
>> On Mar 9, 2017, at 2:30 PM, Karl Wagner <razielim at gmail.com <mailto:razielim at gmail.com>> wrote:
>
>>> * Is the problem being addressed significant enough to warrant a change to the Swift Package Manager?
>>
>> Not really. The package manifest API has lots of serious deficiencies and this proposal shuffles a couple of names around. Not sure it’s really worth the hassle, to be honest. It’s certainly very far from a “redesign”!
>
>
> Hi Karl,
>
> Would you mind expanding on the other deficiencies that you see in this API?
>
> Thanks,
>
> - Rick
>
I think they’re rather well-known:
- No support for resources; means no test resources (!), framework or application bundles.
- System package API is confusing, doesn’t account for OSX system libraries (“.tbd” files you see in Xcode’s “Link Libraries” panel).
- Source trees are exclude-only with no ability to selectively *include* other trees.
- Every package must have an independent source control repository. Even if it’s just redirecting to a system library (of which you can only sometimes really control the version).
- (Related) It would be nice if we could refer to independent modules within the same repository, who have their own Package.swift detailing their dependencies (like a “sub-package”). This can be helpful when developing modular applications or, as mentioned, when importing some external libraries from the system or another package manager.
- Package manager doesn’t resolve dependencies between files in the same module. You have to resolve it yourself and name the files alphabetically (this may be a bug rather than a missing feature, but I couldn’t find anything in the source which sorted the compiler inputs...)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-build-dev/attachments/20170309/278db5c6/attachment.html>
More information about the swift-build-dev
mailing list