Skip to content
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

feat: support ruby 3.3.0-preview3 #105

Merged
merged 2 commits into from
Nov 25, 2023

Conversation

flavorjones
Copy link
Collaborator

@flavorjones flavorjones commented Jul 13, 2023

This PR introduces Ruby 3.3.0-preview3 as a build target. See #103.

  • add ruby 3.3.0-preview3
  • add ruby-head and ruby 3.3.0-preview3 to the CI pipeline
  • broaden application of -flat_namespace patch to include ruby 3.2+

@flavorjones flavorjones requested a review from larskanis July 13, 2023 20:24
@flavorjones flavorjones changed the title feat: ruby 3.3.0-preview1 support experiment: ruby 3.3.0-preview1 build target Jul 13, 2023
@flavorjones flavorjones marked this pull request as draft July 13, 2023 21:15
@flavorjones
Copy link
Collaborator Author

flavorjones commented Jul 13, 2023

Overall looks good -- linux passes! -- but need to chase a few failures:

@flavorjones
Copy link
Collaborator Author

flavorjones commented Nov 24, 2023

Updated to preview3 and rake-compiler 1.2.5

@flavorjones flavorjones force-pushed the flavorjones-103-explore-3.3.0-preview1 branch from 554166e to 6daf6b5 Compare November 24, 2023 20:56
@flavorjones
Copy link
Collaborator Author

Addressed windows failures.

@flavorjones
Copy link
Collaborator Author

flavorjones commented Nov 25, 2023

Looking at the darwin failure:

2023-11-25T17:36:11.1544430Z dyld[1208]: missing symbol called

and although this seems easily reproducible in Github Actions on x86_64-darwin systems, I can't reproduce on my local arm64-darwin development machine (using the gem-arm64-darwin artifact generated during CI).

Going to try to set up a repro environment on an older x86_64-darwin system I have.

edit: I was able to reproduce on an intel system.

@flavorjones flavorjones changed the title experiment: ruby 3.3.0-preview1 build target experiment: ruby 3.3.0-preview3 build target Nov 25, 2023
@flavorjones
Copy link
Collaborator Author

flavorjones commented Nov 25, 2023

It looks like _rb_define_module is the symbol that's not being found, which means something fundamental is going wrong on x86_64-darwin at the moment.

@flavorjones flavorjones force-pushed the flavorjones-103-explore-3.3.0-preview1 branch from 1dd7218 to b337277 Compare November 25, 2023 21:08
@flavorjones
Copy link
Collaborator Author

Ah, figured it out -- see commit c079c7c

@flavorjones flavorjones marked this pull request as ready for review November 25, 2023 21:25
note that we avoid testing with 3.3.0-preview3 specifically because
ruby/setup-ruby doesn't provide that version for windows platform
today. testing against ruby head is good enough.

also make sure we apply the flat_namespace workaround to prereleases
@flavorjones flavorjones force-pushed the flavorjones-103-explore-3.3.0-preview1 branch 3 times, most recently from 635651c to e12ef8c Compare November 25, 2023 22:20
builds are failing too often due to
https://bugs.ruby-lang.org/issues/18506, so let's opt for simple and
debuggable. we'll run the builds in parallel with XRUBIES, but won't
parallelize each build with `-j`.
@flavorjones flavorjones force-pushed the flavorjones-103-explore-3.3.0-preview1 branch from e12ef8c to 913739d Compare November 25, 2023 22:26
@flavorjones flavorjones changed the title experiment: ruby 3.3.0-preview3 build target support ruby 3.3.0-preview3 Nov 25, 2023
@flavorjones flavorjones changed the title support ruby 3.3.0-preview3 feat: support ruby 3.3.0-preview3 Nov 25, 2023
@flavorjones flavorjones merged commit ee92221 into master Nov 25, 2023
56 checks passed
@flavorjones flavorjones deleted the flavorjones-103-explore-3.3.0-preview1 branch November 25, 2023 22:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant