Skip to content

Backport to support macOS Ventura and Xcode 14 for Ruby 2.7#6442

Merged
unak merged 3 commits intoruby:ruby_2_7from
hsbt:backport-ventura-xcode14-2-7
Oct 1, 2022
Merged

Backport to support macOS Ventura and Xcode 14 for Ruby 2.7#6442
unak merged 3 commits intoruby:ruby_2_7from
hsbt:backport-ventura-xcode14-2-7

Conversation

@hsbt
Copy link
Copy Markdown
Member

@hsbt hsbt commented Sep 26, 2022

nobu and others added 3 commits September 26, 2022 17:11
The warning against `-undefined dynamic_lookup` is just a warning yet,
and many gems seem to pay no attention to warnings.  Until it fails
actually, keep it as a migration path, except for standard extension
libraries and bundled extension gems.
Since macOS 13, CFString family API used in
`rb_str_append_normalized_ospath` may internally use Objective-C classes
(`NSTaggedPointerString` and `NSPlaceholderMutableString`) for small strings.

On the other hand, Objective-C classes should not be used for the first
time in a `fork()`'ed but not `exec()`'ed process. Violations for this rule
can result deadlock during class initialization, so Objective-C runtime
conservatively crashes on such cases by default.

Therefore, we need to use CFString API to initialize Objective-C classes
used internally *before* `fork()`.

For more details, see https://bugs.ruby-lang.org/issues/18912
@hsbt hsbt added the Backport label Sep 26, 2022
@hsbt hsbt requested a review from nobu September 26, 2022 08:19
@hsbt hsbt assigned hsbt and unak and unassigned hsbt Sep 26, 2022
@hsbt
Copy link
Copy Markdown
Member Author

hsbt commented Sep 26, 2022

This PR is same as #6441 (comment)

@hsbt hsbt removed the request for review from nobu September 27, 2022 01:03
@unak unak merged commit 022aefb into ruby:ruby_2_7 Oct 1, 2022
@hsbt hsbt deleted the backport-ventura-xcode14-2-7 branch October 2, 2022 11:13
@lougreenwood
Copy link
Copy Markdown

Sorry if this is the wrong place to ask the question, but I don't see anything on Google.

Is there an expected release date for Ruby 2.7.7 with this fix so that those of us on Ventura with an M-series can compile Ruby again?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants