Skip to content
This repository was archived by the owner on Oct 21, 2026. It is now read-only.

chore(deps): bump multidict from 6.7.1 to 6.9.1 - #262

Merged
Sarah Lewis (sarahnlewis) merged 1 commit into
mainfrom
dependabot/uv/multidict-6.9.1
Oct 12, 2026
Merged

Sarah Lewis (sarahnlewis) merged 1 commit into
mainfrom
dependabot/uv/multidict-6.9.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Bumps multidict from 6.7.1 to 6.9.1.

Release notes

Sourced from multidict's releases.

6.9.1

Bug fixes

  • Fixed the C extension reading freed memory on free-threaded builds when a list handed to :py:meth:~multidict.MultiDict.update, :py:meth:~multidict.MultiDict.extend, :py:meth:~multidict.MultiDict.merge or the :py:class:~multidict.MultiDict and :py:class:~multidict.CIMultiDict constructors, a [key, value] item inside any iterable handed to them, or a list tested with in against :py:meth:~multidict.MultiDict.items, is changed by another thread; a call that catches the list shrinking under it now raises :py:exc:RuntimeError -- by :user:rodrigobnogueira.

    Related issues and pull requests on GitHub: #1437.

  • Fixed a data race on the free-threaded build where a retired hash table's reader count used relaxed atomics, letting a lock-free get()/getone()/ __getitem__() read race a concurrent free of that table. The reader-exit decrement and the drain's free check now use release/acquire ordering instead -- by :user:asvetlov.

    Related issues and pull requests on GitHub: #1481.

  • Fixed a free-threaded build bug where two threads calling update(), merge(), or __setitem__() on the same key at the same time could lose the key entirely instead of just racing on which value wins. A decref of the replaced value could transiently suspend the writer's critical section, letting a second writer for the same key observe the first writer's in-progress entry as absent and, once both settled, mistake it for a stale duplicate and delete it. Every such decref is now deferred until the writer has released its critical section, so the window can no longer open. setdefault() had an unrelated instance of the same blind spot (it could insert a duplicate rather than recognizing an in-flight key), fixed alongside it -- by :user:asvetlov.

    Related issues and pull requests on GitHub: #1483.

  • Fixed a free-threaded build bug where getall() and the items()/ keys()/values() equality path could raise KeyError or report a present, never-deleted key as missing. A concurrent update()/extend()/ __setitem__() call can have its critical section transiently suspended (a decref triggering a blocking allocator call) while an entry is marked as part of its own bookkeeping; a reader landing in that window used to treat the mark as "not found" instead of "still there, in flight" -- by :user:asvetlov.

    Related issues and pull requests on GitHub:

... (truncated)

Changelog

Sourced from multidict's changelog.

6.9.1

(2026-09-21)

Bug fixes

  • Fixed the C extension reading freed memory on free-threaded builds when a list handed to :py:meth:~multidict.MultiDict.update, :py:meth:~multidict.MultiDict.extend, :py:meth:~multidict.MultiDict.merge or the :py:class:~multidict.MultiDict and :py:class:~multidict.CIMultiDict constructors, a [key, value] item inside any iterable handed to them, or a list tested with in against :py:meth:~multidict.MultiDict.items, is changed by another thread; a call that catches the list shrinking under it now raises :py:exc:RuntimeError -- by :user:rodrigobnogueira.

    Related issues and pull requests on GitHub: :issue:1437.

  • Fixed a data race on the free-threaded build where a retired hash table's reader count used relaxed atomics, letting a lock-free get()/getone()/ __getitem__() read race a concurrent free of that table. The reader-exit decrement and the drain's free check now use release/acquire ordering instead -- by :user:asvetlov.

    Related issues and pull requests on GitHub: :issue:1481.

  • Fixed a free-threaded build bug where two threads calling update(), merge(), or __setitem__() on the same key at the same time could lose the key entirely instead of just racing on which value wins. A decref of the replaced value could transiently suspend the writer's critical section, letting a second writer for the same key observe the first writer's in-progress entry as absent and, once both settled, mistake it for a stale duplicate and delete it. Every such decref is now deferred until the writer has released its critical section, so the window can no longer open. setdefault() had an unrelated instance of the same blind spot (it could insert a duplicate rather than recognizing an in-flight key), fixed alongside it -- by :user:asvetlov.

    Related issues and pull requests on GitHub: :issue:1483.

  • Fixed a free-threaded build bug where getall() and the items()/ keys()/values() equality path could raise KeyError or report a present, never-deleted key as missing. A concurrent update()/extend()/ __setitem__() call can have its critical section transiently suspended (a decref triggering a blocking allocator call) while an entry is marked as

... (truncated)

Commits
  • 0a1770c Release 6.9.1 (#1504)
  • d220522 Upload release assets one at a time to avoid the secondary rate limit (#1503)
  • 30cd596 Stop a GIL-releasing del from segfaulting the standard C extension build ...
  • d1c331a Recheck the reader gate after taking the retired list (#1502)
  • b37f07c Allocate deferred decrefs in fixed-size blocks (#1501)
  • 563f667 Run CodSpeed benchmarks on Python 3.14 and loop the smallest ones (#1498)
  • 157c87c Cancel superseded CI runs on pull requests (#1500)
  • d43adfe Drop -I from the ASan test command so PYTHONMALLOC takes effect (#1499)
  • 2a68472 Stop items() iteration from reading a freed entry in CIMultiDict (#1496)
  • cd528d6 Rename GHSA-54p9-h82j-f925 changelog fragment to the merged commit (#1495)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Oct 12, 2026
@github-actions

Copy link
Copy Markdown

Summary

Summary
Generated on: 10/12/2026 - 18:15:15
Parser: Cobertura
Assemblies: 5
Classes: 32
Files: 32
Line coverage: 85.3% (2153 of 2524)
Covered lines: 2153
Uncovered lines: 371
Coverable lines: 2524
Total lines: 8079
Covered branches: 0
Total branches: 0
Method coverage: Feature is only available for sponsors

Coverage

src.bioemu - 87.2%
Name Line Branch
src.bioemu 87.2% ****
init.py 100%
chemgraph.py 100%
convert_chemgraph.py 79.5%
denoiser.py 98.3%
get_embeds.py 92.1%
md_utils.py 85.8%
model_utils.py 80.4%
models.py 94.1%
run_hpacker.py 0%
sample.py 92.2%
sde_lib.py 88.3%
seq_io.py 100%
shortcuts.py 100%
sidechain_relax.py 75%
so3_sde.py 90.3%
structure_module.py 84.3%
utils.py 65.6%
src.bioemu.colabfold_inline - 79.1%
Name Line Branch
src.bioemu.colabfold_inline 79.1% ****
init.py
features.py 100%
input_parsing.py 100%
model_runner.py 99%
msa_client.py 60.8%
src.bioemu.hpacker_setup - 69.2%
Name Line Branch
src.bioemu.hpacker_setup 69.2% ****
init.py
setup_hpacker.py 69.2%
src.bioemu.steering - 79.5%
Name Line Branch
src.bioemu.steering 79.5% ****
init.py 100%
collective_variables.py 34.8%
dpm_fkc.py 100%
dpm_smc.py 100%
potentials.py 95.3%
utils.py 83.5%
src.bioemu.training - 100%
Name Line Branch
src.bioemu.training 100% ****
foldedness.py 100%
loss.py 100%

@dependabot
dependabot Bot force-pushed the dependabot/uv/multidict-6.9.1 branch from 5b414bb to eb986ee Compare October 12, 2026 18:15
@github-actions

Copy link
Copy Markdown

Summary

Summary
Generated on: 10/12/2026 - 18:28:06
Parser: Cobertura
Assemblies: 5
Classes: 32
Files: 32
Line coverage: 85.3% (2153 of 2524)
Covered lines: 2153
Uncovered lines: 371
Coverable lines: 2524
Total lines: 8079
Covered branches: 0
Total branches: 0
Method coverage: Feature is only available for sponsors

Coverage

src.bioemu - 87.2%
Name Line Branch
src.bioemu 87.2% ****
init.py 100%
chemgraph.py 100%
convert_chemgraph.py 79.5%
denoiser.py 98.3%
get_embeds.py 92.1%
md_utils.py 85.8%
model_utils.py 80.4%
models.py 94.1%
run_hpacker.py 0%
sample.py 92.2%
sde_lib.py 88.3%
seq_io.py 100%
shortcuts.py 100%
sidechain_relax.py 75%
so3_sde.py 90.3%
structure_module.py 84.3%
utils.py 65.6%
src.bioemu.colabfold_inline - 79.1%
Name Line Branch
src.bioemu.colabfold_inline 79.1% ****
init.py
features.py 100%
input_parsing.py 100%
model_runner.py 99%
msa_client.py 60.8%
src.bioemu.hpacker_setup - 69.2%
Name Line Branch
src.bioemu.hpacker_setup 69.2% ****
init.py
setup_hpacker.py 69.2%
src.bioemu.steering - 79.5%
Name Line Branch
src.bioemu.steering 79.5% ****
init.py 100%
collective_variables.py 34.8%
dpm_fkc.py 100%
dpm_smc.py 100%
potentials.py 95.3%
utils.py 83.5%
src.bioemu.training - 100%
Name Line Branch
src.bioemu.training 100% ****
foldedness.py 100%
loss.py 100%

Bumps [multidict](https://github.com/aio-libs/multidict) from 6.7.1 to 6.9.1.
- [Release notes](https://github.com/aio-libs/multidict/releases)
- [Changelog](https://github.com/aio-libs/multidict/blob/master/CHANGES.rst)
- [Commits](aio-libs/multidict@v6.7.1...v6.9.1)

---
updated-dependencies:
- dependency-name: multidict
  dependency-version: 6.9.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/uv/multidict-6.9.1 branch from eb986ee to 317c9c0 Compare October 12, 2026 18:30
@github-actions

Copy link
Copy Markdown

Summary

Summary
Generated on: 10/12/2026 - 18:39:09
Parser: Cobertura
Assemblies: 5
Classes: 32
Files: 32
Line coverage: 85.3% (2153 of 2524)
Covered lines: 2153
Uncovered lines: 371
Coverable lines: 2524
Total lines: 8079
Covered branches: 0
Total branches: 0
Method coverage: Feature is only available for sponsors

Coverage

src.bioemu - 87.2%
Name Line Branch
src.bioemu 87.2% ****
init.py 100%
chemgraph.py 100%
convert_chemgraph.py 79.5%
denoiser.py 98.3%
get_embeds.py 92.1%
md_utils.py 85.8%
model_utils.py 80.4%
models.py 94.1%
run_hpacker.py 0%
sample.py 92.2%
sde_lib.py 88.3%
seq_io.py 100%
shortcuts.py 100%
sidechain_relax.py 75%
so3_sde.py 90.3%
structure_module.py 84.3%
utils.py 65.6%
src.bioemu.colabfold_inline - 79.1%
Name Line Branch
src.bioemu.colabfold_inline 79.1% ****
init.py
features.py 100%
input_parsing.py 100%
model_runner.py 99%
msa_client.py 60.8%
src.bioemu.hpacker_setup - 69.2%
Name Line Branch
src.bioemu.hpacker_setup 69.2% ****
init.py
setup_hpacker.py 69.2%
src.bioemu.steering - 79.5%
Name Line Branch
src.bioemu.steering 79.5% ****
init.py 100%
collective_variables.py 34.8%
dpm_fkc.py 100%
dpm_smc.py 100%
potentials.py 95.3%
utils.py 83.5%
src.bioemu.training - 100%
Name Line Branch
src.bioemu.training 100% ****
foldedness.py 100%
loss.py 100%

@sarahnlewis
Sarah Lewis (sarahnlewis) merged commit 8451d90 into main Oct 12, 2026
6 checks passed
@sarahnlewis
Sarah Lewis (sarahnlewis) deleted the dependabot/uv/multidict-6.9.1 branch October 12, 2026 18:39
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant