Skip to content
This repository was archived by the owner on Mar 26, 2023. It is now read-only.

Commit 11b7a0b

Browse files
RomanVolkovjessesquires
authored andcommitted
Issue/89 (#317), #314
1 parent f725648 commit 11b7a0b

File tree

1 file changed

+46
-21
lines changed

1 file changed

+46
-21
lines changed

_drafts/2017-09-28-issue-89.md

Lines changed: 46 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,83 @@
11
---
22
layout: post
33
title: ! 'Issue #89'
4-
author: jsq
5-
sponsor:
6-
link: TODO
7-
heading: TODO
8-
body: TODO
9-
displaylink: TODO
4+
author: roman
105
---
116

12-
> TODO: intro comments
7+
Welcome to the 89th issue of Swift Weekly Brief! This week was more calm, no news explosions. The repositories and mailing lists had their usual activity.
138

149
<!--excerpt-->
1510

1611
{% include sponsor.html %}
1712

1813
### Starter tasks
1914

20-
> TODO
15+
Starter tasks are a great way to get started with contributing to Swift. Ask questions directinly in the bug reporting system, and get feedback when you submit your pull request.
16+
17+
* [SR-5996](https://bugs.swift.org/browse/SR-5996): Improve compiler error with a fix-it: Cannot assign to value, 'bar' is a 'let' constant
18+
* [SR-5995](https://bugs.swift.org/browse/SR-5995): update-checkout --tags should fetch --tags before attempting to find a tag
19+
* [SR-5983](https://bugs.swift.org/browse/SR-5983): Unused result warning phrasing is worse for closures than normal functions
20+
* [SR-5982](https://bugs.swift.org/browse/SR-5982): didSet causes unwanted calls to getter even when oldValue isn't used
2121

2222
{% include task_remind.html %}
2323

2424
### Swift Unwrapped
2525

26-
> TODO: Latest episode of Swift Unwrapped
26+
In [Episode 30](https://spec.fm/podcasts/swift-unwrapped/87409) Jese and JP welcome Mike Ash to discuss weak references and the implementation changes that shipped in Swift 4.
2727

2828
### News and community
2929

30-
> TODO
30+
We can celebrate 10th LLVM [anniversary](https://twitter.com/llvmorg/status/912724943221096448)! 🎉 🎊 As you know, Swift and most modern languages are built on top of LLVM. Keep it up, [LLVM](http://llvm.org)!
31+
32+
Mike Ash [wrote](https://mikeash.com/pyblog/friday-qa-2017-09-22-swift-4-weak-references.html) a great Friday Q&A about the changes in Swift's weak references implementation. (This is the post he discussed on Swift Unwrapped.)
33+
34+
> Weak references are an important language feature. Swift's original implementation was wonderfully clever and had some nice properties, but also had some problems. By adding an optional side table, Swift's engineers were able to solve those problems while keeping the nice, clever properties of the original. The side table implementation also opens up a lot of possibilities for great new features in the future.
35+
36+
[Ahmed Sulaiman](https://medium.com/@ahmedsulaiman) wrote a descriptive blog post: [Debugging Swift code with LLDB](https://medium.com/flawless-app-stories/debugging-swift-code-with-lldb-b30c5cf2fd49) about using lldb in general and some unpopular tricks with Swift debugging. Take this chance to enhance your debugging skills!
37+
38+
Russ Bishop [shared the problem](https://twitter.com/xenadu02/status/911463433521860609) behind the Xcode 9 simulator's very slow performance &mdash; surprising.
3139

3240
### Commits and pull requests
3341

34-
> TODO
42+
[Doug Gregor](https://github.com/DougGregor) [opened pull requests](https://github.com/apple/swift/pull/11923) that implements the standard library part of [SE-0157: Recursive Protocol Constraints](https://github.com/apple/swift-evolution/blob/master/proposals/0157-recursive-protocol-constraints.md).
43+
> - Make the SubSequence associated type have the same capabilities as its enclosing protocol, e.g., Sequence.SubSequence conforms to Sequence, Collection.SubSequence conforms to Collection, and so on.
44+
> - Make the Indices associated type have the same traversal requirements as its enclosing protocol, e.g., Collection.Indices conforms to Collection, BidirectionalCollection.Indices conforms to BidirectionalCollection, and so on
45+
> - Make Numeric.Magnitude conform to Numeric
46+
> - Use more efficient SubSequence types for lazy filter and map
47+
> - Eliminate the *Indexable protocols.
3548
36-
### Accepted proposals
49+
[Joe Groff](https://github.com/jckarter) [fixed](https://github.com/apple/swift/pull/12112) compiler crash in case where code captured *[weak self]* in a closure inside a class method returning dynamic *Self*.
3750

38-
> TODO
51+
[Jordan Rose](https://github.com/jrose-apple) [merged pull request](https://github.com/apple/swift/pull/12101) with Swift compiler crash fix in situations with Objective-C inheritence from a typedef for a class/protocol composition as shorthand for inheriting from the class and adopting the protocol.
3952

40-
### Returned proposals
53+
[Philippe Hausler](https://github.com/phausler) [made](https://github.com/apple/swift/pull/11939) great improvement into Data slices. This change fixes [SR-5887](SR-5887), [SR-5873](https://bugs.swift.org/browse/SR-5873) and [SR-5810](https://bugs.swift.org/browse/SR-5810).
54+
> Mutation of Data slices had issues when it comes to re-indexing to the base slice region. Previously when a slice of Data was mutated the re-calculation of the slice region was incorrectly assigned to a relative region to the previous backing. Now the slice region will copy the specific region out creating a new data upon CoW semantics and offset the index region upon access. Mutating a non CoW slice will retain the previous region backing but adjust the remaining allocation buffer accordingly. To validate this I have added tests for combinations that should approximate all possible combinations of mutations, backing storages and CoW scenarios.
4155
42-
> TODO
56+
[Doug Gregor](https://github.com/DougGregor) [merged pull request](https://github.com/apple/swift/pull/12097) with introduction of caching name lookup for nested types of generic types through the equivalence class.
4357

44-
### Rejected proposals
58+
[Saleem Abdulrasool](https://github.com/compnerd) [added](https://github.com/apple/swift/pull/12136) improvement into Windows ARM headers to support building the runtime.
4559

46-
> TODO
60+
[Slava Pestov](https://github.com/slavapestov) [merged pull request](https://github.com/apple/swift/pull/12030) with preliminary implementation of a code completion fuzzer.
4761

48-
### Proposals in review
62+
[Kacper Harasim](https://github.com/Kacper20) [implemented](https://github.com/apple/swift/pull/12128) [SR-5743](https://bugs.swift.org/browse/SR-5743).
4963

50-
> TODO
64+
[Michael Ilseman](https://github.com/milseman) [opened pull request](https://github.com/apple/swift/pull/12115) of prototype implementation for new String comparison.
65+
66+
[Kacper Harasim](https://github.com/Kacper20) [merged](https://github.com/apple/swift/pull/12123) pull request with improvements to refactoring.
67+
68+
### Proposals
69+
70+
No updates on proposals this week. As always, you can check out the [Swift Evolution status page](https://apple.github.io/swift-evolution/) for all the details.
5171

5272
### Mailing lists
5373

54-
> TODO
74+
Ben Cohen [revive](https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20170925/039944.html) pitch to add *remove(where:)* function into standard library. You can [check](https://github.com/airspeedswift/swift-evolution/blob/0f4a24d6ded2ab7cb39c1a68e0f92705a7615d73/proposals/NNNN-RemoveWhere.md) proposal draft and add yourself into discussion.
75+
76+
Swift core team gave [answer](https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20170925/039907.html) about [Discussion: Resources](https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20170918/039874.html) this week.
77+
> ....
78+
> We're currently defining our roadmap for SwiftPM in Swift 5, and it's not clear yet whether resource support will fit into this year or not, but either way it's clearly something we'll want to do. We're looking to encourage a thriving developer community around the Swift package manager, and we know that this will be important for many uses. If there are other limitations that are currently holding people back, we'd welcome feedback (and contributions!).
79+
> ....
5580
5681
### Finally
5782

58-
> TODO: something funny/fun. tweet, link, etc.
83+
[Slicing](https://github.com/apple/swift/pull/11939) a CoW should result in fillet mignon not ground chuck.

0 commit comments

Comments
 (0)