• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

type-ruby / t-ruby / 20525677397
93%

Build:
DEFAULT BRANCH: main
Ran 26 Dec 2025 04:27PM UTC
Jobs 1
Files 34
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 Dec 2025 04:27PM UTC coverage: 76.161% (+0.1%) from 76.02%
20525677397

push

github

web-flow
fix: parser improvements for v0.0.40 (#22)

* fix: support private/protected/public def syntax parsing (#17)

Add visibility modifier support for method definitions:
- Parse `private def`, `protected def`, `public def` syntax
- Extract visibility info and include in parse result
- Preserve visibility keywords during type erasure
- Add VISIBILITY_PATTERN constant for reuse

Fixes #17

* fix: skip heredoc content during parsing (#18)

Add HeredocDetector to identify heredoc regions and skip them during
parsing. This prevents def patterns inside heredoc from being
incorrectly recognized as method definitions.

- Add HeredocDetector class with detect() and inside_heredoc?() methods
- Support <<DELIM, <<-DELIM, <<~DELIM, <<'DELIM', <<"DELIM" syntax
- Integrate heredoc detection in Parser.parse()
- Add comprehensive tests for HeredocDetector

Fixes #18

* feat: support visibility modifiers in RBS generation

Add private/protected visibility prefix to generated RBS method
signatures. Both TRuby::RBSGenerator and TRuby::IR::RBSGenerator
now output correct RBS format like 'private def method: () -> Type'.

Related to #17

* feat: add visibility support to RBS generation with E2E tests

- Pass visibility from parser to IR MethodDef nodes
- Add private prefix to RBS output (RBS doesn't support protected)
- Add E2E tests for visibility in RBS and compiled Ruby
- Update unit tests for RBS generator visibility handling

RBS only supports private, not protected (ruby/rbs#579)

Related to #17

* fix: skip =begin/=end block comments during parsing

Extend HeredocDetector to also detect Ruby block comments.
Parser now correctly ignores def patterns inside =begin/=end blocks.

Related to #18

* refactor: remove legacy compiler path

Remove legacy components that are no longer needed:
- Remove TRuby::RBSGenerator (use IR::RBSGenerator)
- Remove LegacyCompiler class
- Remove LegacyParser class
- Remove use_ir parameter from Compiler (always use IR)
- Remove use_combinator... (continued)

77 of 85 new or added lines in 6 files covered. (90.59%)

2 existing lines in 2 files now uncovered.

5083 of 6674 relevant lines covered (76.16%)

1194.73 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
71.77
0.0% lib/t_ruby/lsp_server.rb
7
84.36
3.43% lib/t_ruby/compiler.rb

Uncovered Existing Lines

Lines Coverage ∆ File
1
84.36
3.43% lib/t_ruby/compiler.rb
1
97.45
0.82% lib/t_ruby/parser.rb
Jobs
ID Job ID Ran Files Coverage
1 20525677397.1 26 Dec 2025 04:27PM UTC 34
76.16
GitHub Action Run
Source Files on build 20525677397
  • Tree
  • List 34
  • Changed 5
  • Source Changed 5
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #20525677397
  • 24d9870e on github
  • Prev Build on main (#20485207519)
  • Next Build on main (#20525759135)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc