]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-136839: Refactor simple dict.update calls (#136811)
authorDisconnect3d <dominik.b.czarnota@gmail.com>
Sat, 19 Jul 2025 17:12:10 +0000 (19:12 +0200)
committerGitHub <noreply@github.com>
Sat, 19 Jul 2025 17:12:10 +0000 (10:12 -0700)
commit69ea1b3a8f45fec46add3272ad47f14ff5321ae8
tree8f6bade56410c6f506ccf932bdeeb8691de87b31
parent67036f1ee1c23257d320a80c152090235b8ca892
gh-136839: Refactor simple dict.update calls (#136811)

Refactor simple dict.update calls

This commit refactors simple `dict.update({key: value})` calls which can
be done via `dict[key] = value` instead.

I found those cases with the [semgrep](https://semgrep.dev/) tool:

```
$ semgrep --lang python --pattern '$DICT.update({$A: ...})'

┌─────────────────┐
│ 5 Code Findings │
└─────────────────┘

    Lib/dataclasses.py
         1268┆ slots.update({slot: doc})

    Lib/multiprocessing/resource_tracker.py
           50┆ _CLEANUP_FUNCS.update({
           51┆     'semaphore': _multiprocessing.sem_unlink,
           52┆ })
            ⋮┆----------------------------------------
           53┆ _CLEANUP_FUNCS.update({
           54┆     'shared_memory': _posixshmem.shm_unlink,
           55┆ })

    Lib/tkinter/scrolledtext.py
           26┆ kw.update({'yscrollcommand': self.vbar.set})

    Lib/xmlrpc/server.py
          242┆ self.funcs.update({'system.multicall' : self.system_multicall})
```
Lib/dataclasses.py
Lib/multiprocessing/resource_tracker.py
Lib/tkinter/scrolledtext.py
Lib/xmlrpc/server.py