Brandon Williams
9,174
posts
Brooklyn, NY
Joined October 2009
Get all the details here: pointfree.co/collections/be… We define what isolation is, how the compiler can statically enforce it, how you can expand and contract domains of isolation, and give real world examples of what isolation buys you.
You know that thing where classes are really hard to test because you can only assert on each field individually and not on the whole object at once? Well, what if I told you that we fixed that thing?
A brand new library from Point-Free! DebugSnaphots can instantly make your classes and @Observable models debuggable and testable. Simply apply the macro and get insight into how data changes over time, and write exhaustive tests on your feature's logic. pointfree.co/blog/posts/207…
@unchecked Sendable can be quite viral. You are not only vouching for the safety of your object, but also for the safety of every other object that merely *touches* your object. This makes it possible to cause crashes in parts of your code that are not even marked @unchecked!
You might think @unchecked Sendable is a localized escape hatch, but it opens the floodgates for data races in unrelated code. This week we show how it caused a crash in a completely different class that was never marked as unchecked sendable. How?? pointfree.co/episodes/ep359…
We are bringing exhaustive testing to SQLiteData apps, and it forces you to assert on how each bit of state in your features changes, even when that state resides in a SQLite database! It's honestly magical to use.
Replying to @pointfreeco
And all of TCA’s powerful testing tools just work! You play a script of user actions to your feature and get to exhaustively test how your feature changes over time by describing it in simple mutations:
This gives you the benefits of “single-table inheritance” for SQLite tables without the pain of actual class inheritance! 😂 It lets you fully use Swift's powerful domain modeling tools for you database, such as structs and enums.
Replying to @pointfreeco
It is even possible to group mutually exclusive data into a Swift enum for your SQLite tables! This allows you to mimic what “single-table inheritance” gives you without the pain of reference types and class inheritance.


