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

markitosgv / JWTRefreshTokenBundle / 30879373193
100%

Build:
DEFAULT BRANCH: master
Ran 04 Aug 2026 05:02AM UTC
Jobs 1
Files 46
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

04 Aug 2026 05:00AM UTC coverage: 97.457% (+0.09%) from 97.366%
30879373193

push

github

shakaran
feat: limit how many refresh tokens a user may hold

Each login stores a token, deliberately, so that a user's devices are separate
sessions. Nothing bounded how many of them accumulated: an application wanting a
device limit had to write it, and there was no way to revoke a user's oldest
sessions without revoking all of them.

max_tokens_per_user revokes past the newest N once a login has been stored, so
it is the login that just succeeded that is kept. Newest is by expiry, which
with ttl_update on is least recently used, and expired tokens sort last so a
live session is never given up while a dead one is kept.

revokeAllButNewestForUser() and deleteAllButNewestForUser() go on the interfaces
added this cycle, so nothing released has to change. The DBAL manager now
implements RevokeRefreshTokenManagerInterface as well, which it did not, so the
limit is not silently unenforced there. A manager that cannot revoke is told so
rather than left appearing to apply a limit it is not applying.

A shared contract suite holds all three backends to the same behaviour.

79 of 80 new or added lines in 7 files covered. (98.75%)

1188 of 1219 relevant lines covered (97.46%)

16.33 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
87.93
-0.96% src/Doctrine/RefreshTokenManager.php
Jobs
ID Job ID Ran Files Coverage
1 30879373193.1 04 Aug 2026 05:02AM UTC 46
97.46
GitHub Action Run
Source Files on build 30879373193
  • Tree
  • List 46
  • Changed 9
  • Source Changed 9
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #30879373193
  • 9f465b61 on github
  • Prev Build on master (#30878961312)
  • Next Build on master (#30879505384)
  • Delete
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