Musings related to the Swift programming language
Another year, another WWDC. Here are my notes on improvements to the Swift language from watching the various keynotes and sessions.
Continue reading ...A month or two ago I discovered that Swift’s fancy new regex builder and regex literals didn’t support lookbehinds, a feature I wanted for a project I’m working on. I decided to see what it would take to implement it myself and slowly worked my way to a (sort-of) (mostly) working initial implementation. Michael Ilseman (one of the original authors of the Swift 5. 7 regex work) has been kindly giving me pointers that were essential for getting as far as I have. In his eyes, the core concept behind lookbehinds, is reverse matching. This is the focus of this scratchpad.
Continue reading ...Disclaimer: This work is something I pursue on my own time and is neither endorsed nor supported by my employer
I’m working on an all-in one alternative to Sonarr/Radarr/Prowlarr written entirely in Swift. I call it “Jarr” (as in Jacob’s *arr). It’s been a very interesting project to work on and has let me explore lots new concepts. There are a lot of parts to the various pieces of *arr software but the one I’ll be focusing on in this post is the parsing of various details (which I’ll call ‘features’) from the titles of NZB and Torrent files.
Some of the challenges that these kinds of software face are that uploaders don’t follow a standard naming format, nor do they all include the same features in their titles. For example:
You can probably see where I’m going with this: How do we extract the features of an upload and, more importantly, how do we test our feature extracting code?
Continue reading ...