cargo-update: Crashes on run on macOS Sonoma 14.0 Beta (23A5312d)

Using cargo 1.71.0 (cfd3bbd8f 2023-06-08)

cargo install-update immediately crashes.

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString stringByStandardizingPath]: unrecognized selector sent to instance 0x600001908440'
*** First throw call stack:
(
	0   CoreFoundation                      0x0000000192774960 __exceptionPreprocess + 176
	1   libobjc.A.dylib                     0x000000019226deb4 objc_exception_throw + 60
	2   CoreFoundation                      0x000000019282646c -[NSObject(NSObject) __retain_OA] + 0
	3   CoreFoundation                      0x00000001926deb24 ___forwarding___ + 1572
	4   CoreFoundation                      0x00000001926de440 _CF_forwarding_prep_0 + 96
	5   Foundation                          0x00000001937afd80 -[NSProcessInfo arguments] + 188
	6   CoreFoundation                      0x00000001927f0094 __getDefaultArguments_block_invoke + 96
	7   libdispatch.dylib                   0x0000000192475910 _dispatch_client_callout + 20
	8   libdispatch.dylib                   0x000000019247714c _dispatch_once_callout + 32
	9   CoreFoundation                      0x00000001927efa30 _addBackstopValuesForIdentifierAndSource + 640
	10  CoreFoundation                      0x00000001926aa3b4 __81-[_CFXPreferences(SourceAdditions) withNamedVolatileSourceForIdentifier:perform:]_block_invoke + 144
	11  CoreFoundation                      0x00000001927ef6d8 -[_CFXPreferences withNamedVolatileSourceForIdentifier:perform:] + 272
	12  CoreFoundation                      0x00000001926b0724 -[CFPrefsSearchListSource addNamedVolatileSourceForIdentifier:] + 136
	13  CoreFoundation                      0x000000019282e94c __108-[_CFXPreferences(SearchListAdditions) withSearchListForIdentifier:container:cloudConfigurationURL:perform:]_block_invoke.155 + 296
	14  CoreFoundation                      0x000000019282e5f4 -[_CFXPreferences withSearchLists:] + 84
	15  CoreFoundation                      0x00000001926abc78 __108-[_CFXPreferences(SearchListAdditions) withSearchListForIdentifier:container:cloudConfigurationURL:perform:]_block_invoke + 300
	16  CoreFoundation                      0x000000019282e7a0 -[_CFXPreferences withSearchListForIdentifier:container:cloudConfigurationURL:perform:] + 384
	17  CoreFoundation                      0x00000001926ab5a0 -[_CFXPreferences copyAppValueForKey:identifier:container:configurationURL:] + 156
	18  CoreFoundation                      0x00000001926ab4c8 _CFPreferencesCopyAppValueWithContainerAndConfiguration + 112
	19  SystemConfiguration                 0x0000000193438488 SCDynamicStoreCopyProxiesWithOptions + 180
	20  cargo-install-update                0x0000000102861a68 Curl_macos_init + 16
	21  cargo-install-update                0x0000000102850574 curl_global_init + 176
	22  cargo-install-update                0x000000010283e504 _ZN3std4sync4once4Once9call_once28_$u7b$$u7b$closure$u7d$$u7d$17hac714a257a9e32a7E + 36
	23  cargo-install-update                0x0000000102a94d28 _ZN3std10sys_common4once5queue4Once4call17h5a1c3f8d4cad741fE + 1056
	24  cargo-install-update                0x000000010283e62c _ZN4curl9INIT_CTOR9init_ctor17h6cadb2258443a9ccE + 96
	25  dyld                                0x00000001922c55c8 ___ZZNK5dyld46Loader25findAndRunAllInitializersERNS_12RuntimeStateEENK3$_0clEv_block_invoke + 168
	26  dyld                                0x000000019230a920 ___ZNK5dyld313MachOAnalyzer18forEachInitializerER11DiagnosticsRKNS0_15VMAddrConverterEU13block_pointerFvjEPKv_block_invoke.209 + 340
	27  dyld                                0x00000001922fdc60 ___ZNK5dyld39MachOFile14forEachSectionEU13block_pointerFvRKNS0_11SectionInfoEbRbE_block_invoke + 496
	28  dyld                                0x00000001922a52fc _ZNK5dyld39MachOFile18forEachLoadCommandER11DiagnosticsU13block_pointerFvPK12load_commandRbE + 300
	29  dyld                                0x00000001922fcc98 _ZNK5dyld39MachOFile14forEachSectionEU13block_pointerFvRKNS0_11SectionInfoEbRbE + 192
	30  dyld                                0x000000019230a434 _ZNK5dyld313MachOAnalyzer18forEachInitializerER11DiagnosticsRKNS0_15VMAddrConverterEU13block_pointerFvjEPKv + 516
	31  dyld                                0x00000001922c1798 _ZNK5dyld46Loader25findAndRunAllInitializersERNS_12RuntimeStateE + 448
	32  dyld                                0x00000001922c7b14 _ZNK5dyld416JustInTimeLoader15runInitializersERNS_12RuntimeStateE + 36
	33  dyld                                0x00000001922c1b4c _ZNK5dyld46Loader23runInitializersBottomUpERNS_12RuntimeStateERN5dyld35ArrayIPKS0_EE + 220
	34  dyld                                0x00000001922c5654 _ZZNK5dyld46Loader38runInitializersBottomUpPlusUpwardLinksERNS_12RuntimeStateEENK3$_1clEv + 112
	35  dyld                                0x00000001922c1ccc _ZNK5dyld46Loader38runInitializersBottomUpPlusUpwardLinksERNS_12RuntimeStateE + 304
	36  dyld                                0x00000001922e6ad4 _ZN5dyld44APIs25runAllInitializersForMainEv + 464
	37  dyld                                0x00000001922a9f34 _ZN5dyld4L7prepareERNS_4APIsEPKN5dyld313MachOAnalyzerE + 3192
	38  dyld                                0x00000001922a8f44 start + 1948
)
libc++abi: terminating due to uncaught exception of type NSException

About this issue

  • Original URL
  • State: open
  • Created 10 months ago
  • Reactions: 23
  • Comments: 29 (4 by maintainers)

Most upvoted comments

For anyone looking for a workaround – cargo install cargo-update -F curl/force-system-lib-on-osx (add --force to reinstall) will install this tool while also using the system-provided libcurl instead of the one provided by curl-rust.

(Thanks to @kornelski for suggesting this in alexcrichton/curl-rust#524)

For anyone looking for a workaround – cargo install cargo-update -F curl/force-system-lib-on-osx

Quick follow up to this – after installing, run cargo install-update-config -f curl/force-system-lib-on-osx cargo-update so that if/when cargo install-update -a updates itself it will install the new version with the feature still enabled.

the previous version did not work on Sonoma

I disagree, I’ve been running cargo install-update -a every day since the macOS Sonoma release and the error only started showing up after today’s cargo-update update.

Perhaps this was due to some additional packages that were installed on the my system via brew earlier?

@gaetschwartz There are 2 ways to solve this issue. 1: Link the rust binary with CoreServices like mitsuhiko/rye@fa2c55b

@Ryu-ga thank you for the suggestion! I’ve implemented it (speelbarrow/cargo-update@282ec6c), tested it (cargo install --git https://github.com/speelbarrow/cargo-update --branch patch-1), and opened a PR (#241).

👋 Upstream curl issue had been fixed, new curl-sys version had been released and seems to work on Sonoma. See https://github.com/alexcrichton/curl-rust/issues/524#issuecomment-1753070751 for more details.

ahh, the joys of linking C libs and -sys crates. thanks for posting the easy workaround @speelbarrow.

the previous version did not work on Sonoma, unless you did the above and installed with with forcing the curl lib

libcurl constructor in backtrace

        19  SystemConfiguration                 0x0000000193438488 SCDynamicStoreCopyProxiesWithOptions + 180
        20  cargo-install-update                0x0000000102861a68 Curl_macos_init + 16
        21  cargo-install-update                0x0000000102850574 curl_global_init + 176
        22  cargo-install-update                0x000000010283e504 _ZN3std4sync4once4Once9call_once28_$u7b$$u7b$closure$u7d$$u7d$17hac714a257a9e32a7E + 36
        23  cargo-install-update                0x0000000102a94d28 _ZN3std10sys_common4once5queue4Once4call17h5a1c3f8d4cad741fE + 1056
        24  cargo-install-update                0x000000010283e62c _ZN4curl9INIT_CTOR9init_ctor17h6cadb2258443a9ccE + 96