Replies: 3 comments 1 reply
-
|
That is an archived article that only applies to Objective-C. |
Beta Was this translation helpful? Give feedback.
-
|
Hi @BlameMatt, as Jon mentioned, that article is only relevant to Objective-C and not Swift. Can you back up a bit and explain the root problem you are actually having? We are not aware of any crashes that our library can cause. |
Beta Was this translation helpful? Give feedback.
-
|
The library itself isn't causing a crash, it's the way that Apple chooses to link frameworks. We are trying to build our project structure using the Tuist tooling and I am running into issues with the auto-linker that is fairly aggressive in insisting that it choose Apple's private frameworks first, which is resulting in a crash. There's some discussion of this issue on your forums already: #51 Essentially someone on your team named this framework a very generic name that someone at Apple also chose. This has been causing me (and apparently several others) many-many hours trying to work around. Is there some reason a simple rename is not being considered since you are clashing with Apple's frameworks? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
It is a real pain having to deal with this and it is causing crashes when the private framework is being auto-detected when expecting to access your library code. It was a pretty bold move to name it "Sharing" and directly violates the Apple Guidelines for Creating Frameworks (https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/CreationGuidelines.html) which suggest:
You should try to choose names that clearly associate each symbol with your framework. For example, consider adding a short prefix to all external symbol names. Prefixes help differentiate the symbols in your framework from those in other frameworks and libraries. They also make it clear to other developers which framework is being used. Typical prefixes include the first couple of letters or an acronym of your framework name. For example, functions in the Core Graphics framework use the prefix “CG”.
Beta Was this translation helpful? Give feedback.
All reactions