Skip to content

Conversation

@headius
Copy link
Contributor

@headius headius commented Nov 14, 2023

Various cross-platform fixes incoming.

@headius headius marked this pull request as draft November 14, 2023 19:02
@headius headius marked this pull request as ready for review January 14, 2024 21:37
@headius
Copy link
Contributor Author

headius commented Jan 14, 2024

This is ready to merge and release. Among various cleanup fixes for the native logic, this also switches MacOS AArch64 to use the "stty" adapter that shells out rather than using FFI. This is a fairly big change, but given the ongoing bugs running on this platform, this is a significant improvement in that IRB with Reline works properly again.

The remaining bugs in the native FFI console logic still must be fixed on MacOS/AArch64 (and any other platforms). This is a temporary workaround to get users full IRB capability.

This allows platforms we have not tested to still work without
raising an error.

See jruby/jruby#8005
This should work largely the same across all backends.
Still having some issues fixing (and finding) the remaining bugs
on MacOS on AArch64 (FFI), but the stty version gets IRB working.
* Hide stty-specific IO methods
* Improve and factor out stty command error handling
* Eliminate verbose syntax warnings
These can be shared with the stty version since raw mode works.
I cannot explain why this is failing in CI. It works locally, and
similar code tested in isolation properly rejects the bad keyword
argument.

For now, re-omitting this.
@headius headius merged commit 99f0361 into ruby:master Jan 14, 2024
@headius headius deleted the jruby_fixes branch January 14, 2024 21:46
@headius
Copy link
Contributor Author

headius commented Jan 17, 2024

@hsbt @nobu Can we get a release out with all latest patches? This would help our users that cannot currently use IRB + reline + io-console on MacOS/AArch64.

@hsbt
Copy link
Member

hsbt commented Jan 18, 2024

@headius
Copy link
Contributor Author

headius commented Jan 19, 2024

@hsbt Thank you! 🙏

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.

2 participants