-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve Xcode support #459
Comments
Whether or not we (as in, this project) end up solving these problems, we need to curate and link users to the current best solutions. |
Related: RalfJung/cargo-careful#22 |
Swift has something called Package Plugins, specifically the "build tool plugin" may allow us to easily invoke Cargo from Xcode |
For interface builder support, this removed document detailing the legacy IB plug-ins might reveal some more information on how these links work? Maybe it utilizes |
There is a bunch of Rust tools out there that ease access to (parts of) Xcode:
cargo-xcode
cargo-dinghy
cargo-mobile
/cargo-mobile2
crossbundle
/crossbow
cargo-bundle
/tauri-bundler
xbuild
tugger
cargo-instruments
cargo-lipo
cargo-cocoapods
fruitbasket
apple-platform-rs
,apple-bundle
But all of them currently feel quite clunky, or are missing a lot of functionality.
If we actually desire at least somewhat competitiveness with Swift (#429), it needs to be easy to:
Info.plist
).All of these are certainly possible to do outside of Xcode, and we should strive towards that eventually, but it's going to take a lot of time for the ecosystem to get there! So instead, we should start by making it easier to work with Rust projects inside Xcode!
Perhaps a path forward would be some combination of
rust-xcode-plugin
, a Source Editor Extension andcargo-xcode
? Ideally, we'd want full LSP-like support, and probably eventually some kind ofIBAction
/IBOutlet
support, but having a solid way to run Rust applications from inside Xcode would be a huge step!Let's also remember that Rust is not the only ecosystem that has this problem, perhaps we can learn from what others are doing? Mentioning XcodeGen here.
The text was updated successfully, but these errors were encountered: