> On Jan 30, 2017, at 12:41 PM, David Sweeris via swift-evolution 
> <swift-evolution@swift.org> wrote:
> 
> 
>> On Jan 24, 2017, at 10:18 AM, Daniel Dunbar <daniel_dun...@apple.com> wrote:
>> 
>> Hello Swift community,
>> 
>> The review of SE-0150 “ Package Manager Support for branches" begins now and 
>> runs through January 31, 2017. The proposal is available here:
>> 
>> https://github.com/apple/swift-evolution/blob/master/proposals/0150-package-manager-branch-support.md
>> 
>> Reviews are an important part of the Swift evolution process. All reviews 
>> should be sent to the swift-build-dev and swift-evolution mailing lists at
>> https://lists.swift.org/mailman/listinfo/swift-build-dev
>> https://lists.swift.org/mailman/listinfo/swift-evolution
>> or, if you would like to keep your feedback private, directly to the review 
>> manager. When replying, please try to keep the proposal link at the top of 
>> the message:
>> https://github.com/apple/swift-evolution/blob/master/proposals/0150-package-manager-branch-support.md
>> 
>> What goes into a review?
>> 
>> The goal of the review process is to improve the proposal under review 
>> through constructive criticism and, eventually, determine the direction of 
>> Swift. When writing your review, here are some questions you might want to 
>> answer in your review:
>> 
>>      • What is your evaluation of the proposal?
> +1
> I would even go a bit further and suggest that "Package(url: String, branch: 
> String)” should have “master” be the default value for `branch`, to make it 
> simpler for small developer teams who don’t necessarily have all the 
> collaboration issues of large projects.

This would make it easier to bring up your first set of packages without typing 
in as many parameters. But I have a couple concerns:

– A user who forgets to supply a second parameter could wind up accidentally 
depending on master when they didn't intend to. The normal case is to depend on 
a versioned tag, and we shouldn't make it too easy to mistakenly do otherwise.

– This would make it less obvious to someone reading a Package.swift manifest 
that a one of the dependencies is untagged. That's a potentially dangerous 
situation if you're not expecting it, so it should be visible, not implicit.

I think we should err on the side of making this explicit, since it is 
important, even if it means a little bit of extra typing when you're bringing 
up your first packages.

        - Rick

>>      • Is the problem being addressed significant enough to warrant a change 
>> to Swift?
> IMHO, yes. Particularly since Xcode doesn’t support git tags (that I can 
> find, anyway)
> 
>>      • Does this proposal fit well with the feel and direction of Swift?
> IMOH, yes. This proposal will make development with much easier for 
> programmers whose work-flow is branch-based rather than tag-based.
> 
>>      • How much effort did you put into your review? A glance, a quick 
>> reading, or an in-depth study?
> An embarrassingly long time trying to figure out why a package wasn’t seeing 
> changes I’d committed to one of its dependencies... Somewhere along the line 
> I must’ve accidentally created a branch called “1.0.0”, which lead to me 
> conflating the 1.0.0 tag with the 1.0.0 branch, which has caused me no end of 
> head scratching.
> 
> - Dave Sweeris
> _______________________________________________
> swift-evolution mailing list
> swift-evolution@swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution

_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to