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

ruby-grape / grape / 28700908003 / 5
97%
master: 97%

Build:
Build:
LAST BUILD BRANCH: fix/recompile-settings-mutation-race
DEFAULT BRANCH: master
Ran 04 Jul 2026 08:46AM UTC
Files 166
Run time 5s
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

04 Jul 2026 08:44AM UTC coverage: 95.174% (+0.02%) from 95.157%
28700908003.5

Pull #2776

github

ericproulx
Pass path to Grape::Endpoint as a keyword instead of via options

`path` was pulled from the endpoint's `**options` Hash and normalized in
place (`@options[:path] = Array(...)`), duplicating the normalization
`Options` already does.

Expose it as a required `path:` keyword on `Grape::Endpoint#initialize`
and pass it straight into `Options`, which stays the single normalized
source of truth. `path` remains in `config` because it is load-bearing
for route building (`config.path`) and for endpoint equality
(`config == other.config`, which keeps same-path/different-verb endpoints
distinct).

The endpoint's public `options` Hash no longer carries `:path`. Its only
reader was an internal test; `route.path` (the compiled pattern) is the
public path API and is what grape-swagger already uses. Documented in
UPGRADING.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pull Request #2776: Pass path to Grape::Endpoint as a keyword instead of via options

1102 of 1222 branches covered (90.18%)

Branch coverage included in aggregate %.

3532 of 3647 relevant lines covered (96.85%)

961.71 hits per line

Source Files on job run-3.4-gemfiles/rack_3_1.gemfile - 28700908003.5
  • Tree
  • List 166
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 28700908003
  • 0641a11a on github
  • Prev Job for on endpoint_path_kwarg (#28700589899.18)
  • Next Job for on endpoint_path_kwarg (#28744037028.6)
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