@@ -22,10 +22,10 @@ jobs:
2222 ruby bison libyaml-dev libgdbm-dev libreadline-dev libncurses5-dev \
2323 liburing-dev autoconf automake gcc make binutils
2424
25- - name : Clone Ruby (ioquatix/ruby fix/blocking-operation-wait-exception-safety )
25+ - name : Clone Ruby (with rb_vm_rewind_cfp fix)
2626 uses : actions/checkout@v4
2727 with :
28- repository : ioquatix /ruby
28+ repository : samuel-williams-shopify /ruby
2929 ref : fix/blocking-operation-wait-exception-safety
3030 path : ruby-src
3131
@@ -38,77 +38,13 @@ jobs:
3838 make -j$(nproc) && make install
3939 $HOME/.rubies/ruby-fix/bin/ruby --version
4040
41- - name : Install gems + build io-event
41+ - name : Install gems
4242 run : |
4343 export PATH=$HOME/.rubies/ruby-fix/bin:$PATH
4444 gem install bundler --no-document
4545 bundle install
46- bundle exec rake build 2>/dev/null || \
47- (cd ext && ruby extconf.rb && make)
4846
4947 - name : Run io-event tests (capture worker_pool logs)
5048 run : |
5149 export PATH=$HOME/.rubies/ruby-fix/bin:$PATH
52- bundle exec bake test 2>&1 | tee /tmp/test-output.txt
53- echo "--- worker_pool log lines ---"
54- grep '\[worker_pool\]' /tmp/test-output.txt || echo "(no worker_pool log lines)"
55-
56- - name : Upload test output
57- uses : actions/upload-artifact@v4
58- if : always()
59- with :
60- name : test-output-with-logging
61- path : /tmp/test-output.txt
62-
63- verify-fix-main :
64- name : " Fix Ruby + io-event main (unmodified)"
65- runs-on : ubuntu-24.04
66-
67- steps :
68- - name : Checkout io-event main
69- uses : actions/checkout@v4
70- with :
71- repository : socketry/io-event
72- ref : main
73-
74- - name : Install build dependencies
75- run : |
76- sudo apt-get update -q
77- sudo apt-get install -y --no-install-recommends \
78- ruby bison libyaml-dev libgdbm-dev libreadline-dev libncurses5-dev \
79- liburing-dev autoconf automake gcc make binutils
80-
81- - name : Clone Ruby (ioquatix/ruby fix/blocking-operation-wait-exception-safety)
82- uses : actions/checkout@v4
83- with :
84- repository : ioquatix/ruby
85- ref : fix/blocking-operation-wait-exception-safety
86- path : ruby-src
87-
88- - name : Build + install Ruby
89- working-directory : ruby-src
90- run : |
91- ./autogen.sh
92- ./configure --prefix=$HOME/.rubies/ruby-fix --enable-shared \
93- --disable-install-doc cppflags="-DENABLE_PATH_CHECK=0"
94- make -j$(nproc) && make install
95- $HOME/.rubies/ruby-fix/bin/ruby --version
96-
97- - name : Install gems + build io-event
98- run : |
99- export PATH=$HOME/.rubies/ruby-fix/bin:$PATH
100- gem install bundler --no-document
101- bundle install
102- bundle exec bake build
103-
104- - name : Run io-event tests
105- run : |
106- export PATH=$HOME/.rubies/ruby-fix/bin:$PATH
107- bundle exec bake test 2>&1 | tee /tmp/test-output-main.txt
108-
109- - name : Upload test output
110- uses : actions/upload-artifact@v4
111- if : always()
112- with :
113- name : test-output-main
114- path : /tmp/test-output-main.txt
50+ bundle exec bake test
0 commit comments