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

[150] Issue #150 - December 19, 2019 #489

Closed BasThomas closed 4 years ago

BasThomas commented 4 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 4 years ago

Starter tasks

https://bugs.swift.org/browse/SR-11902 https://bugs.swift.org/browse/SR-11900 https://bugs.swift.org/browse/SR-11892

fassko commented 4 years ago

SE-0268 (Review #2) — Review didSet Semantics

The second review of SE-0268 — Refine didSet Semantics begins now and runs through December 9th, 2019.

https://forums.swift.org/t/se-0268-review-2-review-didset-semantics/31396

fassko commented 4 years ago

Anonymous Structs

Introduction

This proposal introduces anonymous structs using closure-inspired syntactic sugar as an alternative to a more verbose local struct declaration. As with closures, trailing syntax is supported.

Initial Swift-evolution discussion thread: Equality Of Functions

https://forums.swift.org/t/anonymous-structs/31424

fassko commented 4 years ago

[Returned for revision] SE-0270 Add Collection Operations on Noncontiguous Elements

The review of SE-0270: Add Collection Operations on Noncontiguous Elements has concluded.

The review yielded a mixed signal:

  • There was significant support for providing a set data structure of arbitrary (e.g. non-Int) indices.
  • There was significant confusion (including on my part!) about the intended meaning of the proposed set type, which was documented as having two different element types.
  • There was almost no feedback about the stated topic of the review, "Operations on Noncontiguous Elements" which—in fairness—did not constitute the bulk of the proposal.
  • There was lots of disagreement about naming choices, driven at least in part by the unclear answer to the “what is this thing?” question.

https://forums.swift.org/t/returned-for-revision-se-0270-add-collection-operations-on-noncontiguous-elements/31484

fassko commented 4 years ago

https://twitter.com/glbrntt/status/1204050824189677568

theblixguy commented 4 years ago

The first and third starter tasks have already been resolved (the third was fixed by Doug but he hasn’t assigned the ticket to him)

fassko commented 4 years ago

What the eff is DeclNameRef?

As part of my work towards module-qualified names, I've added a new type to the compiler, DeclNameRef, and adopted it across much of the frontend. If you hack on the compiler a lot, you're suddenly going to see this thing everywhere, so I thought I'd explain a few things about it.

What is it? DeclNameRef is used wherever the compiler is processing the name of a declaration that is defined somewhere else. (In SAT question terms, "DeclNameRef is to DeclName as DeclRefExpr is to Decl".)

https://forums.swift.org/t/what-the-eff-is-declnameref/31594

fassko commented 4 years ago

How OptionSet works inside the Swift Compiler

https://swiftrocks.com/how-optionset-works-inside-the-swift-compiler.html

fassko commented 4 years ago

SwiftNIO integration for SQLite APIs

I'm considering pitching a package that wraps SQLite's C APIs in a NIO friendly API. This package is called SQLiteNIO.

It has a very similar user-facing API to PostgresNIO but what it does internally is much different. Instead of using a wire protocol over TCP like Postgres, libsqlite is in process and offers a blocking C API. This package puts all calls to libsqlite on a NIOThreadPool and then dispatches back to the event loop as needed.

https://forums.swift.org/t/swiftnio-integration-for-sqlite-apis/31621

fassko commented 4 years ago

SwiftNIO based MySQL client

Following up on PostgresNIO, which has been accepted by the working group, I've created a SwiftNIO based MySQL client called MySQLNIO. The design was based on PostgresNIO and both are very similar.

https://forums.swift.org/t/swiftnio-based-mysql-client/31620

fassko commented 4 years ago

Superb initiative by @twostraws https://www.swiftforgood.com/

fassko commented 4 years ago

SE-0270 (Review #2): Add Collection Operations on Noncontiguous Elements

The second review of SE-0270: Add Collection Operations on Noncontiguous Elements begins now and runs through December 19th, 2019. The previous review is here. I have taken over as review manager to give Dave Abrahams more flexibility to participate in the review.

https://forums.swift.org/t/se-0270-review-2-add-collection-operations-on-noncontiguous-elements/31653

BasThomas commented 4 years ago

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

fassko commented 4 years ago

SE-0272 (Review #2): Package Manager Binary Dependencies

The second review of [SE-0272 “Package Manager Binary Dependencies"(https://github.com/apple/swift-evolution/blob/master/proposals/0272-swiftpm-binary-dependencies.md) begins now and runs through December 20, 2019.

https://forums.swift.org/t/se-0272-review-2-package-manager-binary-dependencies/31668

fassko commented 4 years ago

SE-0273: Package Manager Conditional Target Dependencies

The review of SE-0273 “Package Manager Conditional Target Dependencies" begins now and runs through December 20, 2019.

https://forums.swift.org/t/se-0273-package-manager-conditional-target-dependencies/31667

fassko commented 4 years ago

Generic type metadata prespecialization

One source of memory and performance overhead in Swift code is the instantiation and fetching of type metadata. Even though generic specialization eliminates the need for type metadata in most fully-specialized code, we still need the metadata in many frequently-occurring situations:

  • Objects always need their class metadata, which serves as the "isa" pointer with the object's method table and other dynamic metadata.
  • When putting a value inside an existential box, the type metadata for the value's type is stored in the box to represent its dynamic type.
  • When calling into unspecialized code, type metadata for the generic type arguments has to be formed. Code may remain unspecialized because it crosses ABI boundaries or is invoked via dynamic reflection.

https://forums.swift.org/t/generic-type-metadata-prespecialization/31659

fassko commented 4 years ago

https://twitter.com/slava_pestov/status/1206062455308337153

fassko commented 4 years ago

Maybe we can mention if the issue isn't too long.

https://twitter.com/jazzydocs/status/1206335688590757888

fassko commented 4 years ago

Can be fun one https://twitter.com/slava_pestov/status/1206398538743193600

fassko commented 4 years ago

Swift on Server WorkGroup meeting notes - November 14th, 2019

https://forums.swift.org/t/november-14th-2019/31730

fassko commented 4 years ago

Swift on Server Workgroup meeting notes - December 12th, 2019

Sad news:

@IanPartridge and @seabaylea let the group know that following a review by IBM of its open source priorities, it has been decided that they will not be continuing to work on Swift in 2020. As a result, they are both standing down from the workgroup.

@IanPartridge will work to hand over responsibilities for the Swift Docker images and suggested a potential new owner from the community.

The workgroup thanked @IanPartridge, @seabaylea and the rest of the IBM team for their valuable work over the years in getting Swift on server off the ground, and providing the community with reliable solutions during those early days.

https://forums.swift.org/t/december-12th-2019/31735

jpsim commented 4 years ago

Discussion: Globally Optimized Build Parallelism?

https://forums.swift.org/t/globally-optimized-build-parallelism/31802

fassko commented 4 years ago

This will allow building and using the swiftpm binary that was built using swiftpm. The catch is that only one of the runtime PackageDescription library will be used since we can't build both runtimes together.

rdar://problem/56865514

https://github.com/apple/swift-package-manager/pull/2468

theblixguy commented 4 years ago

[Accepted] SE-0268: Refine didSet Semantics

The proposal has been accepted as it was originally proposed, prior to the second review.

https://forums.swift.org/t/accepted-se-0268-refine-didset-semantics/31822

fassko commented 4 years ago

What’s New in Vapor 4

We've been working on the fourth major release of Vapor for almost a year now. The first alpha version was tagged last May, with the first beta following in October. During that time, the community has done amazing work helping to test, improve, and refine this release. Over 500 issues and pull requests have been closed so far!

https://forums.swift.org/t/whats-new-in-vapor-4/31832

https://twitter.com/codevapor/status/1207460776761409536

BasThomas commented 4 years ago

https://twitter.com/AirspeedSwift/status/1207726017432784896

BasThomas commented 4 years ago

The first and third starter tasks have already been resolved (the third was fixed by Doug but he hasn’t assigned the ticket to him)

Thanks for the poke; I've updated the starter tasks (and will do them as one of the last things again next time 😀

theblixguy commented 4 years ago

No worries! I think it's worth checking the starter tasks before publishing because it may have already been picked up by someone else or fixed :)