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

ruby-grape / grape / 25909410425
97%
master: 97%

Build:
Build:
LAST BUILD BRANCH: robust_mounted_app_comparison
DEFAULT BRANCH: master
Ran 15 May 2026 08:59AM UTC
Jobs 37
Files 161
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

15 May 2026 08:59AM UTC coverage: 97.038%. First build
25909410425

Pull #2721

github

ericproulx
Introduce Grape::Validations::SharedOptions value object

`ValidationsSpec#shared_opts` was a frozen
`{ allow_blank:, fail_fast: }` Hash, flowing as the 5th `opts` argument
into `Validators::Base#initialize`, whose only use was
`opts.values_at(:fail_fast, :allow_blank)`.

Replace it with a `Grape::Validations::SharedOptions` Data value object
(`Data.define(:allow_blank, :fail_fast)` with defaults mirroring the
prior inline hash — `allow_blank: nil`, `fail_fast: false`).

`Validators::Base` no longer copies the two values into per-validator
ivars: it stores the `@opts` value object and exposes the fields via
`Forwardable.def_delegators :@opts, :allow_blank, :fail_fast`.
`#fail_fast?` now calls the delegated `fail_fast`. `ValuesValidator`
(the one subclass that read `@allow_blank` directly) switches to the
`allow_blank` reader.

Behaviour is unchanged for the normal path — Grape always builds the
`opts` via `ValidationsSpec` and passes it through `ParamsScope#validate`.
The 5th `opts` argument of `Validators::Base#initialize` is now a
`SharedOptions` value object rather than a Hash; custom validators that
forward `opts` to `super` are unaffected, but any code that
hand-constructs a validator with a literal Hash for that argument must
pass `Grape::Validations::SharedOptions.new(...)` instead.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Pull Request #2721: Introduce Grape::Validations::SharedOptions value object

1084 of 1167 branches covered (92.89%)

Branch coverage included in aggregate %.

11 of 11 new or added lines in 3 files covered. (100.0%)

3502 of 3559 relevant lines covered (98.4%)

32108.87 hits per line

Jobs
ID Job ID Ran Files Coverage
1 run-3.2-gemfiles/rack_3_1.gemfile - 25909410425.1 15 May 2026 08:59AM UTC 160
95.78
GitHub Action Run
2 run-3.4-gemfiles/rails_8_0.gemfile - 25909410425.2 15 May 2026 08:59AM UTC 161
95.74
GitHub Action Run
3 run-3.3-gemfiles/rack_3_2.gemfile - 25909410425.3 15 May 2026 08:59AM UTC 160
95.74
GitHub Action Run
4 run-4.0-gemfiles/rack_3_2.gemfile - 25909410425.4 15 May 2026 08:59AM UTC 160
95.74
GitHub Action Run
5 run-3.3-gemfiles/rails_8_0.gemfile - 25909410425.5 15 May 2026 08:59AM UTC 161
95.74
GitHub Action Run
6 run-4.0-Gemfile - 25909410425.6 15 May 2026 09:00AM UTC 160
95.74
GitHub Action Run
7 run-4.0-gemfiles/rack_3_0.gemfile - 25909410425.7 15 May 2026 09:00AM UTC 160
95.74
GitHub Action Run
8 run-3.4-gemfiles/rack_3_1.gemfile - 25909410425.8 15 May 2026 09:00AM UTC 160
95.74
GitHub Action Run
9 run-3.4-gemfiles/rails_8_1.gemfile - 25909410425.9 15 May 2026 09:00AM UTC 161
95.74
GitHub Action Run
10 run-3.3-Gemfile - 25909410425.10 15 May 2026 08:59AM UTC 160
95.74
GitHub Action Run
11 run-3.4-gemfiles/rack_3_2.gemfile - 25909410425.11 15 May 2026 09:00AM UTC 160
95.74
GitHub Action Run
12 run-3.4-gemfiles/rails_7_2.gemfile - 25909410425.12 15 May 2026 08:59AM UTC 161
95.74
GitHub Action Run
13 run-3.2-Gemfile - 25909410425.13 15 May 2026 08:59AM UTC 160
95.78
GitHub Action Run
14 run-4.0-gemfiles/dry_validation.gemfile - 25909410425.14 15 May 2026 09:00AM UTC 160
58.1
GitHub Action Run
15 run-4.0-gemfiles/multi_xml.gemfile - 25909410425.15 15 May 2026 08:59AM UTC 160
36.39
GitHub Action Run
16 run-3.3-gemfiles/rails_8_1.gemfile - 25909410425.16 15 May 2026 08:59AM UTC 161
95.74
GitHub Action Run
17 run-3.2-gemfiles/rack_2_2.gemfile - 25909410425.17 15 May 2026 08:59AM UTC 160
95.74
GitHub Action Run
18 run-4.0-gemfiles/rails_7_2.gemfile - 25909410425.18 15 May 2026 09:00AM UTC 161
95.74
GitHub Action Run
19 run-3.4-Gemfile - 25909410425.19 15 May 2026 09:00AM UTC 160
95.74
GitHub Action Run
20 run-3.3-gemfiles/rack_2_2.gemfile - 25909410425.20 15 May 2026 08:59AM UTC 160
95.69
GitHub Action Run
21 run-3.4-gemfiles/rack_3_0.gemfile - 25909410425.21 15 May 2026 08:59AM UTC 160
95.74
GitHub Action Run
22 run-3.3-gemfiles/rack_3_1.gemfile - 25909410425.22 15 May 2026 08:59AM UTC 160
95.74
GitHub Action Run
23 run-4.0-gemfiles/grape_entity.gemfile - 25909410425.23 15 May 2026 09:00AM UTC 160
50.04
GitHub Action Run
24 run-4.0-gemfiles/rails_8_1.gemfile - 25909410425.24 15 May 2026 09:00AM UTC 161
95.74
GitHub Action Run
25 run-4.0-gemfiles/multi_json.gemfile - 25909410425.25 15 May 2026 08:59AM UTC 160
36.39
GitHub Action Run
26 run-4.0-gemfiles/rack_2_2.gemfile - 25909410425.26 15 May 2026 08:59AM UTC 160
95.7
GitHub Action Run
27 run-3.2-gemfiles/rack_3_0.gemfile - 25909410425.27 15 May 2026 08:59AM UTC 160
95.78
GitHub Action Run
28 run-3.3-gemfiles/rack_3_0.gemfile - 25909410425.28 15 May 2026 09:00AM UTC 160
95.74
GitHub Action Run
29 run-3.2-gemfiles/rails_8_0.gemfile - 25909410425.29 15 May 2026 08:59AM UTC 161
95.78
GitHub Action Run
30 run-3.3-gemfiles/rails_7_2.gemfile - 25909410425.30 15 May 2026 08:59AM UTC 161
95.74
GitHub Action Run
31 run-3.2-gemfiles/rails_8_1.gemfile - 25909410425.31 15 May 2026 08:59AM UTC 161
95.78
GitHub Action Run
32 run-4.0-gemfiles/hashie.gemfile - 25909410425.32 15 May 2026 09:00AM UTC 160
62.45
GitHub Action Run
33 run-3.2-gemfiles/rack_3_2.gemfile - 25909410425.33 15 May 2026 08:59AM UTC 160
95.78
GitHub Action Run
34 run-3.2-gemfiles/rails_7_2.gemfile - 25909410425.34 15 May 2026 08:59AM UTC 161
95.78
GitHub Action Run
35 run-4.0-gemfiles/rack_3_1.gemfile - 25909410425.35 15 May 2026 09:00AM UTC 160
95.74
GitHub Action Run
36 run-4.0-gemfiles/rails_8_0.gemfile - 25909410425.36 15 May 2026 09:00AM UTC 161
95.74
GitHub Action Run
37 run-3.4-gemfiles/rack_2_2.gemfile - 25909410425.37 15 May 2026 08:59AM UTC 160
95.7
GitHub Action Run
Source Files on build 25909410425
  • Tree
  • List 161
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #25909410425
  • Pull Request #2721
  • PR Base - master (#25873678149)
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