[Pitch] Swift Predicates: Archiving

Hi all,

As an addition to our previous Swift Predicates Pitch, we have a followup pitch discussing the archiving behavior for predicates. We hope to provide a safe and secure means of serializing predicates for transmission between processes and devices. Please let us know if you have any questions, comments, or suggestions!


Now that we have introduced the base Predicate type along with its related APIs in the Swift Predicates pitch, we'd like to expand upon the serialization capabilities of Predicate. Providing the ability for safe and secure serialization is a critical feature of Predicate since predicates are commonly passed between processes for evaluation in an out-of-process database or even between hosts for communicating with a remote server. In our previous proposal we mentioned that Predicate will be Codable. We'd like to add conformance to Codable and CodableWithConfiguration (as well as expand upon how predicates will be encoded into an archive) in order to support the full range of situations where developers may want to write predicates into an archive.

I've posted the full pitch here as a gist, feel free to check it out the details and please let us know what you think!