Open
Description
As part of moving towards a (somewhat stable) version, I'd like to submit PRs to other projects to set an ecosystem-wide precedence for using this crate, and to see which patterns people are actually using that objc2
doesn't (or doesn't easily) help with.
Popular reverse-dependencies of objc
on crates.io
(as of the issue creation date):
-
cocoa
/cocoa-foundation
: Replaceobjc
withobjc2
servo/core-foundation-rs#628 -
winit
: Initial transition toobjc2
rust-windowing/winit#2452 -
glutin
: Move toobjc2
rust-windowing/glutin#1461 -
: Remove dependency oncore-video-sys
objc
LuoZijun/rust-core-video-sys#23, but unmaintained -
metal
: Useobjc2
instead ofobjc
gfx-rs/metal-rs#241 / Recommendobjc2-metal
instead ofmetal
gfx-rs/metal-rs#339 -
: unmaintainedgfx
backends -
wgpu-hal
: [metal] Useobjc2-metal
gfx-rs/wgpu#5641 -
: unmaintainedclipboard
-
arboard
: Useobjc2
and its framework crates 1Password/arboard#148 -
copypasta
: Useobjc2
and its framework crates alacritty/copypasta#74 -
webbrowser
: iOS: Useobjc2
amodm/webbrowser-rs#87 -
locale_config
: Useobjc2
andobjc2-foundation
rust-locale/locale_config#11 -
rfd
: macOS: Useobjc2
crates PolyMeilex/rfd#188 -
glfw
: Useobjc2
PistonDevelopers/glfw-rs#566 -
wry
: Proposal: Useobjc2
and its framework crates tauri-apps/wry#1239 -
tao
: Useobjc2
tauri-apps/tao#1049 -
: nowoffscreen_gl_context
surfman
-
trash
: macOS: Useobjc2-foundation
Byron/trash-rs#107 -
skia
-
native-dialog
: macOS: Useobjc2
crates native-dialog-rs/native-dialog-rs#58 -
window_clipboard
: Useobjc2
and its framework crates hecrj/window_clipboard#27 -
vulkano
: macOS/iOS: Useraw-window-metal
to get aCAMetalLayer
fromraw-window-handle
vulkano-rs/vulkano#2561 -
miniquad
-
surfman
: Useobjc2-*
family of crates servo/surfman#334 -
: Likely unmaintained.display-link
-
: Discontinued.druid-shell
-
dark-light
: Useobjc2-foundation
andobjc2-app-kit
rust-dark-light/dark-light#37 -
btleplug
: chore(corebluetooth): Useobjc2
and its framework crates deviceplug/btleplug#381 -
tts
: Useobjc2
/objc2-avf-audio
ndarilek/tts-rs#57 -
raw-window-metal
: Useobjc2
and its framework crates rust-windowing/raw-window-metal#15 -
: archivedmsgbox
Others:
-
pathfinder
-
webrender
-
blurmac
: Unmaintained -
alacritty
: Useobjc2
,objc2-foundation
andobjc2-app-kit
alacritty/alacritty#8312 -
ruffle
: Only used for Safari extension, and for dubious reasons, I'm not gonna touch it. -
veloren
: Needsnative-dialog
andwgpu
to migrate -
cacao
: Replaceobjc
withobjc2
? ryanmcgrath/cacao#28 -
bluster
: Possibly unmaintained. -
clipboard-files
-
mac-notification-sys
: Version 2 h4llow3En/mac-notification-sys#51 / Updating to objc2 and adding async support h4llow3En/mac-notification-sys#56 / Migrate to objc2 h4llow3En/mac-notification-sys#67 -
slint
(i-slint-renderer-skia
): macOS: Replace use of old apple creates with modern objc2 replacements slint-ui/slint#6940 -
fruitbasket
: Possibly unmaintained. -
glazier
: Archived -
lapce
-
neovide
: chore: remove legacy objc and cocoa neovide/neovide#2390 -
enigo
: Move objc dependency to icrate enigo-rs/enigo#250 -
nightlight
: Possibly unmaintained. -
current_locale
-
sys-locale
-
zed
: Migrate Zed to objc2 zed-industries/zed#22408 -
screencapturekit
-
eframe
: eframe: Useobjc2
and its framework crates emilk/egui#4395 -
softbuffer
: Useobjc2
rust-windowing/softbuffer#210 -
gpu-allocator
: 🤘 metal: Migrate toobjc2
architecture withobjc2-metal
bindings Traverse-Research/gpu-allocator#225 -
tray-icon
: Rewrite to useobjc2
tauri-apps/tray-icon#172 -
muda
: Migrate fromobjc
/cocoa
toobjc2
tauri-apps/muda#221 -
window-vibrancy
: Migrate fromobjc
/cocoa
toobjc2
tauri-apps/window-vibrancy#150 -
global-hotkey
: Migrate fromobjc
toobjc2
tauri-apps/global-hotkey#99 -
tauri
: feat: Migrate toobjc2
tauri-apps/tauri#10924 -
ash-window
: ash-window: Updateraw-window-metal
to v1.0 ash-rs/ash#939 -
blade
: metal: Migrate from metal-rs to objc2 kvark/blade#229 -
rafx
-
dioxus
-
kanata
-
rio
-
crossfont
: Useobjc2
for determining whether font smoothing is enabled alacritty/crossfont#69 and Use moreobjc2
framework crates alacritty/crossfont#74
Using CoreFoundation:
-
core-foundation
: Future of this project and discussion aboutobjc2
servo/core-foundation-rs#729 -
coreaudio-rs
: Useobjc2
crates RustAudio/coreaudio-rs#128 -
cpal
: Updatecoreaudio-rs
RustAudio/cpal#943 -
sysinfo
: Useobjc2-core-foundation
GuillaumeGomez/sysinfo#1461 -
iana-time-zone
: Useobjc2-core-foundation
strawlab/iana-time-zone#147 -
font-kit
-
webbrowser
: macos: Migrate toobjc2-core-foundation
amodm/webbrowser-rs#96 - ...
Using SystemConfiguration:
Using Security:
-
security-framework
: Consider usingobjc2-security
? kornelski/rust-security-framework#224 -
rustls-platform-verifier
-
rustls-native-certs
-
native-tls
-
cargo-credential-macos-keychain
-
keyring
-
apple-codesign
Using IOKit: