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

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

Build:
Build:
LAST BUILD BRANCH: perf/lazy-response-cookies
DEFAULT BRANCH: master
Ran 01 Jun 2026 09:58PM UTC
Jobs 30
Files 166
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

01 Jun 2026 09:58PM UTC coverage: 96.842% (+0.05%) from 96.797%
26784573617

Pull #2757

github

ericproulx
Skip response-cookie flush when no cookie was touched

`Grape::Endpoint#build_response_cookies` runs on every request and
delegates through `cookies` -> `request.cookies`, materializing the
`Grape::Cookies` jar (and its `-> { rack_cookies }` Proc) even when the
handler never read or wrote a cookie. The jar's `response_cookies` then
immediately no-ops because nothing was set.

Add `Grape::Request#cookies?`, true only once the jar has been
materialized, and gate `build_response_cookies` on it. A Set-Cookie is
only ever emitted after a `cookies[...] =` write, which always
materializes the jar first, so behaviour is unchanged; the cookie-free
request path now allocates zero cookie objects (~10 fewer allocations
per request, counting the transitive Forwardable/internal churn).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pull Request #2757: Skip response-cookie flush when no cookie was touched

1116 of 1207 branches covered (92.46%)

Branch coverage included in aggregate %.

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

3545 of 3606 relevant lines covered (98.31%)

23199.96 hits per line

Jobs
ID Job ID Ran Files Coverage
1 run-4.0-Gemfile - 26784573617.1 01 Jun 2026 09:58PM UTC 165
95.65
GitHub Action Run
2 run-3.3-gemfiles/rails_8_1.gemfile - 26784573617.2 01 Jun 2026 09:58PM UTC 166
95.65
GitHub Action Run
3 run-4.0-gemfiles/multi_json.gemfile - 26784573617.3 01 Jun 2026 09:58PM UTC 165
37.11
GitHub Action Run
4 run-4.0-gemfiles/rack_2_2.gemfile - 26784573617.4 01 Jun 2026 09:59PM UTC 165
95.61
GitHub Action Run
5 run-3.4-gemfiles/rack_3_0.gemfile - 26784573617.5 01 Jun 2026 09:58PM UTC 165
95.65
GitHub Action Run
6 run-4.0-gemfiles/rails_7_2.gemfile - 26784573617.6 01 Jun 2026 09:59PM UTC 166
95.66
GitHub Action Run
7 run-4.0-gemfiles/rails_8_1.gemfile - 26784573617.7 01 Jun 2026 09:59PM UTC 166
95.66
GitHub Action Run
8 run-4.0-gemfiles/rack_3_1.gemfile - 26784573617.8 01 Jun 2026 09:58PM UTC 165
95.65
GitHub Action Run
9 run-3.3-Gemfile - 26784573617.9 01 Jun 2026 09:58PM UTC 165
95.65
GitHub Action Run
10 run-3.4-Gemfile - 26784573617.10 01 Jun 2026 09:58PM UTC 165
95.65
GitHub Action Run
11 run-4.0-gemfiles/multi_xml.gemfile - 26784573617.11 01 Jun 2026 09:59PM UTC 165
37.11
GitHub Action Run
12 run-3.3-gemfiles/rails_8_0.gemfile - 26784573617.12 01 Jun 2026 09:58PM UTC 166
95.65
GitHub Action Run
13 run-4.0-gemfiles/hashie.gemfile - 26784573617.13 01 Jun 2026 09:59PM UTC 165
62.47
GitHub Action Run
14 run-4.0-gemfiles/rack_3_2.gemfile - 26784573617.14 01 Jun 2026 09:59PM UTC 165
95.65
GitHub Action Run
15 run-3.4-gemfiles/rails_8_0.gemfile - 26784573617.15 01 Jun 2026 09:58PM UTC 166
95.66
GitHub Action Run
16 run-3.4-gemfiles/rack_3_1.gemfile - 26784573617.16 01 Jun 2026 09:59PM UTC 165
95.65
GitHub Action Run
17 run-4.0-gemfiles/rails_8_0.gemfile - 26784573617.17 01 Jun 2026 09:58PM UTC 166
95.66
GitHub Action Run
18 run-3.4-gemfiles/rails_7_2.gemfile - 26784573617.18 01 Jun 2026 09:58PM UTC 166
95.66
GitHub Action Run
19 run-4.0-gemfiles/grape_entity.gemfile - 26784573617.19 01 Jun 2026 09:59PM UTC 165
50.28
GitHub Action Run
20 run-4.0-gemfiles/dry_validation.gemfile - 26784573617.20 01 Jun 2026 09:59PM UTC 165
58.33
GitHub Action Run
21 run-3.3-gemfiles/rack_2_2.gemfile - 26784573617.21 01 Jun 2026 09:58PM UTC 165
95.61
GitHub Action Run
22 run-3.3-gemfiles/rack_3_2.gemfile - 26784573617.22 01 Jun 2026 09:59PM UTC 165
95.65
GitHub Action Run
23 run-3.4-gemfiles/rack_2_2.gemfile - 26784573617.23 01 Jun 2026 09:58PM UTC 165
95.61
GitHub Action Run
24 run-3.3-gemfiles/rack_3_0.gemfile - 26784573617.24 01 Jun 2026 09:59PM UTC 165
95.65
GitHub Action Run
25 run-4.0-gemfiles/grape_swagger.gemfile - 26784573617.25 01 Jun 2026 09:59PM UTC 165
55.27
GitHub Action Run
26 run-3.4-gemfiles/rack_3_2.gemfile - 26784573617.26 01 Jun 2026 09:59PM UTC 165
95.65
GitHub Action Run
27 run-3.3-gemfiles/rack_3_1.gemfile - 26784573617.27 01 Jun 2026 09:59PM UTC 165
95.65
GitHub Action Run
28 run-4.0-gemfiles/rack_3_0.gemfile - 26784573617.28 01 Jun 2026 09:59PM UTC 165
95.65
GitHub Action Run
29 run-3.3-gemfiles/rails_7_2.gemfile - 26784573617.29 01 Jun 2026 09:58PM UTC 166
95.65
GitHub Action Run
30 run-3.4-gemfiles/rails_8_1.gemfile - 26784573617.30 01 Jun 2026 09:59PM UTC 166
95.66
GitHub Action Run
Source Files on build 26784573617
  • Tree
  • List 166
  • Changed 148
  • Source Changed 2
  • Coverage Changed 148
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #26784573617
  • Pull Request #2757
  • PR Base - master (#26755015790)
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