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

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

Build:
Build:
LAST BUILD BRANCH: robust_mounted_app_comparison
DEFAULT BRANCH: master
Ran 23 May 2026 11:23AM UTC
Jobs 38
Files 164
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

23 May 2026 11:22AM UTC coverage: 96.997% (+0.02%) from 96.977%
26331367761

Pull #2736

github

ericproulx
Lazy-allocate validation_exceptions and unify rescue branches via ValidationErrors flatten

`Grape::Endpoint#run_validators`:

- Happy path used to allocate an empty `validation_errors = []` Array on
  every request. Start at `nil` and lazy-initialize the local (now named
  `validation_exceptions`) inside the rescue so the happy path allocates zero.
- Collapse the two rescue handlers into one. Both `Grape::Exceptions::Validation`
  (one error) and `Grape::Exceptions::ValidationArrayErrors` (a bundle of
  Validations from one validator) are now pushed onto the same list as-is.

`Grape::Exceptions::Validation#errors` returns `self` so callers can treat a
single Validation and a ValidationArrayErrors wrapper uniformly via
`flat_map(&:errors)` — Array returns flatten in, non-Array returns
(i.e. `self`) append as one element.

`Grape::Exceptions::ValidationErrors#initialize` keyword renamed
`errors:` → `exceptions:` (the input array is a mix of validation
exception objects, not the grouped errors Hash). Flattens any nested
`ValidationArrayErrors` via `flat_map(&:errors)` before grouping by
`params`. The unwrapping knowledge lives in the aggregator that *is* the
validation-errors collection rather than being duplicated in the
endpoint loop. UPGRADING entry added.

`if validation_exceptions` is the new raise guard — non-nil iff at least
one validator raised, equivalent to the prior `.any?` check on a
possibly-empty array.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Pull Request #2736: Lazy-allocate validation_exceptions and unify rescue branches via ValidationErrors flatten

1087 of 1171 branches covered (92.83%)

Branch coverage included in aggregate %.

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

3532 of 3591 relevant lines covered (98.36%)

31649.63 hits per line

Jobs
ID Job ID Ran Files Coverage
1 run-3.3-gemfiles/rack_3_1.gemfile - 26331367761.1 23 May 2026 05:34PM UTC 163
95.71
GitHub Action Run
2 run-3.4-Gemfile - 26331367761.2 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
3 run-4.0-Gemfile - 26331367761.3 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
4 run-3.4-gemfiles/rails_8_0.gemfile - 26331367761.4 23 May 2026 11:24AM UTC 164
95.71
GitHub Action Run
5 run-3.3-gemfiles/rails_8_1.gemfile - 26331367761.5 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
6 run-4.0-gemfiles/grape_swagger.gemfile - 26331367761.6 23 May 2026 11:23AM UTC 163
55.22
GitHub Action Run
7 run-3.4-gemfiles/rails_8_1.gemfile - 26331367761.7 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
8 run-4.0-gemfiles/rails_8_0.gemfile - 26331367761.8 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
9 run-3.2-Gemfile - 26331367761.9 23 May 2026 11:23AM UTC 163
95.75
GitHub Action Run
10 run-3.2-gemfiles/rack_3_2.gemfile - 26331367761.10 23 May 2026 11:23AM UTC 163
95.75
GitHub Action Run
11 run-3.3-gemfiles/rails_7_2.gemfile - 26331367761.11 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
12 run-3.2-gemfiles/rails_7_2.gemfile - 26331367761.12 23 May 2026 11:23AM UTC 164
95.75
GitHub Action Run
13 run-4.0-gemfiles/rack_2_2.gemfile - 26331367761.13 23 May 2026 11:24AM UTC 163
95.66
GitHub Action Run
14 run-3.2-gemfiles/rack_2_2.gemfile - 26331367761.14 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
15 run-3.2-gemfiles/rails_8_1.gemfile - 26331367761.15 23 May 2026 11:23AM UTC 164
95.75
GitHub Action Run
16 run-4.0-gemfiles/multi_xml.gemfile - 26331367761.16 23 May 2026 11:23AM UTC 163
36.68
GitHub Action Run
17 run-3.3-gemfiles/rack_3_2.gemfile - 26331367761.17 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
18 run-3.4-gemfiles/rack_2_2.gemfile - 26331367761.18 23 May 2026 11:23AM UTC 163
95.66
GitHub Action Run
19 run-4.0-gemfiles/rack_3_0.gemfile - 26331367761.19 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
20 run-3.3-gemfiles/rack_3_0.gemfile - 26331367761.20 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
21 run-4.0-gemfiles/rack_3_1.gemfile - 26331367761.21 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
22 run-3.3-gemfiles/rails_8_0.gemfile - 26331367761.22 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
23 run-3.4-gemfiles/rack_3_2.gemfile - 26331367761.23 23 May 2026 11:24AM UTC 163
95.71
GitHub Action Run
24 run-3.3-gemfiles/rack_2_2.gemfile - 26331367761.24 23 May 2026 11:23AM UTC 163
95.66
GitHub Action Run
25 run-3.4-gemfiles/rails_7_2.gemfile - 26331367761.25 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
26 run-4.0-gemfiles/rails_7_2.gemfile - 26331367761.26 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
27 run-3.2-gemfiles/rack_3_0.gemfile - 26331367761.27 23 May 2026 11:23AM UTC 163
95.75
GitHub Action Run
28 run-4.0-gemfiles/rack_3_2.gemfile - 26331367761.28 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
29 run-4.0-gemfiles/multi_json.gemfile - 26331367761.29 23 May 2026 11:23AM UTC 163
36.68
GitHub Action Run
30 run-4.0-gemfiles/rails_8_1.gemfile - 26331367761.30 23 May 2026 11:23AM UTC 164
95.71
GitHub Action Run
31 run-3.2-gemfiles/rack_3_1.gemfile - 26331367761.31 23 May 2026 11:23AM UTC 163
95.75
GitHub Action Run
32 run-4.0-gemfiles/hashie.gemfile - 26331367761.32 23 May 2026 11:23AM UTC 163
62.48
GitHub Action Run
33 run-3.4-gemfiles/rack_3_1.gemfile - 26331367761.33 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
34 run-3.3-Gemfile - 26331367761.34 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
35 run-4.0-gemfiles/dry_validation.gemfile - 26331367761.35 23 May 2026 11:23AM UTC 163
58.27
GitHub Action Run
36 run-3.2-gemfiles/rails_8_0.gemfile - 26331367761.36 23 May 2026 11:23AM UTC 164
95.75
GitHub Action Run
37 run-3.4-gemfiles/rack_3_0.gemfile - 26331367761.37 23 May 2026 11:23AM UTC 163
95.71
GitHub Action Run
38 run-4.0-gemfiles/grape_entity.gemfile - 26331367761.38 23 May 2026 11:23AM UTC 163
50.25
GitHub Action Run
Source Files on build 26331367761
  • Tree
  • List 164
  • Changed 3
  • Source Changed 3
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #26331367761
  • Pull Request #2736
  • PR Base - master (#26292056269)
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