Flight-School / AnyCodable

Type-erased wrappers for Encodable, Decodable, and Codable values
https://flight.school/books/codable
MIT License
1.28k stars 132 forks source link

Xcframework issue #72

Open johndpope opened 2 years ago

johndpope commented 2 years ago

https://github.com/supabase-community/supabase-swift/issues/38

At the bottom of this ticket I’ve successfully exported any cod able along with 6-7 other frameworks but then hit a snag with this library. Are you aware that this actually works with say Bazel uses x frameworks?

UPDATE

https://stackoverflow.com/questions/34159442/x-is-not-a-member-type-of-y


_When using an xcframework that depends on another framework, the X is not a member of type Y will also happen for the Framework it depends on when writing an extensions that wraps, for example, delegate methods

Example: Framework Foo depends on Bar and need to conform to DataDelegate.

class Foo {
    ...
}

extension Foo : Bar.DataDelegate {
    ...
}
Everything during compiling will go as planned and the xcframework will be generated. Once you add it to your App along with the dependancy framework Bar and try to build it you will get DataDelegate is not a member of type Bar._
wweevv-johndpope commented 2 years ago

build logs

https://gist.github.com/wweevv-johndpope/4fecec0e6b9369ab8220e0becb40fe3f

https://github.com/apple/swift/issues/56573

we can't have AnyCodable module name + AnyCodable class together - have to rename one or the other.

how bout AnyCodableKit?

stidch commented 1 year ago

Are there any activity planed for the rename? We're facing the same issue and would appreciate a fix.

johndpope commented 1 year ago

I think I got around it by importing classes into project....