Skip to content

Commit 3ff4604

Browse files
committed
Reenable windows CI that were disabled because of fiddle
https://bugs.ruby-lang.org/issues/21645
1 parent b7d1879 commit 3ff4604

File tree

1 file changed

+8
-310
lines changed

1 file changed

+8
-310
lines changed

.github/workflows/main.yml

Lines changed: 8 additions & 310 deletions
Original file line numberDiff line numberDiff line change
@@ -23,328 +23,26 @@ jobs:
2323
- name: Lint
2424
run: bundle exec rake lint
2525

26-
template:
27-
runs-on: ubuntu-latest
28-
env:
29-
BUNDLE_GEMFILE: gemfiles/2.7/Gemfile
30-
steps:
31-
- uses: actions/checkout@v5
32-
- name: Set up Ruby
33-
uses: ruby/setup-ruby@v1
34-
with:
35-
ruby-version: "2.7.0"
36-
bundler-cache: true
37-
- name: Generate templates
38-
run: bundle exec rake templates
39-
env:
40-
LANG: "C"
41-
42-
typecheck:
43-
runs-on: ubuntu-latest
44-
env:
45-
BUNDLE_GEMFILE: gemfiles/typecheck/Gemfile
46-
steps:
47-
- uses: actions/checkout@v5
48-
- name: Set up Ruby
49-
uses: ruby/setup-ruby@v1
50-
with:
51-
ruby-version: "3.4"
52-
bundler-cache: true
53-
- name: Check Sorbet
54-
run: bundle exec rake typecheck:tapioca typecheck:sorbet
55-
- name: Check Steep
56-
run: bundle exec rake typecheck:steep
57-
- name: Check field kinds
58-
run: rm lib/prism/node.rb && CHECK_FIELD_KIND=true bundle exec rake
59-
6026
build:
6127
strategy:
6228
fail-fast: false
6329
matrix:
6430
os:
65-
- ubuntu-latest
66-
- ubuntu-24.04-arm
67-
- macos-latest
68-
# - windows-latest <-- failing with fiddle error, temporarily disabled
31+
# - ubuntu-latest
32+
# - ubuntu-24.04-arm
33+
# - macos-latest
34+
- windows-latest
6935
runs-on: ${{ matrix.os }}
7036
steps:
7137
- uses: actions/checkout@v5
7238
- name: Set up Ruby
7339
uses: ruby/setup-ruby@v1
7440
with:
7541
ruby-version: head
76-
bundler-cache: true
42+
43+
- run: cat D:/rubyinstaller-head-x64/lib/ruby/3.5.0+4/win32/resolv.rb
44+
45+
- run: bundle install
7746
- name: Run Ruby tests
7847
run: bundle exec rake
7948
shell: bash
80-
81-
build-ibm:
82-
if: github.repository == 'ruby/prism'
83-
strategy:
84-
fail-fast: false
85-
matrix:
86-
os:
87-
- ubuntu-24.04-ppc64le
88-
- ubuntu-24.04-s390x
89-
runs-on: ${{ matrix.os }}
90-
steps:
91-
- uses: actions/checkout@v5
92-
- name: Set up Ruby
93-
run: |
94-
sudo apt-get update
95-
sudo apt-get install ruby-full bundler libyaml-dev
96-
- name: Install dependencies
97-
run: sudo bundle install --jobs $(nproc)
98-
- name: Run Ruby tests
99-
run: bundle exec rake
100-
shell: bash
101-
102-
build-ffi:
103-
strategy:
104-
fail-fast: false
105-
matrix:
106-
target:
107-
- { ruby: "head", gemfile: "3.5" }
108-
- { ruby: "jruby-10.0.0.0", gemfile: "jruby" } # https://github.com/jruby/jruby/issues/8923
109-
- { ruby: "truffleruby", gemfile: "truffleruby" }
110-
runs-on: ubuntu-latest
111-
env:
112-
PRISM_FFI_BACKEND: "true"
113-
BUNDLE_GEMFILE: gemfiles/${{ matrix.target.gemfile }}/Gemfile
114-
steps:
115-
- uses: actions/checkout@v5
116-
- name: Set up Ruby
117-
uses: ruby/setup-ruby@v1
118-
with:
119-
ruby-version: ${{ matrix.target.ruby }}
120-
bundler-cache: true
121-
- name: Run Ruby tests
122-
run: bundle exec rake
123-
124-
build-without-assertions:
125-
strategy:
126-
fail-fast: false
127-
matrix:
128-
os: [ubuntu-22.04, ubuntu-24.04]
129-
runs-on: ${{ matrix.os }}
130-
steps:
131-
- uses: actions/checkout@v5
132-
- name: Set up Ruby
133-
uses: ruby/setup-ruby@v1
134-
with:
135-
ruby-version: head
136-
bundler-cache: true
137-
- name: Run Ruby tests
138-
run: bundle exec rake compile_no_debug test
139-
140-
build-debug:
141-
strategy:
142-
fail-fast: false
143-
matrix:
144-
os:
145-
- ubuntu-latest
146-
- ubuntu-24.04-arm
147-
- macos-latest
148-
# - windows-latest <-- failing with fiddle error, temporarily disabled
149-
runs-on: ${{ matrix.os }}
150-
steps:
151-
- uses: actions/checkout@v5
152-
- name: Set up Ruby
153-
uses: ruby/setup-ruby@v1
154-
with:
155-
ruby-version: head
156-
bundler-cache: true
157-
- name: Run Ruby tests
158-
run: bundle exec rake
159-
env:
160-
PRISM_BUILD_DEBUG: "1"
161-
162-
build-minimal:
163-
runs-on: ubuntu-latest
164-
steps:
165-
- uses: actions/checkout@v5
166-
- name: Set up Ruby
167-
uses: ruby/setup-ruby@v1
168-
with:
169-
ruby-version: head
170-
bundler-cache: true
171-
- name: Run Ruby tests
172-
run: bundle exec rake compile_minimal test
173-
env:
174-
PRISM_BUILD_MINIMAL: "1"
175-
176-
build-java:
177-
runs-on: ubuntu-latest
178-
env:
179-
JRUBY_OPTS: "--dev"
180-
steps:
181-
- uses: actions/checkout@v5
182-
- name: Set up JRuby
183-
uses: ruby/setup-ruby@v1
184-
with:
185-
ruby-version: jruby
186-
bundler-cache: true
187-
- name: Run Java Loader test
188-
run: PRISM_SERIALIZE_ONLY_SEMANTICS_FIELDS=1 JRUBY_OPTS="-J-ea" bundle exec rake test:java_loader
189-
190-
lex-ruby:
191-
runs-on: ubuntu-latest
192-
steps:
193-
- uses: actions/checkout@v5
194-
- name: Set up Ruby
195-
uses: ruby/setup-ruby@v1
196-
with:
197-
ruby-version: head
198-
bundler-cache: true
199-
- name: Lex ruby/ruby
200-
run: bundle exec rake lex:ruby
201-
202-
lex-discourse:
203-
runs-on: ubuntu-latest
204-
steps:
205-
- uses: actions/checkout@v5
206-
- name: Set up Ruby
207-
uses: ruby/setup-ruby@v1
208-
with:
209-
ruby-version: head
210-
bundler-cache: true
211-
- name: Lex discourse/discourse
212-
run: bundle exec rake lex:discourse
213-
214-
lex-top-100:
215-
runs-on: ubuntu-latest
216-
steps:
217-
- uses: actions/checkout@v5
218-
- name: Set up Ruby
219-
uses: ruby/setup-ruby@v1
220-
with:
221-
ruby-version: head
222-
bundler-cache: true
223-
- name: Lex Top 100 Gems
224-
run: bundle exec rake lex:topgems
225-
- name: Parse Top 100 Gems
226-
run: bundle exec rake parse:topgems
227-
- name: Serialized size stats with all fields
228-
run: bundle exec rake serialized_size:topgems
229-
- name: Recompile with only semantic fields
230-
run: PRISM_SERIALIZE_ONLY_SEMANTICS_FIELDS=1 bundle exec rake clobber compile
231-
- name: Serialized size stats with only semantic fields
232-
run: bundle exec rake serialized_size:topgems
233-
234-
memcheck:
235-
runs-on: ubuntu-24.04
236-
steps:
237-
- uses: actions/checkout@v5
238-
- name: Install valgrind
239-
run: |
240-
sudo apt-get update
241-
sudo apt-get install -y valgrind
242-
- name: Set up Ruby
243-
uses: ruby/setup-ruby@v1
244-
with:
245-
ruby-version: head
246-
bundler-cache: true
247-
- name: Run Ruby tests with valgrind
248-
run: bundle exec rake test:valgrind
249-
250-
gem-package:
251-
runs-on: ubuntu-latest
252-
steps:
253-
- uses: actions/checkout@v5
254-
- uses: ruby/setup-ruby@v1
255-
with:
256-
ruby-version: head
257-
bundler-cache: true
258-
- run: bundle config --local frozen false
259-
- run: bundle exec rake build:dev
260-
- uses: actions/upload-artifact@v5
261-
with:
262-
name: gem-package
263-
path: pkg
264-
retention-days: 1
265-
266-
gem-install:
267-
needs: ["gem-package"]
268-
strategy:
269-
fail-fast: false
270-
matrix:
271-
target:
272-
- { ruby: "2.7", os: "ubuntu-latest", gemfile: "2.7" }
273-
- { ruby: "3.0", os: "ubuntu-latest", gemfile: "3.0" }
274-
- { ruby: "3.1", os: "ubuntu-latest", gemfile: "3.1" }
275-
- { ruby: "3.2", os: "ubuntu-latest", gemfile: "3.2" }
276-
- { ruby: "3.3", os: "ubuntu-latest", gemfile: "3.3" }
277-
- { ruby: "3.4", os: "ubuntu-latest", gemfile: "3.4" }
278-
- { ruby: "head", os: "ubuntu-latest", gemfile: "3.5" }
279-
- { ruby: "jruby-10.0.0.0", os: "ubuntu-latest", gemfile: "jruby" } # https://github.com/jruby/jruby/issues/8923
280-
- { ruby: "truffleruby", os: "ubuntu-latest", gemfile: "truffleruby" }
281-
282-
- { ruby: "2.7", os: "macos-latest", gemfile: "2.7" }
283-
- { ruby: "3.0", os: "macos-latest", gemfile: "3.0" }
284-
- { ruby: "3.1", os: "macos-latest", gemfile: "3.1" }
285-
- { ruby: "3.2", os: "macos-latest", gemfile: "3.2" }
286-
- { ruby: "3.3", os: "macos-latest", gemfile: "3.3" }
287-
- { ruby: "3.4", os: "macos-latest", gemfile: "3.4" }
288-
- { ruby: "head", os: "macos-latest", gemfile: "3.5" }
289-
- { ruby: "jruby-10.0.0.0", os: "macos-latest", gemfile: "jruby" } # https://github.com/jruby/jruby/issues/8923
290-
- { ruby: "truffleruby", os: "macos-latest", gemfile: "truffleruby" }
291-
292-
- { ruby: "2.7", os: "windows-latest", gemfile: "2.7" }
293-
- { ruby: "3.0", os: "windows-latest", gemfile: "3.0" }
294-
- { ruby: "3.1", os: "windows-latest", gemfile: "3.1" }
295-
- { ruby: "3.2", os: "windows-latest", gemfile: "3.2" }
296-
- { ruby: "3.3", os: "windows-latest", gemfile: "3.3" }
297-
- { ruby: "3.4", os: "windows-latest", gemfile: "3.4" }
298-
- { ruby: "head", os: "windows-latest", gemfile: "3.5" }
299-
- { ruby: "jruby-10.0.0.0", os: "windows-latest", gemfile: "jruby" } # https://github.com/jruby/jruby/issues/8923
300-
env:
301-
BUNDLE_GEMFILE: gemfiles/${{ matrix.target.gemfile }}/Gemfile
302-
runs-on: ${{ matrix.target.os }}
303-
steps:
304-
- uses: actions/checkout@v5
305-
- uses: ruby/setup-ruby@v1
306-
with:
307-
ruby-version: ${{ matrix.target.ruby }}
308-
- uses: actions/download-artifact@v6
309-
with:
310-
name: gem-package
311-
path: pkg
312-
- run: |
313-
gem install --local pkg/prism-*.gem
314-
gem list -d prism
315-
shell: bash
316-
- name: Run tests
317-
run: |
318-
bundle install
319-
rm -rf lib ext # ensure we don't use the local files
320-
rake test
321-
shell: bash
322-
323-
gcc-analyzer:
324-
runs-on: ubuntu-latest
325-
steps:
326-
- uses: actions/checkout@v5
327-
- name: Set up Ruby
328-
uses: ruby/setup-ruby@v1
329-
with:
330-
ruby-version: head
331-
bundler-cache: true
332-
- name: Run build with gcc-analyzer enabled
333-
run: |
334-
CFLAGS='-fanalyzer' bundle exec rake compile
335-
336-
clang-analyzer:
337-
runs-on: ubuntu-latest
338-
steps:
339-
- uses: actions/checkout@v5
340-
- name: Set up Ruby
341-
uses: ruby/setup-ruby@v1
342-
with:
343-
ruby-version: head
344-
bundler-cache: true
345-
- name: Install clang-analyzer
346-
run: sudo apt-get install -y clang-tools
347-
- name: Run build with clang-analyzer
348-
run: |
349-
scan-build bundle exec rake compile 2>&1 | tee /tmp/scan_build_output.log
350-
grep -q 'scan-build: No bugs found.' /tmp/scan_build_output.log

0 commit comments

Comments
 (0)