From c937d8e02869d8f8f04d9d37ebc9372907070465 Mon Sep 17 00:00:00 2001
From: Jeffrey Macko
Date: Thu, 17 May 2018 19:23:32 +0200
Subject: [PATCH 001/589] Update 2018-05-17-issue-109.md (#392)
---
_posts/2018-05-17-issue-109.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/_posts/2018-05-17-issue-109.md b/_posts/2018-05-17-issue-109.md
index 16cc4922..d03892f3 100644
--- a/_posts/2018-05-17-issue-109.md
+++ b/_posts/2018-05-17-issue-109.md
@@ -31,7 +31,7 @@ In [episode 58](https://spec.fm/podcasts/swift-unwrapped/144196), Jesse and JP d
### News and community
-[Nicole Jacque])(https://github.com/najacque/) and [Mishal Shah](https://twitter.com/mishaldshah/) announced [a community hosted Swift continuous integration](https://twitter.com/SwiftLang/status/992166029613674497) to make it easier to support more platforms for Swift.
+[Nicole Jacque](https://github.com/najacque/) and [Mishal Shah](https://twitter.com/mishaldshah/) announced [a community hosted Swift continuous integration](https://twitter.com/SwiftLang/status/992166029613674497) to make it easier to support more platforms for Swift.
[Ted Kremenek](https://twitter.com/tkremenek) announced that Swift for TensorFlow [will be developed](https://forums.swift.org/t/swift-for-tensorflow-to-be-developed-on-tensorflow-branch-on-apple-swift-on-github/12595) on a `tensorflow` branch on apple/swift, allowing closer collaborations among the Swift and TensorFlow teams.
From 8c08b02471bee1fff4546ea9e35e63c8bde59b2e Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Mon, 28 May 2018 20:52:27 +0200
Subject: [PATCH 002/589] Initial 110 draft
---
_drafts/2018-05-31-issue-110.md | 51 +++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 _drafts/2018-05-31-issue-110.md
diff --git a/_drafts/2018-05-31-issue-110.md b/_drafts/2018-05-31-issue-110.md
new file mode 100644
index 00000000..7631d40a
--- /dev/null
+++ b/_drafts/2018-05-31-issue-110.md
@@ -0,0 +1,51 @@
+---
+layout: post
+title: ! 'Issue #110'
+author: btb
+---
+
+With WWDC around the corner (it starts in four days!), it is not that big of a surprise that these last two weeks have been pretty quite when it comes to Swift.
+
+
+
+### Starter tasks
+
+> TODO
+
+{% include task_remind.html %}
+
+### Swift Unwrapped
+
+> TODO: Latest episode(s) of Swift Unwrapped
+
+### News and community
+
+> TODO
+
+### Commits and pull requests
+
+> TODO
+
+### Accepted proposals
+
+> TODO
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+> TODO
+
+### Swift Forums
+
+> TODO
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From 5f657cad706c2d68246fe4430978fb50bcb91f16 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 31 May 2018 18:09:36 +0200
Subject: [PATCH 003/589] Draft for issue #110 (#395)
* 110 draft
* Move to posts
---
_drafts/2018-05-31-issue-110.md | 51 -------------------------------
_posts/2018-05-31-issue-110.md | 53 +++++++++++++++++++++++++++++++++
2 files changed, 53 insertions(+), 51 deletions(-)
delete mode 100644 _drafts/2018-05-31-issue-110.md
create mode 100644 _posts/2018-05-31-issue-110.md
diff --git a/_drafts/2018-05-31-issue-110.md b/_drafts/2018-05-31-issue-110.md
deleted file mode 100644
index 7631d40a..00000000
--- a/_drafts/2018-05-31-issue-110.md
+++ /dev/null
@@ -1,51 +0,0 @@
----
-layout: post
-title: ! 'Issue #110'
-author: btb
----
-
-With WWDC around the corner (it starts in four days!), it is not that big of a surprise that these last two weeks have been pretty quite when it comes to Swift.
-
-
-
-### Starter tasks
-
-> TODO
-
-{% include task_remind.html %}
-
-### Swift Unwrapped
-
-> TODO: Latest episode(s) of Swift Unwrapped
-
-### News and community
-
-> TODO
-
-### Commits and pull requests
-
-> TODO
-
-### Accepted proposals
-
-> TODO
-
-### Returned proposals
-
-> TODO
-
-### Rejected proposals
-
-> TODO
-
-### Proposals in review
-
-> TODO
-
-### Swift Forums
-
-> TODO
-
-### Finally
-
-> TODO: something funny/fun. tweet, link, etc.
diff --git a/_posts/2018-05-31-issue-110.md b/_posts/2018-05-31-issue-110.md
new file mode 100644
index 00000000..a8f042a4
--- /dev/null
+++ b/_posts/2018-05-31-issue-110.md
@@ -0,0 +1,53 @@
+---
+layout: post
+title: ! 'Issue #110'
+author: btb
+---
+
+With WWDC around the corner (it starts in four days!), it is not that big of a surprise that these last two weeks have been pretty quite when it comes to Swift.
+
+Also, come and say hi at WWDC!
+
+
+
+### Swift Unwrapped
+
+In [episode 59](https://spec.fm/podcasts/swift-unwrapped/144991), Jesse and JP discuss implicit escaping of closures, explaining in how they (should) work.
+
+In [episode 60](https://spec.fm/podcasts/swift-unwrapped/144992), Jesse and JP discuss Character Properties, a proposal pitch that aims to increase the usefulness of `Character` and approachability of programming in Swift.
+
+### News and community
+
+[Michael Ilseman](https://twitter.com/Ilseman) has [improved](https://twitter.com/brentdax/status/1001351681370542080) string interpolation in Swift 4.2 to be at least twice as fast! 🏎💨
+
+### Commits and pull requests
+
+[Alex Hoppen](https://github.com/ahoppen) merged [a pull request](https://github.com/apple/swift/pull/16340) that adds [incremental syntax parsing](https://gist.github.com/ahoppen/3ae1a6cd64e558710a4afcd372e8fdc4) to the Swift compiler. Cool!
+
+[Lily Vulcano](https://github.com/millenomi) merged [a pull request](https://github.com/apple/swift/pull/16022) to bridge `as`, `as?`, and `as!` to Linux. 🎉
+
+[Michael Gottesman](https://github.com/gottesmm) opened [a pull request](https://github.com/apple/swift/pull/16882) to allow for benchmark testing on Linux.
+
+### Proposals in review
+
+[SE-0214](https://github.com/apple/swift-evolution/blob/master/proposals/0214-DictionaryLiteral.md): *Renaming the `DictionaryLiteral` type to `KeyValueList`* is [under review](https://forums.swift.org/t/se-0214-renaming-the-dictionaryliteral-type-to-keyvaluelist/12817).
+
+> This proposal renames the confusing and misnamed [`DictionaryLiteral`](https://github.com/apple/swift/blob/c25188bafd1c775d4ceecc4a795f614f00451bf9/stdlib/public/core/Mirror.swift#L646) type to `KeyValueList`. This type is neither a dictionary nor a literal. It is a list of key-value pairs.
+>
+> There is no strong motivation to deprecate. The type does not produce active harm. Instead, it adds measurable (if small) utility and will be part of the ABI. A sensible renaming mitigates the most problematic issue with the type.
+
+### Swift Forums
+
+[Ben Cohen](https://twitter.com/airspeedswift) started [a discussion](https://forums.swift.org/t/se-0202-amendment-proposal-rename-random-to-defaultrandomnumbergenerator/12942) to change part of SE-0202, renaming `Random` to `DefaultRandomNumberGenerator`.
+
+> SE-0202, as accepted, introduces a type, `Random`, as the default source of random numbers on each platform.
+>
+> [..] the name `Random` for this default source is misleading, and would probably be better named `DefaultRandomNumberGenerator`.
+>
+> One open question is the naming of the getter for an instance of the type. Currently it is `Random.default`. However, renaming `Random` leads to the rather clunky `DefaultRandomNumberGenerator.default`. Benjamin suggests `.shared`. However, in all current implementations, this is not strictly speaking a shared instance – it is instead a getter/setter for a fresh instance each time. This doesn't actually have a cost, since the type has no actual size (the type is just a vehicle for calling an OS function), but needs to be done this way because `using:` is taken `inout`.
+>
+> Any suggestions for better naming gratefully received.
+
+### Finally
+
+[Although not all may agree](https://twitter.com/jckarter/status/999040485309140992)...
From 892b8b5428e16a6a9e8b7c5323b2299dd164c1c3 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 31 May 2018 18:11:33 +0200
Subject: [PATCH 004/589] Push 111 draft
---
_drafts/2018-06-14-issue-111.md | 51 +++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 _drafts/2018-06-14-issue-111.md
diff --git a/_drafts/2018-06-14-issue-111.md b/_drafts/2018-06-14-issue-111.md
new file mode 100644
index 00000000..4b2bc4ac
--- /dev/null
+++ b/_drafts/2018-06-14-issue-111.md
@@ -0,0 +1,51 @@
+---
+layout: post
+title: ! 'Issue #111'
+author: roman
+---
+
+> TODO: intro comments
+
+
+
+### Starter tasks
+
+> TODO
+
+{% include task_remind.html %}
+
+### Swift Unwrapped
+
+> TODO: Latest episode(s) of Swift Unwrapped
+
+### News and community
+
+> TODO
+
+### Commits and pull requests
+
+> TODO
+
+### Accepted proposals
+
+> TODO
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+> TODO
+
+### Swift Forums
+
+> TODO
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From cdfe0ba0d649e227911314fb4854baff7f0d6cc1 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 31 May 2018 21:05:54 +0200
Subject: [PATCH 005/589] Update 2018-05-31-issue-110.md
---
_posts/2018-05-31-issue-110.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/_posts/2018-05-31-issue-110.md b/_posts/2018-05-31-issue-110.md
index a8f042a4..a3373194 100644
--- a/_posts/2018-05-31-issue-110.md
+++ b/_posts/2018-05-31-issue-110.md
@@ -4,7 +4,7 @@ title: ! 'Issue #110'
author: btb
---
-With WWDC around the corner (it starts in four days!), it is not that big of a surprise that these last two weeks have been pretty quite when it comes to Swift.
+With WWDC around the corner (it starts in four days!), it is not that big of a surprise that these last two weeks have been pretty quiet when it comes to Swift.
Also, come and say hi at WWDC!
From 947a37ad7caae45f7b1dc920fc9dccf121ec5a4f Mon Sep 17 00:00:00 2001
From: Roman Volkov
Date: Thu, 14 Jun 2018 22:26:52 +0500
Subject: [PATCH 006/589] Issue 111 draft (#396)
---
_drafts/2018-06-14-issue-111.md | 62 ++++++++++++++++++++++++---------
1 file changed, 46 insertions(+), 16 deletions(-)
diff --git a/_drafts/2018-06-14-issue-111.md b/_drafts/2018-06-14-issue-111.md
index 4b2bc4ac..93e7b9c5 100644
--- a/_drafts/2018-06-14-issue-111.md
+++ b/_drafts/2018-06-14-issue-111.md
@@ -4,48 +4,78 @@ title: ! 'Issue #111'
author: roman
---
-> TODO: intro comments
+Hi there SwiftWeekly readers! The last two weeks were full of exciting news with WWDC, interesting discussions on the Swift Unwrapped podcast and there's plenty of new starter tasks for you, especially for SPM. Enjoy!
### Starter tasks
-> TODO
+- [SR-7823](https://bugs.swift.org/browse/SR-7823) [Package Manager] swift run intermingles SwiftPM status with tool output on stdout
+- [SR-7824](https://bugs.swift.org/browse/SR-7824) [Package Manager] SwiftPM ignores missing source symlinks
+- [SR-7825](https://bugs.swift.org/browse/SR-7825) [Package Manager] SwiftPM should consider a target with header files but no sources as a ClangTarget
+- [SR-7826](https://bugs.swift.org/browse/SR-7826) [Package Manager] SwiftPM should warn if it skips traversing a symlink which would contain sources in it
+- [SR-7829](https://bugs.swift.org/browse/SR-7829) [Package Manager] Bad error message when a tag doesn't exist
+- [SR-7904](https://bugs.swift.org/browse/SR-7904) [Compiler] AST dump - can't distinguish files
+- [SR-7933](https://bugs.swift.org/browse/SR-7933) [Tooling] SourceKit double-counts escaping and autoclosure attributes
+- [SR-7979](https://bugs.swift.org/browse/SR-7979) [Package Manager] Circular Dependency in SwiftPM Causes Segfault
{% include task_remind.html %}
### Swift Unwrapped
-> TODO: Latest episode(s) of Swift Unwrapped
+In [episode 61](https://spec.fm/podcasts/swift-unwrapped/154581), Jesse and JP with special guest Greg Heo discussed general announcements from WWDC 2018, not just limited to the Swift language.
+
+In [episode 62](https://spec.fm/podcasts/swift-unwrapped/154699), Jesse and JP talk with [Ted Kremenek](https://twitter.com/tkremenek), the Swift Project Lead and manager of the Languages and Runtimes team at Apple.
### News and community
-> TODO
+The biggest news from the past two weeks is, of course, WWDC. There are plenty of videos to watch, but take take a closer look into these Swift related videos:
-### Commits and pull requests
+- [What's New in Swift](https://developer.apple.com/videos/play/wwdc2018/401)
+- [Swift Generics](https://developer.apple.com/videos/play/wwdc2018/406/)
+- [Getting to Know Swift Package Manager](https://developer.apple.com/videos/play/wwdc2018/411/)
+- [Behind the Scenes of the Xcode Build Process](https://developer.apple.com/videos/play/wwdc2018/415/)
-> TODO
+[Ole Begemann](https://github.com/ole) made an easy-to-use [playground](https://github.com/ole/whats-new-in-swift-4-2) that you can use to test the new features in Swift 4.2. If you prefer to read about it, check out Cosmin Pupăză's article [What’s New in Swift 4.2?](https://www.raywenderlich.com/194066/whats-new-in-swift-4-2).
-### Accepted proposals
+Greg Heo wrote a new post on Swift Unboxed, [Swift Diagnostics: #warning and #error](https://swiftunboxed.com/internals/diagnostics-warning-error/), about the new `#warning` and `#error` directive implementations.
-> TODO
+[Brian Gesiak](https://twitter.com/modocache) wrote the second part of a [great article](https://modocache.io/swift-compiler-diagnostics-part-2) about the interaction between the Swift frontend and LLVM in terms of emitting diagnostics.
-### Returned proposals
+### Commits and pull requests
-> TODO
+[Erik Eckstein](https://github.com/eeckstein) [merged](https://github.com/apple/swift/pull/17014) optimizations for generation of optimal code for static String constants.
-### Rejected proposals
+Xcode 10 Beta is now required to build `master` and `swift-4.2-branch`: [#17000](https://github.com/apple/swift/pull/17000) and [#17001](https://github.com/apple/swift/pull/17001).
-> TODO
+[Adrian Prantl](https://github.com/adrian-prantl) [merged](https://github.com/apple/swift/pull/16937) "Use depth and index to lookup type metadata artificial variables". The general purpose: "debug info support for generics is about to get a whole lot better".
+
+[Slava Pestov](https://github.com/slavapestov) [fixed](https://github.com/apple/swift/pull/17080) availability of inherited designated initializers.
+> Inherited designated initializers got the same availability as the corresponding initialier in the superclass. However if the superclass was more available than the subclass, we would generate a diagnostic that a member cannot be more available than its containing type. This diagnostic had an unknown source location, since the location was for a synthesized declaration, causing confusion.
### Proposals in review
-> TODO
+[SE-0215](https://github.com/apple/swift-evolution/blob/master/proposals/0215-conform-never-to-hashable-and-equatable.md): *Conform `Never` to `Equatable` and `Hashable`* is [under review](https://forums.swift.org/t/se-0215-conform-never-to-equatable-and-hashable/13586).
+
+> `Never` is very useful for representing impossible code. Most people are familiar with it as the return type of functions like `fatalError`, but `Never` is also useful when working with generic classes.
+>
+> For example, a `Result` type might use `Never` for its `Value` to represent something that _always_ errors or use `Never` for its `Error` to represent something that _never_ errors.
+>
+> Conditional conformances to `Equatable` and `Hashable` are also very useful when working with `enum`s so you can test easily or work with collections.
+>
+> But those don’t play well together. Without conformance to `Equatable` and `Hashable`, `Never` disqualifies your generic type from being `Equatable` and `Hashable`.
-### Swift Forums
+[SE-0216](https://github.com/apple/swift-evolution/blob/master/proposals/0216-dynamic-callable.md) *Introduce user-defined dynamically "callable" types* is [under review](https://forums.swift.org/t/se-0216-user-defined-dynamically-callable-types/13615).
-> TODO
+> This proposal is a follow-on to [SE-0195 - Introduce User-defined "Dynamic Member
+Lookup" Types](https://github.com/apple/swift-evolution/blob/master/proposals/0195-dynamic-member-lookup.md)
+which shipped in Swift 4.2. It introduces a new `@dynamicCallable` attribute, which marks
+a type as being "callable" with normal syntax.
+>
+> [...]
+>
+> Swift is exceptional at interworking with existing C and Objective-C APIs and we would like to extend this interoperability to dynamic languages like Python, JavaScript, Perl, and Ruby. We explored this overall goal in a long design process wherein the Swift evolution community evaluated multiple different implementation approaches. The conclusion was that the best approach was to put most of the complexity into dynamic language specific bindings written as pure-Swift libraries, but add small hooks in Swift to allow these bindings to provide a natural experience to their clients.
### Finally
-> TODO: something funny/fun. tweet, link, etc.
+And finally — [time to get some rest](https://twitter.com/jckarter/status/1005500623175815168)!
From 0e2b74bd13660c6d707a0b5d0f88476a58d0c7eb Mon Sep 17 00:00:00 2001
From: Jesse Squires
Date: Thu, 14 Jun 2018 10:27:57 -0700
Subject: [PATCH 007/589] publish issue 111, close #394
---
{_drafts => _posts}/2018-06-14-issue-111.md | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename {_drafts => _posts}/2018-06-14-issue-111.md (100%)
diff --git a/_drafts/2018-06-14-issue-111.md b/_posts/2018-06-14-issue-111.md
similarity index 100%
rename from _drafts/2018-06-14-issue-111.md
rename to _posts/2018-06-14-issue-111.md
From 14efa849d90642c3256cf62ae357d13f0e5a3fcd Mon Sep 17 00:00:00 2001
From: Greg Heo
Date: Thu, 14 Jun 2018 11:23:30 -0700
Subject: [PATCH 008/589] [111] Add Twitter link and fix typo
---
_posts/2018-06-14-issue-111.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/_posts/2018-06-14-issue-111.md b/_posts/2018-06-14-issue-111.md
index 93e7b9c5..7e1908d9 100644
--- a/_posts/2018-06-14-issue-111.md
+++ b/_posts/2018-06-14-issue-111.md
@@ -23,13 +23,13 @@ Hi there SwiftWeekly readers! The last two weeks were full of exciting news with
### Swift Unwrapped
-In [episode 61](https://spec.fm/podcasts/swift-unwrapped/154581), Jesse and JP with special guest Greg Heo discussed general announcements from WWDC 2018, not just limited to the Swift language.
+In [episode 61](https://spec.fm/podcasts/swift-unwrapped/154581), Jesse and JP with special guest [Greg Heo](https://twitter.com/gregheo) discussed general announcements from WWDC 2018, not just limited to the Swift language.
In [episode 62](https://spec.fm/podcasts/swift-unwrapped/154699), Jesse and JP talk with [Ted Kremenek](https://twitter.com/tkremenek), the Swift Project Lead and manager of the Languages and Runtimes team at Apple.
### News and community
-The biggest news from the past two weeks is, of course, WWDC. There are plenty of videos to watch, but take take a closer look into these Swift related videos:
+The biggest news from the past two weeks is, of course, WWDC. There are plenty of videos to watch, but take a closer look into these Swift related videos:
- [What's New in Swift](https://developer.apple.com/videos/play/wwdc2018/401)
- [Swift Generics](https://developer.apple.com/videos/play/wwdc2018/406/)
From 56a3259ee1fc54a4d2a55b29e6cbab9d94936266 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Mon, 18 Jun 2018 20:06:45 +0200
Subject: [PATCH 009/589] Initial 112 draft
---
_drafts/2018-06-21-issue-112.md | 51 +++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 _drafts/2018-06-21-issue-112.md
diff --git a/_drafts/2018-06-21-issue-112.md b/_drafts/2018-06-21-issue-112.md
new file mode 100644
index 00000000..b49dff9c
--- /dev/null
+++ b/_drafts/2018-06-21-issue-112.md
@@ -0,0 +1,51 @@
+---
+layout: post
+title: ! 'Issue #112'
+author: btb
+---
+
+> TODO: intro comments
+
+
+
+### Starter tasks
+
+> TODO
+
+{% include task_remind.html %}
+
+### Swift Unwrapped
+
+> TODO: Latest episode(s) of Swift Unwrapped
+
+### News and community
+
+> TODO
+
+### Commits and pull requests
+
+> TODO
+
+### Accepted proposals
+
+> TODO
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+> TODO
+
+### Swift Forums
+
+> TODO
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From 1d364a8454e17fde87169d0d05cc9849218ed897 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Tue, 19 Jun 2018 07:43:55 +0200
Subject: [PATCH 010/589] Biweekly, oops
---
_drafts/{2018-06-21-issue-112.md => 2018-06-28-issue-112.md} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename _drafts/{2018-06-21-issue-112.md => 2018-06-28-issue-112.md} (100%)
diff --git a/_drafts/2018-06-21-issue-112.md b/_drafts/2018-06-28-issue-112.md
similarity index 100%
rename from _drafts/2018-06-21-issue-112.md
rename to _drafts/2018-06-28-issue-112.md
From add6dec23305af1c50bd78c672be710e5c01a01f Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 28 Jun 2018 18:34:25 +0200
Subject: [PATCH 011/589] Initial draft of issue 112. (#398)
Issue 112
---
_drafts/2018-06-28-issue-112.md | 51 ---------------
_posts/2018-06-28-issue-112.md | 109 ++++++++++++++++++++++++++++++++
2 files changed, 109 insertions(+), 51 deletions(-)
delete mode 100644 _drafts/2018-06-28-issue-112.md
create mode 100644 _posts/2018-06-28-issue-112.md
diff --git a/_drafts/2018-06-28-issue-112.md b/_drafts/2018-06-28-issue-112.md
deleted file mode 100644
index b49dff9c..00000000
--- a/_drafts/2018-06-28-issue-112.md
+++ /dev/null
@@ -1,51 +0,0 @@
----
-layout: post
-title: ! 'Issue #112'
-author: btb
----
-
-> TODO: intro comments
-
-
-
-### Starter tasks
-
-> TODO
-
-{% include task_remind.html %}
-
-### Swift Unwrapped
-
-> TODO: Latest episode(s) of Swift Unwrapped
-
-### News and community
-
-> TODO
-
-### Commits and pull requests
-
-> TODO
-
-### Accepted proposals
-
-> TODO
-
-### Returned proposals
-
-> TODO
-
-### Rejected proposals
-
-> TODO
-
-### Proposals in review
-
-> TODO
-
-### Swift Forums
-
-> TODO
-
-### Finally
-
-> TODO: something funny/fun. tweet, link, etc.
diff --git a/_posts/2018-06-28-issue-112.md b/_posts/2018-06-28-issue-112.md
new file mode 100644
index 00000000..5fa882f0
--- /dev/null
+++ b/_posts/2018-06-28-issue-112.md
@@ -0,0 +1,109 @@
+---
+layout: post
+title: ! 'Issue #112'
+author: btb
+---
+
+I am back! I had the most wonderful time at WWDC, learning a lot of and meeting awesome people.
+I want to specifically thank all those that have shown their gratitude for the weekly brief, it's much appreciated!
+
+Without further ado, here's this week's news on the Swift.org open source projects.
+
+
+
+### Starter tasks
+
+- [SR-7984](https://bugs.swift.org/browse/SR-7984) [Compiler] Constraint to concrete type using `:` should offer a fixit
+- [SR-8012](https://bugs.swift.org/browse/SR-8012) [Standard Library] Remove `Indexable` aliases
+- [SR-8049](https://bugs.swift.org/browse/SR-8049) [Swift for TensorFlow] Open source S4TF unit testing with a remote TF session
+
+{% include task_remind.html %}
+
+### Swift Unwrapped
+
+In [episode 63](https://spec.fm/podcasts/swift-unwrapped/147483), Jesse and JP discuss Swift algorithms and data structures with [Kelvin Lau](https://twitter.com/KelvinlauKl) and [Vincent Ngo](https://twitter.com/VincentNgo2).
+
+In [episode 64](https://spec.fm/podcasts/swift-unwrapped/160151), Jesse and JP discuss `Never`, the [return type of functions that do not return normally](https://developer.apple.com/documentation/swift/never).
+
+### News and community
+
+[Ole Begemann](https://twitter.com/olebegemann) wrote [a blog post](https://oleb.net/blog/2018/06/dynamic-member-lookup/) with thoughts on `@dynamicMemberLookup`, which was introduced in [SE-0195](https://github.com/apple/swift-evolution/blob/master/proposals/0195-dynamic-member-lookup.md).
+
+[John Sundell](https://twitter.com/johnsundell) discussed the Swift Package Manager with [David Hart](https://twitter.com/dhartbit) in his [podcast](https://www.swiftbysundell.com/podcast/26).
+
+### Commits and pull requests
+
+[Slava Pestov](https://github.com/slavapestov) merged [a pull request](https://github.com/apple/swift/pull/17227) to fix a corner case for source compatibility. As it appears, using an enum case called `init` could cause some trouble.
+
+[Ankit Aggarwal](https://twitter.com/aciidb0mb3r/) merged [a pull request](https://github.com/apple/swift-evolution/pull/828) that adds a new, SwiftPM specific proposal template that better reflects the expectations and nuances of this project.
+
+### Accepted proposals
+
+[SE-0211](https://github.com/apple/swift-evolution/blob/master/proposals/0211-unicode-scalar-properties.md): *Add Unicode Properties to `Unicode.Scalar`* has been [accepted with revisions](https://forums.swift.org/t/accepted-se-0211-add-unicode-properties-to-unicode-scalar/13857/1).
+
+> The core team has accepted this proposal, with one revision:
+>
+> - the `numericValue` property should be a `Double?` rather than a `Double`, with `nil` for non-numeric values rather than `NaN`.
+
+[SE-0214](https://github.com/apple/swift-evolution/blob/master/proposals/0214-DictionaryLiteral.md): *Renaming the `DictionaryLiteral` type to `KeyValuePairs`* has been [accepted with revisions](https://forums.swift.org/t/accepted-with-revision-se-0214-renaming-the-dictionaryliteral-type-to-keyvaluepairs/13661).
+
+> In the review thread discussion, many names were considered, and the core team agreed that `KeyValuePairs` (initially `KeyValueList` was proposed) is a best name suggested on the thread for this type.
+
+### Swift Forums
+
+[Ankit Aggarwal](https://twitter.com/aciidb0mb3r/) shared some [features and enhancements](https://forums.swift.org/t/recent-swiftpm-features-and-enhancements/13807) that have been brought to SwiftPM recently.
+
+> - Improved scheme generation logic
+> - Local dependencies
+> - Automatic Xcode project generation
+> - System library targets
+> - Embeddable Xcode projects
+
+[Dave DeLong](https://twitter.com/davedelong) and [Erica Sadun](https://twitter.com/ericasadun) pitched [a proposal](https://forums.swift.org/t/introducing-namespacing-for-common-swift-error-scenarios/10773) to introduce namespacing for common Swift error scenarios.
+
+> This proposal introduces namespacing for fatal errors. It provides an umbrella for common exit scenarios, modernizing a holdover from C-like languages.
+>
+> Swift’s `fatalError` is arguably insufficient for a multitude of real world uses including discoverability, extensibility, and significance. Swift lacks a modern extensible solution that differentiates fatal error scenarios.
+
+Awesome stuff!
+
+[Steve Canon](https://forums.swift.org/u/scanon/summary) pitched [a proposal](https://forums.swift.org/t/comparable-and-floatingpoint/13931) that aims to solve some issues around floating points and their `min` and `max` operations.
+
+> There is a small but important tangle of issues around the interaction between `min` and `max` operations and `Comparable` and `FloatingPoint` protocols and the IEEE 754 standard that I would like to attempt to resolve.
+
+[Ankit Aggarwal](https://twitter.com/aciidb0mb3r/) shared [a list of SwiftPM evolution ideas](https://forums.swift.org/t/swift-package-manager-evolution-ideas/13940) that could use some help to get proposals off the ground.
+
+> This is a list of some evolution ideas for the package manager. Once the details of an idea are fleshed out and there is a full proposal, it can be scheduled for the swift-evolution process. It is important to note that not every idea on this list is guaranteed to become an official feature, and it all depends on where the design discussion leads us. Also, this is not meant to be an exhaustive feature list, if you have an idea for a feature that you think will be a valuable addition to the package manager, feel free to start a discussion about it.
+>
+> If you're interested in participating in a particular evolution idea, please familarize yourself with the existing discussion on that topic and start participating in the discussion thread of that idea.
+
+[Nate Cook](https://twitter.com/nnnnnnnn) pitched [a proposal](https://forums.swift.org/t/array-initializer-with-access-to-uninitialized-buffer/13689) to add an `Array` initializer with access to its unitialized buffer.
+
+> I've been thinking about a way of creating an array that would let us access the buffer of uninitialized memory, so that we could implement algorithms that don't necessarily know the size in advance or need access to noncontiguous parts of an array.
+>
+> There is currently no way to work with a buffer of uninitialized memory that then becomes a fully memory-managed `Array`. This limitation means that operations that don't know the final size of their data in advance, or that need to access noncontiguous parts of an array, are less efficient than necessary, often requiring an extra copy. This proposal suggests a new initializer for `Array` and `ContiguousArray` that would provide access to a newly created array's entire storage buffer.
+
+[Brent Royal-Gordon](https://twitter.com/brentdax) pitched [a proposal](https://forums.swift.org/t/pitch-deprecate-strange-interpolations-in-swift-4-2/13694) that aims to clean up some of the lesser known rough edges in String interpolation.
+
+> So, everyone knows what a string interpolation looks like:
+
+{% highlight swift %}
+print("Hello, \(firstName)!")
+{% endhighlight %}
+
+> But let's talk about some other things you might write, perhaps because you hate compiler engineers. What do you think these do?
+
+{% highlight swift %}
+print("Hello, \()!") // #1
+print("Hello, \(first: firstName)!") // #2
+print("Hello, \(firstName, lastName)!") // #3
+print("Hello, \(first: firstName, last: lastName)!") // #4
+{% endhighlight %}
+
+> Most people I've spoken to say "produce an error message", and they're right about #1—it produces the error "expected expression in list of expressions". Maybe not the clearest message, but it's not technically wrong.
+>
+> But the other three? They actually compile without complaint and form a tuple.
+
+### Finally
+
+[Do you wish to take a leap of faith?](https://twitter.com/slava_pestov/status/1010043445203701760)
From fd42f196d895c1a9dbb35c3fa8e085c300009dcc Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Mon, 9 Jul 2018 19:46:16 +0200
Subject: [PATCH 012/589] Add 113 draft
---
_drafts/2018-07-12-issue-113.md | 51 +++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 _drafts/2018-07-12-issue-113.md
diff --git a/_drafts/2018-07-12-issue-113.md b/_drafts/2018-07-12-issue-113.md
new file mode 100644
index 00000000..fa9a3dd4
--- /dev/null
+++ b/_drafts/2018-07-12-issue-113.md
@@ -0,0 +1,51 @@
+---
+layout: post
+title: ! 'Issue #113'
+author: roman
+---
+
+> TODO: intro comments
+
+
+
+### Starter tasks
+
+> TODO
+
+{% include task_remind.html %}
+
+### Swift Unwrapped
+
+> TODO: Latest episode(s) of Swift Unwrapped
+
+### News and community
+
+> TODO
+
+### Commits and pull requests
+
+> TODO
+
+### Accepted proposals
+
+> TODO
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+> TODO
+
+### Swift Forums
+
+> TODO
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From ad050f4bcbd14b52bbd647055531ef0f1a044879 Mon Sep 17 00:00:00 2001
From: Roman Volkov
Date: Thu, 12 Jul 2018 21:45:12 +0500
Subject: [PATCH 013/589] Issue 113 (#400)
* init
* draft
* Update 2018-07-12-issue-113.md
* Update 2018-07-12-issue-113.md
* Update 2018-07-12-issue-113.md
* Update 2018-07-12-issue-113.md
* Final changes
---
_drafts/2018-07-12-issue-113.md | 51 ------------------
_posts/2018-07-12-issue-113.md | 94 +++++++++++++++++++++++++++++++++
2 files changed, 94 insertions(+), 51 deletions(-)
delete mode 100644 _drafts/2018-07-12-issue-113.md
create mode 100644 _posts/2018-07-12-issue-113.md
diff --git a/_drafts/2018-07-12-issue-113.md b/_drafts/2018-07-12-issue-113.md
deleted file mode 100644
index fa9a3dd4..00000000
--- a/_drafts/2018-07-12-issue-113.md
+++ /dev/null
@@ -1,51 +0,0 @@
----
-layout: post
-title: ! 'Issue #113'
-author: roman
----
-
-> TODO: intro comments
-
-
-
-### Starter tasks
-
-> TODO
-
-{% include task_remind.html %}
-
-### Swift Unwrapped
-
-> TODO: Latest episode(s) of Swift Unwrapped
-
-### News and community
-
-> TODO
-
-### Commits and pull requests
-
-> TODO
-
-### Accepted proposals
-
-> TODO
-
-### Returned proposals
-
-> TODO
-
-### Rejected proposals
-
-> TODO
-
-### Proposals in review
-
-> TODO
-
-### Swift Forums
-
-> TODO
-
-### Finally
-
-> TODO: something funny/fun. tweet, link, etc.
diff --git a/_posts/2018-07-12-issue-113.md b/_posts/2018-07-12-issue-113.md
new file mode 100644
index 00000000..94fbab7d
--- /dev/null
+++ b/_posts/2018-07-12-issue-113.md
@@ -0,0 +1,94 @@
+---
+layout: post
+title: ! 'Issue #113'
+author: roman
+---
+
+Welcome to the 113th issue of Swift Weekly Brief! This week was more calm, no news explosions. The repositories and Swift.org discussions had their usual activity.
+
+
+
+### Starter tasks
+
+- [SR-8135](https://bugs.swift.org/browse/SR-8135) [Package Manager] SwiftPM should only check for `clang` if it is needed
+- [SR-8137](https://bugs.swift.org/browse/SR-8137) [Package Manager] Provide mechanism to disable color diagnostics from commands
+- [SR-8138](https://bugs.swift.org/browse/SR-8138) [Package Manager] Mechanism to limit the parallelism of `swift test --parallel`
+- [SR-8139](https://bugs.swift.org/browse/SR-8139) [Package Manager] Executable init template is broken when there is a dash in package name
+- [SR-8173](https://bugs.swift.org/browse/SR-8172) [Tooling] `(T)` Reported as Single-Element Tuple Rather Than `T`
+- [SR-8190](https://bugs.swift.org/browse/SR-8190) [Standard Library] Introduce a RingBuffer to the Standard Library
+- [SR-8204](https://bugs.swift.org/browse/SR-8204) [Package Manager] Sort targets in SwiftPM generated Xcode project
+- [SR-8222](https://bugs.swift.org/browse/SR-8222) [Swift for TensorFlow] `PartitionCloner::visitCondBranchInst()` should be generalized to handle `TensorHandle` in addition to `TensorHandle`
+
+{% include task_remind.html %}
+
+### Swift Unwrapped
+
+In [episode 65](https://spec.fm/podcasts/swift-unwrapped/160476), Jesse and JP discuss the [SE-0213: Literal initialization via coercion](https://github.com/apple/swift-evolution/blob/master/proposals/0213-literal-init-via-coercion.md) proposal and its implementation.
+
+### News and community
+
+[Ankit Aggarwal](https://twitter.com/aciidb0mb3r) noticed the right thing: when `Codable` is awesome, it requires [so much boilerplate](https://github.com/apple/swift-package-manager/pull/1655/files#diff-31d171cad93e680d3ffc6cb3c4fc6848R13) to support enums. It would be great if the compiler could synthesize it, like with `Hashable` and `Equatable`.
+
+### Commits and pull requests
+
+[Mark Lacey](https://github.com/rudkx) opened [a pull request](https://github.com/apple/swift/pull/17691) to remove Swift 3 from type checher. "Goodbye, Swift 3"
+
+[Slava Pestov](https://twitter.com/slava_pestov) merged several pull requests: [#17611](https://github.com/apple/swift/pull/17611), [#17651](https://github.com/apple/swift/pull/17651) and [#17816](https://github.com/apple/swift/pull/17816) - great additions to [SE-0156: Class and Subtype existentials](https://github.com/apple/swift-evolution/blob/master/proposals/0156-subclass-existentials.md) to add support for protocols with superclass constraints.
+
+[Tony Allevato](https://github.com/allevato) merged [a pull request](https://github.com/apple/swift/pull/15593) to add Unicode properties to `Unicode.Scalar`. This implements [SE-0211](https://github.com/apple/swift-evolution/blob/master/proposals/0211-unicode-scalar-properties.md), *Add Unicode Properties to `Unicode.Scalar`*.
+
+### Accepted proposals
+
+An amendment to [SE-0202](https://github.com/jckarter/swift-evolution/blob/master/proposals/0202-random-unification.md): *Random Unification* was [accepted](https://forums.swift.org/t/amendment-to-se-0202-removing-collection-randomelement-as-a-customization-point/14101).
+
+> We decided to accept the proposed amendment to remove `randomElement` as a customization point.
+
+[SE-0216](https://github.com/apple/swift-evolution/blob/master/proposals/0216-dynamic-callable.md): *User-defined dynamically callable types* was [accepted](https://forums.swift.org/t/accepted-se-216-user-defined-dynamically-callable-types/14110).
+
+> Feedback on the proposal was almost entirely positive on both the idea of supporting dynamically-typed calls and the proposal's specific approach to providing that support.
+>
+> Therefore, the proposal was accepted without modifications.
+
+### Proposals in review
+
+[SE-0217](https://github.com/apple/swift-evolution/blob/master/proposals/0217-bangbang.md): *Introducing the `!!` "Unwrap or Die" operator to the Swift Standard Library* is [under review](https://forums.swift.org/t/se-0217-the-unwrap-or-die-operator/14107).
+
+> This proposal introduces an annotating forced-unwrapping operator to the Swift standard library. It augments the `?`, `??`, and `!` family, adding `!!`. This "unwrap or die" operator provides code-sourced rationales for failed unwraps, supporting self-documentation and safer development. The `!!` operator is commonly implemented in the wider Swift Community and should be considered for official adoption.
+>
+> The new operator benefits both experienced and new Swift users. It takes this form:
+
+{% highlight swift %}
+let value = wrappedValue !! <# "Explanation why lhs cannot be nil." #>
+{% endhighlight %}
+
+[SE-0218](https://github.com/apple/swift-evolution/blob/master/proposals/0218-introduce-compact-map-values.md): *Introduce `compactMapValues` to `Dictionary`* is [under review](https://forums.swift.org/t/se-0218-introduce-compactmapvalues-to-dictionary/14266).
+
+> This proposal adds a combined `filter`/`map` operation to `Dictionary`, as a companion to the `mapValues` and `filter` methods introduced by [SE-0165](https://github.com/apple/swift-evolution/blob/master/proposals/0165-dict.md). The new `compactMapValues` operation corresponds to `compactMap` on `Sequence`.
+
+[SE-0219](https://github.com/apple/swift-evolution/blob/master/proposals/0219-package-manager-dependency-mirroring.md): *Package Manager Dependency Mirroring* is [under review](https://forums.swift.org/t/se-0219-package-manager-dependency-mirroring/14371).
+
+> A dependency mirror refers to an alternate source location which exactly replicates the contents of the original source.
+>
+> Dependency mirroring is useful for several reasons:
+>
+> - **Availability**: Mirrors can ensure that a dependency can be always fetched, in case the original source is unavailable or even deleted.
+> - **Cache**: Access to the original source location could be slow or forbidden in the current environment.
+> - **Validation**: Mirrors can help with screening the upstream updates before making them available internally within a company.
+
+### Swift Forums
+
+[Tony Parker]() started [a pitch](https://forums.swift.org/t/pitch-move-urlsession-to-new-foundationnetworking-module/14002) to move `URLSession` and related types to a new library.
+
+> Some of the feedback we've received from the SwiftNIO team is that Foundation's dependency on `libcurl` brings in too many other libraries.
+>
+> I propose moving the networking types (except `URL` and `URLComponents`) into another library, with a working name of `swift-corelibs-foundation-networking`.
+>
+> Benefits:
+>
+> - SwiftNIO would be able to use core Foundation types.
+> - `swift-corelibs-foundation-networking` could use SwiftPM to build itself.
+> - Other projects that wish to maintain a minimum set of dependencies and do not need networking support can reduce their footprint.
+
+### Finally
+
+[I wonder if it runs Swift?](https://twitter.com/slava_pestov/status/1016534163988496384) 🤔
From 164dbb834ae833c90ca69702fe6a5acc989245ce Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 12 Jul 2018 20:14:50 +0200
Subject: [PATCH 014/589] 114 draft
---
_drafts/2018-07-26-issue-114.md | 51 +++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 _drafts/2018-07-26-issue-114.md
diff --git a/_drafts/2018-07-26-issue-114.md b/_drafts/2018-07-26-issue-114.md
new file mode 100644
index 00000000..add3500a
--- /dev/null
+++ b/_drafts/2018-07-26-issue-114.md
@@ -0,0 +1,51 @@
+---
+layout: post
+title: ! 'Issue #114'
+author: btb
+---
+
+> TODO: intro comments
+
+
+
+### Starter tasks
+
+> TODO
+
+{% include task_remind.html %}
+
+### Swift Unwrapped
+
+> TODO: Latest episode(s) of Swift Unwrapped
+
+### News and community
+
+> TODO
+
+### Commits and pull requests
+
+> TODO
+
+### Accepted proposals
+
+> TODO
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+> TODO
+
+### Swift Forums
+
+> TODO
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From fd8d005fcd6381c29a4a1bb36c22228b2aa931a8 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Sat, 14 Jul 2018 12:10:23 +0200
Subject: [PATCH 015/589] 0218 accepted
ref #402
---
_drafts/2018-07-26-issue-114.md | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/_drafts/2018-07-26-issue-114.md b/_drafts/2018-07-26-issue-114.md
index add3500a..26e5b1c7 100644
--- a/_drafts/2018-07-26-issue-114.md
+++ b/_drafts/2018-07-26-issue-114.md
@@ -28,7 +28,9 @@ author: btb
### Accepted proposals
-> TODO
+[SE-0218](https://github.com/apple/swift-evolution/blob/master/proposals/0218-introduce-compact-map-values.md): *Introduce `compactMapValues` to Dictionary* was [accepted](https://forums.swift.org/t/accepted-se-0218-introduce-compactmapvalues-to-dictionary/14448).
+
+> Feedback on the proposal was very positive – the main concern being with the name, but this falls naturally out of our existing method names so is consistent, if clunky.
### Returned proposals
From ab647f774162f34723b2669538c2d8d155ace2b6 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Sat, 14 Jul 2018 16:08:43 +0200
Subject: [PATCH 016/589] 0217 rejected
ref #402
---
_drafts/2018-07-26-issue-114.md | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/_drafts/2018-07-26-issue-114.md b/_drafts/2018-07-26-issue-114.md
index 26e5b1c7..ba5af673 100644
--- a/_drafts/2018-07-26-issue-114.md
+++ b/_drafts/2018-07-26-issue-114.md
@@ -38,7 +38,9 @@ author: btb
### Rejected proposals
-> TODO
+[SE-0217](https://github.com/apple/swift-evolution/blob/master/proposals/0217-bangbang.md): *Introducing the `!!` "Unwrap or Die" operator to the Swift Standard Library* has been [rejected](https://forums.swift.org/t/se-0217-the-unwrap-or-die-operator/14107/222).
+
+> The core team has decided to reject this proposal as written. However, the core team concurs that the motivating problems posed by the proposal are important to solve, as did an overwhelming majority of commenters who participated in the public review. The fact that the only fixit the compiler offers to unwrap an Optional is to use the `!` operator is an unfortunate legacy of the Swift 1.0 days, before anything in the SDKs Swift was designed to work with had been audited for nullability, so force-unwrapping was far more of a necessity. Nowadays this legacy is actively harmful, and encourages bad habits in new Swift programmers, as the proposal and review discussion highlight extensively. It is clear too that `!` giving inadequate runtime feedback is a major problem, since a large contingent of the Swift community follows style guides that flat-out ban it, and the `guard ... else { fatalError("message") }` idiom is widespread as a way of more thoughtfully crashing on nil with an actionable error message.
### Proposals in review
From 09aa3581cce4ca9652e02efee189dd082ec1f24a Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Sat, 14 Jul 2018 16:11:33 +0200
Subject: [PATCH 017/589] Add another link to the rationale
---
_drafts/2018-07-26-issue-114.md | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/_drafts/2018-07-26-issue-114.md b/_drafts/2018-07-26-issue-114.md
index ba5af673..d481506a 100644
--- a/_drafts/2018-07-26-issue-114.md
+++ b/_drafts/2018-07-26-issue-114.md
@@ -38,10 +38,12 @@ author: btb
### Rejected proposals
-[SE-0217](https://github.com/apple/swift-evolution/blob/master/proposals/0217-bangbang.md): *Introducing the `!!` "Unwrap or Die" operator to the Swift Standard Library* has been [rejected](https://forums.swift.org/t/se-0217-the-unwrap-or-die-operator/14107/222).
+[SE-0217](https://github.com/apple/swift-evolution/blob/master/proposals/0217-bangbang.md): *Introducing the `!!` "Unwrap or Die" operator to the Swift Standard Library* was [rejected](https://forums.swift.org/t/se-0217-the-unwrap-or-die-operator/14107/222).
> The core team has decided to reject this proposal as written. However, the core team concurs that the motivating problems posed by the proposal are important to solve, as did an overwhelming majority of commenters who participated in the public review. The fact that the only fixit the compiler offers to unwrap an Optional is to use the `!` operator is an unfortunate legacy of the Swift 1.0 days, before anything in the SDKs Swift was designed to work with had been audited for nullability, so force-unwrapping was far more of a necessity. Nowadays this legacy is actively harmful, and encourages bad habits in new Swift programmers, as the proposal and review discussion highlight extensively. It is clear too that `!` giving inadequate runtime feedback is a major problem, since a large contingent of the Swift community follows style guides that flat-out ban it, and the `guard ... else { fatalError("message") }` idiom is widespread as a way of more thoughtfully crashing on nil with an actionable error message.
+I'd encourage you to read [the rest of the rationale](https://forums.swift.org/t/se-0217-the-unwrap-or-die-operator/14107/222).
+
### Proposals in review
> TODO
From f5a0bfb2618fce75d2ffccb101f14c851dcd7e28 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Sat, 14 Jul 2018 16:18:24 +0200
Subject: [PATCH 018/589] 0215 accepted
ref #402
---
_drafts/2018-07-26-issue-114.md | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/_drafts/2018-07-26-issue-114.md b/_drafts/2018-07-26-issue-114.md
index d481506a..40bfed9a 100644
--- a/_drafts/2018-07-26-issue-114.md
+++ b/_drafts/2018-07-26-issue-114.md
@@ -28,6 +28,22 @@ author: btb
### Accepted proposals
+[SE-0215](https://github.com/apple/swift-evolution/blob/master/proposals/0215-conform-never-to-hashable-and-equatable.md): *Conform `Never` to `Equatable` and `Hashable`* was [accepted](https://forums.swift.org/t/se-0215-conform-never-to-equatable-and-hashable/13586/45).
+
+> The Core Team discussed the review, and reached the following conclusions:
+>
+> - The proposal should be accepted with the new explicit conformances to `Equatable` and `Hashable` be added to `Never`. This addresses a real point of friction users are experiencing with the use of `Never`.
+>
+> - For the same reasons conformances to `Hashable` and `Equatable` are being added to `Never`, the Core Team felt that conformances to `Error` and `Comparable` should also be added to `Never` as part of accepting this proposal. Both of these additional protocol conformances were brought up during the review.
+>
+> - `Never` should become a blessed bottom type in the language. This matches with semantics in other languages and its intended role in Swift.
+>
+> With respect to the latter, the Core Team discussed what Never being a bottom type actually meant. From that discussion we reached the following conclusions:
+>
+> - Semantically, as a bottom type, it would mean that Never should be implicitly convertible to any other type. This composes well in the type system because of the fact that instances of `Never` cannot be instantiated.
+>
+> However, being a bottom type does not imply that `Never` should implicitly conform to all protocols. Instead, convenient protocol conformances for Never should be added as deemed useful or necessary.
+
[SE-0218](https://github.com/apple/swift-evolution/blob/master/proposals/0218-introduce-compact-map-values.md): *Introduce `compactMapValues` to Dictionary* was [accepted](https://forums.swift.org/t/accepted-se-0218-introduce-compactmapvalues-to-dictionary/14448).
> Feedback on the proposal was very positive – the main concern being with the name, but this falls naturally out of our existing method names so is consistent, if clunky.
From 7dc369043cf9fa80c4b06e9352cb23e62f98adfa Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Mon, 16 Jul 2018 07:38:46 +0200
Subject: [PATCH 019/589] Remove task remind (#403)
* Remove task remind
Fixes #401
* Re-add task_remind
---
new_draft.sh | 2 --
1 file changed, 2 deletions(-)
diff --git a/new_draft.sh b/new_draft.sh
index 22745f6d..b681c72b 100755
--- a/new_draft.sh
+++ b/new_draft.sh
@@ -57,8 +57,6 @@ author: $3
> TODO
-{% include task_remind.html %}
-
### Swift Unwrapped
> TODO: Latest episode(s) of Swift Unwrapped
From b5eea975d82c30069f1306250c46fc053bfe52bb Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Tue, 24 Jul 2018 21:31:26 +0200
Subject: [PATCH 020/589] Add some more to 114
References #402
---
_drafts/2018-07-26-issue-114.md | 32 ++++++++++++++++++++------------
1 file changed, 20 insertions(+), 12 deletions(-)
diff --git a/_drafts/2018-07-26-issue-114.md b/_drafts/2018-07-26-issue-114.md
index 40bfed9a..0cbdfdc3 100644
--- a/_drafts/2018-07-26-issue-114.md
+++ b/_drafts/2018-07-26-issue-114.md
@@ -4,27 +4,29 @@ title: ! 'Issue #114'
author: btb
---
-> TODO: intro comments
+Not only did the Swift repository pass [18,000](https://twitter.com/jckarter/status/1019623101921804288) pull requests (after the internal repository had 18,000 SVN revisions after four years), it also celebrated its [8th birthday](https://twitter.com/slava_pestov/status/1021627717228220417)! Impressive numbers, and may many more follow.
### Starter tasks
-> TODO
-
-{% include task_remind.html %}
+- [SR-8252](https://bugs.swift.org/browse/SR-8252) [Compiler] Consolidate and Fix `-debug-crash-*` Flags
+- [SR-8253](https://bugs.swift.org/browse/SR-8253) [Compiler] `catch` clause should allow multiple patterns
+- [SR-8327](https://bugs.swift.org/browse/SR-8327) [Package Manager] Improve error message when bootstrapping SwiftPM without cmake or ninja
### Swift Unwrapped
-> TODO: Latest episode(s) of Swift Unwrapped
+Jesse and JP are taking [a well deserved summer break](https://twitter.com/swift_unwrapped/status/1016334803648434176). ☀️🏖
### News and community
-> TODO
+[Cory Benfield](https://github.com/Lukasa) announced the release of [`NIOTransportServices`](https://forums.swift.org/t/niotransportservices-swiftnio-and-network-framework/14567) to help users use Network.framework with a SwiftNIO API.
### Commits and pull requests
-> TODO
+[Slava Pestov](https://twitter.com/slava_pestov/) merged [a pull request](https://github.com/apple/swift/pull/18082) that continues the work of SE-0002 (!), removing multiple parameter lists from the Abstract Syntax Tree (AST).
+
+[Ben Cohen](https://twitter.com/AirspeedSwift/) merged [a pull request](https://github.com/apple/swift/pull/18098) that refactors some code making use of conditional conformances. The result? +276, -2,694 lines of code. Impressive!
### Accepted proposals
@@ -48,9 +50,9 @@ author: btb
> Feedback on the proposal was very positive – the main concern being with the name, but this falls naturally out of our existing method names so is consistent, if clunky.
-### Returned proposals
+[SE-0219](https://github.com/apple/swift-evolution/blob/master/proposals/0219-package-manager-dependency-mirroring.md): *Package Manager Dependency Mirroring* was [accepted with revisions](https://forums.swift.org/t/se-0219-package-manager-dependency-mirroring/14371/8).
-> TODO
+> The review of SE-0219 “Package Manager Dependency Mirroring" ran from July 10...17. Feedback was positive, and the proposal is accepted with revisions (adding a `swift package config get-mirror` command). Thanks to everyone who participated!
### Rejected proposals
@@ -62,12 +64,18 @@ I'd encourage you to read [the rest of the rationale](https://forums.swift.org/t
### Proposals in review
-> TODO
+[SE-0221](https://github.com/apple/swift-evolution/blob/master/proposals/0221-character-properties.md): *Character Properties* is [under review](https://forums.swift.org/t/se-0221-character-properties/14686).
+
+> [Tony Allevato](https://github.com/allevato) (a co-author here) proposed [Add Unicode Properties to `Unicode.Scalar`](https://github.com/apple/swift-evolution/blob/master/proposals/0211-unicode-scalar-properties.md), which exposes Unicode properties from the [Unicode Character Database](http://unicode.org/reports/tr44/). These are Unicode expert/enthusiast oriented properties that give a finer granularity of control and answer highly-technical and specific Unicody enquiries.
+>
+> However, they are not ergonomic and Swift makes no attempt to clarify their interpretation or usage: meaning and proper interpretation is directly tied to the Unicode Standard and the version of Unicode available at run time. There’s some low-hanging ergo-fruit ripe for picking by exposing properties directly on `Character`.
### Swift Forums
-> TODO
+[Ankit Aggarwal](https://twitter.com/aciidb0mb3r) shared news about some [recently added features](https://forums.swift.org/t/package-manifest-caching-landed/14624) in SwiftPM, namely the caching of manifests.
+
+> [..] SwiftPM will now cache the loaded manifests for effectively all operations except dependency resolution. This provides great performance improvements during iterative development. Commands like `swift build`, `swift test`, `swift package edit`, `swift package generate-xcodeproj` should start significantly faster once the cache is created. For e.g., time spent to load all manifests of Vapor reduces from 3.7s to 64ms!
### Finally
-> TODO: something funny/fun. tweet, link, etc.
+[Index out of bounds](https://twitter.com/jckarter/status/1018224486477279233). 💥
From 65cf6ab5737f18824349bd3df1568d750bb278ed Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 26 Jul 2018 17:12:43 +0200
Subject: [PATCH 021/589] Finish up issue 114 (#405)
* Finish up issue 114
* Update 2018-07-26-issue-114.md
* Update 2018-07-26-issue-114.md
---
{_drafts => _posts}/2018-07-26-issue-114.md | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
rename {_drafts => _posts}/2018-07-26-issue-114.md (76%)
diff --git a/_drafts/2018-07-26-issue-114.md b/_posts/2018-07-26-issue-114.md
similarity index 76%
rename from _drafts/2018-07-26-issue-114.md
rename to _posts/2018-07-26-issue-114.md
index 0cbdfdc3..cae930c2 100644
--- a/_drafts/2018-07-26-issue-114.md
+++ b/_posts/2018-07-26-issue-114.md
@@ -6,6 +6,8 @@ author: btb
Not only did the Swift repository pass [18,000](https://twitter.com/jckarter/status/1019623101921804288) pull requests (after the internal repository had 18,000 SVN revisions after four years), it also celebrated its [8th birthday](https://twitter.com/slava_pestov/status/1021627717228220417)! Impressive numbers, and may many more follow.
+Apart from that, I hope many of you are enjoying an awesome summer!
+
### Starter tasks
@@ -28,6 +30,8 @@ Jesse and JP are taking [a well deserved summer break](https://twitter.com/swift
[Ben Cohen](https://twitter.com/AirspeedSwift/) merged [a pull request](https://github.com/apple/swift/pull/18098) that refactors some code making use of conditional conformances. The result? +276, -2,694 lines of code. Impressive!
+[Doug Gregor](https://twitter.com/dgregor79/) merged [a pull request](https://github.com/apple/swift/pull/18163) involving protocol metadata. This is also part of ABI stability and improving reflection. According to Slava, "This all lays the groundwork for powerful metaprogramming capabilities that go far beyond the standard library's `Mirror` type". 🎉
+
### Accepted proposals
[SE-0215](https://github.com/apple/swift-evolution/blob/master/proposals/0215-conform-never-to-hashable-and-equatable.md): *Conform `Never` to `Equatable` and `Hashable`* was [accepted](https://forums.swift.org/t/se-0215-conform-never-to-equatable-and-hashable/13586/45).
@@ -76,6 +80,21 @@ I'd encourage you to read [the rest of the rationale](https://forums.swift.org/t
> [..] SwiftPM will now cache the loaded manifests for effectively all operations except dependency resolution. This provides great performance improvements during iterative development. Commands like `swift build`, `swift test`, `swift package edit`, `swift package generate-xcodeproj` should start significantly faster once the cache is created. For e.g., time spent to load all manifests of Vapor reduces from 3.7s to 64ms!
+[Jordan Rose](https://twitter.com/UINT_MIN) shared [an update on module stability](https://forums.swift.org/t/plan-for-module-stability/14551), which he will be working on in "the next year or so".
+
+> _ABI stability_ means that an executable compiled against Swift 5 will work with the Swift 6 libraries, and that an executable compiled against Swift 6 will work with the Swift 5 libraries. A related concept is module stability, which says that the _interface_ for a Swift 5 library will work with the Swift 6 compiler. (The opposite direction is less interesting.) More generally, *the interface for a library should be forward-compatible with future versions of the compiler*. This is useful in a number of ways:
+>
+> - Can test a new compiler without rebuilding all of an app's dependencies.
+> - May overlap with work to make the debugger work across Swift versions.
+> - May help reduce incremental build time by better tracking cross-target dependencies.
+> - Support for general _non-resilient_ binary frameworks.
+
+If you're interested in this, I would recommend reading the [full post](https://forums.swift.org/t/plan-for-module-stability/14551).
+
+[Nate Cook]() pitched [a proposal](https://forums.swift.org/t/array-initializer-with-access-to-uninitialized-buffer/13689) to expose the internal array initializer that has access to an uninitialized buffer.
+
+> There is currently no way to work with a buffer of uninitialized memory that then becomes a fully memory-managed `Array`. This limitation means that operations that don't know the final size of their data in advance, or that need to access noncontiguous parts of an array, are less efficient than necessary, often requiring an extra copy. This proposal suggests a new initializer for `Array` and `ContiguousArray` that would provide access to a newly created array's entire storage buffer.
+
### Finally
[Index out of bounds](https://twitter.com/jckarter/status/1018224486477279233). 💥
From a89422e99d3f7ad97e2ce97e1d43dde12c9430ee Mon Sep 17 00:00:00 2001
From: Ole Begemann
Date: Mon, 30 Jul 2018 05:18:47 +0200
Subject: [PATCH 022/589] Fix typo in issue 113 (#406)
---
_posts/2018-07-12-issue-113.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/_posts/2018-07-12-issue-113.md b/_posts/2018-07-12-issue-113.md
index 94fbab7d..dacd90a5 100644
--- a/_posts/2018-07-12-issue-113.md
+++ b/_posts/2018-07-12-issue-113.md
@@ -31,7 +31,7 @@ In [episode 65](https://spec.fm/podcasts/swift-unwrapped/160476), Jesse and JP d
### Commits and pull requests
-[Mark Lacey](https://github.com/rudkx) opened [a pull request](https://github.com/apple/swift/pull/17691) to remove Swift 3 from type checher. "Goodbye, Swift 3"
+[Mark Lacey](https://github.com/rudkx) opened [a pull request](https://github.com/apple/swift/pull/17691) to remove Swift 3 from the type checker. "Goodbye, Swift 3"
[Slava Pestov](https://twitter.com/slava_pestov) merged several pull requests: [#17611](https://github.com/apple/swift/pull/17611), [#17651](https://github.com/apple/swift/pull/17651) and [#17816](https://github.com/apple/swift/pull/17816) - great additions to [SE-0156: Class and Subtype existentials](https://github.com/apple/swift-evolution/blob/master/proposals/0156-subclass-existentials.md) to add support for protocols with superclass constraints.
From ce5c047b01c0ecb36cca499f9d8b28955350f2f6 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Mon, 30 Jul 2018 22:24:58 +0200
Subject: [PATCH 023/589] bundle update
---
Gemfile.lock | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/Gemfile.lock b/Gemfile.lock
index 578fa422..785ae3bb 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -20,12 +20,12 @@ GEM
colorator (1.1.0)
colored2 (3.1.2)
colorize (0.8.1)
- commonmarker (0.17.7.1)
+ commonmarker (0.17.9)
ruby-enum (~> 0.5)
concurrent-ruby (1.0.5)
cork (0.3.0)
colored2 (~> 3.1)
- danger (5.5.6)
+ danger (5.6.4)
claide (~> 1.0)
claide-plugins (>= 0.9.2)
colored2 (~> 3.1)
@@ -37,19 +37,19 @@ GEM
no_proxy_fix
octokit (~> 4.7)
terminal-table (~> 1)
- danger-prose (2.0.5)
+ danger-prose (2.0.7)
danger
ethon (0.11.0)
ffi (>= 1.3.0)
execjs (2.7.0)
- faraday (0.13.1)
+ faraday (0.15.2)
multipart-post (>= 1.2, < 3)
faraday-http-cache (1.3.1)
faraday (~> 0.8)
- ffi (1.9.18)
+ ffi (1.9.25)
forwardable-extended (2.6.0)
gemoji (3.0.0)
- git (1.3.0)
+ git (1.4.0)
github-pages (172)
activesupport (= 4.2.9)
github-pages-health-check (= 1.3.5)
@@ -100,10 +100,10 @@ GEM
octokit (~> 4.0)
public_suffix (~> 2.0)
typhoeus (~> 0.7)
- html-pipeline (2.7.1)
+ html-pipeline (2.8.4)
activesupport (>= 2)
nokogiri (>= 1.4)
- i18n (0.9.1)
+ i18n (0.9.5)
concurrent-ruby (~> 1.0)
jekyll (3.6.2)
addressable (~> 2.4)
@@ -121,7 +121,7 @@ GEM
jekyll-coffeescript (1.0.2)
coffee-script (~> 2.2)
coffee-script-source (~> 1.11.1)
- jekyll-commonmark (1.1.0)
+ jekyll-commonmark (1.2.0)
commonmarker (~> 0.14)
jekyll (>= 3.0, < 4.0)
jekyll-commonmark-ghpages (0.1.3)
@@ -219,28 +219,28 @@ GEM
mini_portile2 (2.3.0)
minima (2.1.1)
jekyll (~> 3.3)
- minitest (5.11.1)
+ minitest (5.11.3)
multipart-post (2.0.0)
nap (1.1.0)
net-dns (0.8.0)
no_proxy_fix (0.1.2)
- nokogiri (1.8.1)
+ nokogiri (1.8.4)
mini_portile2 (~> 2.3.0)
- octokit (4.8.0)
+ octokit (4.9.0)
sawyer (~> 0.8.0, >= 0.5.3)
open4 (1.3.4)
pathutil (0.16.1)
forwardable-extended (~> 2.6)
public_suffix (2.0.5)
- rb-fsevent (0.10.2)
+ rb-fsevent (0.10.3)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
rouge (2.2.1)
- ruby-enum (0.7.1)
+ ruby-enum (0.7.2)
i18n
rubyzip (1.2.1)
safe_yaml (1.0.4)
- sass (3.5.5)
+ sass (3.5.7)
sass-listen (~> 4.0.0)
sass-listen (4.0.0)
rb-fsevent (~> 0.9, >= 0.9.4)
@@ -253,9 +253,9 @@ GEM
thread_safe (0.3.6)
typhoeus (0.8.0)
ethon (>= 0.8.0)
- tzinfo (1.2.4)
+ tzinfo (1.2.5)
thread_safe (~> 0.1)
- unicode-display_width (1.3.0)
+ unicode-display_width (1.4.0)
PLATFORMS
ruby
From 3f0be1e7e4255ad8730e0938ba44075ed0144f85 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 9 Aug 2018 18:57:13 +0200
Subject: [PATCH 024/589] Publish issue 115
Closes #404
---
_posts/2018-08-09-issue-115.md | 82 ++++++++++++++++++++++++++++++++++
1 file changed, 82 insertions(+)
create mode 100644 _posts/2018-08-09-issue-115.md
diff --git a/_posts/2018-08-09-issue-115.md b/_posts/2018-08-09-issue-115.md
new file mode 100644
index 00000000..a6a9c852
--- /dev/null
+++ b/_posts/2018-08-09-issue-115.md
@@ -0,0 +1,82 @@
+---
+layout: post
+title: ! 'Issue #115'
+author: btb
+---
+
+A calm week during these warm two summer weeks. Nevertheless, here is a quick update on what has happened these weeks.
+
+
+
+### Starter tasks
+
+- [SR-8467](https://bugs.swift.org/browse/SR-8467) [Compiler] Invalid read when calling `swift::AnyFunctionType::getExtInfo`
+- [SR-8464](https://bugs.swift.org/browse/SR-8464) [Compiler] Attempting to print a function should require the use of `String(describing:)`
+- [SR-8453](https://bugs.swift.org/browse/SR-8453) [Compiler] Warn when redundant access modifier is added in an extension
+
+### Swift Unwrapped
+
+While Jesse and JP are on a holiday break from the podcast, you can find all previous episodes [here](https://spec.fm/podcasts/swift-unwrapped).
+
+### News and community
+
+[Nicole Jacque](https://forums.swift.org/u/nicole_jacque/summary) shared that [Swift 4.1.3](https://forums.swift.org/t/swift-4-1-3-is-released-linux-only/14847), with a [Linux-only fix](https://bugs.swift.org/browse/SR-7650), has been released.
+
+### Commits and pull requests
+
+[Slava Pestov](https://twitter.com/slava_pestov) merged [a pull request](https://github.com/apple/swift/pull/18145) getting rid of redundancy in protocol derivation.
+
+[Philippe Hausler](https://github.com/phausler) merged [a pull request](https://github.com/apple/swift/pull/18469) to fix ambiguous mapping to `Data` from a byte sequence in Swift 4.2.
+
+[David Hart](https://twitter.com/dhartbit) merged [a pull request](https://github.com/apple/swift-package-manager/pull/1537) that allows SwiftPM to use `llbuild` as a library, which will "enable great new features and enhancements in the future".
+
+[Pavel Yaskevich](https://github.com/xedin) merged [a pull request](https://github.com/apple/swift/pull/18484) to emit diagnostics directly from the constraint solver, moving away from re-type checking sub-expressions after a failure, which has been a source of misleading diagnostics and crashes.
+
+### Accepted proposals
+
+[SE-0221](https://github.com/apple/swift-evolution/blob/master/proposals/0221-character-properties.md): *Character Properties* was [accepted with pending discussion](https://forums.swift.org/t/accepted-with-pending-discussion-se-0221-character-properties/14944).
+
+> SE-0221 has been accepted, with the exception of the `.isEmoji` property.
+>
+> The core team accepts the principle for the `isEmoji` property, but wants to continue the discussion of exactly how it should work. Therefore the thread will remain open for this specific topic through **August 10th**. The other functionality can be merged into master in the meantime.
+
+### Proposals in review
+
+[SE-0220](https://github.com/apple/swift-evolution/blob/master/proposals/0220-count-where.md): *`count(where:)`* is [under review](https://forums.swift.org/t/se-0220-count-where/15048).
+
+> While Swift's `Sequence` models brings a lot of niceties that we didn't have access to in Objective-C, like `map` and `filter`, there are other useful operations on sequences that the standard library doesn't support yet. One current missing operation is `count(where:)`, which counts the number of elements in a `Sequence` that pass some test.
+
+[SE-0222](https://github.com/apple/swift-evolution/blob/master/proposals/0222-lazy-compactmap-sequence.md): *Lazy CompactMap Sequence* is [under review](https://forums.swift.org/t/se-0222-lazy-compactmap-sequence/14850).
+
+> Chaining multiple `.map()`s and `.filter()`s on a lazy collection leads to suboptimal codegen, as well as large, painful type names.
+>
+> To improve this, we propose adding a `LazyCompactMap{Sequence, Collection}` type along with some overloads on the other lazy collection types' `.map(_:)` and `.filter(_:)` functions which return this type to get better codegen and shorter type names.
+
+### Swift Forums
+
+[Brent Royal-Gordon](http://twitter.com/brentdax) pitched [a proposal](https://forums.swift.org/t/draft-fix-string-interpolation-swift-5-edition/14786) to fix String interpolation in Swift 5.
+
+> String interpolation is a simple and powerful feature for expressing complex, runtime-created strings, but the current version of the `ExpressibleByStringInterpolation` protocol has been deprecated since Swift 3. We propose a new design which improves its performance, clarity, and efficiency.
+
+[Erica Sadun](http://twitter.com/ericasadun/status/970754573609484288) pitched [a proposal](https://forums.swift.org/t/support-repeating-initializers-with-closures-not-just-values/14666) to support repeating initializers with closures.
+
+> I'd like to pitch a protocol that supports repeated initializers, both for a repeated element and for `() -> Element`. The goal is to ensure that any type that conforms to the protocol guarantees that if you can initialize with _n_ copies of a value type, then you can initialize with _n_ instances of a reference type or _n_ applications of a closure:
+
+{% highlight swift %}
+protocol RepeatingInitializable: Collection {
+
+ /// See also: `Repeat.swift`: A collection whose elements are all identical.
+ /// https://github.com/apple/swift/blob/master/stdlib/public/core/Repeat.swift
+ public init(repeating repeatedValue: Element, count: Int)
+
+ /// Allow reference types to generate new instances and value types
+ /// to use a closure to create potentially distinct values
+ ///
+ /// A collection whose elements are all created by an identical generator
+ public init(repeating repeatedGenerator: @autoclosure () -> Element, count: Int)
+}
+{% endhighlight %}
+
+### Finally
+
+[When you try to run Swift locally](https://twitter.com/aciidb0mb3r/status/1026241132848537600)...
From d6914f834696a53a67ceaa08a2d954aae5358741 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Wed, 22 Aug 2018 22:33:53 +0200
Subject: [PATCH 025/589] 116 draft
Ref #407
---
_drafts/2018-08-23-issue-116.md | 65 +++++++++++++++++++++++++++++++++
1 file changed, 65 insertions(+)
create mode 100644 _drafts/2018-08-23-issue-116.md
diff --git a/_drafts/2018-08-23-issue-116.md b/_drafts/2018-08-23-issue-116.md
new file mode 100644
index 00000000..d65eb481
--- /dev/null
+++ b/_drafts/2018-08-23-issue-116.md
@@ -0,0 +1,65 @@
+---
+layout: post
+title: ! 'Issue #116'
+author: btb
+---
+
+September is approaching swiftly, which means that we'll be seeing new iPhones and all the new software before we know it.
+
+
+
+### Starter tasks
+
+- [SR-8507](https://bugs.swift.org/browse/SR-8507) [Compiler] 'foo bar' could have fixit suggesting missing `.` rather than just `;` or `,`
+- [SR-8536](https://bugs.swift.org/browse/SR-8536) [Compiler] Warn on member assignments capturing `self`
+- [SR-8598](https://bugs.swift.org/browse/SR-8598) [Compiler] Deprecating then obsoleting can be error prone
+
+### Swift Unwrapped
+
+https://twitter.com/swift_unwrapped/status/1031542426282942464 + https://twitter.com/simjp/status/1031547194594144257
+
+### News and community
+
+https://forums.swift.org/t/swift-4-2-in-final-convergence-swift-4-2-branch-open-for-post-4-2-0-changes/15128/1
+
+### Commits and pull requests
+
+https://github.com/apple/swift/pull/18579
+
+https://github.com/apple/swift/pull/18539
+
+https://github.com/apple/swift/pull/18699
+
+### Accepted proposals
+
+224 https://forums.swift.org/t/se-0224-support-less-than-operator-in-compilation-conditions/15213/5
+
+### Returned proposals
+
+200
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+223 https://github.com/apple/swift-evolution/blob/master/proposals/0223-array-uninitialized-initializer.md
+
+224
+
+225
+
+226 https://forums.swift.org/t/se-0226-package-manager-target-based-dependency-resolution/15404
+
+### Swift Forums
+
+https://forums.swift.org/t/rfc-swift-package-publish-precheck/15398
+
+https://forums.swift.org/t/resolved-insert-is-a-bad-fixit/10764/102
+
+https://forums.swift.org/t/crowdfunding-world-domination/13655/113
+
+### Finally
+
+[Old but gold](https://twitter.com/ryzokuken/status/1030367978691260416) (I mean green).
From e295bf55f646062923fc5e15a11c5ff224d4e2c7 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 23 Aug 2018 19:48:37 +0200
Subject: [PATCH 026/589] Post issue 116
Closes #407
---
_drafts/2018-08-23-issue-116.md | 65 ----------------------
_posts/2018-08-23-issue-116.md | 97 +++++++++++++++++++++++++++++++++
2 files changed, 97 insertions(+), 65 deletions(-)
delete mode 100644 _drafts/2018-08-23-issue-116.md
create mode 100644 _posts/2018-08-23-issue-116.md
diff --git a/_drafts/2018-08-23-issue-116.md b/_drafts/2018-08-23-issue-116.md
deleted file mode 100644
index d65eb481..00000000
--- a/_drafts/2018-08-23-issue-116.md
+++ /dev/null
@@ -1,65 +0,0 @@
----
-layout: post
-title: ! 'Issue #116'
-author: btb
----
-
-September is approaching swiftly, which means that we'll be seeing new iPhones and all the new software before we know it.
-
-
-
-### Starter tasks
-
-- [SR-8507](https://bugs.swift.org/browse/SR-8507) [Compiler] 'foo bar' could have fixit suggesting missing `.` rather than just `;` or `,`
-- [SR-8536](https://bugs.swift.org/browse/SR-8536) [Compiler] Warn on member assignments capturing `self`
-- [SR-8598](https://bugs.swift.org/browse/SR-8598) [Compiler] Deprecating then obsoleting can be error prone
-
-### Swift Unwrapped
-
-https://twitter.com/swift_unwrapped/status/1031542426282942464 + https://twitter.com/simjp/status/1031547194594144257
-
-### News and community
-
-https://forums.swift.org/t/swift-4-2-in-final-convergence-swift-4-2-branch-open-for-post-4-2-0-changes/15128/1
-
-### Commits and pull requests
-
-https://github.com/apple/swift/pull/18579
-
-https://github.com/apple/swift/pull/18539
-
-https://github.com/apple/swift/pull/18699
-
-### Accepted proposals
-
-224 https://forums.swift.org/t/se-0224-support-less-than-operator-in-compilation-conditions/15213/5
-
-### Returned proposals
-
-200
-
-### Rejected proposals
-
-> TODO
-
-### Proposals in review
-
-223 https://github.com/apple/swift-evolution/blob/master/proposals/0223-array-uninitialized-initializer.md
-
-224
-
-225
-
-226 https://forums.swift.org/t/se-0226-package-manager-target-based-dependency-resolution/15404
-
-### Swift Forums
-
-https://forums.swift.org/t/rfc-swift-package-publish-precheck/15398
-
-https://forums.swift.org/t/resolved-insert-is-a-bad-fixit/10764/102
-
-https://forums.swift.org/t/crowdfunding-world-domination/13655/113
-
-### Finally
-
-[Old but gold](https://twitter.com/ryzokuken/status/1030367978691260416) (I mean green).
diff --git a/_posts/2018-08-23-issue-116.md b/_posts/2018-08-23-issue-116.md
new file mode 100644
index 00000000..a1e1b120
--- /dev/null
+++ b/_posts/2018-08-23-issue-116.md
@@ -0,0 +1,97 @@
+---
+layout: post
+title: ! 'Issue #116'
+author: btb
+---
+
+September is approaching swiftly, which means that we'll be seeing new iPhones and all the new software before we know it.
+
+And although that won't yet bring Swift 5, we will get Swift 4.2 that comes with some awesome improvements as well, plus we'll still have Swift 5 to look forward to!
+
+
+
+### Starter tasks
+
+- [SR-8507](https://bugs.swift.org/browse/SR-8507) [Compiler] 'foo bar' could have fixit suggesting missing `.` rather than just `;` or `,`
+- [SR-8536](https://bugs.swift.org/browse/SR-8536) [Compiler] Warn on member assignments capturing `self`
+- [SR-8598](https://bugs.swift.org/browse/SR-8598) [Compiler] Deprecating then obsoleting can be error prone
+
+### Swift Unwrapped
+
+Swift Unwrapped is back from the summer break, and will take on [a new format](https://twitter.com/simjp/status/1031547194594144257) with longer episodes once a month.
+
+In [episode 66](https://spec.fm/podcasts/swift-unwrapped/184831), Jesse and JP discuss the plan for module stability, outlined by [Jordan Rose](https://twitter.com/uint_min) on the [forums](https://forums.swift.org/t/plan-for-module-stability/14551).
+
+### News and community
+
+[Ted Kremenek](https://twitter.com/tkremenek) shared that Swift 4.2 is [in final convergence](https://forums.swift.org/t/swift-4-2-in-final-convergence-swift-4-2-branch-open-for-post-4-2-0-changes/15128/1). Not much longer now!
+
+### Commits and pull requests
+
+[Jordan Rose](https://twitter.com/uint_min) merged [a pull request](https://github.com/apple/swift/pull/18579) that adds default argument values in the generated interface view within Xcode. This also closes [SR-2608](https://bugs.swift.org/browse/SR-2608).
+
+[Doug Gregor](https://twitter.com/dgregor79) merged [a pull request](https://github.com/apple/swift/pull/18539) improving name lookup from declaration checking. "With the request evaluator, new function type representation, `SubstitutionMap` redesign and removal of curried parameter lists we’re finally paying off a lot of tech debt - the implementation is catching up to the language" 🎉
+
+[Greg Titus](https://twitter.com/gregtitus) merged [a pull request](https://github.com/apple/swift/pull/18699) that ports Optional unwrapping fixits to the new diagnostics framework.
+
+### Accepted proposals
+
+[SE-0224](https://github.com/apple/swift-evolution/blob/master/proposals/0224-ifswift-lessthan-operator.md): *Support 'less than' operator in compilation conditions* was [accepted](https://forums.swift.org/t/se-0224-support-less-than-operator-in-compilation-conditions/15213/5).
+
+> The proposal text will be amended to include the mention of the change of behavior to `#if compiler`, which is also reflected in the implementation and logically fits in with this change:
+>
+>> The proposal only mentions `#if swift(<4.2)` but the implementation also appears to support `#if compiler(<4.2)` from [SE-0212](https://github.com/apple/swift-evolution/blob/master/proposals/0212-compiler-version-directive.md).
+
+### Returned proposals
+
+[SE-0200](https://github.com/apple/swift-evolution/blob/master/proposals/0200-raw-string-escaping.md): *Enhancing String Literals Delimiters to Support Raw Text* was [returned for revision](https://forums.swift.org/t/se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15420).
+
+> Like many computer languages, Swift uses an escape character (`\`) to create a special interpretation of subsequent characters within a string literal. Escape character sequences represent a set of predefined, non-printing characters as well as string delimiters (the double quote), the escape character (the backslash itself), and (uniquely in Swift) to allow in-string expression interpolation.
+>
+> Escape characters provide useful and necessary capabilities but strings containing many escape sequences are difficult to read. Other languages have solved this problem by providing an alternate "raw" string literal syntax which does not process escape sequences. As the name suggests, raw string literals allow you to use "raw" text, incorporating backslashes and double quotes without escaping.
+>
+> We propose to alter Swift's string literal design to do the same, using a new design which we believe fits Swift's simple and clean syntax. This design supports both single-line and multi-line string literals, and can contain any content whatsoever.
+
+### Proposals in review
+
+[SE-0223](https://github.com/apple/swift-evolution/blob/master/proposals/0223-array-uninitialized-initializer.md): *Accessing an Array's Uninitialized Buffer* is [under review](https://forums.swift.org/t/se-0223-accessing-an-arrays-uninitialized-buffer/15194).
+
+> This proposal suggests a new initializer and method for `Array` and `ContiguousArray` that provide access to an array's uninitialized storage buffer.
+>
+> Some collection operations require working on a fixed-size buffer of uninitialized memory. For example, one O(*n*) algorithm for performing a stable partition of an array is as follows:
+>
+> 1. Create a new array the same size as the original array.
+> 2. Iterate over the original array, copying matching elements to the beginning of the new array and non-matching elements to the end.
+> 3. When finished iterating, reverse the slice of non-matching elements.
+>
+> Unfortunately, the standard library provides no way to create an array of a particular size without allocating every element, or to copy elements to the end of an array's buffer without initializing every preceding element.
+
+[SE-0225](https://github.com/apple/swift-evolution/blob/master/proposals/0225-binaryinteger-iseven-isodd-ismultiple.md): *Adding `isEven`, `isOdd`, `isMultiple` to `BinaryInteger`* is [under review](https://forums.swift.org/t/se-0225-adding-iseven-isodd-ismultiple-to-binaryinteger/15382).
+
+> This proposal adds `var isEven: Bool`, `var isOdd: Bool`, and `func isMultiple(of other: Self) -> Bool` to the `BinaryInteger` protocol. `isEven` and `isOdd` are convenience properties for querying the [parity](https://en.wikipedia.org/wiki/Parity_(mathematics)) of the integer and `isMultiple` is a more general function to determine whether an integer is a multiple of another integer.
+
+[SE-0226](https://github.com/apple/swift-evolution/blob/master/proposals/0226-package-manager-target-based-dep-resolution.md): *Package Manager Target Based Dependency Resolution* is [under review](https://forums.swift.org/t/se-0226-package-manager-target-based-dependency-resolution/15404).
+
+> This is a proposal for enhancing the package resolution process to resolve the minimal set of dependencies that are used in a package graph.
+>
+> The current package resolution process resolves all declared dependencies in the package graph. Some of the declared dependencies may not be required by the products that are being used in the package graph. For e.g., a package may be using some additional dependencies for its test targets. The packages that depend on this package doesn't need to resolve such additional dependencies. These dependencies increase the overall constraint in the dependency resolution process that can otherwise be avoided. It can cause more cases of dependency hell if two packages want to use incompatible versions of a dependency that they only use for their unexported products. Cloning unnecessary dependencies also impacts the performance of the resolution process.
+
+### Swift Forums
+
+[Ankit Aggarwal](https://twitter.com/aciidb0mb3r) shared [a small proposal](https://forums.swift.org/t/rfc-swift-package-publish-precheck/15398) regarding tagging and publishing of Swift packages.
+
+> Swift packages can be in a bunch of states which makes them inappropriate for tagging or publishing. I think having a command to detect such states would be valuable for Swift package authors. In the future, this can even evolve into a larger tag-and-publish workflow feature.
+
+[Greg Titus](https://twitter.com/gregtitus) shared [an update](https://forums.swift.org/t/resolved-insert-is-a-bad-fixit/10764/102) on the much improved fixits for Optional chaining and force unwrapping.
+
+> [..] The force unwrap fixit still exists, but it is now never the only or preferred fixit offered, and hopefully the explanations of the errors are a lot more beginner-friendly now.
+
+These error messages have been much-improved. I recommend [taking a look](https://forums.swift.org/t/resolved-insert-is-a-bad-fixit/10764/102) at the changes yourself.
+
+[Ted Kremenek](https://twitter.com/tkremenek) shared [they are evaluating implementing the Language Server Protocol in Swift](https://forums.swift.org/t/crowdfunding-world-domination/13655/113).
+
+> [We] have also been recently discussing offline LSP and evaluating potential strategies. We'll start a thread soon once we've put those thoughts in order; should be soon.
+
+### Finally
+
+[Old but ~~gold~~ green](https://twitter.com/ryzokuken/status/1030367978691260416).
From e17c3410c66adbe68a270c9f952a7394e06fffdf Mon Sep 17 00:00:00 2001
From: Greg Heo
Date: Wed, 5 Sep 2018 19:19:30 -0700
Subject: [PATCH 027/589] [117] Add initial draft and notes
---
_drafts/2018-09-06-issue-117.md | 64 +++++++++++++++++++++++++++++++++
1 file changed, 64 insertions(+)
create mode 100644 _drafts/2018-09-06-issue-117.md
diff --git a/_drafts/2018-09-06-issue-117.md b/_drafts/2018-09-06-issue-117.md
new file mode 100644
index 00000000..70f4dae3
--- /dev/null
+++ b/_drafts/2018-09-06-issue-117.md
@@ -0,0 +1,64 @@
+---
+layout: post
+title: ! 'Issue #117'
+author: gregheo
+---
+
+> TODO: intro comments and lines of verse
+
+
+
+### Swift Unwrapped
+
+> TODO: Latest episode(s) of Swift Unwrapped
+
+### News and community
+
+The LLVM Foundation [announced the program for the 2018 LLVM Developers' Meeting](http://blog.llvm.org/2018/08/announcing-program-for-2018-llvm.html) scheduled for October 17–18 in San Jose. Swift nerds will [recognize](https://llvm.org/devmtg/2018-10/talk-abstracts.html#talk15) several [names](https://llvm.org/devmtg/2018-10/talk-abstracts.html#talk13) on the [program](https://llvm.org/devmtg/2018-10/talk-abstracts.html#talk12).
+
+The [Swift Server Work Group](https://swift.org/server/) has a new stated goal:
+
+> The main goal of the Swift Server work group is to eventually recommend libraries and tools for server application development with Swift.
+
+[SwiftNIO](https://github.com/apple/swift-nio) is currently the sole recommended library, but you can stay on top of updates from the group in the [Server category of the Swift forums](https://forums.swift.org/c/development/server).
+
+
+### Commits and pull requests
+
+[Doug Gregor](https://github.com/DougGregor) merged in some new ["Request-Evaluator" infrastructure](https://twitter.com/dgregor79/status/1032774695039324160) around the type checker to help eliminate mutable state and track dependencies. See the [design document](https://github.com/apple/swift/blob/master/docs/RequestEvaluator.md) and [pull request](https://github.com/apple/swift/pull/18923) for all the details.
+
+[Erik Eckstein](https://github.com/eeckstein) removed the now unneeded [pinning built-ins and SIL instructions](https://github.com/apple/swift/pull/18922). As [summarized in a tweet](https://twitter.com/slava_pestov/status/1032871154032111616): "Nice simplification of the Swift reference counting model - the entire concept of “pinning” is gone now, thanks to exclusivity enforcement".
+
+
+### Accepted proposals
+
+[SE-0200](https://github.com/apple/swift-evolution/blob/master/proposals/0200-raw-string-escaping.md): _Enhancing String Literals Delimiters to Support Raw Text_ was [accepted](https://forums.swift.org/t/accepted-se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15822/1).
+
+[SE-0226](https://github.com/apple/swift-evolution/blob/master/proposals/0226-package-manager-target-based-dep-resolution.md): _Package Manager Target Based Dependency Resolution_
+was [accepted](https://forums.swift.org/t/se-0226-package-manager-target-based-dependency-resolution/15404/16) with generally positive comments all around.
+
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+[SE-0132](https://github.com/apple/swift-evolution/blob/master/proposals/0132-sequence-end-ops.md): _Rationalizing Sequence end-operation names_ [was rejected](https://github.com/apple/swift-evolution/pull/898). Although it would make sequence and collection operation naming more consistent (e.g. "first" vs "start" vs "prefix"), the core team decided the source compatibility hit would be too great.
+
+[SE-0222](https://github.com/apple/swift-evolution/blob/master/proposals/0222-lazy-compactmap-sequence.md): _Lazy CompactMap Sequence_ [was rejected](https://forums.swift.org/t/se-0222-lazy-compactmap-sequence/14850/16). The proposal would have added a new `LazyCompactMapCollection` to represent a `compactMap` to more efficiently handle a chain of `map` and `filter` operations.
+
+The core team decided the performance benefits were negligible and not worth the increased complexity pointed out during the review discussion.
+
+
+### Proposals in review
+
+> TODO
+
+### Swift Forums
+
+> TODO
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From ca9e6edaafdcced7928aa0184e363eff0818dc5c Mon Sep 17 00:00:00 2001
From: Greg Heo
Date: Wed, 5 Sep 2018 21:57:27 -0700
Subject: [PATCH 028/589] [117] More words
---
_drafts/2018-09-06-issue-117.md | 32 ++++++++++++++++++++++++--------
1 file changed, 24 insertions(+), 8 deletions(-)
diff --git a/_drafts/2018-09-06-issue-117.md b/_drafts/2018-09-06-issue-117.md
index 70f4dae3..4d2c5635 100644
--- a/_drafts/2018-09-06-issue-117.md
+++ b/_drafts/2018-09-06-issue-117.md
@@ -8,9 +8,6 @@ author: gregheo
-### Swift Unwrapped
-
-> TODO: Latest episode(s) of Swift Unwrapped
### News and community
@@ -32,7 +29,11 @@ The [Swift Server Work Group](https://swift.org/server/) has a new stated goal:
### Accepted proposals
-[SE-0200](https://github.com/apple/swift-evolution/blob/master/proposals/0200-raw-string-escaping.md): _Enhancing String Literals Delimiters to Support Raw Text_ was [accepted](https://forums.swift.org/t/accepted-se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15822/1).
+[SE-0200](https://github.com/apple/swift-evolution/blob/master/proposals/0200-raw-string-escaping.md): _Enhancing String Literals Delimiters to Support Raw Text_ [was accepted](https://forums.swift.org/t/accepted-se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15822/1). With extra delimiting characters `#"like this"#`, you’ll be able to control how escaping works and have an easier time writing "raw" text.
+
+This is one of the best written Swift Evolution proposals in my opinion, and has an epic **461** [forum posts](https://forums.swift.org/t/pure-bikeshedding-raw-strings-why-yes-again/13866) split [across](https://forums.swift.org/t/se-0200-raw-mode-string-literals/11048) three [threads](https://forums.swift.org/t/se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15420).
+
+[SE-0225](https://github.com/apple/swift-evolution/blob/master/proposals/0225-binaryinteger-iseven-isodd-ismultiple.md): _Adding `isMultiple` to `BinaryInteger`_ [was accepted with modifications](https://forums.swift.org/t/accepted-with-modifications-se-0225-adding-ismultiple-to-binaryinteger/15689). The `isMultiple(of:)` method made it, but proposed computed properties `isEven` and `isOdd` were dropped.
[SE-0226](https://github.com/apple/swift-evolution/blob/master/proposals/0226-package-manager-target-based-dep-resolution.md): _Package Manager Target Based Dependency Resolution_
was [accepted](https://forums.swift.org/t/se-0226-package-manager-target-based-dependency-resolution/15404/16) with generally positive comments all around.
@@ -40,7 +41,8 @@ was [accepted](https://forums.swift.org/t/se-0226-package-manager-target-based-d
### Returned proposals
-> TODO
+[SE-0223](https://github.com/apple/swift-evolution/blob/master/proposals/0223-array-uninitialized-initializer.md): _Accessing an Array's Uninitialized Buffer_ [was returned for revision](https://forums.swift.org/t/se-0223-accessing-an-arrays-uninitialized-buffer/15194/40). This proposal would allow you to initialize and access arrays via raw buffer. The core team is looking for more usage experience and discussion mostly around handling errors.
+
### Rejected proposals
@@ -53,12 +55,26 @@ The core team decided the performance benefits were negligible and not worth the
### Proposals in review
-> TODO
+[SE-0227](https://github.com/apple/swift-evolution/blob/master/proposals/0227-identity-keypath.md): _Identity key path_ [is in review](https://forums.swift.org/t/se-0227-identity-key-path/15830) through Friday September 14.
+
+Swift values already have a `.self` pseudo-property to refer to the value itself, and this proposal would add a corresponding key path `\.self`.
+
### Swift Forums
-> TODO
+Containerization has officially reached the world of Swift: Haris Amin posted about plans to offer [an official Docker image](https://forums.swift.org/t/kickstarting-new-official-docker-support-for-swift/15487) for the community.
+
+[Doug Gregor](https://forums.swift.org/u/Douglas_Gregor) wrote a pitch for [Opaque result types](https://forums.swift.org/t/opaque-result-types/15645) — the ability to hide a function’s exact return type and specify its capabilities instead.
+
+[Erik Eckstein](https://forums.swift.org/u/Erik_Eckstein) wrote an update on [improvements to running benchmarks on pull requests](https://forums.swift.org/t/improved-benchmarking-for-pull-requests/15461). They are faster, less noisy, and have nicer reports — a great boost to developer productivity.
+
+[Alex Hoppen](https://forums.swift.org/u/ahoppen) announced [SwiftSyntax is now in its own repository](https://forums.swift.org/t/swiftsyntax-is-now-a-swiftpm-project/15691) and available to include via Swift Package Manager. [SwiftSyntax](https://github.com/apple/swift-syntax) is a wrapper for [libSyntax](https://github.com/apple/swift/tree/master/lib/Syntax) and lets you write tools to work with Swift code in Swift.
+
+[Daniel Duan highlighted](https://twitter.com/daniel_duan/status/1035331454467796993) the [approval post for SE-0225](https://forums.swift.org/t/accepted-with-modifications-se-0225-adding-ismultiple-to-binaryinteger/15689) mentioned above, where review manager [John McCall](https://forums.swift.org/u/John_McCall) listed guidelines for what gets included in the standard library:
+
+> To be considered for addition to the library, a proposed feature must satisfy two conditions: it must provide functionality that is useful to a substantial population of Swift programmers, and it must provide substantial advantages over the alternative ways of accomplishing that functionality.
+
### Finally
-> TODO: something funny/fun. tweet, link, etc.
+Add this to the category of things I read all the time, but never had to say out loud and [don't know how to pronounce](https://twitter.com/jckarter/status/1035568097535508480).
From 7341b61e6ff1d84b38fd0640198319733350d8e3 Mon Sep 17 00:00:00 2001
From: Greg Heo
Date: Wed, 5 Sep 2018 22:09:16 -0700
Subject: [PATCH 029/589] Boosted default graf font size
Blockquote font was bigger than paragraph font, which seems weird, so
make them the same. Also, we're not getting any younger so let's be kind
to our eyes :).
---
css/style.css | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/css/style.css b/css/style.css
index e2003831..4e100447 100644
--- a/css/style.css
+++ b/css/style.css
@@ -7,8 +7,9 @@ body {
}
body p {
- line-height: 2.5rem;
+ line-height: 2.7rem;
padding: 0.5rem 0rem 0.5rem 0rem;
+ font-size: 16px;
}
hr {
From aea0cae70e2bb4acf2504e2084769a84f6848e9a Mon Sep 17 00:00:00 2001
From: Greg Heo
Date: Thu, 6 Sep 2018 08:07:26 -0700
Subject: [PATCH 030/589] [117] Final tweaks and edits
---
_drafts/2018-09-06-issue-117.md | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/_drafts/2018-09-06-issue-117.md b/_drafts/2018-09-06-issue-117.md
index 4d2c5635..f5d5272d 100644
--- a/_drafts/2018-09-06-issue-117.md
+++ b/_drafts/2018-09-06-issue-117.md
@@ -26,29 +26,31 @@ The [Swift Server Work Group](https://swift.org/server/) has a new stated goal:
[Erik Eckstein](https://github.com/eeckstein) removed the now unneeded [pinning built-ins and SIL instructions](https://github.com/apple/swift/pull/18922). As [summarized in a tweet](https://twitter.com/slava_pestov/status/1032871154032111616): "Nice simplification of the Swift reference counting model - the entire concept of “pinning” is gone now, thanks to exclusivity enforcement".
+Great work by [Pavol Vaskovic](https://bugs.swift.org/secure/ViewProfile.jspa?name=palimondo) on spotting a recent regression [causing incorrect sorting](https://bugs.swift.org/browse/SR-8682) (!) from the standard library, and [Kirill Chibisov](https://github.com/overlazy) for [the bug fix](https://github.com/apple/swift/pull/19107). Test your code and watch your variable names!
+
### Accepted proposals
[SE-0200](https://github.com/apple/swift-evolution/blob/master/proposals/0200-raw-string-escaping.md): _Enhancing String Literals Delimiters to Support Raw Text_ [was accepted](https://forums.swift.org/t/accepted-se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15822/1). With extra delimiting characters `#"like this"#`, you’ll be able to control how escaping works and have an easier time writing "raw" text.
-This is one of the best written Swift Evolution proposals in my opinion, and has an epic **461** [forum posts](https://forums.swift.org/t/pure-bikeshedding-raw-strings-why-yes-again/13866) split [across](https://forums.swift.org/t/se-0200-raw-mode-string-literals/11048) three [threads](https://forums.swift.org/t/se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15420).
+This is one of the most well written Swift Evolution proposals in my opinion, and has an epic **461** [forum posts](https://forums.swift.org/t/pure-bikeshedding-raw-strings-why-yes-again/13866) split [across](https://forums.swift.org/t/se-0200-raw-mode-string-literals/11048) three [threads](https://forums.swift.org/t/se-0200-enhancing-string-literals-delimiters-to-support-raw-text/15420) for your reading pleasure.
-[SE-0225](https://github.com/apple/swift-evolution/blob/master/proposals/0225-binaryinteger-iseven-isodd-ismultiple.md): _Adding `isMultiple` to `BinaryInteger`_ [was accepted with modifications](https://forums.swift.org/t/accepted-with-modifications-se-0225-adding-ismultiple-to-binaryinteger/15689). The `isMultiple(of:)` method made it, but proposed computed properties `isEven` and `isOdd` were dropped.
+[SE-0225](https://github.com/apple/swift-evolution/blob/master/proposals/0225-binaryinteger-iseven-isodd-ismultiple.md): _Adding `isMultiple` to `BinaryInteger`_ [was accepted with modifications](https://forums.swift.org/t/accepted-with-modifications-se-0225-adding-ismultiple-to-binaryinteger/15689). The `isMultiple(of:)` method made it in, but proposed computed properties `isEven` and `isOdd` were dropped.
[SE-0226](https://github.com/apple/swift-evolution/blob/master/proposals/0226-package-manager-target-based-dep-resolution.md): _Package Manager Target Based Dependency Resolution_
-was [accepted](https://forums.swift.org/t/se-0226-package-manager-target-based-dependency-resolution/15404/16) with generally positive comments all around.
+was [accepted](https://forums.swift.org/t/se-0226-package-manager-target-based-dependency-resolution/15404/16) with generally positive comments all around. This change will speed up package resolution by only resolving dependencies that are actually used rather than all declared dependencies.
### Returned proposals
-[SE-0223](https://github.com/apple/swift-evolution/blob/master/proposals/0223-array-uninitialized-initializer.md): _Accessing an Array's Uninitialized Buffer_ [was returned for revision](https://forums.swift.org/t/se-0223-accessing-an-arrays-uninitialized-buffer/15194/40). This proposal would allow you to initialize and access arrays via raw buffer. The core team is looking for more usage experience and discussion mostly around handling errors.
+[SE-0223](https://github.com/apple/swift-evolution/blob/master/proposals/0223-array-uninitialized-initializer.md): _Accessing an Array's Uninitialized Buffer_ [was returned for revision](https://forums.swift.org/t/se-0223-accessing-an-arrays-uninitialized-buffer/15194/40). This proposal would allow you to initialize and access arrays via raw buffer. The core team was looking for more usage experience and discussion around handling errors.
### Rejected proposals
[SE-0132](https://github.com/apple/swift-evolution/blob/master/proposals/0132-sequence-end-ops.md): _Rationalizing Sequence end-operation names_ [was rejected](https://github.com/apple/swift-evolution/pull/898). Although it would make sequence and collection operation naming more consistent (e.g. "first" vs "start" vs "prefix"), the core team decided the source compatibility hit would be too great.
-[SE-0222](https://github.com/apple/swift-evolution/blob/master/proposals/0222-lazy-compactmap-sequence.md): _Lazy CompactMap Sequence_ [was rejected](https://forums.swift.org/t/se-0222-lazy-compactmap-sequence/14850/16). The proposal would have added a new `LazyCompactMapCollection` to represent a `compactMap` to more efficiently handle a chain of `map` and `filter` operations.
+[SE-0222](https://github.com/apple/swift-evolution/blob/master/proposals/0222-lazy-compactmap-sequence.md): _Lazy CompactMap Sequence_ [was rejected](https://forums.swift.org/t/se-0222-lazy-compactmap-sequence/14850/16). The proposal would have added a new `LazyCompactMapCollection` to represent a `compactMap` to more efficiently handle chains of `map` and `filter` operations.
The core team decided the performance benefits were negligible and not worth the increased complexity pointed out during the review discussion.
From bf54f62d08aa673fa0bd275cd939f8ec9d579bfe Mon Sep 17 00:00:00 2001
From: Greg Heo
Date: Thu, 6 Sep 2018 08:08:15 -0700
Subject: [PATCH 031/589] [117] Add preamble
---
_drafts/2018-09-06-issue-117.md | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/_drafts/2018-09-06-issue-117.md b/_drafts/2018-09-06-issue-117.md
index f5d5272d..b73f3d07 100644
--- a/_drafts/2018-09-06-issue-117.md
+++ b/_drafts/2018-09-06-issue-117.md
@@ -4,7 +4,19 @@ title: ! 'Issue #117'
author: gregheo
---
-> TODO: intro comments and lines of verse
+> Bikeshedding, literals, thinking raw strings;
+> Swift on the server is earning its wings.
+>
+> Numbers are multiples, even or odd;
+> Pull requests benchmarking faster, no fraud.
+>
+> September announcements are here once again;
+> New phones and devices, and soon Xcode 10.
+
+September is here, and we're closing out the Summer of Swift. We’ve almost made it through the beta period and now iOS 12, macOS Mojave, Xcode 10, and Swift 4.2 are upon us.
+
+There’s been a flurry of activity on Swift Evolution and around the community; let’s get started with all the latest!
+
From e0f8591f9a37bff029a8c502a5c83408c26164d2 Mon Sep 17 00:00:00 2001
From: Greg Heo
Date: Thu, 6 Sep 2018 08:15:54 -0700
Subject: [PATCH 032/589] [117] Publish issue 117; closes #408.
---
{_drafts => _posts}/2018-09-06-issue-117.md | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename {_drafts => _posts}/2018-09-06-issue-117.md (100%)
diff --git a/_drafts/2018-09-06-issue-117.md b/_posts/2018-09-06-issue-117.md
similarity index 100%
rename from _drafts/2018-09-06-issue-117.md
rename to _posts/2018-09-06-issue-117.md
From cfc596390f56006a0e6ac54cdd9457774e417ac4 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Wed, 19 Sep 2018 06:57:49 +0200
Subject: [PATCH 033/589] 118 initial draft
References #409
---
_drafts/2018-09-20-issue-118.md | 75 +++++++++++++++++++++++++++++++++
1 file changed, 75 insertions(+)
create mode 100644 _drafts/2018-09-20-issue-118.md
diff --git a/_drafts/2018-09-20-issue-118.md b/_drafts/2018-09-20-issue-118.md
new file mode 100644
index 00000000..feef7a4d
--- /dev/null
+++ b/_drafts/2018-09-20-issue-118.md
@@ -0,0 +1,75 @@
+---
+layout: post
+title: ! 'Issue #118'
+author: btb
+---
+
+So the lovely Greg took over last issue as I was at a conference, [try! Swift NYC](https://www.tryswift.co/events/2018/nyc/). I've had an amazing time at the conference (and New York) where I gave [a talk](https://speakerdeck.com/basthomas/taken-for-granted) about the history of Swift. A video of that talk will be posted in the future.
+
+A big thank you goes out to the organizers, the volunteers and all of those who I got to meet at the conference!
+
+That being said, and without further ado, here is an update on everything Swift from the past two weeks. A lot has happened!
+
+
+
+### Starter tasks
+
+- [SR-8625](https://bugs.swift.org/browse/SR-8625) [Compiler] Swift should warn if a closures is passed to an argument that is an `autoclosure`
+- [SR-8645](https://bugs.swift.org/browse/SR-8645) [Package Manager] BuildPlan error descriptions aren't printed
+- [SR-8646](https://bugs.swift.org/browse/SR-8646) [Package Manager] `BuildPlan.Error.missingLinuxMain` description rephrasing
+- [SR-8671](https://bugs.swift.org/browse/SR-8671) [Package Manager] `ARG_MAX` limit exceeded when compiles huge project
+
+### News and community
+
+https://swift.org/blog/swift-4-2-released/
+
+Xcode 10
+
+https://oleb.net/blog/2018/06/whats-new-in-swift-4-2-playground/
+
+https://www.hackingwithswift.com/articles/126/whats-new-in-swift-5-0
+
+https://numerics.diploid.ca (xwu)
+
+### Commits and pull requests
+
+The constraint solver is now iterative rather than recursive — this should fix some stack overflow issues: https://github.com/apple/swift/pull/19203
+
+In Swift, foo.self always evaluates to foo. So naturally, .self should be a valid keypath as well: https://github.com/apple/swift/pull/19382
+Now we’re just waiting for tuple keypaths so we can have full parity between member access syntax and keypath syntax
+
+### Accepted proposals
+
+https://github.com/apple/swift-evolution/blob/master/proposals/0227-identity-keypath.md + https://forums.swift.org/t/accepted-se-0227-identity-key-path/16278
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+https://forums.swift.org/t/se-0228-fix-expressible-by-string-interpolation/16031
+
+### Swift Forums
+
+https://forums.swift.org/t/server-work-group-new-focus-areas/15969
+
+https://forums.swift.org/t/notes-on-numerics-in-swift/15746
+
+> A great number of questions are raised in these forums as to the functioning and design of numeric types and protocols in Swift. Sometimes, the answer can be found only by digging through the source code, and even then it's hard to place what you learn there within a larger context. Therefore, I've compiled a series of articles that delve into these topics in more detail.
+
+https://forums.swift.org/t/allow-self-x-in-class-convenience-initializers/15924
+
+> If we’re lucky we might soon be able to assign to ‘self’ in class convenience initializers, addressing a long-standing language restriction
+
+https://forums.swift.org/t/stable-branch-update-tomorrow-clang-llvm-required/16142
+
+> Swift's stable branch (v5.0) is upgrading to LLVM 7.0
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From 3a2c5c4d1749047c3f6e950136b5a2195c5e50a1 Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Thu, 20 Sep 2018 18:28:14 +0200
Subject: [PATCH 034/589] Finish 118 (#411)
---
_drafts/2018-09-20-issue-118.md | 75 -------------------
_posts/2018-09-20-issue-118.md | 124 ++++++++++++++++++++++++++++++++
2 files changed, 124 insertions(+), 75 deletions(-)
delete mode 100644 _drafts/2018-09-20-issue-118.md
create mode 100644 _posts/2018-09-20-issue-118.md
diff --git a/_drafts/2018-09-20-issue-118.md b/_drafts/2018-09-20-issue-118.md
deleted file mode 100644
index feef7a4d..00000000
--- a/_drafts/2018-09-20-issue-118.md
+++ /dev/null
@@ -1,75 +0,0 @@
----
-layout: post
-title: ! 'Issue #118'
-author: btb
----
-
-So the lovely Greg took over last issue as I was at a conference, [try! Swift NYC](https://www.tryswift.co/events/2018/nyc/). I've had an amazing time at the conference (and New York) where I gave [a talk](https://speakerdeck.com/basthomas/taken-for-granted) about the history of Swift. A video of that talk will be posted in the future.
-
-A big thank you goes out to the organizers, the volunteers and all of those who I got to meet at the conference!
-
-That being said, and without further ado, here is an update on everything Swift from the past two weeks. A lot has happened!
-
-
-
-### Starter tasks
-
-- [SR-8625](https://bugs.swift.org/browse/SR-8625) [Compiler] Swift should warn if a closures is passed to an argument that is an `autoclosure`
-- [SR-8645](https://bugs.swift.org/browse/SR-8645) [Package Manager] BuildPlan error descriptions aren't printed
-- [SR-8646](https://bugs.swift.org/browse/SR-8646) [Package Manager] `BuildPlan.Error.missingLinuxMain` description rephrasing
-- [SR-8671](https://bugs.swift.org/browse/SR-8671) [Package Manager] `ARG_MAX` limit exceeded when compiles huge project
-
-### News and community
-
-https://swift.org/blog/swift-4-2-released/
-
-Xcode 10
-
-https://oleb.net/blog/2018/06/whats-new-in-swift-4-2-playground/
-
-https://www.hackingwithswift.com/articles/126/whats-new-in-swift-5-0
-
-https://numerics.diploid.ca (xwu)
-
-### Commits and pull requests
-
-The constraint solver is now iterative rather than recursive — this should fix some stack overflow issues: https://github.com/apple/swift/pull/19203
-
-In Swift, foo.self always evaluates to foo. So naturally, .self should be a valid keypath as well: https://github.com/apple/swift/pull/19382
-Now we’re just waiting for tuple keypaths so we can have full parity between member access syntax and keypath syntax
-
-### Accepted proposals
-
-https://github.com/apple/swift-evolution/blob/master/proposals/0227-identity-keypath.md + https://forums.swift.org/t/accepted-se-0227-identity-key-path/16278
-
-### Returned proposals
-
-> TODO
-
-### Rejected proposals
-
-> TODO
-
-### Proposals in review
-
-https://forums.swift.org/t/se-0228-fix-expressible-by-string-interpolation/16031
-
-### Swift Forums
-
-https://forums.swift.org/t/server-work-group-new-focus-areas/15969
-
-https://forums.swift.org/t/notes-on-numerics-in-swift/15746
-
-> A great number of questions are raised in these forums as to the functioning and design of numeric types and protocols in Swift. Sometimes, the answer can be found only by digging through the source code, and even then it's hard to place what you learn there within a larger context. Therefore, I've compiled a series of articles that delve into these topics in more detail.
-
-https://forums.swift.org/t/allow-self-x-in-class-convenience-initializers/15924
-
-> If we’re lucky we might soon be able to assign to ‘self’ in class convenience initializers, addressing a long-standing language restriction
-
-https://forums.swift.org/t/stable-branch-update-tomorrow-clang-llvm-required/16142
-
-> Swift's stable branch (v5.0) is upgrading to LLVM 7.0
-
-### Finally
-
-> TODO: something funny/fun. tweet, link, etc.
diff --git a/_posts/2018-09-20-issue-118.md b/_posts/2018-09-20-issue-118.md
new file mode 100644
index 00000000..fb4d8b1e
--- /dev/null
+++ b/_posts/2018-09-20-issue-118.md
@@ -0,0 +1,124 @@
+---
+layout: post
+title: ! 'Issue #118'
+author: btb
+---
+
+So the lovely Greg took over last issue as I was at a conference, [try! Swift NYC](https://www.tryswift.co/events/2018/nyc/). I've had an amazing time at the conference (and New York) where I gave [a talk](https://speakerdeck.com/basthomas/taken-for-granted) about the history of Swift. A video of that talk will be posted in the future.
+
+A big thank you goes out to the organizers, the volunteers and all of those who I got to meet at the conference!
+
+---
+
+We are also working on bringing back [subscriptions via email](https://github.com/SwiftWeekly/swiftweekly.github.io/issues/410). To cover the associated costs, we are looking for sponsors again.
+
+We're sharing more details soon. If you or your company are interested in sponsoring the newsletter, please send me a direct message [on Twitter](https://twitter.com/basthomas).
+
+---
+
+That being said, and without further ado, here is an update on everything Swift from the past two weeks.
+
+
+
+### Starter tasks
+
+- [SR-8625](https://bugs.swift.org/browse/SR-8625) [Compiler] Swift should warn if a closures is passed to an argument that is an `autoclosure`
+- [SR-8645](https://bugs.swift.org/browse/SR-8645) [Package Manager] BuildPlan error descriptions aren't printed
+- [SR-8646](https://bugs.swift.org/browse/SR-8646) [Package Manager] `BuildPlan.Error.missingLinuxMain` description rephrasing
+- [SR-8671](https://bugs.swift.org/browse/SR-8671) [Package Manager] `ARG_MAX` limit exceeded when compiles huge project
+
+### News and community
+
+Xcode 10 has been released, and alongside came Swift 4.2. [Ted Kremenek](https://twitter.com/tkremenek) wrote [a blog post](https://swift.org/blog/swift-4-2-released/) describing the changes in detail.
+
+[Ole Begemann](https://twitter.com/olebegemann) did us all another huge favor by means of a What's new in Swift 4.2 [Playground](https://oleb.net/blog/2018/06/whats-new-in-swift-4-2-playground/). You should definitely give this a try if you want a quick and interactive overview of the new features in Swift 4.2.
+
+On a related note, [Paul Hudson](https://twitter.com/twostraws) wrote about what's new [in Swift 5](https://www.hackingwithswift.com/articles/126/whats-new-in-swift-5-0). Besides ABI stability, there are some other interesting new improvements and features expected in that release. Swift 5 is expected to be released early 2019.
+
+### Commits and pull requests
+
+[Pavel Yaskevich](https://twitter.com/pyaskevich) merged [a pull request](https://github.com/apple/swift/pull/19203) making the constraint solver iterative rather than recursive, which should fix some stack overflow issues.
+
+[Joe Groff](https://twitter.com/jckarter) merged [a pull request](https://github.com/apple/swift/pull/19382) that finishes up the implementation of SE-0227 (see below). "Now we’re just waiting for tuple keypaths so we can have full parity between member access syntax and keypath syntax." 🎉
+
+### Accepted proposals
+
+[SE-0227](https://github.com/apple/swift-evolution/blob/master/proposals/0227-identity-keypath.md): *Identity key path* was [accepted](https://forums.swift.org/t/accepted-se-0227-identity-key-path/16278).
+
+> Feedback on the proposal was light but all positive, and the proposal was accepted without modifications.
+
+### Proposals in review
+
+[SE-0228](https://github.com/apple/swift-evolution/blob/master/proposals/0228-fix-expressiblebystringinterpolation.md): *Fix `ExpressibleByStringInterpolation`* is [under review](https://forums.swift.org/t/se-0228-fix-expressible-by-string-interpolation/16031).
+
+> String interpolation is a simple and powerful feature for expressing complex, runtime-created strings, but the current version of the `ExpressibleByStringInterpolation` protocol has been deprecated since Swift 3. We propose a new design which improves its performance, clarity, and efficiency.
+>
+> We see three general classes of types which might want to conform to `ExpressibleByStringInterpolation`:
+>
+> 1. Simple textual data
+> 2. Structured textual data
+> 3. Machine-readable code fragments
+>
+> The current design handles simple textual data, but struggles to support structured textual data and machine-readable code fragments.
+
+### Swift Forums
+
+[Ted Kremenek](https://twitter.com/tkremenek) shared [the next steps for the Swift Server work group](https://forums.swift.org/t/next-steps-for-the-swift-server-work-group/15816).
+
+> As announced at try! Swift New York City, the Swift Server work group is now entering a new chapter in its evolution. With the release of SwiftNIO and it’s subsequent adoption by popular Swift web frameworks, Kitura and Vapor, the group is now ready to take on new tasks. It’s time to focus on defining and creating a set of libraries and tools that are focused on developing and deploying server applications written in Swift.
+>
+> Read more about the new focus on the updated [Swift Server work group page](https://swift.org/server/).
+
+[Tomer Doron](https://github.com/tomerd) shared [new focus areas](https://forums.swift.org/t/server-work-group-new-focus-areas/15969) for the Swift Server work group.
+
+> [..] the work group came up with the following focus areas which we feel can make a real and immediate impact on the ecosystem. The list reflects what we previously heard from the community as well as our own personal experience writing server applications with Swift, and is designed to solve tangible needs that do not require new features from the language or core libraries.
+>
+> - Database Drivers and Storage Clients
+> - Tooling and Production Readiness
+> - Distributed Systems, Microservices and Event Driven Architecture
+
+[Xiaodi Wu](https://twitter.com/xwu) shared news [about a number of blog posts](https://forums.swift.org/t/notes-on-numerics-in-swift/15746) that go into detail of how numeric types work in Swift.
+
+> A great number of questions are raised in these forums as to the functioning and design of numeric types and protocols in Swift. Sometimes, the answer can be found only by digging through the source code, and even then it's hard to place what you learn there within a larger context. Therefore, I've compiled a series of articles that delve into these topics in more detail.
+
+You can find the blog posts [here](https://numerics.diploid.ca).
+
+[Joe Groff](https://twitter.com/jckarter) pitched [a proposal](https://forums.swift.org/t/allow-self-x-in-class-convenience-initializers/15924) to allow `self = x` in class convenience initializers.
+
+> In [this pull request](https://github.com/apple/swift/pull/19151), I'm changing code generation for class convenience initializers so that they only have "allocating" entry points, which are responsible for allocating and initializing the entire object. (See [Changing class convenience initializers to perform whole object allocation and `@objc` interop](https://forums.swift.org/t/changing-class-convenience-initializers-to-perform-whole-object-allocation-and-objc-interop/15676) for more background.) With this change, convenience initializers are nearly identical to value or protocol extension initializers at the implementation level, since the `self.init` delegation within a convenience initializer is effectively initializing the self _reference_ with a reference to the instance created by the `self.init` call rather than initializing the instance itself. At this point, it's not that big of a leap to allow the `self` reference to also be initialized by assignment, as it can be in value and protocol extension initializers, like this:
+
+{% highlight swift %}
+class Y {
+ required init() {}
+ static func singletonInstance() -> Self { return self.init() }
+ convenience init(pref: Y) {
+ self = type(of: self).singletonInstance()
+ }
+}
+{% endhighlight %}
+
+> This opens the door to convenience initializers being able to use static factory methods or other `Self`-returning operations to produce their returned result, not only the result of other initializers. Swift's own standard library and Foundation overlay hack around this missing functionality by making classes conform to dummy protocols and using protocol extension initializers where necessary to implement this functionality:
+
+{% highlight swift %}
+protocol P {
+ static func instance() -> Self
+}
+
+extension P {
+ init() {
+ self = Self.instance()
+ }
+}
+
+class C: P {
+ static func instance() -> Self { ... }
+
+ convenience init(x: ()) {
+ self.init()
+ }
+}
+{% endhighlight %}
+
+### Finally
+
+Swift can now even be found [in Apple Watch bands](https://twitter.com/jckarter/status/1040297140822523904). Who would've thought?!
From 675cc4cb69515f7ed2a35e4178b0e2587fea020b Mon Sep 17 00:00:00 2001
From: Bas Broek
Date: Fri, 21 Sep 2018 17:38:32 +0200
Subject: [PATCH 035/589] Initial 119 draft
---
_drafts/2018-10-04-issue-119.md | 56 +++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
create mode 100644 _drafts/2018-10-04-issue-119.md
diff --git a/_drafts/2018-10-04-issue-119.md b/_drafts/2018-10-04-issue-119.md
new file mode 100644
index 00000000..d5969c1f
--- /dev/null
+++ b/_drafts/2018-10-04-issue-119.md
@@ -0,0 +1,56 @@
+---
+layout: post
+title: ! 'Issue #119'
+author: btb
+sponsor:
+ link: https://do-ios.com/
+ heading: Do iOS conference in Amsterdam
+ body: On November 2 come join us for Do iOS. This is its third edition. Now fully owned and ran by the Dutch CocoaHeads Foundation. Come and join 130 fellow iOS developers for a day filled with content. Come and meet your fellow iOS developers.
There is also a University Day available on November 1.
More info and tickets on
+ displaylink: do-ios.com
+---
+
+> TODO: intro comments
+
+
+
+{% include sponsor.html %}
+
+### Starter tasks
+
+> TODO
+
+### Swift Unwrapped
+
+> TODO: Latest episode(s) of Swift Unwrapped
+
+### News and community
+
+> TODO
+
+### Commits and pull requests
+
+> TODO
+
+### Accepted proposals
+
+> TODO
+
+### Returned proposals
+
+> TODO
+
+### Rejected proposals
+
+> TODO
+
+### Proposals in review
+
+> TODO
+
+### Swift Forums
+
+> TODO
+
+### Finally
+
+> TODO: something funny/fun. tweet, link, etc.
From 344b008278b3f65b36414e0dc446b6b3e9dbe0da Mon Sep 17 00:00:00 2001
From: Jesse Squires
Date: Mon, 24 Sep 2018 11:47:31 -0700
Subject: [PATCH 036/589] Update header copy (#414)
I think this is more accurate now :)
---
_includes/header.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/_includes/header.html b/_includes/header.html
index 57d05ed6..9954d460 100644
--- a/_includes/header.html
+++ b/_includes/header.html
@@ -5,7 +5,7 @@
A community-driven weekly newsletter about what's happening in the Swift open source projects at Swift.org.
- Curated by Jesse Squires and Bas Broek. Published for free every other Thursday.
+ Curated by Bas Broek. Started by Jesse Squires. Published for free every other Thursday.
Our mailing list is currently paused. We might resume emails in the future, so you can still subscribe if you'd like.
- Until then, you can follow us on Twitter.
- Thank you for your support!
-