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

ruby-grape / grape / 34583713801
99%
master: 99%

Build:
Build:
LAST BUILD BRANCH: docs/readme-example-fixes
DEFAULT BRANCH: master
Ran 11 Sep 2026 09:21AM UTC
Jobs 32
Files 169
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

11 Sep 2026 09:20AM UTC coverage: 99.19% (+0.004%) from 99.186%
34583713801

Pull #2933

github

ericproulx
Validate the elements of a required Array params scope without the attributes iterator

A validator on `requires :items, type: Array do ... end` went through the
AttributesIterator for every element: an index bookkeeping call, a yield per
attribute, an emptiness test, and per attribute the scope's `required?` and
`meets_dependency?`, plus a `should_validate?` walk up the scope chain before
any of it. When every scope on the chain is required with no dependency and
this is the only one that iterates elements, those answers are fixed: the
scope's params are the request's Array as it came in, and the only thing the
iterator still contributes is the element index the error names carry.

`Validators::Base#validate_elements!` covers that case the way #2927's
`validate_attributes!` covers a Hash scope: it records each index and runs
the same per-attribute check. Nested Array scopes, optional ones and `given`
blocks keep the iterator.

Adds a spec that an optional Array scope skips its empty elements: nothing
pinned that, and letting optional scopes take the new path passed the suite.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Pull Request #2933: Validate the elements of a required Array params scope without the attributes iterator

1324 of 1368 branches covered (96.78%)

Branch coverage included in aggregate %.

23 of 23 new or added lines in 2 files covered. (100.0%)

4062 of 4062 relevant lines covered (100.0%)

26840.49 hits per line

Jobs
ID Job ID Ran Files Coverage
1 run-3.3-gemfiles/rails_7_2.gemfile - 34583713801.1 11 Sep 2026 09:21AM UTC 169
97.92
GitHub Action Run
2 run-3.4-Gemfile - 34583713801.2 11 Sep 2026 09:22AM UTC 168
97.88
GitHub Action Run
3 run-3.3-gemfiles/rails_8_1.gemfile - 34583713801.3 11 Sep 2026 09:22AM UTC 169
97.92
GitHub Action Run
4 run-3.4-gemfiles/rack_3_0.gemfile - 34583713801.4 11 Sep 2026 09:22AM UTC 168
97.88
GitHub Action Run
5 run-4.0-gemfiles/multi_xml.gemfile - 34583713801.5 11 Sep 2026 09:22AM UTC 167
46.65
GitHub Action Run
6 run-3.4-gemfiles/rails_8_1.gemfile - 34583713801.6 11 Sep 2026 09:22AM UTC 169
97.9
GitHub Action Run
7 run-4.0-gemfiles/grape_entity.gemfile - 34583713801.7 11 Sep 2026 09:22AM UTC 167
49.93
GitHub Action Run
8 run-4.0-gemfiles/rack_3_1.gemfile - 34583713801.8 11 Sep 2026 09:22AM UTC 168
97.88
GitHub Action Run
9 run-4.0-gemfiles/grape_swagger.gemfile - 34583713801.9 11 Sep 2026 09:21AM UTC 167
54.33
GitHub Action Run
10 run-4.0-gemfiles/dry_validation.gemfile - 34583713801.10 11 Sep 2026 09:22AM UTC 167
57.08
GitHub Action Run
11 run-3.3-gemfiles/rails_8_0.gemfile - 34583713801.11 11 Sep 2026 09:22AM UTC 169
97.92
GitHub Action Run
12 run-3.4-gemfiles/rack_2_2.gemfile - 34583713801.12 11 Sep 2026 09:21AM UTC 168
97.84
GitHub Action Run
13 run-4.0-gemfiles/rack_3_2.gemfile - 34583713801.13 11 Sep 2026 09:22AM UTC 168
97.9
GitHub Action Run
14 run-3.3-gemfiles/rack_3_2.gemfile - 34583713801.14 11 Sep 2026 09:22AM UTC 168
97.9
GitHub Action Run
15 run-3.3-Gemfile - 34583713801.15 11 Sep 2026 09:22AM UTC 168
97.9
GitHub Action Run
16 run-4.0-gemfiles/rails_8_1.gemfile - 34583713801.16 11 Sep 2026 09:22AM UTC 169
97.9
GitHub Action Run
17 run-3.4-gemfiles/rails_7_2.gemfile - 34583713801.17 11 Sep 2026 09:22AM UTC 169
97.88
GitHub Action Run
18 run-4.0-Gemfile - 34583713801.18 11 Sep 2026 09:22AM UTC 168
97.9
GitHub Action Run
19 run-4.0-gemfiles/hashie.gemfile - 34583713801.19 11 Sep 2026 09:22AM UTC 167
61.28
GitHub Action Run
20 run-4.0-gemfiles/multi_xml_0_8.gemfile - 34583713801.20 11 Sep 2026 09:22AM UTC 167
46.68
GitHub Action Run
21 run-3.4-gemfiles/rack_3_2.gemfile - 34583713801.21 11 Sep 2026 09:22AM UTC 168
97.88
GitHub Action Run
22 run-4.0-gemfiles/rails_8_0.gemfile - 34583713801.22 11 Sep 2026 09:23AM UTC 169
97.9
GitHub Action Run
23 run-4.0-gemfiles/rack_2_2.gemfile - 34583713801.23 11 Sep 2026 09:22AM UTC 168
97.86
GitHub Action Run
24 run-4.0-gemfiles/multi_json.gemfile - 34583713801.24 11 Sep 2026 09:22AM UTC 167
47.04
GitHub Action Run
25 run-3.4-gemfiles/rack_3_1.gemfile - 34583713801.25 11 Sep 2026 09:21AM UTC 168
97.9
GitHub Action Run
26 run-3.3-gemfiles/rack_2_2.gemfile - 34583713801.26 11 Sep 2026 09:21AM UTC 168
97.88
GitHub Action Run
27 run-3.4-gemfiles/rails_8_0.gemfile - 34583713801.27 11 Sep 2026 09:21AM UTC 169
97.88
GitHub Action Run
28 run-4.0-gemfiles/rails_7_2.gemfile - 34583713801.28 11 Sep 2026 09:22AM UTC 169
97.88
GitHub Action Run
29 run-4.0-gemfiles/rack_3_0.gemfile - 34583713801.29 11 Sep 2026 09:21AM UTC 168
97.88
GitHub Action Run
30 run-3.3-gemfiles/rack_3_1.gemfile - 34583713801.30 11 Sep 2026 09:22AM UTC 168
97.92
GitHub Action Run
31 run-4.0-gemfiles/multi_json_1_20.gemfile - 34583713801.31 11 Sep 2026 09:22AM UTC 167
47.07
GitHub Action Run
32 run-3.3-gemfiles/rack_3_0.gemfile - 34583713801.32 11 Sep 2026 09:21AM UTC 168
97.9
GitHub Action Run
Source Files on build 34583713801
  • Tree
  • List 169
  • Changed 3
  • Source Changed 1
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #34583713801
  • Pull Request #2933
  • PR Base - perf/root-scope-validation-fast-path (#34523953235)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc