Skip to content

Commit e17d3ef

Browse files
authored
Merge branch 'master' into csv
2 parents 7d13d80 + 6ea40c4 commit e17d3ef

File tree

129 files changed

+3965
-1727
lines changed

Some content is hidden

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

129 files changed

+3965
-1727
lines changed

.github/workflows/dependabot.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,11 @@ env:
1111
jobs:
1212
dependabot:
1313
runs-on: ubuntu-latest
14-
if: ${{ github.actor == 'dependabot[bot]' }}
14+
if: ${{ github.event.pull_request.user.login == 'dependabot[bot]' }}
1515
steps:
16+
- name: Dependabot metadata
17+
uses: dependabot/fetch-metadata@dbb049abf0d677abbd7f7eee0375145b417fdd34 # v2.2.0
18+
id: metadata
1619
- name: Checkout repository
1720
uses: actions/checkout@v4
1821
with:
@@ -21,6 +24,7 @@ jobs:
2124
run: git diff --exit-code ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} ${{ env.blocker_files }}
2225
- name: Enable auto-merge for Dependabot PRs
2326
run: gh pr merge --auto --merge "$PR_URL"
27+
if: ${{ steps.metadata.outputs.update-type == 'version-update:semver-minor' || steps.metadata.outputs.update-type == 'version-update:semver-patch' }}
2428
env:
2529
PR_URL: ${{github.event.pull_request.html_url}}
2630
GH_TOKEN: ${{secrets.DEPENDABOT_MERGE_GH_TOKEN}}

.github/workflows/ruby.yml

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ jobs:
3232
job: lexer compile confirm_lexer
3333
- ruby: "3.3"
3434
job: rubocop validate test_doc build test_generate_stdlib raap
35+
- ruby: "3.3"
36+
job: typecheck_test
3537
steps:
3638
- uses: actions/checkout@v4
3739
- uses: ruby/setup-ruby@v1
@@ -40,6 +42,8 @@ jobs:
4042
bundler: none
4143
- name: Set working directory as safe
4244
run: git config --global --add safe.directory $(pwd)
45+
- name: Set up permission
46+
run: chmod -R o-w /opt/hostedtoolcache/Ruby
4347
- name: Install dependencies
4448
run: |
4549
sudo apt-get update
@@ -64,27 +68,13 @@ jobs:
6468
echo "NO_MINITEST=true" >> $GITHUB_ENV
6569
bundle config set --local without 'minitest'
6670
if: ${{ contains(matrix.ruby, 'head') }}
71+
- name: Skip installing type checkers
72+
if: ${{ ! contains(matrix.job, 'typecheck_test') }}
73+
run: |
74+
bundle config set without 'typecheck_test'
6775
- name: bin/setup
6876
run: |
6977
bin/setup
7078
- name: Run test
7179
run: |
7280
bundle exec rake ${{ matrix.job }}
73-
74-
windows:
75-
runs-on: ${{ matrix.os }}
76-
strategy:
77-
fail-fast: false
78-
matrix:
79-
os: [windows-2019, windows-2022]
80-
ruby: [ucrt, mswin]
81-
steps:
82-
- uses: actions/checkout@v4
83-
- name: load ruby
84-
uses: ruby/setup-ruby@v1
85-
with:
86-
ruby-version: ${{ matrix.ruby }}
87-
- name: rake-compiler
88-
run: gem install rake-compiler
89-
- name: compile
90-
run: rake compile

.github/workflows/windows.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: Ruby on Windows
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
pull_request: {}
8+
merge_group: {}
9+
10+
jobs:
11+
compile:
12+
runs-on: "windows-latest"
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
ruby: ['3.2', '3.3', ucrt, mswin]
17+
steps:
18+
- uses: actions/checkout@v4
19+
- name: load ruby
20+
uses: ruby/setup-ruby@v1
21+
with:
22+
ruby-version: ${{ matrix.ruby }}
23+
- name: rake-compiler
24+
run: gem install rake-compiler
25+
- name: compile
26+
run: rake compile

CHANGELOG.md

Lines changed: 113 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,118 @@
11
# CHANGELOG
22

3-
## master
3+
## 3.5.1 (2024-06-07)
4+
5+
### Library changes
6+
7+
* Add explicit dependency on the `logger` gem ([#1865](https://github.com/ruby/rbs/pull/1865))
8+
* Make c99, c23 compatible ([#1870](https://github.com/ruby/rbs/pull/1870))
9+
10+
### Miscellaneous
11+
12+
* Don't try to sign git commits when running tests ([#1867](https://github.com/ruby/rbs/pull/1867))
13+
14+
## 3.5.0 (2024-06-06)
15+
16+
### Signature updates
17+
18+
* `net-http` headers ([#1750](https://github.com/ruby/rbs/pull/1750))
19+
* `CSV.foreach` ([#1738](https://github.com/ruby/rbs/pull/1738))
20+
* `Enumerator#initialize` ([#1801](https://github.com/ruby/rbs/pull/1801))
21+
* `Float#divmod`, `Rational#divmod` ([#1868](https://github.com/ruby/rbs/pull/1868))
22+
* `GC` ([#1530](https://github.com/ruby/rbs/pull/1530))
23+
* `Integer#pow` ([#1706](https://github.com/ruby/rbs/pull/1706))
24+
* `Kernel.rand` ([#1783](https://github.com/ruby/rbs/pull/1783))
25+
* `Kernel#extend` ([#1769](https://github.com/ruby/rbs/pull/1769))
26+
* `Module#include`, `Module#prepend` ([#1769](https://github.com/ruby/rbs/pull/1769))
27+
* `Proc#parameters` ([#1819](https://github.com/ruby/rbs/pull/1819))
28+
* `Range#step` ([#1709](https://github.com/ruby/rbs/pull/1709))
29+
* `Regexp.union` ([#1809](https://github.com/ruby/rbs/pull/1809))
30+
* `RubyVM::YJIT.enable` ([#1812](https://github.com/ruby/rbs/pull/1812))
31+
* `RubyVM::YJIT`, `RubyVM::RJIT` ([#1746](https://github.com/ruby/rbs/pull/1746))
32+
* `String#bytesplice` ([#1793](https://github.com/ruby/rbs/pull/1793))
33+
* `String#gsub!` ([#1768](https://github.com/ruby/rbs/pull/1768))
34+
* `Symbol#=~` ([#1704](https://github.com/ruby/rbs/pull/1704))
35+
* `Time#initialize` ([#1771](https://github.com/ruby/rbs/pull/1771))
36+
* `Time#zone` ([#1770](https://github.com/ruby/rbs/pull/1770))
37+
* `Timeout::ExitException` ([#1803](https://github.com/ruby/rbs/pull/1803))
38+
* `URI::MailTo` ([#1858](https://github.com/ruby/rbs/pull/1858))
39+
* Update docs ([#1811](https://github.com/ruby/rbs/pull/1811), [#1699](https://github.com/ruby/rbs/pull/1699))
40+
41+
### Language updates
42+
43+
* Fix proc type syntax ([#1807](https://github.com/ruby/rbs/pull/1807))
44+
* Function types with untyped parameter ([#1806](https://github.com/ruby/rbs/pull/1806))
45+
* Fix record type ([#1732](https://github.com/ruby/rbs/pull/1732))
46+
* parser: enable record types with optional fields ([#1717](https://github.com/ruby/rbs/pull/1717))
47+
48+
### Library changes
49+
50+
* Drop dependency on `abbrev` ([#1866](https://github.com/ruby/rbs/pull/1866))
51+
* Fix source display ([#1832](https://github.com/ruby/rbs/pull/1832))
52+
* Include trivia tokens to lex result ([#1831](https://github.com/ruby/rbs/pull/1831))
53+
* Implement token list API ([#1829](https://github.com/ruby/rbs/pull/1829))
54+
* Fix memory leak when ParsingError ([#1830](https://github.com/ruby/rbs/pull/1830))
55+
* [rbs diff] Fix error when empty manifest.yaml ([#1762](https://github.com/ruby/rbs/pull/1762))
56+
* Remove deprecated API since RBS v1 ([#1805](https://github.com/ruby/rbs/pull/1805))
57+
* Use array instead of linked list for rbs location's child ([#1786](https://github.com/ruby/rbs/pull/1786))
58+
* Fix SEGV with parse negative position ([#1790](https://github.com/ruby/rbs/pull/1790))
59+
* Add location for attribute ([#1787](https://github.com/ruby/rbs/pull/1787))
60+
* Always be private ([#1774](https://github.com/ruby/rbs/pull/1774))
61+
* Prevent resource leak with type/method-type parser when reaching EOF. ([#1742](https://github.com/ruby/rbs/pull/1742))
62+
* Allow loading RBS from different version of a gem ([#1731](https://github.com/ruby/rbs/pull/1731))
63+
* Fix method name tag on assertion ([#1705](https://github.com/ruby/rbs/pull/1705))
64+
* Improve interface check by method parameters ([#1698](https://github.com/ruby/rbs/pull/1698))
65+
66+
#### rbs prototype
67+
68+
* Fix prototype for ruby-3.4 ([#1760](https://github.com/ruby/rbs/pull/1760))
69+
* Fix 3.4 `prototype rb` failure ([#1713](https://github.com/ruby/rbs/pull/1713))
70+
* Add Numeric Node's check for parse rbs ([#1711](https://github.com/ruby/rbs/pull/1711))
71+
72+
#### rbs collection
73+
74+
* Fix RBS loading precedence ([#1720](https://github.com/ruby/rbs/pull/1720))
75+
* Refactor Git source by using `git?` method ([#1701](https://github.com/ruby/rbs/pull/1701))
76+
77+
### Miscellaneous
78+
79+
* Introduce RaaP for testing of signature ([#1810](https://github.com/ruby/rbs/pull/1810))
80+
* Revise .gemspec to remove `Gemfile` and `Gemfile.lock` ([#1856](https://github.com/ruby/rbs/pull/1856))
81+
* Add link to gem_rbs_collection to README ([#1827](https://github.com/ruby/rbs/pull/1827))
82+
* Remove `Gemfile.lock` from the gem package ([#1823](https://github.com/ruby/rbs/pull/1823))
83+
* Modify template to use TestHelper ([#1776](https://github.com/ruby/rbs/pull/1776))
84+
* Should focus on `String.new` not `String#initialize`. ([#1789](https://github.com/ruby/rbs/pull/1789))
85+
* Make the test suite compatible with `--enable-frozen-string-literal` ([#1767](https://github.com/ruby/rbs/pull/1767))
86+
* Stop reusing `fd` ([#1752](https://github.com/ruby/rbs/pull/1752))
87+
* Fix test failures on Ruby 3.4 ([#1734](https://github.com/ruby/rbs/pull/1734))
88+
* Stop trace object allocations during test ([#1724](https://github.com/ruby/rbs/pull/1724))
89+
* Fix head test fails ([#1719](https://github.com/ruby/rbs/pull/1719))
90+
91+
## 3.4.4 (2024-02-08)
92+
93+
### Miscellaneous
94+
95+
* Backport [#1752](https://github.com/ruby/rbs/pull/1752) ([#1753](https://github.com/ruby/rbs/pull/1753))
96+
97+
## 3.4.3 (2024-01-25)
98+
99+
### Library changes
100+
101+
#### rbs collection
102+
103+
* Backport [#1731](https://github.com/ruby/rbs/pull/1731) ([#1735](https://github.com/ruby/rbs/pull/1735))
104+
105+
## 3.4.2 (2024-01-19)
106+
107+
### Miscellaneous
108+
109+
* Backport [#1724](https://github.com/ruby/rbs/pull/1724) ([#1726](https://github.com/ruby/rbs/pull/1726))
110+
111+
## 3.4.1 (2023-12-26)
112+
113+
### Signature updates
114+
115+
* Update embedded RDoc based on ruby-3.3.0 (Backport #1699) ([#1700](https://github.com/ruby/rbs/pull/1700))
4116

5117
## 3.4.0 (2023-12-21)
6118

Gemfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,7 @@ gem 'csv'
4040
group :minitest do
4141
gem "minitest"
4242
end
43+
44+
group :typecheck_test do
45+
gem "steep", "~> 1.7.1", require: false
46+
end

0 commit comments

Comments
 (0)