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

aio-libs / multidict / 36537614598
87%

Build:
DEFAULT BRANCH: master
Ran 29 Sep 2026 07:37AM UTC
Jobs 1
Files 48
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

29 Sep 2026 07:36AM UTC coverage: 86.932% (+0.004%) from 86.928%
36537614598

push

github

web-flow
Fold the pure-Python update() match test back into one condition (#1635)

<!-- Thank you for your contribution! -->

## What do these changes do?

#1628 split the pure-Python `update()` match test into two `if ...
continue` checks, to call `id()` only on a key match. That left
`continue` after `e.identity != identity` reachable only by two keys
with the same full hash, which the tests cannot produce for `str`, and
Codecov reported it on #1629 (1 missing line, 1 partial branch). This
folds the two back into one condition, so every line runs.

The C implementation is unaffected.

## Are there changes in behavior for the user?

No.

## Is it a substantial burden for the maintainers to support this?

No.

## Related issue number

Follows #1628.

## Checklist

- [x] I think the code is well written
- [ ] Unit tests for the changes exist (N/A, existing tests now cover
every line)
- [x] Documentation reflects the changes
- [ ] If you provide code modification, please add yourself to
`CONTRIBUTORS.txt` (N/A)
- [x] Add a new news fragment into the `CHANGES/` folder
- [x] `make doc-spelling` passes and any new technical words are added
to `docs/spelling_wordlist.txt`

<details>
<summary>Agent run details (optional, for reviewers)</summary>

`pytest --cov=multidict --cov-branch` on GIL 3.14.7: master reports
`_multidict_py.py` line 1344 missing; this branch reports only the
free-threaded and PyPy-only lines other CI jobs cover. 3028 passed.

Callgrind Ir per pure-Python `copy().update()`, master -> branch:
duplicates shape 4082346 -> 4082572 (`MultiDict`), 4235458 -> 4235684
(`CIMultiDict`); plain 5231909 -> 5232009 and 5536876 -> 5536976, all
under 0.01%.

Lint: pre-commit clean.
</details>

Drafted with Claude Code (Claude Opus 5.5); reviewed by @asvetlov.

788 of 1576 branches covered (50.0%)

Branch coverage included in aggregate %.

1 of 1 new or added line in 1 file covered. (100.0%)

8958 of 9635 relevant lines covered (92.97%)

1.86 hits per line

Jobs
ID Job ID Ran Files Coverage
1 MyPy - 36537614598.1 29 Sep 2026 07:37AM UTC 96
86.93
GitHub Action Run
Source Files on build 36537614598
  • Tree
  • List 48
  • Changed 2
  • Source Changed 1
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #36537614598
  • ce663e40 on github
  • Prev Build on master (#36536336556)
  • Next Build on master (#36545853476)
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