Extending a swift class from a different target

I think the reason your case doesn't work is because the extension is not visible to the target that declares the conformance. Protocol methods are dynamically dispatched, but the actual mapping between methods and their implementations is static. This thread describes the same problem: Method Dispatch for Methods in Protocol Extensions in Separate Modules - #4 by Joe_Groff

1 Like