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

aio-libs / multidict / 37833640970
86%
master: 86%

Build:
Build:
LAST BUILD BRANCH: claude/md-del-at-deferred-by-kind-328a69
DEFAULT BRANCH: master
Ran 08 Oct 2026 07:41PM UTC
Jobs 1
Files 50
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

08 Oct 2026 07:39PM UTC coverage: 86.01%. Remained the same
37833640970

push

github

web-flow
Fix the C extension build where char is unsigned (#1759)

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

## What do these changes do?

The `v7.1.0` tag run failed to build the armv7l wheel, and the other
QEMU-emulated wheel jobs were cancelled with it, so nothing was
published. On ARM, PowerPC, s390x and RISC-V plain `char` is unsigned,
and initializing `empty_htkeys.indices` with `DKIX_EMPTY` (-1) trips
`-Wsign-conversion`, fatal under `-Werror` since #1611 turned
`-Wconversion` back on. Regular CI never builds those architectures, so
it surfaced only on the tag.

The fix casts the initializer entries to `char` explicitly. Runtime
behaviour was not affected: every read and write of the indices goes
through `int8_t*`, so the stored bytes are the same either way.

The changelog entry goes straight into the unpublished 7.1.0 section, as
RELEASE.md describes for a tag whose run never published anything; the
tag gets moved to the merge commit afterwards.

## Are there changes in behavior for the user?

No; the C extension builds again where `char` is unsigned.

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

No.

## Related issue number

Failed run:
https://github.com/aio-libs/multidict/actions/runs/37827427484

## Checklist

- [x] I think the code is well written
- [ ] Unit tests for the changes exist N/A, build fix; reproduced and
verified with `-funsigned-char` as described below
- [x] Documentation reflects the changes
- [ ] If you provide code modification, please add yourself to
`CONTRIBUTORS.txt` N/A
- [ ] Add a new news fragment into the `CHANGES/` folder N/A, the entry
is added to the unreleased 7.1.0 section of `CHANGES.rst` directly
- [x] `make doc-spelling` passes and any new technical words are added
to `docs/spelling_wordlist.txt`

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

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

Reproduced on x86_64 by building master with `CFLAGS=-f... (continued)

832 of 1664 branches covered (50.0%)

Branch coverage included in aggregate %.

9706 of 10588 relevant lines covered (91.67%)

1.83 hits per line

Jobs
ID Job ID Ran Files Coverage
1 MyPy - 37833640970.1 08 Oct 2026 07:41PM UTC 100
86.01
GitHub Action Run
Source Files on build 37833640970
  • Tree
  • List 50
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #37833640970
  • e812c4fc on github
  • Prev Build on master (#37826871282)
  • Next Build on v7.1.0 (#37838988742)
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