SwiftWeekly / swiftweekly.github.io

A community-driven weekly newsletter about Swift.org
https://swiftweekly.github.io/
Creative Commons Zero v1.0 Universal
325 stars 48 forks source link

[145] Issue #145 - October 10, 2019 #479

Closed BasThomas closed 5 years ago

BasThomas commented 5 years ago

To contribute to this issue, simply leave a comment here. Please also review our contributing guidelines.

The current draft for this issue in _drafts/. If you want to contribute directly, feel free to open a pull request.

BasThomas commented 5 years ago

https://twitter.com/harlanhaskins/status/1177307996512112640

Finally merged a patch that I’ve been poking at since November. If you’re working on a build system and you’re implementing the “-emit-module first, then build” optimization, try adding -Xfrontend -experimental-skip-non-inlinable-function-bodies

https://github.com/apple/swift/pull/20420

fassko commented 5 years ago

How is SE-0255 (implicit returns) not a violation of Swift’s design principles?

How is SE-0255 and the Implicit Return behavior of closures not a violation of Swift's design principles?

In Commonly Rejected Proposals, Implicit Returns are mentioned explicitly as favoring "terseness over readability". Implicit Returns eliminate needing to type 6 characters, at the expense of anyone but the person who wrote said code, being able to gleen over it quickly and derive meaning.

https://forums.swift.org/t/how-is-se-0255-implicit-returns-not-a-violation-of-swifts-design-principles/29267

fassko commented 5 years ago

Libdispatch moved to CMake 3.15.1

This is to just make sure that people are aware that as had been previously discussed, the slow crawl to CMake 3.15 is now underway. This should be largely transparent, though, a clean build would not hurt probably (but should not really be needed, I try to avoid them as much as possible). On Linux hosts if your system CMake is older than 3.15, build-script will checkout and build CMake as part of the build. We will then use that to build the rest of the projects. On macOS hosts, please update your CMake from https://cmake.org/download. On Windows, CMake 3.15.1 is available from cmake.org OR from Microsoft in VS2019.

https://forums.swift.org/t/libdispatch-moved-to-cmake-3-15-1/29268

fassko commented 5 years ago

Android application startup

I have ported an iOS app to Android using Vlad Gorlov's Swift Everywhere Toolchain.

The non-UI code is shared with the iOS version (about 20k lines of Swift code). The UI is written in Kotlin with a JNI bridge using a combination of my own Swift wrapper and swift-jni.

Aside from the initial grief of fixing all of the NS* bridging issues to get the code to build, the code mostly worked.

https://forums.swift.org/t/android-application-startup/29386

fassko commented 5 years ago

[pitch] NIO-based gRPC Swift

Include gRPC-Swift among the official and recommended SSWG projects.

gRPC enables high-performance open standards-based interoperability for Swift services with services written in other languages.

https://forums.swift.org/t/pitch-nio-based-grpc-swift/29396

BasThomas commented 5 years ago

https://forums.swift.org/t/prototype-protocol-powered-generic-trimming-searching-splitting/29415

fassko commented 5 years ago

Add another allSatisfy funtion that has parameter for empty

When you use allSatisfy function in Array, Dictionary... You have to check empty. Because if Array, Dictionary are empty, results of allSatisfy are true.

https://forums.swift.org/t/add-another-allsatisfy-funtion-that-has-parameter-for-empty/29421

fassko commented 5 years ago

SE-0266 — Synthesized Comparable conformance for enum types

The review of SE-0266 — Synthesized Comparable conformance for enum types begins now and runs through October 10, 2019.

https://forums.swift.org/t/se-0266-synthesized-comparable-conformance-for-enum-types/29457

fassko commented 5 years ago

https://twitter.com/dhartbit/status/1179835449180905475

Sent with GitHawk

fassko commented 5 years ago

Compositional Initialization

This proposal introduces an opt-in protocol, PropertyInitializable, which provides two new init methods:

  • failable init from a collections of extensible, typesafe keypath-value Property objects
  • non-failable init to clone from another instance, mutating select properties

The name “compositional init” means that this proposal allows the state of an object or struct to be assembled compositionally from sets of properties (including another instance). Compositional initialization allows mutations to be encapsulated in a clear, type-safe way.

https://forums.swift.org/t/compositional-initialization/29535

fassko commented 5 years ago

Swift on Server WorkGroup two meeting updates

https://forums.swift.org/t/september-5-2019/29501

https://forums.swift.org/t/september-19-2019/29500

fassko commented 5 years ago

Starter task

SR-11574 [Compiler] Using try instead of throws should have a better diagnostic

fassko commented 5 years ago

[Discussion] gRPC Swift

gRPC Swift is a community backed implementation of the gRPC over HTTP/2 protocol built on top of SwiftNIO. It includes a runtime (GRPC), a code generator (protoc-gen-grpc-swift), an extensive suite of tests and examples.

https://forums.swift.org/t/discussion-grpc-swift/29584

BasThomas commented 5 years ago

https://spec.fm/podcasts/swift-unwrapped/309982

BasThomas commented 5 years ago

https://github.com/apple/swift-evolution/blob/master/proposals/0265-offset-indexing-and-slicing.md In review

fassko commented 5 years ago

https://twitter.com/jckarter/status/1181293210775121920

Sent with GitHawk

BasThomas commented 5 years ago

https://twitter.com/johannesweiss/status/1181312935450284032

fassko commented 5 years ago

apple/swift-evolution:proposals/0265-offset-indexing-and-slicing.md@master In review

The review of SE-0265: Offset-Based Access to Indices, Elements, and Slices begins now and runs through October 21st, 2019

https://forums.swift.org/t/se-0265-offset-based-access-to-indices-elements-and-slices/29596

fassko commented 5 years ago

Starter task

SR-11580 [SwiftSyntax] FloatLiteralExprSyntax and IntegerLiteralExprSyntax should have comuted properties that return there integer/float value

fassko commented 5 years ago

https://twitter.com/rockthebruno/status/1181889843539955712

https://github.com/apple/sourcekit-lsp/pull/163

fassko commented 5 years ago

ExpressibleByTupleLiteral instead of tuples conforming to protocols

As can be seen from the forum history, many people have suggested ways to make it possible to conform tuple types to protocols. It is perhaps most natural when the conformance can be synthesized, - in my personal usage it's certainly conformance to Equatable and Hashable that I've wanted to confer on my tuple typed keys.

https://forums.swift.org/t/expressiblebytupleliteral-instead-of-tuples-conforming-to-protocols/29626

fassko commented 5 years ago

Swift on the Server Work Group 3rd October meeting notes

https://forums.swift.org/t/october-3rd-2019/29628

fassko commented 5 years ago

263 in review

The requested revisions to SE-0263 have been made to the proposal:

https://forums.swift.org/t/se-0263-review-2-add-a-string-initializer-with-access-to-uninitialized-storage/29663

fassko commented 5 years ago

A misunderstanding of the final SE-0249 behavior

https://forums.swift.org/t/a-misunderstanding-of-the-final-se-0249-behavior/29671

fassko commented 5 years ago

I would like to provide an update to the monorepo transition posts (https://forums.swift.org/t/llvm-monorepo-transition/25689 and https://forums.swift.org/t/llvm-monorepo-transition-update/27079) where I announced that Apple is working on the LLVM project monorepo transition for Swift, and posted links to the prototype monorepo that can be used with Swift.

https://forums.swift.org/t/llvm-monorepo-transition-happening-on-the-week-of-14th-18th-october/29674

fassko commented 5 years ago

Starter task

SR-11588 [Compiler] Warn about derived Hashable implementation if there's a custom Equatable

BasThomas commented 5 years ago

https://forums.swift.org/t/new-project-announcement-swift-compiler-driver-reimplementation-in-swift/29696