Definitely a great initiative to unify all the duplicated libraries we currently
have for URL parsing, HTTP parsing, encryption etc. As an example,
I had a problem this week trying to use a Swift library with Foundation’s
type from Vapor with it’s own
type. Wasn’t fun, but is understandable, as Foundation didn’t seem to be stable enough at
the time when Vapor’s libraries were developed. Looking forward to improvements in this area.
This change was also released today as a part of 1.2.0.beta.1. Personally, would definitely try it when more libraries for Linux support it. SwiftPM’s lack of version pinning (still work in progress) gets somewhat problematic as soon you have something to deploy to production. Fortunately, this so much needed feature works perfectly well with CocoaPods.
Short and nice post about setting up a Swift development image with Docker.
Interesting post about performance implications of separating your code into modules and keeping stuff together in one module. I hope that cross-module optimization isn’t impossible and we will see it implemented in Swift relatively soon. 🙏
I didn’t realize that application performance can depend on so many things, until I saw this most comprehensive compilation of different instrumentation tools.
JSON is the de facto standard when it comes to (un)serialising and exchanging data in web and mobile programming. But how well do you really know JSON? We’ll read the specifications and write test cases together. We’ll test common JSON libraries against our test cases. I’ll show that JSON is not the easy, idealised format as many do believe. Indeed, I did not find two libraries that exhibit the very same behaviour. Moreover, I found that edge cases and maliciously crafted payloads can cause bugs, crashes and denial of services, mainly because JSON libraries rely on specifications that have evolved over time and that left many details loosely specified or not specified at all.
Yet another link about JSON, this time it’s a comparison of JSON and object mapping libraries performance. It also features sample code for most of the compared libraries.
Finally, there is a GraphQL implementation for Linux 🎉
AlexaSkillsKit is a Swift library that allows you to develop custom skills for Amazon Alexa, the voice service that powers Echo. It takes care of parsing JSON requests from Amazon, generating the proper responses and providing convenience methods to handle all other features that Alexa offers.