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

agronholm / anyio / 29206886536
93%

Build:
DEFAULT BRANCH: master
Ran 12 Jul 2026 08:02PM UTC
Jobs 0
Files 0
Run time –
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

pending completion
29206886536

push

github

web-flow
Fix CapacityLimiter over-granting tokens on asyncio (#1172)

On the asyncio backend, releasing a token notified the next waiter but did not reserve the token for it until that waiter resumed. A non-blocking acquire issued in that window saw an empty wait queue and a borrower count
below the limit, so it slipped through, leaving borrowed_tokens greater than total_tokens and available_tokens negative.

Reserve the freed token for the woken waiter the moment its event is set (in _notify_next_waiter and when increasing total_tokens), mirroring the Semaphore/Lock hand-off, so the non-blocking acquire correctly raises
WouldBlock. The woken waiter no longer re-adds itself on resume, and a waiter cancelled after being granted the token now releases it to the next in line.

Fixes #1170.

---------

Co-authored-by: Alex Grönholm <alex.gronholm@nextday.fi>
Source Files on build 29206886536
Detailed source file information is not available for this build.
  • Back to Repo
  • Github Actions Build #29206886536
  • 6bbc6c33 on github
  • Prev Build on master (#29191053858)
  • Next Build on master (#29207267626)
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