Skip to content

Commit bb9d9dc

Browse files
authored
Merge branch 'ruby:master' into compile-clang
2 parents b758ccd + bda92fb commit bb9d9dc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+1630
-642
lines changed

.github/workflows/rust.yml

Lines changed: 93 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@ on:
88
paths:
99
- ".github/workflows/rust.yml"
1010
- "rust/**"
11-
- "include/**"
12-
- "src/**"
1311

1412
env:
1513
RUSTFLAGS: "-D warnings"
@@ -24,6 +22,20 @@ jobs:
2422
os: [ubuntu-latest, macos-latest, windows-latest]
2523
steps:
2624
- uses: actions/checkout@v6
25+
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
26+
- name: Set up Ruby
27+
uses: ruby/setup-ruby@v1
28+
with:
29+
ruby-version: ruby
30+
bundler: none
31+
- name: Update rubygems & bundler
32+
run: gem update --system
33+
- name: Install gems
34+
run: |
35+
bundle config set --local without libs:profilers
36+
bundle install --jobs 4 --retry 3
37+
- name: Set up vendored RBS source
38+
run: bundle exec rake rust:rbs:sync
2739
- name: Install Rust tools
2840
run: |
2941
rustup update --no-self-update stable
@@ -42,12 +54,30 @@ jobs:
4254
cd rust
4355
cargo test --verbose
4456
45-
publish-dry-run:
46-
name: cargo:publish-dry-run
57+
publish-dry-run-ruby-rbs-sys:
58+
name: rust:publish:ruby-rbs-sys
4759
runs-on: ubuntu-latest
4860
continue-on-error: true
4961
steps:
5062
- uses: actions/checkout@v6
63+
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
64+
- name: Set up git identity
65+
run: |
66+
git config user.name "GitHub Actions"
67+
git config user.email "actions@github.com"
68+
- name: Set up Ruby
69+
uses: ruby/setup-ruby@v1
70+
with:
71+
ruby-version: ruby
72+
bundler: none
73+
- name: Update rubygems & bundler
74+
run: gem update --system
75+
- name: Install gems
76+
run: |
77+
bundle config set --local without libs:profilers
78+
bundle install --jobs 4 --retry 3
79+
- name: Set up vendored RBS source
80+
run: bundle exec rake rust:rbs:sync
5181
- name: Install Rust tools
5282
run: |
5383
rustup update --no-self-update stable
@@ -61,16 +91,72 @@ jobs:
6191
key: ${{ runner.os }}-cargo-${{ hashFiles('rust/Cargo.lock') }}
6292
restore-keys: |
6393
${{ runner.os }}-cargo-
64-
- name: Test publish crates
94+
- name: Test publish ruby-rbs-sys
95+
run: bundle exec rake rust:publish:ruby-rbs-sys
96+
env:
97+
RBS_RUST_PUBLISH_DRY_RUN: "1"
98+
99+
publish-dry-run-ruby-rbs:
100+
name: rust:publish:ruby-rbs
101+
runs-on: ubuntu-latest
102+
continue-on-error: true
103+
steps:
104+
- uses: actions/checkout@v6
105+
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
106+
- name: Set up git identity
65107
run: |
66-
cd rust
67-
cargo publish --dry-run
108+
git config user.name "GitHub Actions"
109+
git config user.email "actions@github.com"
110+
- name: Set up Ruby
111+
uses: ruby/setup-ruby@v1
112+
with:
113+
ruby-version: ruby
114+
bundler: none
115+
- name: Update rubygems & bundler
116+
run: gem update --system
117+
- name: Install gems
118+
run: |
119+
bundle config set --local without libs:profilers
120+
bundle install --jobs 4 --retry 3
121+
- name: Set up vendored RBS source
122+
run: bundle exec rake rust:rbs:sync
123+
- name: Install Rust tools
124+
run: |
125+
rustup update --no-self-update stable
126+
rustup default stable
127+
- uses: actions/cache@v5
128+
with:
129+
path: |
130+
~/.cargo/registry
131+
~/.cargo/git
132+
rust/target
133+
key: ${{ runner.os }}-cargo-${{ hashFiles('rust/Cargo.lock') }}
134+
restore-keys: |
135+
${{ runner.os }}-cargo-
136+
- name: Test publish ruby-rbs
137+
run: bundle exec rake rust:publish:ruby-rbs
138+
env:
139+
RBS_RUST_PUBLISH_DRY_RUN: "1"
68140

69141
lint:
70142
name: cargo:lint
71143
runs-on: ubuntu-latest
72144
steps:
73145
- uses: actions/checkout@v6
146+
- run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
147+
- name: Set up Ruby
148+
uses: ruby/setup-ruby@v1
149+
with:
150+
ruby-version: ruby
151+
bundler: none
152+
- name: Update rubygems & bundler
153+
run: gem update --system
154+
- name: Install gems
155+
run: |
156+
bundle config set --local without libs:profilers
157+
bundle install --jobs 4 --retry 3
158+
- name: Set up vendored RBS source
159+
run: bundle exec rake rust:rbs:sync
74160
- name: Install Rust tools
75161
run: |
76162
rustup update --no-self-update stable

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,7 @@ doc/
2525
# For clangd's editor integration
2626
ext/rbs_extension/compile_commands.json
2727
ext/rbs_extension/.cache
28+
29+
# Rust crate vendored RBS source (managed by rake rust:rbs:sync or rust:rbs:symlink)
30+
rust/ruby-rbs-sys/vendor/rbs/
31+
rust/ruby-rbs/vendor/rbs/

Gemfile.lock

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
GIT
22
remote: https://github.com/soutaro/steep.git
3-
revision: d9f52a5034986c2a00603ecdcf5a20fe6c899ed4
3+
revision: 22d7e65f5c91e83ead052d005418f0c2abc9ab8d
44
specs:
55
steep (2.0.0.dev)
6-
activesupport (>= 5.1)
76
concurrent-ruby (>= 1.1.10)
87
csv (>= 3.0.9)
98
fileutils (>= 1.1.0)
@@ -12,6 +11,7 @@ GIT
1211
listen (~> 3.0)
1312
logger (>= 1.3.0)
1413
parser (>= 3.2)
14+
prism (>= 0.25.0)
1515
rainbow (>= 2.2.2, < 4.0)
1616
rbs (~> 4.0)
1717
securerandom (>= 0.1)
@@ -22,7 +22,7 @@ GIT
2222
PATH
2323
remote: .
2424
specs:
25-
rbs (4.0.2)
25+
rbs (4.1.0.dev)
2626
logger
2727
prism (>= 1.6.0)
2828
tsort
@@ -48,13 +48,13 @@ GEM
4848
minitest (>= 5.1)
4949
securerandom (>= 0.3)
5050
tzinfo (~> 2.0, >= 2.0.5)
51-
addressable (2.8.9)
51+
addressable (2.9.0)
5252
public_suffix (>= 2.0.2, < 8.0)
5353
ast (2.4.3)
5454
base64 (0.3.0)
5555
benchmark (0.5.0)
5656
benchmark-ips (2.14.0)
57-
bigdecimal (4.1.0)
57+
bigdecimal (4.1.1)
5858
concurrent-ruby (1.3.6)
5959
connection_pool (3.0.2)
6060
csv (3.3.5)
@@ -92,7 +92,7 @@ GEM
9292
logger (1.7.0)
9393
marcel (1.1.0)
9494
memory_profiler (1.1.0)
95-
minitest (6.0.2)
95+
minitest (6.0.3)
9696
drb (~> 2.0)
9797
prism (~> 1.5)
9898
minitest-mock (5.27.0)
@@ -103,7 +103,7 @@ GEM
103103
net-protocol
104104
nkf (0.2.0)
105105
ostruct (0.6.3)
106-
parallel (1.27.0)
106+
parallel (1.28.0)
107107
parser (3.3.11.1)
108108
ast (~> 2.4.1)
109109
racc
@@ -116,8 +116,9 @@ GEM
116116
psych (4.0.6)
117117
stringio
118118
public_suffix (7.0.5)
119-
raap (1.3.0)
120-
rbs (~> 3.9.0)
119+
raap (2.0.0)
120+
logger
121+
rbs (~> 4.0)
121122
timeout (~> 0.4)
122123
racc (1.8.1)
123124
rainbow (3.1.1)
@@ -131,7 +132,7 @@ GEM
131132
erb
132133
psych (>= 4.0.0)
133134
tsort
134-
regexp_parser (2.11.3)
135+
regexp_parser (2.12.0)
135136
reline (0.6.3)
136137
io-console (~> 0.5)
137138
rspec (3.13.2)
@@ -174,7 +175,7 @@ GEM
174175
stackprof (0.2.28)
175176
stringio (3.2.0)
176177
strong_json (2.1.2)
177-
strscan (3.1.7)
178+
strscan (3.1.8)
178179
tempfile (0.3.1)
179180
terminal-table (4.0.0)
180181
unicode-display_width (>= 1.1.1, < 4)

0 commit comments

Comments
 (0)