Description
Summary
Libp2p relies on a package called [email protected] in 4 different places:
transport/tcp
transport/quic
transport/webrtc
protocol/mdns
This unmaintained library uses a deprecated iOS interface through one of its own dependencies `[email protected]:
https://discuss.libp2p.io/t/rust-libp2p-link-error-on-ios-undefined-symbols-kscnetworkinterfacetypeirda/2208
https://github.com/libp2p/rust-libp2p/issues/5140
Seeing that our bindings use this deprecated interface, iOS apps will fail to build for everyone using rust-libp2p.
Expected behavior
When adding the sdk.xcframework
and the sdk.swift
that we generate to be used inside the iOS app, the build works as there are no deprecated traits used
Actual behavior
When adding the sdk.xcframework
and the sdk.swift
that we generate to be used inside the iOS app, the build fails due to an undefined symbol _kSCNetworkInterfaceTypeIrDA
Relevant log output
No response
Possible Solution
The solution would be to update the system-configuration dependecy of the if-watch crate seeing if-watch is directly used in the libp2p repository
MR: #5624
Version
0.54.1
Would you like to work on fixing this bug ?
Yes