about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules')
-rw-r--r--nixpkgs/pkgs/development/python-modules/adax/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/afdko/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/ailment/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioambient/default.nix21
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioapns/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioaseko/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiobafi6/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiobiketrax/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiogram/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioguardian/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiolifx-themes/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioqsw/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioquic/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioredis/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/aioridwell/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiosomecomfort/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiounifi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/aiowatttime/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/airthings-ble/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/angr/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible-compat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible-pylibssh/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/ansible/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/anthropic/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/anytree/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/anywidget/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/apischema/default.nix45
-rw-r--r--nixpkgs/pkgs/development/python-modules/apkit/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/app-model/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/apprise/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/approvaltests/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/apptools/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/archinfo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/argilla/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/astroid/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncpg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/asyncua/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/attrs/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/attrs/remove-hatch-plugins.patch74
-rw-r--r--nixpkgs/pkgs/development/python-modules/autarco/default.nix26
-rw-r--r--nixpkgs/pkgs/development/python-modules/awacs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/awkward-cpp/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/awscrt/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-identity/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-appcontainers/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/bentoml/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bimmer-connected/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/blebox-uniapi/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/blockfrost-python/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/bluetooth-data-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bootstrap/build/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/bootstrap/flit-core/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/bootstrap/installer/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/botocore-stubs/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/boxx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bpycv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/bqplot/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/bqscales/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/build/default.nix71
-rw-r--r--nixpkgs/pkgs/development/python-modules/cairo-lang/default.nix105
-rw-r--r--nixpkgs/pkgs/development/python-modules/cairocffi/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/canals/default.nix64
-rw-r--r--nixpkgs/pkgs/development/python-modules/casbin/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/celery-types/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/celery/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/cemm/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/censys/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/chacha20poly1305-reuseable/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/clarifai/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/claripy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cle/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/click-odoo-contrib/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/click-odoo/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/clintermission/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cloudsplaining/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cloup/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/clr-loader/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cmake/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/cmake/stub/cmake/__init__.py19
-rw-r--r--nixpkgs/pkgs/development/python-modules/cmake/stub/pyproject.toml13
-rw-r--r--nixpkgs/pkgs/development/python-modules/cobs/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/coconut/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cohere/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/coinmetrics-api-client/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/commoncode/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/cookies/default.nix27
-rw-r--r--nixpkgs/pkgs/development/python-modules/coredis/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cose/default.nix43
-rw-r--r--nixpkgs/pkgs/development/python-modules/curtsies/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/cyclonedx-python-lib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/cypari2/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/datadiff/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dataproperty/default.nix48
-rw-r--r--nixpkgs/pkgs/development/python-modules/datasets/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/dbt-core/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/dbus-fast/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/debianbts/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/debugpy/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/distributed/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/dj-database-url/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-admin-datta/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-scim2/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/django-widget-tweaks/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/djangorestframework-dataclasses/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/drms/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/duckduckgo-search/default.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/dvc/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/dvclive/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/esphome-dashboard-api/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/events/default.nix38
-rw-r--r--nixpkgs/pkgs/development/python-modules/exchangelib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/explorerscript/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastapi/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastparquet/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/fastparquet/version.patch7
-rw-r--r--nixpkgs/pkgs/development/python-modules/fb-re2/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/fe25519/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/filedepot/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/flask-security-too/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/fnv-hash-fast/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/formulae/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/fountains/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/funsor/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ge25519/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/geopy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/getjump/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/gevent/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-nest-sdm/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/google-re2/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/gpytorch/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/griffe/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/grpc-interceptor/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/gspread/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/gumath/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/gymnasium/default.nix49
-rw-r--r--nixpkgs/pkgs/development/python-modules/gyp/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/hahomematic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/hdfs/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/home-assistant-bluetooth/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/homematicip/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ical/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/idasen/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/impacket/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/installer/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipfshttpclient/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipycanvas/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipyniivue/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipyparallel/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/ipytablewidgets/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/jedi/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/jellyfish/default.nix24
-rw-r--r--nixpkgs/pkgs/development/python-modules/jenkins-job-builder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/json-tricks/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/json5/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonpath/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonrpc-async/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/jsonschema/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupyter-collaboration/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/jupytext/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix25
-rw-r--r--nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/klaus/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/knx-frontend/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/kombu/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/kornia/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/laszip/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/ledgerblue/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/libtmux/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/liquidctl/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/logbook/default.nix87
-rw-r--r--nixpkgs/pkgs/development/python-modules/losant-rest/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/manifest-ml/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/manifestoo-core/default.nix40
-rw-r--r--nixpkgs/pkgs/development/python-modules/manifestoo/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/mashumaro/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/matplotlib/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/mdformat-mkdocs/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/mdformat/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/meep/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/meshtastic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/millheater/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mip/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/mkdocs-minify/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/mkdocstrings-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ml-dtypes/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/model-bakery/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/molecule/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/molecule/plugins.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/monai-deploy/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/mpi4py/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/msgspec/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/msprime/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/multiset/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mypy-boto3-ebs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/napalm/hp-procurve.nix22
-rw-r--r--nixpkgs/pkgs/development/python-modules/napari/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbclassic/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/nbsphinx/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/neo4j/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/netcdf4/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/newversion/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/ninja/default.nix1
-rw-r--r--nixpkgs/pkgs/development/python-modules/ninja/stub/ninja/__init__.py2
-rw-r--r--nixpkgs/pkgs/development/python-modules/nitime/default.nix28
-rw-r--r--nixpkgs/pkgs/development/python-modules/notus-scanner/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/numpyro/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/oci/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/oldest-supported-numpy/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/opentsne/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/opower/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/optimum/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/osc/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/oslo-serialization/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/paddleocr/default.nix111
-rw-r--r--nixpkgs/pkgs/development/python-modules/paddleocr/remove-import-imaug.patch20
-rw-r--r--nixpkgs/pkgs/development/python-modules/pallets-sphinx-themes/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pandas/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/particle/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/paste/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/pathvalidate/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/patool/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/pdf2docx/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/peaqevcore/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pex/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pg8000/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pglast/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pgvector/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/picosvg/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pillow/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pip-tools/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/pip/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/pipdeptree/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/pkg-about/default.nix55
-rw-r--r--nixpkgs/pkgs/development/python-modules/plaid-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/playwright/default.nix5
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/playwright/update.sh2
-rw-r--r--nixpkgs/pkgs/development/python-modules/poetry-core/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/polyline/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/procmon-parser/default.nix46
-rw-r--r--nixpkgs/pkgs/development/python-modules/proxy-py/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/publicsuffixlist/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pulumi-aws/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-dormakaba-dkey/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/py-partiql-parser/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyTelegramBotAPI/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybox2d/default.nix44
-rw-r--r--nixpkgs/pkgs/development/python-modules/pybtex-docutils/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycardano/default.nix67
-rw-r--r--nixpkgs/pkgs/development/python-modules/pycmarkgfm/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydaikin/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydeck/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydicom-seg/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydiscourse/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/pydrawise/default.nix65
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyduotecno/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pygobject-stubs/default.nix39
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyhanko-certvalidator/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyhepmc/default.nix69
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pykeepass/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymavlink/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymdown-extensions/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/pymilvus/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pynisher/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyomo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyopengl-accelerate/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyoutbreaksnearme/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypandoc/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pypck/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyproject-api/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyproject-hooks/default.nix37
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix19
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma-pipeline-windows/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysigma/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysimplesoap/default.nix51
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysimplesoap/stringIO.patch31
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyskyqremote/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyslim/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pysnooz/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyssim/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytablewriter/default.nix104
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytado/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-playwright/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-recording/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytest-testinfra/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-box/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-bsblan/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-creole/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-engineio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-homewizard-energy/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-hosts/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-magic/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-matter-server/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-otbr-api/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-roborock/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/python-vagrant/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/python3-saml/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/python3-saml/skip-broken-tests.patch28
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytibber/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytile/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytorch-lightning/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pytrends/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvex/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyvisa-sim/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/pywbem/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/pyweatherflowrest/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/pywemo/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/qcodes-loop/default.nix18
-rw-r--r--nixpkgs/pkgs/development/python-modules/quandl/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/quandl/pandas2-datetime-removal.patch33
-rw-r--r--nixpkgs/pkgs/development/python-modules/radian/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/rasterio/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/recipe-scrapers/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/recordlinkage/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/reflink/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/regenmaschine/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/remarshal/default.nix12
-rw-r--r--nixpkgs/pkgs/development/python-modules/repoze_sphinx_autointerface/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/reproject/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/restrictedpython/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/rfcat/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/riscof/default.nix42
-rw-r--r--nixpkgs/pkgs/development/python-modules/riscv-config/default.nix11
-rw-r--r--nixpkgs/pkgs/development/python-modules/rst2pdf/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/rustworkx/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-build-core/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-fuzzy/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-image/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/scikit-misc/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/scim2-filter-parser/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/scipy/default.nix31
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/scipy/update.sh8
-rw-r--r--nixpkgs/pkgs/development/python-modules/scramp/default.nix3
-rw-r--r--nixpkgs/pkgs/development/python-modules/scrapy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/setupmeta/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptools-odoo/default.nix76
-rw-r--r--nixpkgs/pkgs/development/python-modules/setuptools/default.nix70
-rw-r--r--nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/smbus2/default.nix16
-rw-r--r--nixpkgs/pkgs/development/python-modules/snitun/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/socksio/default.nix10
-rw-r--r--nixpkgs/pkgs/development/python-modules/soxr/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/spdx-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/sqlalchemy-mixins/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/starlette/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/stim/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/stravalib/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/strawberry-graphql/default.nix9
-rwxr-xr-xnixpkgs/pkgs/development/python-modules/streamlit/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/stumpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/syrupy/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/tensorflow-metadata/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/textual/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/torch/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/torchio/default.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/tornado/4.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/tornado/5.nix9
-rw-r--r--nixpkgs/pkgs/development/python-modules/tornado/default.nix30
-rw-r--r--nixpkgs/pkgs/development/python-modules/trimesh/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/troposphere/default.nix31
-rw-r--r--nixpkgs/pkgs/development/python-modules/tweedledum/default.nix5
-rw-r--r--nixpkgs/pkgs/development/python-modules/twilio/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/typecode/default.nix8
-rw-r--r--nixpkgs/pkgs/development/python-modules/typepy/default.nix15
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-awscrt/default.nix36
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-beautifulsoup4/default.nix34
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-docopt/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-html5lib/default.nix29
-rw-r--r--nixpkgs/pkgs/development/python-modules/types-redis/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/ulid-transform/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/universal-pathlib/default.nix7
-rw-r--r--nixpkgs/pkgs/development/python-modules/unstructured-api-tools/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/unstructured/default.nix2
-rw-r--r--nixpkgs/pkgs/development/python-modules/us/default.nix41
-rw-r--r--nixpkgs/pkgs/development/python-modules/vega/default.nix13
-rw-r--r--nixpkgs/pkgs/development/python-modules/vsure/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/watchfiles/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/wcmatch/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/web3/default.nix23
-rw-r--r--nixpkgs/pkgs/development/python-modules/wheel/default.nix17
-rw-r--r--nixpkgs/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/whitenoise/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix6
-rw-r--r--nixpkgs/pkgs/development/python-modules/xpath-expressions/default.nix20
-rw-r--r--nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix14
-rw-r--r--nixpkgs/pkgs/development/python-modules/zephyr-python-api/default.nix35
-rw-r--r--nixpkgs/pkgs/development/python-modules/zeroconf/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zigpy/default.nix4
-rw-r--r--nixpkgs/pkgs/development/python-modules/zimports/default.nix4
433 files changed, 4326 insertions, 1454 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/adax/default.nix b/nixpkgs/pkgs/development/python-modules/adax/default.nix
index e4240028638b..fd2cb0f29f59 100644
--- a/nixpkgs/pkgs/development/python-modules/adax/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/adax/default.nix
@@ -8,16 +8,16 @@
 
 buildPythonPackage rec {
   pname = "adax";
-  version = "0.2.0";
+  version = "0.3.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.5";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Danielhiversen";
     repo = "pyadax";
-    rev = version;
-    hash = "sha256-EMSX2acklwWOYiEeLHYG5mwdiGnWAUo5dGMiHCmZrko=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-y4c1RBy/UxmKP7+mHXi86XJ2/RXGrqkj94I2Q699EJU=";
   };
 
   propagatedBuildInputs = [
@@ -28,11 +28,14 @@ buildPythonPackage rec {
   # Project has no tests
   doCheck = false;
 
-  pythonImportsCheck = [ "adax" ];
+  pythonImportsCheck = [
+    "adax"
+  ];
 
   meta = with lib; {
     description = "Python module to communicate with Adax";
     homepage = "https://github.com/Danielhiversen/pyAdax";
+    changelog = "https://github.com/Danielhiversen/pyAdax/releases/tag/${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix b/nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix
index b0af50573ad9..785c011c6d66 100644
--- a/nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/add-trailing-comma/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "add-trailing-comma";
-  version = "3.0.1";
+  version = "3.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "asottile";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-wCqCKomnkYgvxDWtjBwyqKb09sTPqPgWbYohgosUaHA=";
+    hash = "sha256-B+wjBy42RwabVz/6qEMGpB0JmwJ9hqSskwcNj4x/B/k=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/afdko/default.nix b/nixpkgs/pkgs/development/python-modules/afdko/default.nix
index dc14fdf51ac6..214a85f8c915 100644
--- a/nixpkgs/pkgs/development/python-modules/afdko/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/afdko/default.nix
@@ -23,6 +23,7 @@
 , setuptools-scm
 , scikit-build
 , cmake
+, ninja
 , antlr4_9
 , libxml2
 , pytestCheckHook
@@ -47,6 +48,7 @@ buildPythonPackage rec {
     setuptools-scm
     scikit-build
     cmake
+    ninja
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ailment/default.nix b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
index 837842477d28..2cde5dda3ae9 100644
--- a/nixpkgs/pkgs/development/python-modules/ailment/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ailment/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "ailment";
-  version = "9.2.65";
+  version = "9.2.66";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-Bli+zrxMbRY2dzAx25ap3DhROIFTlk+TGpAfrHiMxPc=";
+    hash = "sha256-5F6mSdYkeDS/n4Quu6UrBK3alfieop6Go3muGlmr/84=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aioambient/default.nix b/nixpkgs/pkgs/development/python-modules/aioambient/default.nix
index 15d3d7ae5617..812417a38a76 100644
--- a/nixpkgs/pkgs/development/python-modules/aioambient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioambient/default.nix
@@ -3,6 +3,7 @@
 , aresponses
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , poetry-core
 , pytest-aiohttp
 , pytest-asyncio
@@ -15,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "aioambient";
-  version = "2023.04.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -24,9 +25,23 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-ar2UGSlVukMD5EZsEn7TFfIOovaI+B3Ym+UeGo95oks=";
+    hash = "sha256-Y8I4iPvxcK98Olb3JURNK37MKggdhcweKvNBa0ZtG6I=";
   };
 
+  patches = [
+    # This patch removes references to setuptools and wheel that are no longer
+    # necessary and changes poetry to poetry-core, so that we don't need to add
+    # unnecessary nativeBuildInputs.
+    #
+    #   https://github.com/bachya/aioambient/pull/295
+    #
+    (fetchpatch {
+      name = "clean-up-build-dependencies.patch";
+      url = "https://github.com/bachya/aioambient/commit/fa21a2e82678a231a73c8a1153032980926f4c35.patch";
+      hash = "sha256-RLRbHmaR2A8MNc96WHx0L8ccyygoBUaOulAuRJkFuUM=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace 'websockets = ">=11.0.1"' 'websockets = "*"'
@@ -43,6 +58,8 @@ buildPythonPackage rec {
     websockets
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [
     aresponses
     pytest-aiohttp
diff --git a/nixpkgs/pkgs/development/python-modules/aioapns/default.nix b/nixpkgs/pkgs/development/python-modules/aioapns/default.nix
index 9cebf5f1eb13..2b48f96ae2b5 100644
--- a/nixpkgs/pkgs/development/python-modules/aioapns/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioapns/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "aioapns";
-  version = "2.2";
+  version = "3.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-3FMNIhIZrstPKTfHVmN+K28UR2G26HZ5S/JtXmaFk1c=";
+    hash = "sha256-MiFjd9HYaTugjP66O24Tgk92bC91GQHggvy1sdQIu+0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aioaseko/default.nix b/nixpkgs/pkgs/development/python-modules/aioaseko/default.nix
index d6d69c6ee466..beea7e05a750 100644
--- a/nixpkgs/pkgs/development/python-modules/aioaseko/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioaseko/default.nix
@@ -4,11 +4,12 @@
 , fetchFromGitHub
 , pythonOlder
 , setuptools
+, pyjwt
 }:
 
 buildPythonPackage rec {
   pname = "aioaseko";
-  version = "0.0.2";
+  version = "0.1.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -16,8 +17,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "milanmeu";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-nJRVNBYfBcLYnBsTpQZYMHYWh0+hQObVKJ7sOXFwDjc=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-bjPl0yrRaTIEEuPV8NbWu2hx/es5bcu2tDBZV+95fUc=";
   };
 
   nativeBuildInputs = [
@@ -26,6 +27,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     aiohttp
+    pyjwt
   ];
 
   # Module has no tests
@@ -38,6 +40,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Module to interact with the Aseko Pool Live API";
     homepage = "https://github.com/milanmeu/aioaseko";
+    changelog = "https://github.com/milanmeu/aioaseko/releases/tag/v${version}";
     license = with licenses; [ lgpl3Plus ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/aiobafi6/default.nix b/nixpkgs/pkgs/development/python-modules/aiobafi6/default.nix
index e92fa59d920a..9bdd4f9eb420 100644
--- a/nixpkgs/pkgs/development/python-modules/aiobafi6/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiobafi6/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "aiobafi6";
-  version = "0.8.2";
+  version = "0.9.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.10";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "jfroy";
     repo = "aiobafi6";
     rev = "refs/tags/${version}";
-    hash = "sha256-ng+WpLhAfsouFA9biomc0V+L9XQHDthJeJLv8ttnYBc=";
+    hash = "sha256-QxjrspvNrcMcGChjj1B4QF/SnWCsGmPxnI2bWAL6BiI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiobiketrax/default.nix b/nixpkgs/pkgs/development/python-modules/aiobiketrax/default.nix
index b64c7e103a7e..757c9c1915d5 100644
--- a/nixpkgs/pkgs/development/python-modules/aiobiketrax/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiobiketrax/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "aiobiketrax";
-  version = "1.1.0";
+  version = "1.1.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "basilfx";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-qt2/Wf9qolNF83tf2G5xGFJiLTbOWLPbtCnDfIrKvoI=";
+    hash = "sha256-YvPWvdA4BslkOLt3IkzSgUgex8h1CjCOVZC6oxNf3ZA=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix b/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
index f6b87c401cee..cc34f91fde9d 100644
--- a/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioesphomeapi/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "aioesphomeapi";
-  version = "16.0.1";
+  version = "16.0.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "esphome";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-DxEfkM//WvGqS/iWb6RIvE2raIYb/I0bcwrLqLBjCmw=";
+    hash = "sha256-x4kH8riHZbVibgwR2DmWB4tsswpub4m2LwnypVVUgqM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiogram/default.nix b/nixpkgs/pkgs/development/python-modules/aiogram/default.nix
index ab5499f7ae96..ceb3f9603ede 100644
--- a/nixpkgs/pkgs/development/python-modules/aiogram/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiogram/default.nix
@@ -53,6 +53,12 @@ buildPythonPackage rec {
     redis
   ];
 
+  # requires network
+  disabledTests = [
+    "test_download_file_404"
+    "test_download_404"
+  ];
+
   pythonImportsCheck = [ "aiogram" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix b/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
index e4dcbda3a02e..aa0dbd64be80 100644
--- a/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioguardian/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "aioguardian";
-  version = "2022.10.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-plgO+pyKmG0mYnFZxDcrENcuEg5AG2Og2xWipzuzyHo=";
+    hash = "sha256-/UNSAfAkOXPJQDWBZIe/AYIhx83kPCjGzZjn4oh+gfY=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix b/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
index 5bc3597a6752..ed3823af9bef 100644
--- a/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "aiohomekit";
-  version = "2.6.16";
+  version = "3.0.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "Jc2k";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-2QnM5WJ0UyuRyL6NiXz22SLUMvyNfbdNIutJSNjS+G8=";
+    hash = "sha256-TyVmvricfaS+i96DGwh0IKhMm56U1DyebAmRb+OFCh4=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiolifx-themes/default.nix b/nixpkgs/pkgs/development/python-modules/aiolifx-themes/default.nix
index 461590b0cc49..618c0e0d9023 100644
--- a/nixpkgs/pkgs/development/python-modules/aiolifx-themes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiolifx-themes/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "aiolifx-themes";
-  version = "0.4.5";
+  version = "0.4.8";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "Djelibeybi";
     repo = "aiolifx-themes";
     rev = "refs/tags/v${version}";
-    hash = "sha256-df3FQdOa3C8eQfgFi+sh7+/GBpE+4B5gOI+3XDQLHEs=";
+    hash = "sha256-jbL6f6gDH6AxsfuD7mFtvCGKLqy/NKoo5bUmXN9hBrM=";
   };
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/aioqsw/default.nix b/nixpkgs/pkgs/development/python-modules/aioqsw/default.nix
index 26745f8d5561..d08eeaec6c0e 100644
--- a/nixpkgs/pkgs/development/python-modules/aioqsw/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioqsw/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "aioqsw";
-  version = "0.3.3";
+  version = "0.3.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.11";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "Noltari";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-2fu78mp9ztm229N+zhvY7FuWl3xZlqSYVk/Okp2RNJI=";
+    hash = "sha256-YGVQsw7UhRWXtfn2MQa3GHNlgXR4LJlFnaeLCGjmWfQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aioquic/default.nix b/nixpkgs/pkgs/development/python-modules/aioquic/default.nix
index 753ce73fb2dc..9aeb06a1382d 100644
--- a/nixpkgs/pkgs/development/python-modules/aioquic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioquic/default.nix
@@ -1,52 +1,43 @@
 { lib
-, fetchPypi
-, fetchpatch
 , buildPythonPackage
+, certifi
+, fetchPypi
 , openssl
 , pylsqpack
-, certifi
-, pytestCheckHook
 , pyopenssl
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "aioquic";
-  version = "0.9.20";
+  version = "0.9.21";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-7ENqqs6Ze4RrAeUgDtv34+VrkYJqFE77l0j9jd0zK74=";
+    hash = "sha256-ecfsBjGOeFYnZlyk6HI63zR7ciW30AbjMtJXWh9RbvU=";
   };
 
-  patches = [
-    # This patch is here because it's required by the next patch.
-    (fetchpatch {
-      url = "https://github.com/aiortc/aioquic/commit/3930580b50831a034d21ee4689362188b21a4d6a.patch";
-      hash = "sha256-XjhyajDawN/G1nPtkMbNe66iJCo76UpdA7PqwtxO5ag=";
-    })
-    # https://github.com/aiortc/aioquic/pull/349, fixes test failure due pyopenssl==22
-    (fetchpatch {
-      url = "https://github.com/aiortc/aioquic/commit/c3b72be85868d67ee32d49ab9bd98a4357cbcde9.patch";
-      hash = "sha256-AjW+U9DpNXgA5yqKkWnx0OYpY2sZR9KIdQ3pSzxU+uY=";
-    })
-    # AssertionError: 'self-signed certificate' != 'self signed certificate'
-    (fetchpatch {
-      url = "https://github.com/aiortc/aioquic/commit/cfcd3ce12fb27f5b26deb011a82f66b5d68d521a.patch";
-      hash = "sha256-bCW817Z7jCxYySfUukNR4cibURH3qZWEQjeeyvRIqZY=";
-    })
-  ];
-
   propagatedBuildInputs = [
     certifi
     pylsqpack
     pyopenssl
   ];
 
-  buildInputs = [ openssl ];
+  buildInputs = [
+    openssl
+  ];
 
-  nativeCheckInputs = [ pytestCheckHook ];
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
 
-  pythonImportsCheck = [ "aioquic" ];
+  pythonImportsCheck = [
+    "aioquic"
+  ];
 
   __darwinAllowLocalNetworking = true;
 
diff --git a/nixpkgs/pkgs/development/python-modules/aioredis/default.nix b/nixpkgs/pkgs/development/python-modules/aioredis/default.nix
index 5ea482278944..2c944600ef91 100644
--- a/nixpkgs/pkgs/development/python-modules/aioredis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioredis/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , async-timeout
 , typing-extensions
@@ -11,14 +12,25 @@
 buildPythonPackage rec {
   pname = "aioredis";
   version = "2.0.1";
+  format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "eaa51aaf993f2d71f54b70527c440437ba65340588afeb786cd87c55c89cd98e";
+    hash = "sha256-6qUar5k/LXH1S3BSfEQEN7plNAWIr+t4bNh8Vcic2Y4=";
   };
 
+  patches = [
+    # https://github.com/aio-libs-abandoned/aioredis-py/pull/1490
+    (fetchpatch {
+      name = "python-3.11-compatibility.patch";
+      url = "https://github.com/aio-libs-abandoned/aioredis-py/commit/1b951502dc8f149fa66beafeea40c782f1c5c1d3.patch";
+      hash = "sha256-EqkiYktxISg0Rv4ShXOksGvuUyljPxjJsfNOVaaax2o=";
+      includes = [ "aioredis/exceptions.py" ];
+    })
+  ];
+
   propagatedBuildInputs = [
     async-timeout
     typing-extensions
@@ -29,7 +41,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Asyncio (PEP 3156) Redis client library";
-    homepage = "https://github.com/aio-libs/aioredis";
+    homepage = "https://github.com/aio-libs-abandoned/aioredis-py";
     license = licenses.mit;
     maintainers = with maintainers; [ mmai ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix b/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix
index 1ef9300eaf35..150486cf4aea 100644
--- a/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aioridwell/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "aioridwell";
-  version = "2023.07.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-8EPELXxSq+B9o9eMFeM5ZPVYTa1+kT/S6cO7hKtD18s=";
+    hash = "sha256-AreQC5LOthnOEj0HnEww4zLob394XwCvqZBwjsT2Lcg=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiosomecomfort/default.nix b/nixpkgs/pkgs/development/python-modules/aiosomecomfort/default.nix
index 72fdd22f6696..e993813081a8 100644
--- a/nixpkgs/pkgs/development/python-modules/aiosomecomfort/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiosomecomfort/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "aiosomecomfort";
-  version = "0.0.16";
+  version = "0.0.17";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "mkmer";
     repo = "AIOSomecomfort";
     rev = "refs/tags/${version}";
-    hash = "sha256-GwnlaPy+pIJOL3szOebH0a0ytVMOeUI4dM8D629RuEU=";
+    hash = "sha256-HJbLsl1NHZxfH17mIi0T6h5ZSfKaw4VYbNgN6vmN7l4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiounifi/default.nix b/nixpkgs/pkgs/development/python-modules/aiounifi/default.nix
index b2b6a866992e..09b177a61bf7 100644
--- a/nixpkgs/pkgs/development/python-modules/aiounifi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiounifi/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "aiounifi";
-  version = "52";
+  version = "55";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "Kane610";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-mghAUZrRBKHM+mIeUGnbJqWD+NhZyikdGsIhf1uohiM=";
+    hash = "sha256-JvuP1Rhq01Y9KbfAJpawUQNWfxvlf9LY82RvXok4tgw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/aiowatttime/default.nix b/nixpkgs/pkgs/development/python-modules/aiowatttime/default.nix
index dde165c5bf87..fd5da5c330d5 100644
--- a/nixpkgs/pkgs/development/python-modules/aiowatttime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aiowatttime/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "aiowatttime";
-  version = "2022.10.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-rqmsUvVwXC/XkR/v2d9d3t7u6Poms4ORiOci41ajXIo=";
+    hash = "sha256-/ulDImbLOTcoA4iH8e65A01aqqnCLn+01DWuM/4H4p4=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/airthings-ble/default.nix b/nixpkgs/pkgs/development/python-modules/airthings-ble/default.nix
index c3bf5066385d..eec4830837f0 100644
--- a/nixpkgs/pkgs/development/python-modules/airthings-ble/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/airthings-ble/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "airthings-ble";
-  version = "0.5.6-2";
+  version = "0.5.6-4";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "vincegio";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-xxKZI6yb8h1eqtfTpa8SqL/hnIWhFtuBP7RXQvI/Z/4=";
+    hash = "sha256-Ft5A2ZGVH9VHoRDAqDcc0rBfnQRxoXMylCAwUSwmViE=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/angr/default.nix b/nixpkgs/pkgs/development/python-modules/angr/default.nix
index 55fe186c90e1..815d283a58ee 100644
--- a/nixpkgs/pkgs/development/python-modules/angr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/angr/default.nix
@@ -32,7 +32,7 @@
 
 buildPythonPackage rec {
   pname = "angr";
-  version = "9.2.65";
+  version = "9.2.66";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-atVmXsgMIRpmOXgNoatWkk9ID14f9rMJMT6+CWmvbY4=";
+    hash = "sha256-l/O+7M9f2HtIcXNd49+zr2Z0Cx/3mbXgZvqOyPlvJbk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ansible-compat/default.nix b/nixpkgs/pkgs/development/python-modules/ansible-compat/default.nix
index c18343d46f1c..479ff401a425 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible-compat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible-compat/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "ansible-compat";
-  version = "4.1.5";
+  version = "4.1.8";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-WXyDahhMETH+62sOI82iNsQf7N7mRCc3Unj7aSD9LnQ=";
+    hash = "sha256-9YE19dEj4I/bfhGEm4KUXhkA+MiZughZ1LQbJcdsqVU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ansible-pylibssh/default.nix b/nixpkgs/pkgs/development/python-modules/ansible-pylibssh/default.nix
index 5eb60419fcf7..cfe8d7e1e1fa 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible-pylibssh/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible-pylibssh/default.nix
@@ -23,6 +23,11 @@ buildPythonPackage rec {
     hash = "sha256-spaGux6dYvtUtpOdU6oN7SEn8IgBof2NpQSPvr+Zplg=";
   };
 
+  # remove after https://github.com/ansible/pylibssh/pull/502 is merged
+  postPatch = ''
+    sed -i "/setuptools_scm_git_archive/d" pyproject.toml
+  '';
+
   nativeBuildInputs = [
     cython
     wheel
diff --git a/nixpkgs/pkgs/development/python-modules/ansible/default.nix b/nixpkgs/pkgs/development/python-modules/ansible/default.nix
index 9da23d3fc09b..f7c41aa12ba2 100644
--- a/nixpkgs/pkgs/development/python-modules/ansible/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ansible/default.nix
@@ -21,7 +21,7 @@
 
 let
   pname = "ansible";
-  version = "8.2.0";
+  version = "8.3.0";
 in
 buildPythonPackage {
   inherit pname version;
@@ -31,7 +31,7 @@ buildPythonPackage {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-k1ppIf+wNKoY5lB7SeQBZ2zRUkPW+qXgXiIQCL9yXJc=";
+    hash = "sha256-XlgAHX1twz5dFWyjQ4g7YT7JiPaTZLCkP3Ek/ktb4vI=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/anthropic/default.nix b/nixpkgs/pkgs/development/python-modules/anthropic/default.nix
index a7bbb6fb2bd6..911361f82b8a 100644
--- a/nixpkgs/pkgs/development/python-modules/anthropic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/anthropic/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , poetry-core
 , anyio
 , distro
@@ -17,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "anthropic";
-  version = "0.3.8";
+  version = "0.3.10";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -26,17 +25,9 @@ buildPythonPackage rec {
     owner = "anthropics";
     repo = "anthropic-sdk-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rNLKIZKX9AI0IKGicozllh+XGU4Ll91EfRaAfJYJtJE=";
+    hash = "sha256-OmT8a588eprCTUnnhLF5+XSOtetiUMouaWz1hrTl1ao=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "support-pytest-asyncio-0.21.0.patch";
-      url = "https://github.com/anthropics/anthropic-sdk-python/commit/1e199aa9b38970c5b5b4492907494ac653a7f756.patch";
-      hash = "sha256-f9KldnvXuRKVgT7Xb/xdhInKOeXvi4g5OxVRD0PMhgQ=";
-    })
-  ];
-
   nativeBuildInputs = [
     poetry-core
   ];
@@ -70,6 +61,5 @@ buildPythonPackage rec {
     changelog = "https://github.com/anthropics/anthropic-sdk-python/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ natsukium ];
-    broken = lib.versionAtLeast pydantic.version "2";
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/anytree/default.nix b/nixpkgs/pkgs/development/python-modules/anytree/default.nix
index d49b22349639..a83d8748d477 100644
--- a/nixpkgs/pkgs/development/python-modules/anytree/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/anytree/default.nix
@@ -1,24 +1,28 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+, fontconfig
+, graphviz
+, poetry-core
+, pytestCheckHook
 , pythonOlder
-, substituteAll
 , six
+, substituteAll
 , withGraphviz ? true
-, graphviz
-, fontconfig
-# Tests
-, pytestCheckHook
-, nose
 }:
 
 buildPythonPackage rec {
   pname = "anytree";
-  version = "2.8.0";
+  version = "2.9.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "3f0f93f355a91bc3e6245319bf4c1d50e3416cc7a35cc1133c1ff38306bbccab";
+  src = fetchFromGitHub {
+    owner = "c0fec0de";
+    repo = "anytree";
+    rev = "refs/tags/${version}";
+    hash = "sha256-e7mmOOvrZuMCcyUg74YLLXGzkb5nCtuYmhNzAbY65gg=";
   };
 
   patches = lib.optionals withGraphviz [
@@ -28,30 +32,35 @@ buildPythonPackage rec {
     })
   ];
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   propagatedBuildInputs = [
     six
   ];
 
-  # tests print “Fontconfig error: Cannot load default config file”
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  # Tests print “Fontconfig error: Cannot load default config file”
   preCheck = lib.optionalString withGraphviz ''
     export FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf
   '';
 
-  # circular dependency anytree → graphviz → pango → glib → gtk-doc → anytree
+  # Circular dependency anytree → graphviz → pango → glib → gtk-doc → anytree
   doCheck = withGraphviz;
 
-  nativeCheckInputs = [ pytestCheckHook nose ];
-
-  pytestFlagsArray = lib.optionals (pythonOlder "3.4") [
-    # Use enums, which aren't available pre-python3.4
-    "--ignore=tests/test_resolver.py"
-    "--ignore=tests/test_search.py"
+  pythonImportsCheck = [
+    "anytree"
   ];
 
   meta = with lib; {
     description = "Powerful and Lightweight Python Tree Data Structure";
     homepage = "https://github.com/c0fec0de/anytree";
+    changelog = "https://github.com/c0fec0de/anytree/releases/tag/${version}";
     license = licenses.asl20;
-    maintainers = [ ];
+    maintainers = with maitnainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/anywidget/default.nix b/nixpkgs/pkgs/development/python-modules/anywidget/default.nix
index d993af0654f8..f96ef47e7332 100644
--- a/nixpkgs/pkgs/development/python-modules/anywidget/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/anywidget/default.nix
@@ -7,7 +7,6 @@
 , hatchling
 , importlib-metadata
 , ipywidgets
-, jupyterlab
 , psygnal
 , typing-extensions
 , watchfiles
@@ -25,10 +24,17 @@ buildPythonPackage rec {
     hash = "sha256-OUKxmYceEKURJeQTVI7oLT4SdZM90V7BoZf0UykkEV4=";
   };
 
+  # We do not need the jupyterlab build dependency, because we do not need to
+  # build any JS components; these are present already in the PyPI artifact.
+  #
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace '"jupyterlab==3.*"' ""
+  '';
+
   nativeBuildInputs = [
     hatch-jupyter-builder
     hatchling
-    jupyterlab
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/apischema/default.nix b/nixpkgs/pkgs/development/python-modules/apischema/default.nix
new file mode 100644
index 000000000000..a60b97d1d951
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/apischema/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, graphql-core
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "apischema";
+  version = "0.18.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "wyfo";
+    repo = "apischema";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-DBFFCLi8cpASyGPNqZvYe3OTLSbNZ8QzaxjQkOiHxFc=";
+  };
+
+  passthru.optional-dependencies = {
+    graphql = [
+      graphql-core
+    ];
+  };
+
+  nativeCheckInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+
+  pythonImportsCheck = [
+    "apischema"
+  ];
+
+  meta = with lib; {
+    description = "JSON (de)serialization, GraphQL and JSON schema generation using typing";
+    homepage = "https://github.com/wyfo/apischema";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/apkit/default.nix b/nixpkgs/pkgs/development/python-modules/apkit/default.nix
new file mode 100644
index 000000000000..7e2c45ca8bc7
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/apkit/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, numpy
+, scipy
+}:
+
+buildPythonPackage {
+  pname = "apkit";
+  version = "unstable-2022-08-23";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "hwp";
+    repo = "apkit";
+    rev = "40561738c3f585c590c3f0584bf2e3354eefbd48";
+    hash = "sha256-/pwoEKB6BD+wWy7QwPwwzSxGn+TAOaMzduOXyuoXC8g=";
+  };
+
+  propagatedBuildInputs = [
+    numpy
+    scipy
+  ];
+
+  pythonImportsCheck = [ "apkit" ];
+
+  # This package has no tests
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Audio processing toolkit";
+    homepage = "https://github.com/hwp/apkit";
+    license = licenses.mit;
+    maintainers = with maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/app-model/default.nix b/nixpkgs/pkgs/development/python-modules/app-model/default.nix
index c906b316d46e..29f19979ff53 100644
--- a/nixpkgs/pkgs/development/python-modules/app-model/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/app-model/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "app-model";
-  version = "0.2.0";
+  version = "0.2.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "pyapp-kit";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-4I0lDL6B+8f/lj09zT14lvbGATuHIfjKwwABXi6OIvE=";
+    hash = "sha256-1LldqihVCCgFdnsod751zWAAqkaaIH2qMpfsPYjWzgs=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/apprise/default.nix b/nixpkgs/pkgs/development/python-modules/apprise/default.nix
index 3cdc55f63499..0e0944dd32e6 100644
--- a/nixpkgs/pkgs/development/python-modules/apprise/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/apprise/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "apprise";
-  version = "1.4.5";
+  version = "1.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-t8ZlE8VFZpCimO2IfJAW3tQvFeNl0WFC5yi3T3z/7oI=";
+    hash = "sha256-PFgRQQd6EBeQ7eDKsW+ig60DKpsvl9xtNWX7LZGBP9c=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/approvaltests/default.nix b/nixpkgs/pkgs/development/python-modules/approvaltests/default.nix
index f55ca7e29670..03e0d9527522 100644
--- a/nixpkgs/pkgs/development/python-modules/approvaltests/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/approvaltests/default.nix
@@ -1,36 +1,33 @@
 { lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-
-# propagates
 , allpairspy
 , approval-utilities
 , beautifulsoup4
+, buildPythonPackage
 , empty-files
+, fetchFromGitHub
+, mock
 , mrjob
+, numpy
 , pyperclip
 , pytest
-, typing-extensions
-
-# tests
-, numpy
 , pytestCheckHook
+, pythonOlder
+, testfixtures
+, typing-extensions
 }:
 
 buildPythonPackage rec {
-  version = "8.3.1";
   pname = "approvaltests";
+  version = "9.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
-  # no tests included in PyPI tarball
   src = fetchFromGitHub {
     owner = "approvals";
     repo = "ApprovalTests.Python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-FyYT+w4CX+CdUg0uGwyjw98H8Z+HMVecgMBW/ytrtFU=";
+    hash = "sha256-tyUPXeMdFuzlBY/HrGHLDEwYngzBELayaVVfEh92lbE=";
   };
 
   propagatedBuildInputs = [
@@ -41,16 +38,18 @@ buildPythonPackage rec {
     mrjob
     pyperclip
     pytest
+    testfixtures
     typing-extensions
   ];
 
   nativeCheckInputs = [
+    mock
     numpy
     pytestCheckHook
   ];
 
   disabledTests = [
-    # tests expects paths below ApprovalTests.Python directory
+    # Tests expects paths below ApprovalTests.Python directory
     "test_received_filename"
     "test_pytest_namer"
   ];
@@ -63,7 +62,8 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Assertion/verification library to aid testing";
     homepage = "https://github.com/approvals/ApprovalTests.Python";
+    changelog = "https://github.com/approvals/ApprovalTests.Python/releases/tag/v${version}";
     license = licenses.asl20;
-    maintainers = [ maintainers.marsam ];
+    maintainers = with maintainers; [ marsam ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix b/nixpkgs/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix
index 0a2dd009f6a4..92c58450cee4 100644
--- a/nixpkgs/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "appthreat-vulnerability-db";
-  version = "5.2.0";
+  version = "5.2.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "AppThreat";
     repo = "vulnerability-db";
     rev = "refs/tags/v${version}";
-    hash = "sha256-OtaoyqYRsZVoWezrTAy3zROyNeRLbZmCT+z7YCwf9Ow=";
+    hash = "sha256-h1xpP3fFr8+twa5jXQrZfKFjNAlCvXv7sFvhgJZ88H0=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/apptools/default.nix b/nixpkgs/pkgs/development/python-modules/apptools/default.nix
index 0905100a2bae..faaf6bec0796 100644
--- a/nixpkgs/pkgs/development/python-modules/apptools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/apptools/default.nix
@@ -1,12 +1,10 @@
 { lib
 , buildPythonPackage
 , configobj
-, fetchpatch
 , fetchPypi
 , importlib-resources
 , pandas
 , pytestCheckHook
-, pythonAtLeast
 , pythonOlder
 , tables
 , traits
@@ -15,34 +13,16 @@
 
 buildPythonPackage rec {
   pname = "apptools";
-  version = "5.1.0";
+  version = "5.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "12x5lcs1cllpybz7f0i1lcwvmqsaa5n818wb2165lj049wqxx4yh";
+    hash = "sha256-xiaPXfzzCIvK92oAA+ULd3TQG1JY1xmbQQtIUv8iRuM=";
   };
 
-  patches = [
-    # python310: Fix tests
-    # https://github.com/enthought/apptools/issues/303
-    (fetchpatch {
-      url = "https://github.com/enthought/apptools/commit/10fb73916124f7ae7edf6c6688a05ad95678488f.patch";
-      hash = "sha256-izAcP5RWobLvnk2PQx31SX/TUGkw+prbYbjamYVmtjY=";
-      name = "fix_python310_tests.patch";
-    })
-
-    # python39: importlib_resources -> importlib.resources. This patch will be included
-    # in the next release after 5.1.0.
-    (fetchpatch {
-      url = "https://github.com/enthought/apptools/commit/0ae4f52f19a8c0ca9d7926e17c7de949097f24b4.patch";
-      sha256 = "165aiwjisr5c3lasg7xblcha7y1y5bq23vi3g9gc80c24bzwcbsw";
-      name = "fix_importlib-resources_naming.patch";
-    })
-  ];
-
   propagatedBuildInputs = [
     configobj
     traits
@@ -68,6 +48,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Set of packages that Enthought has found useful in creating a number of applications";
     homepage = "https://github.com/enthought/apptools";
+    changelog = "https://github.com/enthought/apptools/releases/tag/${version}";
     license = licenses.bsdOriginal;
     maintainers = with maintainers; [ knedlsepp ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
index e34c8a31a9d0..73e371ed0aab 100644
--- a/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/archinfo/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "archinfo";
-  version = "9.2.65";
+  version = "9.2.66";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-g+inF8eswHNLV6bBVRpyLf6H8PjmPduv7I2svAVEG5U=";
+    hash = "sha256-l9AakU68ACb02NGKWbkmUp14/lC21PJeGuzexYPTaNg=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/argilla/default.nix b/nixpkgs/pkgs/development/python-modules/argilla/default.nix
index 24b9668d12b0..4ef9c171d2b2 100644
--- a/nixpkgs/pkgs/development/python-modules/argilla/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/argilla/default.nix
@@ -65,7 +65,7 @@
 }:
 let
   pname = "argilla";
-  version = "1.13.2";
+  version = "1.15.0";
   optional-dependencies = {
     server = [
       fastapi
@@ -126,7 +126,7 @@ buildPythonPackage {
     owner = "argilla-io";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-FCPlEbgViWZEyXpdtaa6pJxpgbSXmcfJX/1RUFF7Zs4=";
+    hash = "sha256-CEB2Q+8JJmYWeqKS1QuOysedCSuPWXcljlmaclwZzmY=";
   };
 
   pythonRelaxDeps = [
diff --git a/nixpkgs/pkgs/development/python-modules/astroid/default.nix b/nixpkgs/pkgs/development/python-modules/astroid/default.nix
index 5e5f9e22fb40..5fd0a5281b2c 100644
--- a/nixpkgs/pkgs/development/python-modules/astroid/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/astroid/default.nix
@@ -5,8 +5,10 @@
 , isPyPy
 , lazy-object-proxy
 , setuptools
+, wheel
 , typing-extensions
 , typed-ast
+, pip
 , pylint
 , pytestCheckHook
 , wrapt
@@ -28,6 +30,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
@@ -40,6 +43,7 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
+    pip
     pytestCheckHook
     typing-extensions
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix b/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix
index a3ca61f98620..7f6130414488 100644
--- a/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/async-upnp-client/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "async-upnp-client";
-  version = "0.34.1";
+  version = "0.35.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "StevenLooman";
     repo = "async_upnp_client";
     rev = "refs/tags/${version}";
-    hash = "sha256-Ktl6YVYd8QpC6eaz3Xe6YyJZhB92ZLL9/XG4WSc2qS8=";
+    hash = "sha256-U1PkOu257ppSsoPQr4oYdNKkUrm1WKAPuuMy1pjLx8A=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/asyncpg/default.nix b/nixpkgs/pkgs/development/python-modules/asyncpg/default.nix
index 71e20a6d5f79..9e43c0494d14 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncpg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncpg/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "asyncpg";
-  version = "0.27.0";
+  version = "0.28.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-cgmG2aRwXdikD98XIDb1rnhyJQNqfrRucExFqo9iwFQ=";
+    hash = "sha256-clLNw6yy9S/qo2ZCgNO814pGvWwQv9aBrP/++hEg4ng=";
   };
 
   # sandboxing issues on aarch64-darwin, see https://github.com/NixOS/nixpkgs/issues/198495
diff --git a/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix b/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix
index fcfa15fcb1de..5ffe2e769cc9 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncsleepiq/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "asyncsleepiq";
-  version = "1.3.5";
+  version = "1.3.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-CLBKFDvhErnWNEs7xWLha2QgUvKRDmj0y1CYYKri3ag=";
+    hash = "sha256-nKXZXOpwVN8Xe1vwwPGPucvyffiIQ8I4D+0A3qGco5w=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/asyncua/default.nix b/nixpkgs/pkgs/development/python-modules/asyncua/default.nix
index 507a6101a168..c17bae7c80f1 100644
--- a/nixpkgs/pkgs/development/python-modules/asyncua/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/asyncua/default.nix
@@ -5,6 +5,7 @@
 , buildPythonPackage
 , cryptography
 , fetchFromGitHub
+, pyopenssl
 , pytest-asyncio
 , pytest-mock
 , pytestCheckHook
@@ -17,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "asyncua";
-  version = "1.0.3";
+  version = "1.0.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -26,7 +27,7 @@ buildPythonPackage rec {
     owner = "FreeOpcUa";
     repo = "opcua-asyncio";
     rev = "refs/tags/v${version}";
-    hash = "sha256-fSXhW/Ik96HVecwOFWM+VftSzWGX6O4PzPT7JuaYXy0=";
+    hash = "sha256-gAyvo+VJPdS/UpXN/h8LqbIRyx84fifSUsW2GUzLgfo=";
     fetchSubmodules = true;
   };
 
@@ -42,12 +43,13 @@ buildPythonPackage rec {
   '';
 
   propagatedBuildInputs = [
-    aiosqlite
     aiofiles
-    pytz
+    aiosqlite
+    cryptography
+    pyopenssl
     python-dateutil
+    pytz
     sortedcontainers
-    cryptography
     typing-extensions
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/attrs/default.nix b/nixpkgs/pkgs/development/python-modules/attrs/default.nix
index 855b4bf86982..a298dc36f507 100644
--- a/nixpkgs/pkgs/development/python-modules/attrs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/attrs/default.nix
@@ -3,22 +3,31 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
-, setuptools
+, hatchling
 }:
 
 buildPythonPackage rec {
   pname = "attrs";
-  version = "22.2.0";
-  disabled = pythonOlder "3.6";
+  version = "23.1.0";
+  disabled = pythonOlder "3.7";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ySJ7/C8BmTwD9o2zfR0VyWkBiDI8BnxkHxo1ylgYX5k=";
+    hash = "sha256-YnmDbVgVE6JvG/I1+azTM7yRFWg/FPfo+uRsmPxQ4BU=";
   };
 
+  patches = [
+    # hatch-vcs and hatch-fancy-pypi-readme depend on pytest, which depends on attrs
+    ./remove-hatch-plugins.patch
+  ];
+
+  postPatch = ''
+    substituteAllInPlace pyproject.toml
+  '';
+
   nativeBuildInputs = [
-    setuptools
+    hatchling
   ];
 
   outputs = [
@@ -47,6 +56,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python attributes without boilerplate";
     homepage = "https://github.com/python-attrs/attrs";
+    changelog = "https://github.com/python-attrs/attrs/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/attrs/remove-hatch-plugins.patch b/nixpkgs/pkgs/development/python-modules/attrs/remove-hatch-plugins.patch
new file mode 100644
index 000000000000..7d7b83a366e0
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/attrs/remove-hatch-plugins.patch
@@ -0,0 +1,74 @@
+diff --git a/pyproject.toml b/pyproject.toml
+index fb8fae3..998211f 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: MIT
+ 
+ [build-system]
+-requires = ["hatchling", "hatch-vcs", "hatch-fancy-pypi-readme"]
++requires = ["hatchling"]
+ build-backend = "hatchling.build"
+ 
+ 
+@@ -26,7 +26,8 @@ classifiers = [
+     "Typing :: Typed",
+ ]
+ dependencies = ["importlib_metadata;python_version<'3.8'"]
+-dynamic = ["version", "readme"]
++dynamic = ["readme"]
++version = "@version@"
+ 
+ [project.optional-dependencies]
+ tests-no-zope = [
+@@ -67,50 +68,9 @@ Changelog = "https://www.attrs.org/en/stable/changelog.html"
+ Funding = "https://github.com/sponsors/hynek"
+ Tidelift = "https://tidelift.com/subscription/pkg/pypi-attrs?utm_source=pypi-attrs&utm_medium=pypi"
+ 
+-
+-[tool.hatch.version]
+-source = "vcs"
+-raw-options = { local_scheme = "no-local-version" }
+-
+ [tool.hatch.build.targets.wheel]
+ packages = ["src/attr", "src/attrs"]
+ 
+-[tool.hatch.metadata.hooks.fancy-pypi-readme]
+-content-type = "text/markdown"
+-
+-# PyPI doesn't support the <picture> tag.
+-[[tool.hatch.metadata.hooks.fancy-pypi-readme.fragments]]
+-text = """<p align="center">
+-  <a href="https://www.attrs.org/">
+-    <img src="https://raw.githubusercontent.com/python-attrs/attrs/main/docs/_static/attrs_logo.svg" width="35%" alt="attrs" />
+-  </a>
+-</p>
+-"""
+-
+-[[tool.hatch.metadata.hooks.fancy-pypi-readme.fragments]]
+-path = "README.md"
+-start-after = "<!-- teaser-begin -->"
+-
+-[[tool.hatch.metadata.hooks.fancy-pypi-readme.fragments]]
+-text = """
+-
+-## Release Information
+-
+-"""
+-
+-[[tool.hatch.metadata.hooks.fancy-pypi-readme.fragments]]
+-path = "CHANGELOG.md"
+-pattern = "\n(###.+?\n)## "
+-
+-[[tool.hatch.metadata.hooks.fancy-pypi-readme.fragments]]
+-text = """
+-
+----
+-
+-[Full changelog](https://www.attrs.org/en/stable/changelog.html)
+-"""
+-
+-
+ # Make coverage play nicely with pytest-xdist.
+ [tool.hatch.build.targets.wheel.hooks.autorun]
+ dependencies = ["hatch-autorun"]
diff --git a/nixpkgs/pkgs/development/python-modules/autarco/default.nix b/nixpkgs/pkgs/development/python-modules/autarco/default.nix
index 37625fdb1bd2..b5a8715f6ced 100644
--- a/nixpkgs/pkgs/development/python-modules/autarco/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/autarco/default.nix
@@ -3,6 +3,7 @@
 , aresponses
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , poetry-core
 , pytest-asyncio
 , pytestCheckHook
@@ -24,6 +25,22 @@ buildPythonPackage rec {
     hash = "sha256-3f6N4b6WZPAUUQTuGeb20q0f7ZqDR+O24QRze5RpRlw=";
   };
 
+  patches = [
+    # https://github.com/klaasnicolaas/python-autarco/pull/265
+    (fetchpatch {
+      name = "remove-setuptools-dependency.patch";
+      url = "https://github.com/klaasnicolaas/python-autarco/commit/bf40e8a4f64cd9c9cf72930260895537ea5b2adc.patch";
+      hash = "sha256-Fgijy7sd67LUIqh3qjQjyothnjdW7Zcil/bQSuVsBR8=";
+    })
+  ];
+
+  postPatch = ''
+    # Upstream doesn't set a version for the pyproject.toml
+    substituteInPlace pyproject.toml \
+      --replace "0.0.0" "${version}" \
+      --replace "--cov" ""
+  '';
+
   nativeBuildInputs = [
     poetry-core
   ];
@@ -33,19 +50,14 @@ buildPythonPackage rec {
     yarl
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [
     aresponses
     pytest-asyncio
     pytestCheckHook
   ];
 
-  postPatch = ''
-    # Upstream doesn't set a version for the pyproject.toml
-    substituteInPlace pyproject.toml \
-      --replace "0.0.0" "${version}" \
-      --replace "--cov" ""
-  '';
-
   pythonImportsCheck = [
     "autarco"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/awacs/default.nix b/nixpkgs/pkgs/development/python-modules/awacs/default.nix
index 54e7b32825fe..f59eaccd1b9a 100644
--- a/nixpkgs/pkgs/development/python-modules/awacs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awacs/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "awacs";
-  version = "2.3.0";
+  version = "2.4.0";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-0tizZWcHe1qbLxpXS/IngExaFFUHZyXXlksWcNL/vEw=";
+    hash = "sha256-iflg6tjqFl1gWOzlJhQwGHhAQ/pKm9n8GVvUz6fSboM=";
   };
 
   propagatedBuildInputs = lib.lists.optionals (pythonOlder "3.8") [
diff --git a/nixpkgs/pkgs/development/python-modules/awkward-cpp/default.nix b/nixpkgs/pkgs/development/python-modules/awkward-cpp/default.nix
index a32ff89555ce..a8107fac2b84 100644
--- a/nixpkgs/pkgs/development/python-modules/awkward-cpp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awkward-cpp/default.nix
@@ -3,6 +3,7 @@
 , fetchPypi
 , pythonOlder
 , cmake
+, ninja
 , numpy
 , pybind11
 , scikit-build-core
@@ -11,18 +12,19 @@
 
 buildPythonPackage rec {
   pname = "awkward-cpp";
-  version = "21";
+  version = "22";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sobmPegDBI/4EvdpxrY28TsNO8vyLhuRsV9s+5WThR4=";
+    hash = "sha256-IWeWNvshz+NxX4ijIyaleRmThNstpKYplcMQUC1/6F8=";
   };
 
   nativeBuildInputs = [
     cmake
+    ninja
     pybind11
     scikit-build-core
   ] ++ scikit-build-core.optional-dependencies.pyproject;
diff --git a/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix b/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix
index 536a67b48372..c716a56dfb24 100644
--- a/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aws-lambda-builders/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "aws-lambda-builders";
-  version = "1.34.0";
+  version = "1.36.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,9 +21,14 @@ buildPythonPackage rec {
     owner = "awslabs";
     repo = "aws-lambda-builders";
     rev = "refs/tags/v${version}";
-    hash = "sha256-MjX0im9GX0mdWkumUoJUIBjPZl/Ok5+sR6Dgq6vVGKM=";
+    hash = "sha256-cHpeNY0WY4yai/yWw2Oy1QLLjlj8PFNdB3BMbkP31Ds=";
   };
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "version=read_version()," 'version="${version}",'
+  '';
+
   propagatedBuildInputs = [
     six
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix b/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix
index 227c0f608df8..2a2915afcd75 100644
--- a/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/aws-sam-translator/default.nix
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   version = "1.73.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "aws";
@@ -28,6 +28,11 @@ buildPythonPackage rec {
     hash = "sha256-rj+q/06gIvPYTJP/EH9ZrP0Sp4J3K1aCRyNkgpphWP4=";
   };
 
+  postPatch = ''
+    substituteInPlace pytest.ini \
+      --replace " --cov samtranslator --cov-report term-missing --cov-fail-under 95" ""
+  '';
+
   propagatedBuildInputs = [
     boto3
     jsonschema
@@ -35,12 +40,6 @@ buildPythonPackage rec {
     typing-extensions
   ];
 
-  preCheck = ''
-    sed -i '2ienv =\n\tAWS_DEFAULT_REGION=us-east-1' pytest.ini
-    substituteInPlace pytest.ini \
-      --replace " --cov samtranslator --cov-report term-missing --cov-fail-under 95" ""
-  '';
-
   nativeCheckInputs = [
     parameterized
     pytest-env
@@ -54,6 +53,10 @@ buildPythonPackage rec {
     "samtranslator"
   ];
 
+  preCheck = ''
+    sed -i '2ienv =\n\tAWS_DEFAULT_REGION=us-east-1' pytest.ini
+  '';
+
   meta = with lib; {
     description = "Python library to transform SAM templates into AWS CloudFormation templates";
     homepage = "https://github.com/aws/serverless-application-model";
diff --git a/nixpkgs/pkgs/development/python-modules/awscrt/default.nix b/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
index 2c85cbfcf79c..dc9ddfeceb70 100644
--- a/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/awscrt/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "awscrt";
-  version = "0.16.10";
+  version = "0.19.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-MQFJm0ebgvBAP2Fb9SDB+LlQaBjSdePiit4lzGvNuSs=";
+    hash = "sha256-Q5DA+lraOebUYgjFDj11XUPZY1X8qD/1dwgeMoL2SZ0=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix b/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix
index 82390e389bd9..a2cdf1f929c3 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-identity/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "azure-identity";
-  version = "1.13.0";
+  version = "1.14.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    hash = "sha256-yTHCcwH/qGsHtNz1dOKdpz4966mrXR/k9EW7ajEX4mA=";
+    hash = "sha256-ckQXmfjFyJv+IQJpZeJmZyp8XQUMLGURnviZ3VNi4rE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-appcontainers/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-appcontainers/default.nix
index b9e3a2e4a053..624c9735b6ac 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-appcontainers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-appcontainers/default.nix
@@ -4,32 +4,36 @@
 , pythonOlder
 , azure-common
 , azure-mgmt-core
-, msrest
-, msrestazure
+, isodate
+, typing-extensions
 }:
 
 buildPythonPackage rec {
-  version = "2.0.0";
   pname = "azure-mgmt-appcontainers";
+  version = "3.0.0";
+  format = "setuptools";
+
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-ccdIdvdgTYPWEZCWqkLc8lEuMuAEERvl5B1huJyBkvU=";
-    extension = "zip";
+    hash = "sha256-oqKPEOnZaIU7IMzDqT552IBJr9RtWt3vFO3SlG8igs0=";
   };
 
   propagatedBuildInputs = [
     azure-common
     azure-mgmt-core
-    msrest
-    msrestazure
+    isodate
+  ]  ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
   ];
 
   # no tests included
   doCheck = false;
 
-  pythonImportsCheck = [ "azure.mgmt.appcontainers" ];
+  pythonImportsCheck = [
+    "azure.mgmt.appcontainers"
+  ];
 
   meta = with lib; {
     description = "Microsoft Azure Appcontainers Management Client Library for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
index e3ec3ee71b95..4707f8bc2ae9 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
@@ -1,32 +1,32 @@
 { lib
-, buildPythonPackage
-, fetchPypi
-, msrest
-, msrestazure
 , azure-common
 , azure-mgmt-core
 , azure-mgmt-nspkg
+, buildPythonPackage
+, fetchPypi
+, isodate
 , pythonOlder
+, typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-containerservice";
-  version = "25.0.0";
+  version = "26.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    extension = "zip";
-    hash = "sha256-je7O92bklsbIlfsTUF2TXUqztAZxn8ep4ezCUHeLuhE=";
+    hash = "sha256-BpvnSqee5wodtMXPxo/pHCBk8Yy4yPnEdK164d9ILuM=";
   };
 
   propagatedBuildInputs = [
-    msrest
-    msrestazure
     azure-common
     azure-mgmt-core
+    isodate
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
   ];
 
   # has no tests
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
index 91fb01f95473..e4d0ae9b288f 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
@@ -1,31 +1,31 @@
 { lib
+, azure-common
+, azure-mgmt-core
 , buildPythonPackage
 , fetchPypi
+, isodate
 , pythonOlder
-, msrest
-, msrestazure
-, azure-common
-, azure-mgmt-core
+, typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-monitor";
-  version = "6.0.1";
+  version = "6.0.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    extension = "zip";
-    hash = "sha256-j+LrnLsfvRNlolKYf72ZUXxg5lb33R7PfxveBSyxHDI=";
+    hash = "sha256-X/v1AOSZq3kSsbptJs7yZIDZrkEVMgGbt41yViGW4Hs=";
   };
 
   propagatedBuildInputs = [
-    msrest
-    msrestazure
+    isodate
     azure-common
     azure-mgmt-core
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
   ];
 
   pythonNamespaces = [
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix
index b0bdd1c086bb..6d8e08964807 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix
@@ -1,31 +1,31 @@
 { lib
-, buildPythonPackage
-, fetchPypi
 , azure-common
 , azure-mgmt-core
-, msrest
-, msrestazure
+, buildPythonPackage
+, fetchPypi
+, isodate
 , pythonOlder
+, typing-extensions
 }:
 
 buildPythonPackage rec {
-  version = "24.0.0";
   pname = "azure-mgmt-network";
+  version = "25.0.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    extension = "zip";
-    hash = "sha256-LtahQ2PnJC2jlD3pHp+IBLaUaNXTamZqdFdE/iJ4840=";
+    hash = "sha256-rZPbkUQJFIeNSSPWHTK79INWeRX5+GJ7o7mEMLhyJ9E=";
   };
 
   propagatedBuildInputs = [
     azure-common
     azure-mgmt-core
-    msrest
-    msrestazure
+    isodate
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
   ];
 
   # Module has no tests
diff --git a/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix b/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
index 37d74abc72ee..385d55248ecd 100644
--- a/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/azure-mgmt-redhatopenshift/default.nix
@@ -1,37 +1,41 @@
 { lib
-, buildPythonPackage
-, fetchPypi
-, msrest
-, msrestazure
 , azure-common
 , azure-mgmt-core
-, isPy27
+, buildPythonPackage
+, fetchPypi
+, isodate
+, pythonOlder
+, typing-extensions
 }:
 
 buildPythonPackage rec {
-  version = "1.2.0";
   pname = "azure-mgmt-redhatopenshift";
-  disabled = isPy27; # don't feel like fixing namespace issues on python2
+  version = "1.3.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    extension = "zip";
-    hash = "sha256-ZU4mKTzny9tsKDrFSU+lll5v6oDivYJlXDriWJLAYec=";
+    hash = "sha256-LOJldUyWdVShpN8lD8zGdFeYFiKSmODk3WNOP1fJfcs=";
   };
 
   propagatedBuildInputs = [
-    msrest
-    msrestazure
+    isodate
     azure-common
     azure-mgmt-core
+  ]  ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
   ];
 
   pythonNamespaces = "azure.mgmt";
 
-  # no included
+  # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [ "azure.mgmt.redhatopenshift" ];
+  pythonImportsCheck = [
+    "azure.mgmt.redhatopenshift"
+  ];
 
   meta = with lib; {
     description = "Microsoft Azure Red Hat Openshift Management Client Library for Python";
diff --git a/nixpkgs/pkgs/development/python-modules/bentoml/default.nix b/nixpkgs/pkgs/development/python-modules/bentoml/default.nix
index ff3a52809946..b09a029f307c 100644
--- a/nixpkgs/pkgs/development/python-modules/bentoml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bentoml/default.nix
@@ -68,7 +68,7 @@
 }:
 
 let
-  version = "1.1.3";
+  version = "1.1.4";
   aws = [ fs-s3fs ];
   grpc = [
     grpcio
@@ -104,7 +104,7 @@ buildPythonPackage {
     owner = "bentoml";
     repo = "BentoML";
     rev = "v${version}";
-    hash = "sha256-RJDFjFxTO7UhGZQB8flXug0xCpFdJqLlCZUu0O5W1YE=";
+    hash = "sha256-aGSw40haVGo4UpUItStsFxfgjAnY4Rhiat4qDUIINWU=";
   };
 
   pythonRelaxDeps = [
diff --git a/nixpkgs/pkgs/development/python-modules/bimmer-connected/default.nix b/nixpkgs/pkgs/development/python-modules/bimmer-connected/default.nix
index a40b51498eb2..baa4ddacfec5 100644
--- a/nixpkgs/pkgs/development/python-modules/bimmer-connected/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bimmer-connected/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "bimmer-connected";
-  version = "0.13.10";
+  version = "0.14.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "bimmerconnected";
     repo = "bimmer_connected";
     rev = "refs/tags/${version}";
-    hash = "sha256-IylA73N3bZOs5HjQGbT6xqokb73iO3bdg5M2KCTX3p4=";
+    hash = "sha256-cx22otbBCSFRTfr+wY1+k5kyX6h9mTQfRBfPw3rplzY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/blebox-uniapi/default.nix b/nixpkgs/pkgs/development/python-modules/blebox-uniapi/default.nix
index 0bd3562e6025..f93ef838751f 100644
--- a/nixpkgs/pkgs/development/python-modules/blebox-uniapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/blebox-uniapi/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "blebox-uniapi";
-  version = "2.1.4";
+  version = "2.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "blebox";
     repo = "blebox_uniapi";
     rev = "refs/tags/v${version}";
-    hash = "sha256-hr3HD8UiI+bKiHcXGnyomJMzP+/GVXLgSUxeH2U6l/4=";
+    hash = "sha256-cLSI6wa3gHE0QkSVVWMNpb5fyQy0TLDNSqOuGlDJGJc=";
   };
 
   postPatch = ''
@@ -44,7 +44,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    changelog = "https://github.com/blebox/blebox_uniapi/blob/${version}/HISTORY.rst";
+    changelog = "https://github.com/blebox/blebox_uniapi/blob/v${version}/HISTORY.rst";
     description = "Python API for accessing BleBox smart home devices";
     homepage = "https://github.com/blebox/blebox_uniapi";
     license = licenses.asl20;
diff --git a/nixpkgs/pkgs/development/python-modules/blockfrost-python/default.nix b/nixpkgs/pkgs/development/python-modules/blockfrost-python/default.nix
new file mode 100644
index 000000000000..043384e80bf0
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/blockfrost-python/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+# Python deps
+, requests
+, setuptools
+}:
+
+buildPythonPackage rec {
+  pname = "blockfrost-python";
+  version = "0.5.3";
+
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "blockfrost";
+    repo = "blockfrost-python";
+    rev = "${version}";
+    hash = "sha256-mQ8avjyLARJONYn18neCyuHEuv3ySyCNMe+P4+Dlxck=";
+  };
+
+  propagatedBuildInputs = [
+    requests
+    setuptools
+  ];
+
+  pythonImportsCheck = [ "blockfrost" ];
+
+  meta = with lib; {
+    description = "Python SDK for the Blockfrost.io API";
+    homepage = "https://github.com/blockfrost/blockfrost-python";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ t4ccer ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/bluetooth-data-tools/default.nix b/nixpkgs/pkgs/development/python-modules/bluetooth-data-tools/default.nix
index a68f8c8da430..3a4f1f567e90 100644
--- a/nixpkgs/pkgs/development/python-modules/bluetooth-data-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bluetooth-data-tools/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "bluetooth-data-tools";
-  version = "1.7.0";
+  version = "1.9.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-EmZPiZKm/80nJpPnJWhI9i4I6MhgQMifLOEUBFLqbSw=";
+    hash = "sha256-DLB2mBjHPVT2Fg2Kr0WUDuu5nqBCbdu525wAD3ERKV8=";
   };
 
   # The project can build both an optimized cython version and an unoptimized
diff --git a/nixpkgs/pkgs/development/python-modules/bootstrap/build/default.nix b/nixpkgs/pkgs/development/python-modules/bootstrap/build/default.nix
new file mode 100644
index 000000000000..639d2e3292cb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/bootstrap/build/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, stdenv
+, python
+, build
+, flit-core
+, installer
+, packaging
+, pyproject-hooks
+, tomli
+}:
+let
+  buildBootstrapPythonModule = basePackage: attrs: stdenv.mkDerivation ({
+    pname = "${python.libPrefix}-bootstrap-${basePackage.pname}";
+    inherit (basePackage) version src meta;
+
+    buildPhase = ''
+      runHook preBuild
+
+      PYTHONPATH="${flit-core}/${python.sitePackages}" \
+        ${python.interpreter} -m flit_core.wheel
+
+      runHook postBuild
+    '';
+
+    installPhase = ''
+      runHook preInstall
+
+      PYTHONPATH="${installer}/${python.sitePackages}" \
+        ${python.interpreter} -m installer \
+          --destdir "$out" --prefix "" dist/*.whl
+
+      runHook postInstall
+    '';
+  } // attrs);
+
+  bootstrap-packaging = buildBootstrapPythonModule packaging {};
+
+  bootstrap-pyproject-hooks = buildBootstrapPythonModule pyproject-hooks {};
+
+  bootstrap-tomli = buildBootstrapPythonModule tomli {};
+in
+buildBootstrapPythonModule build {
+  propagatedBuildInputs = [
+    bootstrap-packaging
+    bootstrap-pyproject-hooks
+  ] ++ lib.optionals (python.pythonOlder "3.11") [
+    bootstrap-tomli
+  ];
+}
diff --git a/nixpkgs/pkgs/development/python-modules/bootstrap/flit-core/default.nix b/nixpkgs/pkgs/development/python-modules/bootstrap/flit-core/default.nix
new file mode 100644
index 000000000000..ab9e52538d34
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/bootstrap/flit-core/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, stdenv
+, python
+, flit-core
+}:
+
+stdenv.mkDerivation {
+  pname = "${python.libPrefix}-bootstrap-${flit-core.pname}";
+  inherit (flit-core) version src patches meta;
+
+  sourceRoot = "source/flit_core";
+
+  buildPhase = ''
+    runHook preBuild
+
+    ${python.interpreter} -m flit_core.wheel
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    ${python.interpreter} bootstrap_install.py dist/flit_core-*.whl \
+      --install-root "$out" --installdir "/${python.sitePackages}"
+
+    runHook postInstall
+  '';
+}
diff --git a/nixpkgs/pkgs/development/python-modules/bootstrap/installer/default.nix b/nixpkgs/pkgs/development/python-modules/bootstrap/installer/default.nix
new file mode 100644
index 000000000000..b569e7fa6dc8
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/bootstrap/installer/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, stdenv
+, python
+, flit-core
+, installer
+}:
+
+stdenv.mkDerivation {
+  pname = "${python.libPrefix}-bootstrap-${installer.pname}";
+  inherit (installer) version src meta;
+
+  buildPhase = ''
+    runHook preBuild
+
+    PYTHONPATH="${flit-core}/${python.sitePackages}" \
+      ${python.interpreter} -m flit_core.wheel
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    PYTHONPATH=src ${python.interpreter} -m installer \
+      --destdir "$out" --prefix "" dist/installer-*.whl
+
+    runHook postInstall
+  '';
+}
diff --git a/nixpkgs/pkgs/development/python-modules/botocore-stubs/default.nix b/nixpkgs/pkgs/development/python-modules/botocore-stubs/default.nix
new file mode 100644
index 000000000000..be8514f08acd
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/botocore-stubs/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, poetry-core
+, pythonOlder
+, types-awscrt
+, typing-extensions
+}:
+
+buildPythonPackage rec {
+  pname = "botocore-stubs";
+  version = "1.31.39";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    pname = "botocore_stubs";
+    inherit version;
+    hash = "sha256-pqpGnPXZT5lDnTpXBfsJk0/tBtUovgazAWZf/TZJfNg=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = [
+    types-awscrt
+    typing-extensions
+  ];
+
+  pythonImportsCheck = [
+    "botocore-stubs"
+  ];
+
+  meta = with lib; {
+    description = "Type annotations and code completion for botocore";
+    homepage = "https://pypi.org/project/botocore-stubs/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/boxx/default.nix b/nixpkgs/pkgs/development/python-modules/boxx/default.nix
index 925aa2b2568b..a2a71ad0c986 100644
--- a/nixpkgs/pkgs/development/python-modules/boxx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/boxx/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "boxx";
-  version = "0.10.9";
+  version = "0.10.10";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-fWOGKDk7eJVlE9LMau3DZF8nFLUrmHpunAXdqLxHFHk=";
+    hash = "sha256-7A5qFpISrjVrqQfKk6BPb7RhDWd9f90eF3bku+LsCcc=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/bpycv/default.nix b/nixpkgs/pkgs/development/python-modules/bpycv/default.nix
index 09c3b4f8283d..a6d385e97781 100644
--- a/nixpkgs/pkgs/development/python-modules/bpycv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bpycv/default.nix
@@ -20,12 +20,12 @@
 
 buildPythonPackage rec {
   pname = "bpycv";
-  version = "0.3.6";
+  version = "0.4.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-4N4rCVhbfJx7H7jS88QR3EcRupISIhnLuZ+cgfwIzg4=";
+    hash = "sha256-qqNGemDB0aagCXjrECuh6kLksf+KujPejpnXVqFG8GY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/bqplot/default.nix b/nixpkgs/pkgs/development/python-modules/bqplot/default.nix
index 074c75fffb7a..5695be669bbc 100644
--- a/nixpkgs/pkgs/development/python-modules/bqplot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bqplot/default.nix
@@ -3,6 +3,7 @@
 , pythonOlder
 , fetchPypi
 , jupyter-packaging
+, jupyterlab
 , bqscales
 , ipywidgets
 , numpy
@@ -23,8 +24,17 @@ buildPythonPackage rec {
     hash = "sha256-FNjeb5pNGUW76mwTIOpNHJMlb3JoN3T24AINzFefPdI=";
   };
 
+  # upstream seems in flux for 0.13 release. they seem to want to migrate from
+  # jupyter_packaging to hatch, so let's patch instead of fixing upstream
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "jupyter_packaging~=" "jupyter_packaging>=" \
+      --replace "jupyterlab~=" "jupyterlab>="
+  '';
+
   nativeBuildInputs = [
     jupyter-packaging
+    jupyterlab
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/bqscales/default.nix b/nixpkgs/pkgs/development/python-modules/bqscales/default.nix
index 3bd015a58f67..8b0ebb610ad9 100644
--- a/nixpkgs/pkgs/development/python-modules/bqscales/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/bqscales/default.nix
@@ -13,7 +13,6 @@
 buildPythonPackage rec {
   pname = "bqscales";
   version = "0.3.1";
-
   format = "pyproject";
   disabled = pythonOlder "3.6";
 
@@ -22,6 +21,19 @@ buildPythonPackage rec {
     hash = "sha256-C+/GLpqYpePngbn5W0MwvpdmVgFZF7aGHyKMgO5XM90=";
   };
 
+  # We relax dependencies here instead of pulling in a patch because upstream
+  # has released a new version using hatch-jupyter-builder, but it is not yet
+  # trivial to upgrade to that.
+  #
+  # Per https://github.com/bqplot/bqscales/issues/76, jupyterlab is not needed
+  # as a build dependency right now.
+  #
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace '"jupyterlab==3.*",' "" \
+      --replace 'jupyter_packaging~=' 'jupyter_packaging>='
+  '';
+
   nativeBuildInputs = [
     hatchling
     jupyter-packaging
diff --git a/nixpkgs/pkgs/development/python-modules/build/default.nix b/nixpkgs/pkgs/development/python-modules/build/default.nix
index 0eaad47c44f0..f86f47e2bd85 100644
--- a/nixpkgs/pkgs/development/python-modules/build/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/build/default.nix
@@ -1,5 +1,6 @@
 { lib
 , stdenv
+, build
 , buildPythonPackage
 , fetchFromGitHub
 , flit-core
@@ -41,36 +42,52 @@ buildPythonPackage rec {
     tomli
   ];
 
-  nativeCheckInputs = [
-    filelock
-    pytest-mock
-    pytest-rerunfailures
-    pytest-xdist
-    pytestCheckHook
-    setuptools
-    toml
-  ];
+  # We need to disable tests because this package is part of the bootstrap chain
+  # and its test dependencies cannot be built yet when this is being built.
+  doCheck = false;
 
-  pytestFlagsArray = [
-    "-W"
-    "ignore::DeprecationWarning"
-  ];
+  passthru.tests = {
+    pytest = buildPythonPackage {
+      pname = "${pname}-pytest";
+      inherit version;
+      format = "other";
 
-  __darwinAllowLocalNetworking = true;
+      dontBuild = true;
+      dontInstall = true;
 
-  disabledTests = [
-    # Tests often fail with StopIteration
-    "test_isolat"
-    "test_default_pip_is_never_too_old"
-    "test_build"
-    "test_with_get_requires"
-    "test_init"
-    "test_output"
-    "test_wheel_metadata"
-  ] ++ lib.optionals stdenv.isDarwin [
-    # Expects Apple's Python and its quirks
-    "test_can_get_venv_paths_with_conflicting_default_scheme"
-  ];
+      nativeCheckInputs = [
+        build
+        filelock
+        pytest-mock
+        pytest-rerunfailures
+        pytest-xdist
+        pytestCheckHook
+        setuptools
+        toml
+      ];
+
+      pytestFlagsArray = [
+        "-W"
+        "ignore::DeprecationWarning"
+      ];
+
+      __darwinAllowLocalNetworking = true;
+
+      disabledTests = [
+        # Tests often fail with StopIteration
+        "test_isolat"
+        "test_default_pip_is_never_too_old"
+        "test_build"
+        "test_with_get_requires"
+        "test_init"
+        "test_output"
+        "test_wheel_metadata"
+      ] ++ lib.optionals stdenv.isDarwin [
+        # Expects Apple's Python and its quirks
+        "test_can_get_venv_paths_with_conflicting_default_scheme"
+      ];
+    };
+  };
 
   pythonImportsCheck = [
     "build"
diff --git a/nixpkgs/pkgs/development/python-modules/cairo-lang/default.nix b/nixpkgs/pkgs/development/python-modules/cairo-lang/default.nix
deleted file mode 100644
index d183b607b31a..000000000000
--- a/nixpkgs/pkgs/development/python-modules/cairo-lang/default.nix
+++ /dev/null
@@ -1,105 +0,0 @@
-{ lib
-, aiohttp
-, buildPythonPackage
-, cachetools
-, ecdsa
-, eth-hash
-, fastecdsa
-, fetchzip
-, frozendict
-, gmp
-, lark
-, marshmallow
-, marshmallow-dataclass
-, marshmallow-enum
-, marshmallow-oneofschema
-, mpmath
-, numpy
-, pipdeptree
-, prometheus-client
-, pytest
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
-, pythonRelaxDepsHook
-, pyyaml
-, setuptools
-, sympy
-, typeguard
-, web3
-}:
-
-buildPythonPackage rec {
-  pname = "cairo-lang";
-  version = "0.10.1";
-  format = "setuptools";
-
-  disabled = pythonOlder "3.7";
-
-  src = fetchzip {
-    url = "https://github.com/starkware-libs/cairo-lang/releases/download/v${version}/cairo-lang-${version}.zip";
-    hash = "sha256-MNbzDqqNhij9JizozLp9hhQjbRGzWxECOErS3TOPlAA=";
-  };
-
-  nativeBuildInputs = [
-    pythonRelaxDepsHook
-  ];
-
-  buildInputs = [
-    gmp
-  ];
-
-  propagatedBuildInputs = [
-    aiohttp
-    cachetools
-    setuptools
-    ecdsa
-    fastecdsa
-    sympy
-    mpmath
-    numpy
-    typeguard
-    frozendict
-    prometheus-client
-    marshmallow
-    marshmallow-enum
-    marshmallow-dataclass
-    marshmallow-oneofschema
-    pipdeptree
-    lark
-    web3
-    eth-hash
-    pyyaml
-  ] ++ eth-hash.optional-dependencies.pycryptodome;
-
-  nativeCheckInputs = [
-    pytest-asyncio
-    pytestCheckHook
-  ];
-
-  pythonRelaxDeps = [
-    "frozendict"
-  ];
-
-  pythonRemoveDeps = [
-    # TODO: pytest and pytest-asyncio must be removed as they are check inputs
-    "pytest"
-    "pytest-asyncio"
-  ];
-
-  postFixup = ''
-    chmod +x $out/bin/*
-  '';
-
-  # There seems to be no test included in the ZIP release…
-  # Cloning from GitHub is harder because they use a custom CMake setup
-  # TODO(raitobezarius): upstream was pinged out of band about it.
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Tooling for Cairo language";
-    homepage = "https://github.com/starkware/cairo-lang";
-    license = licenses.mit;
-    maintainers = with maintainers; [ raitobezarius ];
-  };
-}
diff --git a/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix b/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix
index ff79eacf99b8..fb0a81e202d9 100644
--- a/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cairocffi/default.nix
@@ -11,25 +11,24 @@
 , pytestCheckHook
 , cairo
 , cffi
+, flit-core
 , numpy
 , withXcffib ? false
 , xcffib
 , glib
 , gdk-pixbuf
-, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "cairocffi";
-  version = "1.5.1";
+  version = "1.6.1";
+  format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
-  format = "pyproject";
-
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Bxq3ty41MzALC/1VpSBWtP/cHtbmVneeKs7Ztwm4opU=";
+    hash = "sha256-eOa75HNXZAxFPQvpKfpJzQXM4uEobz0qHKnL2n79uLc=";
   };
 
   patches = [
@@ -45,11 +44,9 @@ buildPythonPackage rec {
   ];
 
   nativeBuildInputs = [
-    setuptools
+    flit-core
   ];
 
-  propagatedNativeBuildInputs = [ cffi ];
-
   propagatedBuildInputs = [ cairo cffi ]
     ++ lib.optional withXcffib xcffib;
 
@@ -59,6 +56,10 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [
+    "cairocffi"
+  ];
+
   meta = with lib; {
     changelog = "https://github.com/Kozea/cairocffi/blob/v${version}/NEWS.rst";
     homepage = "https://github.com/SimonSapin/cairocffi";
diff --git a/nixpkgs/pkgs/development/python-modules/canals/default.nix b/nixpkgs/pkgs/development/python-modules/canals/default.nix
index 6832a3626132..ae4d8615c757 100644
--- a/nixpkgs/pkgs/development/python-modules/canals/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/canals/default.nix
@@ -1,44 +1,31 @@
 { lib
 , buildPythonPackage
-, pythonOlder
-, pythonAtLeast
 , fetchFromGitHub
-# native build inputs
 , hatchling
-# build input
-, networkx
-# check inputs
-, pytestCheckHook
-# optional dependencies
-, pygraphviz
-, requests
 , mkdocs-material
 , mkdocs-mermaid2-plugin
 , mkdocstrings
+, networkx
+, pygraphviz
+, pytestCheckHook
+, pythonOlder
+, requests
 }:
-let
+
+buildPythonPackage rec {
   pname = "canals";
-  version = "0.2.2";
-  optional-dependencies = {
-    graphviz = [ pygraphviz ];
-    mermaid = [ requests ];
-    docs = [ mkdocs-material mkdocs-mermaid2-plugin mkdocstrings ];
-  };
-in
-buildPythonPackage {
-  inherit version pname;
+  version = "0.6.0";
   format = "pyproject";
 
-  # Pypi source package doesn't contain tests
+  disabled = pythonOlder "3.8";
+
   src = fetchFromGitHub {
     owner = "deepset-ai";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-dF0bkY4DFJIovaseNiOLgF8lmha+njTTTzr2/4LzZEc=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-s4nKPywfRn2hNhn/coWGqShv7D+MCEHblVzfweQJlnM=";
   };
 
-  disabled = pythonOlder "3.8";
-
   nativeBuildInputs = [
     hatchling
   ];
@@ -47,18 +34,37 @@ buildPythonPackage {
     networkx
   ];
 
-  passthru = { inherit optional-dependencies; };
+  passthru.optional-dependencies = {
+    graphviz = [
+      pygraphviz
+    ];
+    mermaid = [
+      requests
+    ];
+    docs = [
+      mkdocs-material
+      mkdocs-mermaid2-plugin
+      mkdocstrings
+    ];
+  };
 
   nativeCheckInputs = [
     pytestCheckHook
-  ] ++ optional-dependencies.mermaid;
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
 
   disabledTestPaths = [
-    # requires internet connection to mermaid.ink
+    # Test requires internet connection to mermaid.ink
     "test/pipelines/integration"
   ];
 
-  pythonImportsCheck = [ "canals" ];
+  disabledTests = [
+    # Path issue
+    "test_draw_pygraphviz"
+  ];
+
+  pythonImportsCheck = [
+    "canals"
+  ];
 
   meta = with lib; {
     description = "A component orchestration engine";
diff --git a/nixpkgs/pkgs/development/python-modules/casbin/default.nix b/nixpkgs/pkgs/development/python-modules/casbin/default.nix
index ce337cb8de3c..9507cad79502 100644
--- a/nixpkgs/pkgs/development/python-modules/casbin/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/casbin/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "casbin";
-  version = "1.23.1";
+  version = "1.26.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = "pycasbin";
     rev = "refs/tags/v${version}";
-    hash = "sha256-jL02G4Z2Lhy/02Lb7aSUDEKg2h34UXJbwMFaDSPgc+U=";
+    hash = "sha256-wM27HW5w8fDjHoGV+OGDTaO5SKJrq8fGKh1EPQt+wlo=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/celery-types/default.nix b/nixpkgs/pkgs/development/python-modules/celery-types/default.nix
index 753d7fcc677b..6379d041f160 100644
--- a/nixpkgs/pkgs/development/python-modules/celery-types/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/celery-types/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , poetry-core
 , pythonOlder
@@ -18,10 +19,15 @@ buildPythonPackage rec {
     hash = "sha256-1OLUJxsuxG/sCKDxKiU4i7o5HyaJdIW8rPo8UofMI28=";
   };
 
-  patchPhase = ''
-    substituteInPlace pyproject.toml \
-      --replace "poetry.masonry.api" "poetry.core.masonry.api"
-  '';
+  patches = [
+    # remove extraneous build dependencies:
+    # https://github.com/sbdchd/celery-types/pull/138
+    (fetchpatch {
+      name = "clean-up-build-dependencies.patch";
+      url = "https://github.com/sbdchd/celery-types/commit/ff83f06a0302084e1a690e2a5a8b25f2c0dfc6e7.patch";
+      hash = "sha256-c68SMugg6Qk88FC842/czoxLpk0uVAVSlWsvo4NI9uo=";
+    })
+  ];
 
   propagatedBuildInputs = [
     typing-extensions
diff --git a/nixpkgs/pkgs/development/python-modules/celery/default.nix b/nixpkgs/pkgs/development/python-modules/celery/default.nix
index 1864b58d92d3..9a198ab21fc6 100644
--- a/nixpkgs/pkgs/development/python-modules/celery/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/celery/default.nix
@@ -28,14 +28,14 @@
 
 buildPythonPackage rec {
   pname = "celery";
-  version = "5.3.1";
+  version = "5.3.3";
   format = "setuptools";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+E0cIaFSDBFsK30mWTkmWBGRQ1oDqnS3fJQbk8ocYhA=";
+    hash = "sha256-uskO+ZtwubW11M/Ov28atRaLhsYSC8fFgUzYI039k4E=";
   };
 
   propagatedBuildInputs = [
@@ -95,6 +95,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Distributed task queue";
     homepage = "https://github.com/celery/celery/";
+    changelog = "https://github.com/celery/celery/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/cemm/default.nix b/nixpkgs/pkgs/development/python-modules/cemm/default.nix
index 3036393344c9..9f9ae3b16be5 100644
--- a/nixpkgs/pkgs/development/python-modules/cemm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cemm/default.nix
@@ -3,6 +3,7 @@
 , aresponses
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , poetry-core
 , pytest-asyncio
 , pytestCheckHook
@@ -24,6 +25,15 @@ buildPythonPackage rec {
     hash = "sha256-BorgGHxoEeIGyJKqe9mFRDpcGHhi6/8IV7ubEI8yQE4=";
   };
 
+  patches = [
+    # https://github.com/klaasnicolaas/python-cemm/pull/360
+    (fetchpatch {
+      name = "remove-setuptools-dependency.patch";
+      url = "https://github.com/klaasnicolaas/python-cemm/commit/1e373dac078f18563264e6733baf6a93962cac4b.patch";
+      hash = "sha256-DVNn4BZwi8yNpKFmzt7YSYhzzB4vaAyrd/My8TtYzj0=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace '"0.0.0"' '"${version}"' \
@@ -39,6 +49,8 @@ buildPythonPackage rec {
     yarl
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [
     aresponses
     pytest-asyncio
diff --git a/nixpkgs/pkgs/development/python-modules/censys/default.nix b/nixpkgs/pkgs/development/python-modules/censys/default.nix
index 70601478b1bd..150a8e36747a 100644
--- a/nixpkgs/pkgs/development/python-modules/censys/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/censys/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "censys";
-  version = "2.2.4";
+  version = "2.2.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "censys";
     repo = "censys-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-gCq01lfAoKoS74C8gjj84mZpXDMtdNVaRLwhlEXwiPI=";
+    hash = "sha256-D25deUPMWc6KRlwytSfZqoPeJGmTV304slUP9gCyrUw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/chacha20poly1305-reuseable/default.nix b/nixpkgs/pkgs/development/python-modules/chacha20poly1305-reuseable/default.nix
index 02998caec37c..8b5ff73d1faa 100644
--- a/nixpkgs/pkgs/development/python-modules/chacha20poly1305-reuseable/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/chacha20poly1305-reuseable/default.nix
@@ -17,7 +17,7 @@
 
 let
   pname = "chacha20poly1305-reuseable";
-  version = "0.4.1";
+  version = "0.4.2";
 in
 
 buildPythonPackage {
@@ -30,7 +30,7 @@ buildPythonPackage {
     owner = "bdraco";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-JDkTSJi7QltKAdgkM+aJ33DP2emOAviyCqI/jeapUB8=";
+    hash = "sha256-RBXEumw5A/XzB/LazUcvq8JM/Ahvcy9lCTYKpGcY7go=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/clarifai/default.nix b/nixpkgs/pkgs/development/python-modules/clarifai/default.nix
index ffc02aa60480..8f6fdc18509f 100644
--- a/nixpkgs/pkgs/development/python-modules/clarifai/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/clarifai/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "clarifai";
-  version = "9.5.2";
+  version = "9.7.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "Clarifai";
     repo = "clarifai-python-utils";
     rev = "refs/tags/${version}";
-    hash = "sha256-29by0YAQ7qc0gL/3lAFOk4FLDB5Qv4X9QDyK49gfyAo=";
+    hash = "sha256-/zgHgD2kf3ZG7Mu9AEBfOwqpcD0Ye0LVrFxLeuGurCM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/claripy/default.nix b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
index 8ebadc186df2..d71fc9266d2d 100644
--- a/nixpkgs/pkgs/development/python-modules/claripy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/claripy/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "claripy";
-  version = "9.2.65";
+  version = "9.2.66";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-/Ou2Kl7Fw5QpzoibNOKJPnAwRsR3EDtYypCrOQc7yjI=";
+    hash = "sha256-CDFZ6CN3pqNpwigYVHyKxwpa9iPfl4m/XDAo1YSRir8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cle/default.nix b/nixpkgs/pkgs/development/python-modules/cle/default.nix
index cfca0e49e379..a8aa9cbfbc60 100644
--- a/nixpkgs/pkgs/development/python-modules/cle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cle/default.nix
@@ -16,7 +16,7 @@
 
 let
   # The binaries are following the argr projects release cycle
-  version = "9.2.65";
+  version = "9.2.66";
 
   # Binary files from https://github.com/angr/binaries (only used for testing and only here)
   binaries = fetchFromGitHub {
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-reJRy2KNk4YrkPkVH7eitMVS7V9MPTZNjo9+Wmgx5vQ=";
+    hash = "sha256-/LDVpw1Ej2YuzwA2qUoZv/ajQZPL9dDvvawj9r5bGbo=";
   };
 
   nativeBuildInputs = [
@@ -74,6 +74,8 @@ buildPythonPackage rec {
     "test_plt_full_relro"
     # Test fails
     "test_tls_pe_incorrect_tls_data_start"
+    "test_x86"
+    "test_x86_64"
     # The required parts is not present on Nix
     "test_remote_file_map"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/click-odoo-contrib/default.nix b/nixpkgs/pkgs/development/python-modules/click-odoo-contrib/default.nix
new file mode 100644
index 000000000000..b0ddaef004b9
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/click-odoo-contrib/default.nix
@@ -0,0 +1,43 @@
+{ buildPythonPackage
+, click-odoo
+, fetchPypi
+, importlib-resources
+, lib
+, manifestoo-core
+, nix-update-script
+, pythonOlder
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "click-odoo-contrib";
+  version = "1.16.1";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-VFoS/lOw/jbJNj9xfgZHKzR6JDTwnlCAItq4mZ3RA6I=";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    click-odoo
+    manifestoo-core
+  ] ++ lib.optionals (pythonOlder "3.9") [ importlib-resources ];
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  passthru.updateScript = nix-update-script { };
+
+  pythonImportsCheck = [ "click_odoo_contrib" ];
+
+  meta = with lib; {
+    description = "Collection of community-maintained scripts for Odoo maintenance";
+    homepage = "https://github.com/acsone/click-odoo-contrib";
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ yajo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/click-odoo/default.nix b/nixpkgs/pkgs/development/python-modules/click-odoo/default.nix
new file mode 100644
index 000000000000..a618359735f1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/click-odoo/default.nix
@@ -0,0 +1,37 @@
+{ buildPythonPackage
+, click
+, fetchPypi
+, lib
+, nix-update-script
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "click-odoo";
+  version = "1.6.0";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-zyfgsHzIoz4lnqANe63b2oqgD/oxBbTbJYEedfSHWQ8=";
+  };
+
+  nativeBuildInputs = [
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    click
+  ];
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = with lib; {
+    description = "Odoo scripting helper library";
+    homepage = "https://github.com/acsone/click-odoo";
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ yajo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/clintermission/default.nix b/nixpkgs/pkgs/development/python-modules/clintermission/default.nix
index c84fd16f823c..9b439fa16084 100644
--- a/nixpkgs/pkgs/development/python-modules/clintermission/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/clintermission/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "clintermission";
-  version = "0.3.0";
+  version = "0.3.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "sebageek";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-HPeO9K91a0MacSUN0SR0lPEWRTQgP/cF1FZaNvZLxAg=";
+    hash = "sha256-e7C9IDr+mhVSfU8lMywjX1BYwFo/qegPNzabak7UPcY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cloudsplaining/default.nix b/nixpkgs/pkgs/development/python-modules/cloudsplaining/default.nix
index 042091634481..f11a1cff485e 100644
--- a/nixpkgs/pkgs/development/python-modules/cloudsplaining/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cloudsplaining/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "cloudsplaining";
-  version = "0.6.0";
+  version = "0.6.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "salesforce";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-1p0Lrx4uirgyhE8cdhrSOJLBSN11f6X5WqdWtVutDzQ=";
+    hash = "sha256-Bw1RhYFTz1bw+4APZKTyWP/G+LWB3R9WI/QEduEgWTQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cloup/default.nix b/nixpkgs/pkgs/development/python-modules/cloup/default.nix
index d5502d9a9fa2..d23b27833bfc 100644
--- a/nixpkgs/pkgs/development/python-modules/cloup/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cloup/default.nix
@@ -5,18 +5,19 @@
 , click
 , setuptools-scm
 , pythonOlder
+, typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "cloup";
-  version = "3.0.0";
+  version = "3.0.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ur1L3P0nT4Z3nW0845ueoPbMWrPU7+NbpoQebW0DeJM=";
+    hash = "sha256-4ItMwje7mlvY/4G6btSUmOIgDaw5InsWSOlXiCAo6ZM=";
   };
 
   nativeBuildInputs = [
@@ -25,6 +26,8 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     click
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    typing-extensions
   ];
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/clr-loader/default.nix b/nixpkgs/pkgs/development/python-modules/clr-loader/default.nix
index 213a57ff0621..c0122a0d3d9d 100644
--- a/nixpkgs/pkgs/development/python-modules/clr-loader/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/clr-loader/default.nix
@@ -12,11 +12,11 @@
 
 let
   pname = "clr-loader";
-  version = "0.2.5";
+  version = "0.2.6";
   src = fetchPypi {
     pname = "clr_loader";
     inherit version;
-    hash = "sha256-gu1ftlRynRT9iCludLtrhOss+5dv9LfUnU5En9eKIms=";
+    hash = "sha256-AZNIrmtqg8ekBtFFN8J3zs96OlOyY+w0LIHe1YRaZ+4=";
   };
 
   # This buildDotnetModule is used only to get nuget sources, the actual
diff --git a/nixpkgs/pkgs/development/python-modules/cmake/default.nix b/nixpkgs/pkgs/development/python-modules/cmake/default.nix
new file mode 100644
index 000000000000..c9ee7d11c8fb
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cmake/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, flit-core
+, cmake
+}:
+
+buildPythonPackage rec {
+  pname = "cmake";
+  inherit (cmake) version;
+  format = "pyproject";
+
+  src = ./stub;
+
+  postUnpack = ''
+    substituteInPlace "$sourceRoot/pyproject.toml" \
+      --subst-var version
+
+    substituteInPlace "$sourceRoot/cmake/__init__.py" \
+      --subst-var version \
+      --subst-var-by CMAKE_BIN_DIR "${cmake}/bin"
+  '';
+
+  inherit (cmake) setupHooks;
+
+  nativeBuildInputs = [
+    flit-core
+  ];
+
+  pythonImportsCheck = [
+    "cmake"
+  ];
+
+  meta = with lib; {
+    description = "CMake is an open-source, cross-platform family of tools designed to build, test and package software";
+    longDescription = ''
+      This is a stub of the cmake package on PyPI that uses the cmake program
+      provided by nixpkgs instead of downloading cmake from the web.
+    '';
+    homepage = "https://github.com/scikit-build/cmake-python-distributions";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ tjni ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/cmake/stub/cmake/__init__.py b/nixpkgs/pkgs/development/python-modules/cmake/stub/cmake/__init__.py
new file mode 100644
index 000000000000..512a13f3d94a
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cmake/stub/cmake/__init__.py
@@ -0,0 +1,19 @@
+import os
+import subprocess
+import sys
+
+__version__ = '@version@'
+
+CMAKE_BIN_DIR = '@CMAKE_BIN_DIR@'
+
+def _program(name, args):
+    return subprocess.call([os.path.join(CMAKE_BIN_DIR, name)] + args, close_fds=False)
+
+def cmake():
+    raise SystemExit(_program('cmake', sys.argv[1:]))
+
+def cpack():
+    raise SystemExit(_program('cpack', sys.argv[1:]))
+
+def ctest():
+    raise SystemExit(_program('ctest', sys.argv[1:]))
diff --git a/nixpkgs/pkgs/development/python-modules/cmake/stub/pyproject.toml b/nixpkgs/pkgs/development/python-modules/cmake/stub/pyproject.toml
new file mode 100644
index 000000000000..f5c0502a3b7f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cmake/stub/pyproject.toml
@@ -0,0 +1,13 @@
+[build-system]
+requires = ["flit_core"]
+build-backend = "flit_core.buildapi"
+
+[project]
+name = "cmake"
+version = "@version@"
+description = "CMake is an open-source, cross-platform family oftools designed to build, test and package software"
+
+[project.scripts]
+cmake = "cmake:cmake"
+cpack = "cmake:cpack"
+ctest = "cmake:ctest"
diff --git a/nixpkgs/pkgs/development/python-modules/cobs/default.nix b/nixpkgs/pkgs/development/python-modules/cobs/default.nix
new file mode 100644
index 000000000000..4ea171d94291
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cobs/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "cobs";
+  version = "1.2.0";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-2TsQtTcNyIaJYK77cK2x9zpOYQexaRgwekru79PtuPY=";
+  };
+
+  checkPhase = ''
+    runHook preCheck
+
+    python -m cobs.cobs.test
+    python -m cobs.cobsr.test
+
+    runHook postCheck
+  '';
+
+  pythonImportsCheck = [
+    "cobs"
+    "cobs.cobs"
+    "cobs.cobsr"
+  ];
+
+  meta = with lib; {
+    description = "Python functions for encoding and decoding COBS";
+    longDescription = ''
+      COBS is a method of encoding a packet of bytes into a form that contains no bytes with value zero (0x00). The input packet of bytes can contain bytes in the full range of 0x00 to 0xFF. The COBS encoded packet is guaranteed to generate packets with bytes only in the range 0x01 to 0xFF. Thus, in a communication protocol, packet boundaries can be reliably delimited with 0x00 bytes.
+    '';
+    homepage = "https://github.com/cmcqueen/cobs-python/";
+    license = licenses.mit;
+    maintainers = [ teams.ororatech ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/coconut/default.nix b/nixpkgs/pkgs/development/python-modules/coconut/default.nix
index 06fe43806354..07e070d0493e 100644
--- a/nixpkgs/pkgs/development/python-modules/coconut/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/coconut/default.nix
@@ -14,13 +14,13 @@
 
 buildPythonPackage rec {
   pname = "coconut";
-  version = "2.2.0";
+  version = "3.0.3";
 
   src = fetchFromGitHub {
     owner = "evhub";
     repo = "coconut";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+OrVNtre7kAfU5L7/6DadZxFNWVt5raF6HLGXHHpOvE=";
+    hash = "sha256-u1tcIu0U1VZrUx2hVdtRDv1N4jVf176kQSw47/7lOXY=";
   };
 
   propagatedBuildInputs = [ cpyparsing ipykernel mypy pygments prompt-toolkit watchdog ];
diff --git a/nixpkgs/pkgs/development/python-modules/cohere/default.nix b/nixpkgs/pkgs/development/python-modules/cohere/default.nix
index 34df37e4db9f..29ec01f23823 100644
--- a/nixpkgs/pkgs/development/python-modules/cohere/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cohere/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , poetry-core
 , pythonOlder
@@ -22,6 +23,15 @@ buildPythonPackage rec {
     hash = "sha256-9hFDj0Cd/F1aChU6WFNJ9agLFpxxArWZTZmZ7PhECGY=";
   };
 
+  patches = [
+    # https://github.com/cohere-ai/cohere-python/pull/289
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core.patch";
+      url = "https://github.com/cohere-ai/cohere-python/commit/e86480336331c0cf6f67e26b0825467dfca5b277.patch";
+      hash = "sha256-P1Ioq5ypzT3tx6cxrI3ep34Fi4cUx88YkfJ5ErN3VHk=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/coinmetrics-api-client/default.nix b/nixpkgs/pkgs/development/python-modules/coinmetrics-api-client/default.nix
index ca1dd48a9df5..b426de499aa0 100644
--- a/nixpkgs/pkgs/development/python-modules/coinmetrics-api-client/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/coinmetrics-api-client/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "coinmetrics-api-client";
-  version = "2023.8.10.19";
+  version = "2023.8.24.13";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit version;
     pname = "coinmetrics_api_client";
-    hash = "sha256-sXWcnl6E2Aw78Y4JPpTQlRmhRP6egl6eo81N2PIhi34=";
+    hash = "sha256-Ju8QczI/vyX4//WMy92H66DafTGJefsOqIjifCfQXGU=";
   };
 
   pythonRelaxDeps = [
diff --git a/nixpkgs/pkgs/development/python-modules/commoncode/default.nix b/nixpkgs/pkgs/development/python-modules/commoncode/default.nix
index b5400b185f31..98c6492194c2 100644
--- a/nixpkgs/pkgs/development/python-modules/commoncode/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/commoncode/default.nix
@@ -5,7 +5,6 @@
 , buildPythonPackage
 , click
 , fetchPypi
-, intbitset
 , pytest-xdist
 , pytestCheckHook
 , pythonAtLeast
@@ -14,26 +13,20 @@
 , saneyaml
 , setuptools-scm
 , text-unidecode
-, typing
 }:
 
 buildPythonPackage rec {
   pname = "commoncode";
-  version = "31.0.2";
+  version = "31.0.3";
   format = "pyproject";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-UWd8fTHVEC5ywETfMIWjfXm4xiNaMrVpwkQ/woeXc0k=";
+    hash = "sha256-ura55/m/iesqN6kSYmdHB1sbthSHXaFWiQ76wVmyl0E=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.cfg \
-      --replace "intbitset >= 2.3.0, < 3.0" "intbitset >= 2.3.0"
-  '';
-
   dontConfigure = true;
 
   nativeBuildInputs = [
@@ -44,12 +37,9 @@ buildPythonPackage rec {
     attrs
     beautifulsoup4
     click
-    intbitset
     requests
     saneyaml
     text-unidecode
-  ] ++ lib.optionals (pythonOlder "3.7") [
-    typing
   ];
 
   nativeCheckInputs = [
@@ -83,7 +73,8 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A set of common utilities, originally split from ScanCode";
     homepage = "https://github.com/nexB/commoncode";
+    changelog = "https://github.com/nexB/commoncode/blob/v${version}/CHANGELOG.rst";
     license = licenses.asl20;
-    maintainers = [ ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/cookies/default.nix b/nixpkgs/pkgs/development/python-modules/cookies/default.nix
index a4e35dac346a..3f0d64c0c22d 100644
--- a/nixpkgs/pkgs/development/python-modules/cookies/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cookies/default.nix
@@ -1,15 +1,36 @@
-{ lib, buildPythonPackage, fetchPypi }:
+{ lib
+, buildPythonPackage
+, fetchpatch
+, fetchPypi
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "cookies";
   version = "2.2.1";
+  format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "13pfndz8vbk4p2a44cfbjsypjarkrall71pgc97glk5fiiw9idnn";
+    hash = "sha256-1raYeIyuTPpOYu+GQ6nKMyt5vZbLMUKUuGSujX6z7o4=";
   };
 
-  doCheck = false;
+  patches = [
+    (fetchpatch {
+      name = "fix-deprecations.patch";
+      url = "https://gitlab.com/sashahart/cookies/-/commit/22543d970568d577effe120c5a34636a38aa397b.patch";
+      hash = "sha256-8e3haOnbSXlL/ZY4uv6P4+ABBKrsCjbEpsLHaulbIUk=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # https://gitlab.com/sashahart/cookies/-/issues/6
+    "test_encoding_assumptions"
+  ];
 
   meta = with lib; {
     description = "Friendlier RFC 6265-compliant cookie parser/renderer";
diff --git a/nixpkgs/pkgs/development/python-modules/coredis/default.nix b/nixpkgs/pkgs/development/python-modules/coredis/default.nix
index 13fbe5ab123d..9185fe48bb9d 100644
--- a/nixpkgs/pkgs/development/python-modules/coredis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/coredis/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "coredis";
-  version = "4.15.1";
+  version = "4.16.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "alisaifee";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-9nojHufUt53Ovoos4gaR7qh1xN8D1+gJOEyFsOndXJU=";
+    hash = "sha256-7qpoNc5/z8/EKtGWULrPPwfH9swYe9TqqUL+zxrFQSk=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/cose/default.nix b/nixpkgs/pkgs/development/python-modules/cose/default.nix
new file mode 100644
index 000000000000..c591677b5316
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/cose/default.nix
@@ -0,0 +1,43 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+# Python deps
+, attrs
+, cbor2
+, certvalidator
+, cryptography
+, ecdsa
+, setuptools
+}:
+
+buildPythonPackage rec {
+  pname = "cose";
+  version = "1.0.1";
+
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "TimothyClaeys";
+    repo = "pycose";
+    rev = "v${version}";
+    hash = "sha256-8d6HebWlSKgx7dmOnT7ZZ5mrMfg6mNWhz1hHPv75XF4=";
+  };
+
+  propagatedBuildInputs = [
+    attrs
+    cbor2
+    certvalidator
+    cryptography
+    ecdsa
+    setuptools
+  ];
+
+  pythonImportsCheck = [ "pycose" ];
+
+  meta = with lib; {
+    description = "A Python implementation of the COSE specification";
+    homepage = "https://github.com/TimothyClaeys/pycose";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ t4ccer ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/curtsies/default.nix b/nixpkgs/pkgs/development/python-modules/curtsies/default.nix
index ac36041deb2b..4a17769e18e8 100644
--- a/nixpkgs/pkgs/development/python-modules/curtsies/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/curtsies/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "curtsies";
-  version = "0.4.1";
+  version = "0.4.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-YtEPNJxVOEUwZVan8mY86WsJjYxbvEDa7Hpu7d4WIrA=";
+    hash = "sha256-br4zIVvXyShRpQYEnHIMykz1wZLBZlwdepigTEcCdg4=";
   };
 
   propagatedBuildInputs = [
@@ -37,6 +37,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Curses-like terminal wrapper, with colored strings!";
     homepage = "https://github.com/bpython/curtsies";
+    changelog = "https://github.com/bpython/curtsies/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ flokli ];
     broken = stdenv.isDarwin;
diff --git a/nixpkgs/pkgs/development/python-modules/cyclonedx-python-lib/default.nix b/nixpkgs/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
index b6bbf7b2dfc6..d13bef9f0bd1 100644
--- a/nixpkgs/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "cyclonedx-python-lib";
-  version = "4.0.1";
+  version = "4.1.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "CycloneDX";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-GCY7M0XnVsGyuADSq/EzOy9fged5frj+hRDLhs2Uq8I=";
+    hash = "sha256-pRYjpmHhsw03b87YjS8YMmkQNwfcihp/bk56LFn55AU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/cypari2/default.nix b/nixpkgs/pkgs/development/python-modules/cypari2/default.nix
index bc8a5df2ed17..70cd89afdcad 100644
--- a/nixpkgs/pkgs/development/python-modules/cypari2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/cypari2/default.nix
@@ -37,11 +37,12 @@ buildPythonPackage rec {
     export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
 
     # install "." instead of "*.whl"
-    ${python.pythonForBuild.pkgs.bootstrapped-pip}/bin/pip install . --no-index --no-warn-script-location --prefix="$out" --no-cache
+    pip install . --no-index --no-warn-script-location --prefix="$out" --no-cache
   '';
 
   nativeBuildInputs = [
     pari
+    python.pythonForBuild.pkgs.pip
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix b/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
index d9b16bcc069a..8b8ca7a7208b 100644
--- a/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dataclasses-json/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "dataclasses-json";
-  version = "0.5.14";
+  version = "0.5.15";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "lidatong";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-pCvVKHh2elHaukEJNTw8MgJmoTlYjO9aVWFCQXXD13c=";
+    hash = "sha256-ADWNB2Eu4TwlAvchyzBwGiw9YT9McPr9lsNfo1lR1WI=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/datadiff/default.nix b/nixpkgs/pkgs/development/python-modules/datadiff/default.nix
index 446fdaf07b31..a971509ca823 100644
--- a/nixpkgs/pkgs/development/python-modules/datadiff/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/datadiff/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "datadiff";
-  version = "2.1.0";
+  version = "2.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-I9QpQyW3sHyUgCYZYfJecTJDNHLaQtqnXG4WeA4p5VE=";
+    hash = "sha256-fOcN/uqMM/HYjbRrDv/ukFzDa023Ofa7BwqC3omB0ws=";
   };
 
   # Tests are not part of the PyPI releases
diff --git a/nixpkgs/pkgs/development/python-modules/dataproperty/default.nix b/nixpkgs/pkgs/development/python-modules/dataproperty/default.nix
index af221199c910..539c3324204e 100644
--- a/nixpkgs/pkgs/development/python-modules/dataproperty/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dataproperty/default.nix
@@ -1,39 +1,55 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchFromGitHub
-, lib
+, loguru
 , mbstrdecoder
-, typepy
 , pytestCheckHook
+, pythonOlder
+, tcolorpy
 , termcolor
+, typepy
 }:
 
 buildPythonPackage rec {
   pname = "dataproperty";
-  version = "0.55.0";
+  version = "1.0.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "thombashi";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-ODSrKZ8M/ni9r2gkVIKWaKkdr+3AVi4INkEKJ+cmb44=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-adUxUU9eASkC9n5ppZYNN0MP19u4xcL8XziBWSCp2L8=";
   };
 
-  propagatedBuildInputs = [ mbstrdecoder typepy ];
+  propagatedBuildInputs = [
+    mbstrdecoder
+    typepy
+    tcolorpy
+  ] ++ typepy.optional-dependencies.datetime;
+
+  passthru.optional-dependencies = {
+    logging = [
+      loguru
+    ];
+  };
 
-  nativeCheckInputs = [ pytestCheckHook ];
-  checkInputs = [ termcolor ];
+  nativeCheckInputs = [
+    pytestCheckHook
+    termcolor
+  ];
 
-  # Tests fail, even on non-nixos
-  pytestFlagsArray = [
-    "--deselect test/test_dataproperty.py::Test_DataPeroperty_len::test_normal_ascii_escape_sequence"
-    "--deselect test/test_dataproperty.py::Test_DataPeroperty_is_include_ansi_escape::test_normal"
-    "--deselect test/test_dataproperty.py::Test_DataPeroperty_repr::test_normal"
+  pythonImportsCheck = [
+    "dataproperty"
   ];
 
   meta = with lib; {
+    description = "Library for extracting properties from data";
     homepage = "https://github.com/thombashi/dataproperty";
-    description = "A library for extracting properties from data";
-    maintainers = with maintainers; [ genericnerdyusername ];
+    changelog = "https://github.com/thombashi/DataProperty/releases/tag/v${version}";
     license = licenses.mit;
+    maintainers = with maintainers; [ genericnerdyusername ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/datasets/default.nix b/nixpkgs/pkgs/development/python-modules/datasets/default.nix
index 6e02e4abe3a1..eae7b663dd99 100644
--- a/nixpkgs/pkgs/development/python-modules/datasets/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/datasets/default.nix
@@ -21,23 +21,18 @@
 
 buildPythonPackage rec {
   pname = "datasets";
-  version = "2.12.0";
+  version = "2.14.4";
   format = "setuptools";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "huggingface";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-o/LUzRmpM4tjiCh31KoQXzU1Z/p/91uamh7G4SGnxQM=";
+    hash = "sha256-2XC5k546JvqUV4xeL1SRQOHDzItL1CE3bJQMjva3IkY=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "responses<0.19" "responses"
-  '';
-
   propagatedBuildInputs = [
     aiohttp
     dill
@@ -56,10 +51,10 @@ buildPythonPackage rec {
     importlib-metadata
   ];
 
-  # Tests require pervasive internet access.
+  # Tests require pervasive internet access
   doCheck = false;
 
-  # Module import will attempt to create a cache directory.
+  # Module import will attempt to create a cache directory
   postFixup = "export HF_MODULES_CACHE=$TMPDIR";
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/development/python-modules/dbt-core/default.nix b/nixpkgs/pkgs/development/python-modules/dbt-core/default.nix
index 73d41944702b..e927665bdc85 100644
--- a/nixpkgs/pkgs/development/python-modules/dbt-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dbt-core/default.nix
@@ -51,6 +51,7 @@ buildPythonPackage rec {
     "click"
     "mashumaro"
     "networkx"
+    "logbook"
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/dbus-fast/default.nix b/nixpkgs/pkgs/development/python-modules/dbus-fast/default.nix
index c65d1b032f44..28c4df0a62a2 100644
--- a/nixpkgs/pkgs/development/python-modules/dbus-fast/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dbus-fast/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "dbus-fast";
-  version = "1.93.0";
+  version = "1.94.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-+L9V9Uk5VRucp3r9zrywXzJOfY/9aeWMep6MTiwngVI=";
+    hash = "sha256-Ttz6AX/NH6/NNLgU2cMSb5e1jV/cq0LGW3ENARRP7H4=";
   };
 
   # The project can build both an optimized cython version and an unoptimized
diff --git a/nixpkgs/pkgs/development/python-modules/debianbts/default.nix b/nixpkgs/pkgs/development/python-modules/debianbts/default.nix
new file mode 100644
index 000000000000..b2c2b271d61d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/debianbts/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pysimplesoap
+, pytest , pytest-xdist
+, pythonOlder
+, setuptools
+}:
+
+buildPythonPackage rec {
+  pname = "python-debianbts";
+  version = "4.0.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "b0817d593ccdfb58a5f37b8cb3873bd0b2268b434f2798dc75b206d7550fdf04";
+  };
+
+  buildInputs = [ setuptools ];
+  propagatedBuildInputs = [ pysimplesoap ];
+  checkInputs = [
+    pytest
+    pytest-xdist
+  ];
+
+  meta = with lib; {
+    description = "Python interface to Debian's Bug Tracking System";
+    homepage = "https://github.com/venthur/python-debianbts";
+    downloadPage = "https://pypi.org/project/python-debianbts/";
+    changelog = "https://github.com/venthur/python-debianbts/blob/${version}/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = [ maintainers.nicoo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
index eff66b360715..2a937c9f41a2 100644
--- a/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/debugpy/default.nix
@@ -5,6 +5,7 @@
 , pythonAtLeast
 , fetchFromGitHub
 , substituteAll
+, fetchpatch
 , gdb
 , django
 , flask
@@ -49,6 +50,13 @@ buildPythonPackage rec {
     # To avoid this issue, debugpy should be installed using python.withPackages:
     # python.withPackages (ps: with ps; [ debugpy ])
     ./fix-test-pythonpath.patch
+
+    # Support disabling process timeouts when set to 0
+    # See https://github.com/microsoft/debugpy/pull/1286
+    (fetchpatch {
+      url = "https://github.com/microsoft/debugpy/commit/1569cc8319350afcc5ba8630660f599d514ac3bb.patch";
+      hash = "sha256-v4GKLb2M20F1egAGtix9cTkSzBnvSgSSphSQST5p63w=";
+    })
   ] ++ lib.optionals stdenv.isLinux [
     # Hard code GDB path (used to attach to process)
     (substituteAll {
@@ -91,11 +99,8 @@ buildPythonPackage rec {
   ];
 
   preCheck = ''
-    # Scale default timeouts by a factor of 4 to avoid flaky builds
-    # https://github.com/microsoft/debugpy/pull/1286 if merged would
-    # allow us to disable the timeouts altogether
-    export DEBUGPY_PROCESS_SPAWN_TIMEOUT=60
-    export DEBUGPY_PROCESS_EXIT_TIMEOUT=20
+    export DEBUGPY_PROCESS_SPAWN_TIMEOUT=0
+    export DEBUGPY_PROCESS_EXIT_TIMEOUT=0
   '' + lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) ''
     # https://github.com/python/cpython/issues/74570#issuecomment-1093748531
     export no_proxy='*';
diff --git a/nixpkgs/pkgs/development/python-modules/distributed/default.nix b/nixpkgs/pkgs/development/python-modules/distributed/default.nix
index 6fea3e2c28d2..fc52b3b9fc5b 100644
--- a/nixpkgs/pkgs/development/python-modules/distributed/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/distributed/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "distributed";
-  version = "2023.8.0";
+  version = "2023.8.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -34,11 +34,12 @@ buildPythonPackage rec {
     owner = "dask";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-FvNh7gfxUR1iIUY3kMolhzcbWupQL39E9JXWip8bdrQ=";
+    hash = "sha256-HJyqDi5MqxEjAWWv8ZqNGAzeFn5rZGPwiDz5KaCm6Xk=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
+      --replace "versioneer[toml]==" "versioneer[toml]>=" \
       --replace 'dynamic = ["version"]' 'version = "${version}"'
   '';
 
@@ -46,7 +47,7 @@ buildPythonPackage rec {
     setuptools
     setuptools-scm
     versioneer
-  ];
+  ] ++ versioneer.optional-dependencies.toml;
 
   propagatedBuildInputs = [
     click
diff --git a/nixpkgs/pkgs/development/python-modules/dj-database-url/default.nix b/nixpkgs/pkgs/development/python-modules/dj-database-url/default.nix
index 2c0b399e3c52..6ac924227f1a 100644
--- a/nixpkgs/pkgs/development/python-modules/dj-database-url/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dj-database-url/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "dj-database-url";
-  version = "2.0.0";
+  version = "2.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-o1qfD0N3XKb5DYGdxFYjPve8x2tHN31dkIt1x+syBiQ=";
+    hash = "sha256-8gQs7+EIblOcnaOfrVrX9hFzv3lmXmm/fk3lX6iLE18=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/django-admin-datta/default.nix b/nixpkgs/pkgs/development/python-modules/django-admin-datta/default.nix
index e8561e69df52..795a86d34bf2 100644
--- a/nixpkgs/pkgs/development/python-modules/django-admin-datta/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-admin-datta/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "django-admin-datta";
-  version = "1.0.7";
+  version = "1.0.10";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Onk9T+QKsl8y68eJ2ikrUEeMc9ljzzvSw7cjjP4D3sE=";
+    hash = "sha256-VV7mb3501aZVuXUqzVqQYUttvkYa4pAECYWn7HksOmI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/django-scim2/default.nix b/nixpkgs/pkgs/development/python-modules/django-scim2/default.nix
index 536d851a4099..d4eab102d719 100644
--- a/nixpkgs/pkgs/development/python-modules/django-scim2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-scim2/default.nix
@@ -27,8 +27,10 @@ buildPythonPackage rec {
     hash = "sha256-larDh4f9/xVr11/n/WfkJ2Tx45DMQqyK3ZzkWAvzeig=";
   };
 
+  # remove this when upstream releases a new version > 0.19.0
   postPatch = ''
     substituteInPlace pyproject.toml \
+      --replace "poetry>=0.12" "poetry-core>=1.5.2" \
       --replace "poetry.masonry.api" "poetry.core.masonry.api"
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/django-widget-tweaks/default.nix b/nixpkgs/pkgs/development/python-modules/django-widget-tweaks/default.nix
index 5fd29de16107..b77af5e47491 100644
--- a/nixpkgs/pkgs/development/python-modules/django-widget-tweaks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/django-widget-tweaks/default.nix
@@ -1,26 +1,24 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-
-# native
 , setuptools-scm
-
-# propagated
 , django
-
-# tests
 , python
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "django-widget-tweaks";
-  version = "1.4.12";
+  version = "1.5.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.8";
 
-  src = fetchFromGitHub { # package from Pypi missing runtests.py
+  src = fetchFromGitHub {
     owner = "jazzband";
     repo = pname;
-    rev = version;
-    sha256 = "1rhn2skx287k6nnkxlwvl9snbia6w6z4c2rqg22hwzbz5w05b24h";
+    rev = "refs/tags/${version}";
+    hash = "sha256-/3UIsg75X3R9YGv9cEcoPw3IN2vkhUb+HCy68813d2E=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
@@ -38,11 +36,10 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Tweak the form field rendering in templates, not in python-level form definitions.";
+    description = "Tweak the form field rendering in templates, not in python-level form definitions";
     homepage = "https://github.com/jazzband/django-widget-tweaks";
+    changelog = "https://github.com/jazzband/django-widget-tweaks/blob/${version}/CHANGES.rst";
     license = licenses.mit;
-    maintainers = with maintainers; [
-      maxxk
-    ];
+    maintainers = with maintainers; [ maxxk ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/djangorestframework-dataclasses/default.nix b/nixpkgs/pkgs/development/python-modules/djangorestframework-dataclasses/default.nix
index 04ea80c1a83c..b1b088c44c07 100644
--- a/nixpkgs/pkgs/development/python-modules/djangorestframework-dataclasses/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/djangorestframework-dataclasses/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "djangorestframework-dataclasses";
-  version = "1.2.0";
+  version = "1.3.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "oxan";
     repo = "djangorestframework-dataclasses";
     rev = "refs/tags/v${version}";
-    hash = "sha256-PTX5huYdusPV6xCBW+8sFwusuPtZBH1vVApvcQU7Dlc=";
+    hash = "sha256-aUz+f8Q7RwQsoRpjq1AAmNtDzTA6KKxyc+MtBJEfyL8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix b/nixpkgs/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix
index 8e26e9c6e4ef..cb5c3478d910 100644
--- a/nixpkgs/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/djangorestframework-simplejwt/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, cryptography
 , django
 , djangorestframework
 , fetchPypi
@@ -11,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "djangorestframework-simplejwt";
-  version = "5.2.2";
+  version = "5.3.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +20,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "djangorestframework_simplejwt";
     inherit version;
-    hash = "sha256-0n1LysLGOU9njeqLTQ1RHG4Yp/Lriq7rin3mAa63fEI=";
+    hash = "sha256-jkxd/KjRHAuKZt/YpOP8HGqn6hiNEJB/+RyUL0tS7WY=";
   };
 
   nativeBuildInputs = [
@@ -30,9 +31,17 @@ buildPythonPackage rec {
     django
     djangorestframework
     pyjwt
-    python-jose
   ];
 
+  passthru.optional-dependencies = {
+    python-jose = [
+      python-jose
+    ];
+    crypto = [
+      cryptography
+    ];
+  };
+
   # Test raises django.core.exceptions.ImproperlyConfigured
   doCheck = false;
 
@@ -43,6 +52,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "JSON Web Token authentication plugin for Django REST Framework";
     homepage = "https://github.com/davesque/django-rest-framework-simplejwt";
+    changelog = "https://github.com/jazzband/djangorestframework-simplejwt/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ arnoldfarkas ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix b/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix
index 2a12ca816f45..8c6692d7c8f4 100644
--- a/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/drf-yasg/default.nix
@@ -14,11 +14,11 @@
 
 buildPythonPackage rec {
   pname = "drf-yasg";
-  version = "1.21.5";
+  version = "1.21.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zu8MO13EOJeBr9eG5tw2l68qL+DYck7h9jfCPXW7xbI=";
+    hash = "sha256-TDuTBos9/KaWmrERFV5N1vey1oC5h3jej9Rgt4N72w0=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/drms/default.nix b/nixpkgs/pkgs/development/python-modules/drms/default.nix
index 739cf1bf505b..913e069f4fbe 100644
--- a/nixpkgs/pkgs/development/python-modules/drms/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/drms/default.nix
@@ -5,10 +5,12 @@
 , pandas
 , six
 , astropy
+, oldest-supported-numpy
 , pytestCheckHook
 , pytest-doctestplus
 , pythonOlder
 , setuptools-scm
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -23,7 +25,10 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
+    numpy
+    oldest-supported-numpy
     setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/duckduckgo-search/default.nix b/nixpkgs/pkgs/development/python-modules/duckduckgo-search/default.nix
index 6f38f7264e68..6a4afe7a577a 100644
--- a/nixpkgs/pkgs/development/python-modules/duckduckgo-search/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/duckduckgo-search/default.nix
@@ -2,19 +2,24 @@
 , fetchFromGitHub
 , lib
 , setuptools
-, requests
+, aiofiles
 , click
+, h2
+, httpx
+, lxml
+, requests
+, socksio
 }:
 
 buildPythonPackage rec {
   pname = "duckduckgo-search";
-  version = "2.8.5";
+  version = "3.8.5";
 
   src = fetchFromGitHub {
     owner = "deedy5";
     repo = "duckduckgo_search";
     rev = "v${version}";
-    hash = "sha256-UXh3+kBfkylt5CIXbYTa/vniEETUvh4steUrUg5MqYU=";
+    hash = "sha256-FOGMqvr5+O3+UTdM0m1nJBAcemP6hpAOXv0elvnCUHU=";
   };
 
   format = "pyproject";
@@ -22,9 +27,16 @@ buildPythonPackage rec {
   nativeBuildInputs = [ setuptools ];
 
   propagatedBuildInputs = [
-    requests
+    aiofiles
     click
-  ];
+    h2
+    httpx
+    lxml
+    requests
+    socksio
+  ] ++ httpx.optional-dependencies.brotli
+    ++ httpx.optional-dependencies.http2
+    ++ httpx.optional-dependencies.socks;
 
   pythonImportsCheck = [ "duckduckgo_search" ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/dvc/default.nix b/nixpkgs/pkgs/development/python-modules/dvc/default.nix
index 2c6687f9bbc0..60f7c588eaa3 100644
--- a/nixpkgs/pkgs/development/python-modules/dvc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dvc/default.nix
@@ -55,14 +55,14 @@
 
 buildPythonPackage rec {
   pname = "dvc";
-  version = "3.16.0";
+  version = "3.17.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "iterative";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-LbSmyNgRFejDGHurzDJvJxuhjPuRPDJ1t6T6p3f6UQk=";
+    hash = "sha256-MFwmER2BmSKqisgLvnLY3aFoRuzeObE7lr5JOesJdXE=";
   };
 
   pythonRelaxDeps = [
diff --git a/nixpkgs/pkgs/development/python-modules/dvclive/default.nix b/nixpkgs/pkgs/development/python-modules/dvclive/default.nix
index a732f24fabbe..7f07a851fe38 100644
--- a/nixpkgs/pkgs/development/python-modules/dvclive/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/dvclive/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "dvclive";
-  version = "2.15.2";
+  version = "2.16.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "iterative";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-Z1e6CrpVjQoR/OIqqxbbC75SZtOqi4Rrbld2doenOMA=";
+    hash = "sha256-VxZXZhbKtym1ow/dU3G4yu4X1GwCsXzcau/YocertzY=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/esphome-dashboard-api/default.nix b/nixpkgs/pkgs/development/python-modules/esphome-dashboard-api/default.nix
index 24abd9d47a95..0cb49cd6486e 100644
--- a/nixpkgs/pkgs/development/python-modules/esphome-dashboard-api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/esphome-dashboard-api/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , setuptools
+, wheel
 , aiohttp
 }:
 
@@ -17,8 +18,15 @@ buildPythonPackage rec {
     hash = "sha256-RFfS0xzRXoM6ETXmviiMPxffPzspjTqpkvHOlTJXN9g=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "setuptools~=65.6" "setuptools" \
+      --replace "wheel~=0.37.1" "wheel"
+  '';
+
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/events/default.nix b/nixpkgs/pkgs/development/python-modules/events/default.nix
index 6fe355d9c4d8..f4e9dcd250f0 100644
--- a/nixpkgs/pkgs/development/python-modules/events/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/events/default.nix
@@ -1,17 +1,41 @@
-{ lib, buildPythonPackage, fetchPypi }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonPackage rec {
-  pname = "Events";
-  version = "0.4";
+  pname = "events";
+  version = "0.5";
+  format = "setuptools";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "01d9dd2a061f908d74a89fa5c8f07baa694f02a2a5974983663faaf7a97180f5";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "pyeve";
+    repo = "events";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-GGhIKHbJ31IN0Uoe689X9V/MZvtseE47qx2CmM4MYUs=";
   };
 
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "events"
+  ];
+
+  pytestFlagsArray = [
+    "events/tests/tests.py"
+  ];
+
   meta = with lib; {
-    homepage = "https://events.readthedocs.org";
     description = "Bringing the elegance of C# EventHanlder to Python";
+    homepage = "https://events.readthedocs.org";
+    changelog = "https://github.com/pyeve/events/blob/v0.5/CHANGES";
     license = licenses.bsd3;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix b/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix
index 470d17deeba1..b7d4cda7df7c 100644
--- a/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/exchangelib/default.nix
@@ -27,7 +27,7 @@
 
 buildPythonPackage rec {
   pname = "exchangelib";
-  version = "5.0.3";
+  version = "5.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -36,7 +36,7 @@ buildPythonPackage rec {
     owner = "ecederstrand";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-oQ09/CvHIA4PAVqK6DeY3slHvQ1aPRqCC6ZuhubTN94=";
+    hash = "sha256-WKQgfmEbil55WO3tWVq4n9wiJNw0Op/jbI7xt5vtKpA=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/explorerscript/default.nix b/nixpkgs/pkgs/development/python-modules/explorerscript/default.nix
index b3ecf7a3fce2..dea302fb8f3a 100644
--- a/nixpkgs/pkgs/development/python-modules/explorerscript/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/explorerscript/default.nix
@@ -6,25 +6,37 @@
 , igraph
 , pygments
 , pytestCheckHook
+, pythonRelaxDepsHook
 }:
 
 buildPythonPackage rec {
   pname = "explorerscript";
-  version = "0.1.2";
+  version = "0.1.3";
 
   src = fetchFromGitHub {
     owner = "SkyTemple";
     repo = pname;
     rev = version;
-    sha256 = "sha256-REQYyxB2sb/gG54+OkMw+M4Agg9SWfAyqAhiSNnd3tE=";
+    sha256 = "sha256-0U5n7e/utmgOTBuTypkBMeHZR7lji6lFimSjbC7hVRM=";
   };
 
   nativeBuildInputs = [
     antlr4
+    pythonRelaxDepsHook
+  ];
+
+  pythonRelaxDeps = [
+    # antlr output is rebuilt in postPatch step.
+    "antlr4-python3-runtime"
+    # igraph > 0.10.4 was marked as incompatible by upstream
+    # due to regression introduced in 0.10.5, which was fixed
+    # in igraph 0.10.6.
+    #
+    # https://github.com/igraph/python-igraph/issues/693
+    "igraph"
   ];
 
   postPatch = ''
-    sed -i "s/antlr4-python3-runtime.*/antlr4-python3-runtime',/" setup.py
     antlr -Dlanguage=Python3 -visitor explorerscript/antlr/{ExplorerScript,SsbScript}.g4
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix b/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix
index 71c700bdfe0a..bdee002b5aad 100644
--- a/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/faraday-plugins/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "faraday-plugins";
-  version = "1.12.1";
+  version = "1.13.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "infobyte";
     repo = "faraday_plugins";
     rev = "refs/tags/${version}";
-    hash = "sha256-sDHqBGRJQuAj2zB7hcIy3u5iNCxBHO1ub0eHxfgd7kI=";
+    hash = "sha256-t1C9fS0LU46J7y+rp2pTCVma09aFqzuBtslrlU+MS1E=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/fastapi/default.nix b/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
index 48a4c483c9c3..c0c4b36d3439 100644
--- a/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastapi/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "fastapi";
-  version = "0.95.1";
+  version = "0.95.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "tiangolo";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-y6mP2w2d2oabM9bLtWRO/AdRA46LNhVrMB/0qxGxH7I=";
+    hash = "sha256-wD39CqUZOgwpG/NEGz/pXgQsadzUoM/elxfEXthOlHo=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix b/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix
index 593d677ca2f3..05cb76f1dd48 100644
--- a/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fastparquet/default.nix
@@ -3,8 +3,9 @@
 , fetchFromGitHub
 , python
 , cython
+, oldest-supported-numpy
 , setuptools
-, substituteAll
+, setuptools-scm
 , numpy
 , pandas
 , cramjam
@@ -14,6 +15,7 @@
 , pytestCheckHook
 , pythonOlder
 , packaging
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -30,24 +32,23 @@ buildPythonPackage rec {
     hash = "sha256-pJ0zK0upEV7TyuNMIcozugkwBlYpK/Dg6BdB0kBpn9k=";
   };
 
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
   nativeBuildInputs = [
     cython
+    oldest-supported-numpy
     setuptools
-  ];
-
-  patches = [
-    (substituteAll {
-      src = ./version.patch;
-      inherit version;
-    })
+    setuptools-scm
+    wheel
   ];
 
   postPatch = ''
-    substituteInPlace setup.py \
-      --replace "'pytest-runner'," "" \
-      --replace "oldest-supported-numpy" "numpy"
+    substituteInPlace pyproject.toml \
+      --replace '"pytest-runner"' ""
 
-    sed -i '/"git", "status"/d' setup.py
+    sed -i \
+      -e "/pytest-runner/d" \
+      -e '/"git", "status"/d' setup.py
   '';
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/fastparquet/version.patch b/nixpkgs/pkgs/development/python-modules/fastparquet/version.patch
deleted file mode 100644
index 86d80e2a411b..000000000000
--- a/nixpkgs/pkgs/development/python-modules/fastparquet/version.patch
+++ /dev/null
@@ -1,7 +0,0 @@
-diff --git a/fastparquet/_version.py b/fastparquet/_version.py
-new file mode 100644
-index 0000000..eb2c9c9
---- /dev/null
-+++ b/fastparquet/_version.py
-@@ -0,0 +1 @@
-+__version__ = "@version@"
diff --git a/nixpkgs/pkgs/development/python-modules/fb-re2/default.nix b/nixpkgs/pkgs/development/python-modules/fb-re2/default.nix
index 32a6a1d60ca1..df494068c444 100644
--- a/nixpkgs/pkgs/development/python-modules/fb-re2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fb-re2/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , re2
 }:
@@ -13,6 +14,16 @@ buildPythonPackage rec {
     sha256 = "83b2c2cd58d3874e6e3a784cf4cf2f1a57ce1969e50180f92b010eea24ef26cf";
   };
 
+  patches = [
+    # Bump stdlib to c++17 to fix build with recent re2
+    # https://github.com/facebook/pyre2/issues/24
+    # https://github.com/facebook/pyre2/pull/25
+    (fetchpatch {
+      url = "https://github.com/facebook/pyre2/pull/25/commits/08fb06ec3ccd412ca69483d27234684a04cb91a0.patch";
+      hash = "sha256-kzxE2AxpE1tJJK0dJgoFfVka9zy2u0HEqiHoS7DQDQ0=";
+    })
+  ];
+
   buildInputs = [ re2 ];
 
   # no tests in PyPI tarball
diff --git a/nixpkgs/pkgs/development/python-modules/fe25519/default.nix b/nixpkgs/pkgs/development/python-modules/fe25519/default.nix
index c1bc4d5f2a42..819c7cc34df6 100644
--- a/nixpkgs/pkgs/development/python-modules/fe25519/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fe25519/default.nix
@@ -7,22 +7,24 @@
 , pytestCheckHook
 , pythonOlder
 , setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "fe25519";
-  version = "1.4.2";
+  version = "1.5.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-VwCw/sS8Pzhscoa6yCRGbB9X+CtRVn8xyBEpKfGyhhY=";
+    hash = "sha256-la+17tPHjceMTe7Wk8DGVaSptk8XJa+l7GTeqLIFDvs=";
   };
 
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/filedepot/default.nix b/nixpkgs/pkgs/development/python-modules/filedepot/default.nix
index a73c282c160f..b347a1a6bd19 100644
--- a/nixpkgs/pkgs/development/python-modules/filedepot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/filedepot/default.nix
@@ -2,10 +2,10 @@
 , anyascii
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , flaky
 , google-cloud-storage
 , mock
-, paste
 , pillow
 , pymongo
 , pytestCheckHook
@@ -28,6 +28,15 @@ buildPythonPackage rec {
     hash = "sha256-vPceky5cvmy3MooWz7dRdy68VoAHN7i3a7egBs4dPE8=";
   };
 
+  patches = [
+    # Add support for Pillow 10, https://github.com/amol-/depot/pull/84
+    (fetchpatch {
+      name = "support-pillow-10.patch";
+      url = "https://github.com/amol-/depot/commit/bdb73d1b3898279068b421bc061ecc18c5108fa4.patch";
+      hash = "sha256-7+VGrdJstkiy0bYAqA9FjF1NftZiurgyPd8Wlz6GUy8=";
+    })
+  ];
+
   propagatedBuildInputs = [
     anyascii
     google-cloud-storage
@@ -36,7 +45,6 @@ buildPythonPackage rec {
   nativeCheckInputs = [
     flaky
     mock
-    paste
     pillow
     pymongo
     pytestCheckHook
@@ -45,6 +53,8 @@ buildPythonPackage rec {
   ];
 
   disabledTestPaths = [
+    # ModuleNotFoundError: No module named 'depot._pillow_compat'
+    "tests/test_fields_sqlalchemy.py"
     # The examples have tests
     "examples"
     # Missing dependencies (TurboGears2 and ming)
diff --git a/nixpkgs/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix b/nixpkgs/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix
index 18e483292885..6d079b66f149 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, isPy3k
 , flask
 , werkzeug
 }:
@@ -9,6 +8,7 @@
 buildPythonPackage rec {
   pname = "flask-reverse-proxy-fix";
   version = "0.2.1";
+  format = "setuptools";
 
   # master fixes flask import syntax and has no major changes
   # new release requested: https://github.com/sublee/flask-silk/pull/6
@@ -16,15 +16,17 @@ buildPythonPackage rec {
     owner = "antarctica";
     repo = "flask-reverse-proxy-fix";
     rev = "v${version}";
-    sha256 = "1jbr67cmnryn0igv05qkvqjwrwj2rsajvvjnv3cdkm9bkgb4h5k5";
+    hash = "sha256-ZRZI1psr1dnY2FbuLZXOQvLMJd4TF7BfBNZnW9kxeck=";
   };
 
-  disabled = !isPy3k;
-
   postPatch = ''
     sed -i 's@werkzeug.contrib.fixers@werkzeug.middleware.proxy_fix@g' flask_reverse_proxy_fix/middleware/__init__.py
   '';
 
+  # This is needed so that setup.py does not add "devNone" to the version,
+  # after which setuptools throws an error for an invalid version.
+  env.CI_COMMIT_TAG = "v${version}";
+
   propagatedBuildInputs = [
     flask
     werkzeug
diff --git a/nixpkgs/pkgs/development/python-modules/flask-security-too/default.nix b/nixpkgs/pkgs/development/python-modules/flask-security-too/default.nix
index 743cc2902b97..e18cc8579ba9 100644
--- a/nixpkgs/pkgs/development/python-modules/flask-security-too/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/flask-security-too/default.nix
@@ -57,6 +57,11 @@ buildPythonPackage rec {
     hash = "sha256-lZzm43m30y+2qjxNddFEeg9HDlQP9afq5VtuR25zaLc=";
   };
 
+  postPatch = ''
+    # This should be removed after updating to version 5.3.0.
+    sed -i '/filterwarnings =/a ignore:pkg_resources is deprecated:DeprecationWarning' pytest.ini
+  '';
+
   propagatedBuildInputs = [
     blinker
     email-validator
diff --git a/nixpkgs/pkgs/development/python-modules/fnv-hash-fast/default.nix b/nixpkgs/pkgs/development/python-modules/fnv-hash-fast/default.nix
index 2be3f227baf7..7fe9ba92b638 100644
--- a/nixpkgs/pkgs/development/python-modules/fnv-hash-fast/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fnv-hash-fast/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "fnv-hash-fast";
-  version = "0.4.0";
+  version = "0.4.1";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "bdraco";
     repo = "fnv-hash-fast";
     rev = "v${version}";
-    hash = "sha256-4JhzrRnpb9+FYXd0S2XcBelaHuRksm8RC29rxZqtlpw=";
+    hash = "sha256-vKv3Hfla+U1teYVB+w8ONj0Ur996noanbg6aaJ6S6+I=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/formulae/default.nix b/nixpkgs/pkgs/development/python-modules/formulae/default.nix
index 9755fed90238..ab13f86dc18b 100644
--- a/nixpkgs/pkgs/development/python-modules/formulae/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/formulae/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
+, setuptools
 , pytestCheckHook
 , numpy
 , pandas
@@ -10,16 +11,20 @@
 
 buildPythonPackage rec {
   pname = "formulae";
-  version = "0.3.4";
+  version = "0.5.0";
+  format = "pyproject";
+
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "bambinos";
     repo = pname;
-    rev = "refs/tags/v${version}";
-    hash = "sha256-6IGTn3griooslN6+qRYLJiWaJhvsxa1xj1+1kQ57yN0=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-WDWpyrHXGBfheE0m5I9K+Dk1urXRMY6yoenN3OaZogM=";
   };
 
+  nativeBuildInputs = [ setuptools ];
+
   propagatedBuildInputs = [
     numpy
     pandas
@@ -37,6 +42,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://bambinos.github.io/formulae";
     description = "Formulas for mixed-effects models in Python";
+    changelog = "https://github.com/bambinos/formulae/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ bcdarwin ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/fountains/default.nix b/nixpkgs/pkgs/development/python-modules/fountains/default.nix
index 2f6b7cc94156..d6efde228fbd 100644
--- a/nixpkgs/pkgs/development/python-modules/fountains/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/fountains/default.nix
@@ -2,24 +2,26 @@
 , buildPythonPackage
 , fetchPypi
 , setuptools
+, wheel
 , bitlist
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "fountains";
-  version = "2.1.0";
+  version = "2.2.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-gYVguXMVrXxra/xy+R4RXVk9yDGKiKE8u3qWUk8sjt4=";
+    hash = "sha256-MhOQ4pemxmjfp7Uy5hLA8i8BBI5QbvD4EjEcKMM/u3I=";
   };
 
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/funsor/default.nix b/nixpkgs/pkgs/development/python-modules/funsor/default.nix
index a5250afff471..a08e2a6e4ebc 100644
--- a/nixpkgs/pkgs/development/python-modules/funsor/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/funsor/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "funsor";
-  version = "0.4.5";
+  version = "0.4.6";
 
   disabled = pythonOlder "3.7";
 
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "pyro-ppl";
     repo = "funsor";
     rev = "refs/tags/${version}";
-    hash = "sha256-3JxnRlJN/kYstcIKt8cvDmqnp8oyoA4jkMBDVuAMa5Q=";
+    hash = "sha256-Prj1saT0yoPAP8rDE0ipBEpR3QMk4PS12VSJlxc22p8=";
   };
 
   # Disable the tests that rely on downloading assets from the internet as well as the linting checks.
diff --git a/nixpkgs/pkgs/development/python-modules/ge25519/default.nix b/nixpkgs/pkgs/development/python-modules/ge25519/default.nix
index 689901ca4241..60bc2b5dbba1 100644
--- a/nixpkgs/pkgs/development/python-modules/ge25519/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ge25519/default.nix
@@ -8,22 +8,24 @@
 , pytestCheckHook
 , pythonOlder
 , setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "ge25519";
-  version = "1.4.3";
+  version = "1.5.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-oOvrfRSpvwfCcmpV7FOxcBOW8Ex89d2+otjORrzX4o0=";
+    hash = "sha256-VKDPiSdufWwrNcZSRTByFU4YGoJrm48TDm1nt4VyclA=";
   };
 
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/geopy/default.nix b/nixpkgs/pkgs/development/python-modules/geopy/default.nix
index 1ca084d999cd..3a25b434c301 100644
--- a/nixpkgs/pkgs/development/python-modules/geopy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/geopy/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "geopy";
-  version = "2.3.0";
+  version = "2.4.0";
   format = "setuptools";
   disabled = pythonOlder "3.7";
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-bHfjUfuiEH3AxRDTLmbm67bKOw6fBuMQDUQA2NLg800=";
+    hash = "sha256-3Sq76DcnoG0Uv/KPF/B3oep0MO96vemKiANjgR7/k/I=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/getjump/default.nix b/nixpkgs/pkgs/development/python-modules/getjump/default.nix
index a3c4c4ffa6ec..b1a1b7005c09 100644
--- a/nixpkgs/pkgs/development/python-modules/getjump/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/getjump/default.nix
@@ -4,6 +4,7 @@
 , fetchPypi
 , pillow
 , poetry-core
+, pythonRelaxDepsHook
 , requests
 , rich
 }:
@@ -20,6 +21,12 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     poetry-core
+    pythonRelaxDepsHook
+  ];
+
+  pythonRelaxDeps = [
+    # remove after https://github.com/eggplants/getjump/pull/123 is released
+    "pillow"
   ];
 
   propagatedBuildInputs = [
@@ -33,6 +40,9 @@ buildPythonPackage rec {
     "getjump"
   ];
 
+  # all the tests talk to the internet
+  doCheck = false;
+
   meta = with lib; {
     description = "Get and save images from jump web viewer";
     homepage = "https://github.com/eggplants/getjump";
diff --git a/nixpkgs/pkgs/development/python-modules/gevent/default.nix b/nixpkgs/pkgs/development/python-modules/gevent/default.nix
index 690c0b73e6ea..b21e40c7a600 100644
--- a/nixpkgs/pkgs/development/python-modules/gevent/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gevent/default.nix
@@ -4,8 +4,11 @@
 , isPyPy
 , python
 , libev
+, cffi
+, cython_3
 , greenlet
 , setuptools
+, wheel
 , zope_event
 , zope_interface
 , pythonOlder
@@ -24,7 +27,11 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
+    cython_3
     setuptools
+    wheel
+  ] ++ lib.optionals (!isPyPy) [
+    cffi
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
index 110dddeb47b0..e96d6dff8e42 100644
--- a/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/globus-sdk/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "globus-sdk";
-  version = "3.26.0";
+  version = "3.27.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "globus";
     repo = "globus-sdk-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-L3YwBFpeGDPIixjvU7OLf8kpeYkqcSmLqMzGcSjtMtE=";
+    hash = "sha256-ZgRYwx/vICs1ombD8LGvCr0Wf9TpQurDGBoC2mtbxRs=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-nest-sdm/default.nix b/nixpkgs/pkgs/development/python-modules/google-nest-sdm/default.nix
index e62472f6bb2a..7a2f0de78b21 100644
--- a/nixpkgs/pkgs/development/python-modules/google-nest-sdm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-nest-sdm/default.nix
@@ -16,16 +16,16 @@
 
 buildPythonPackage rec {
   pname = "google-nest-sdm";
-  version = "2.2.5";
+  version = "3.0.2";
   format = "setuptools";
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "allenporter";
     repo = "python-google-nest-sdm";
     rev = "refs/tags/${version}";
-    hash = "sha256-UMP4FMyS8nAZmN7oKBZhMbqTgi4bSR/JmIeyWaZRZis=";
+    hash = "sha256-NNHkcOCoG5Xagc0jTR50uHMA5mMgsh3BIzVJ77OEEjk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/google-re2/default.nix b/nixpkgs/pkgs/development/python-modules/google-re2/default.nix
index e93b7251a25c..1528cb1a59e1 100644
--- a/nixpkgs/pkgs/development/python-modules/google-re2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/google-re2/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "google-re2";
-  version = "1.0";
+  version = "1.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-IcitwpY2DeH/QmuqOMcS6tpiLChY0ZXrSH5BXZQZTpE=";
+    hash = "sha256-06lGfuUrRqx3ypKPbQy+rM/ZLwPKDw9lud9qlRhPOhw=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/gpytorch/default.nix b/nixpkgs/pkgs/development/python-modules/gpytorch/default.nix
index 74d85d801f69..1fea3699d9f5 100644
--- a/nixpkgs/pkgs/development/python-modules/gpytorch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gpytorch/default.nix
@@ -3,6 +3,9 @@
 , fetchFromGitHub
 , linear_operator
 , scikit-learn
+, setuptools
+, setuptools-scm
+, wheel
 , torch
 , pytestCheckHook
 }:
@@ -19,10 +22,13 @@ buildPythonPackage rec {
     hash = "sha256-cpkfjx5G/4duL1Rr4nkHTHi03TDcYbcx3bKP2Ny7Ijo=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace 'find_version("gpytorch", "version.py")' \"$version\"
-  '';
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+    wheel
+  ];
 
   propagatedBuildInputs = [
     linear_operator
@@ -33,7 +39,9 @@ buildPythonPackage rec {
   checkInputs = [
     pytestCheckHook
   ];
+
   pythonImportsCheck = [ "gpytorch" ];
+
   disabledTests = [
     # AssertionError on number of warnings emitted
     "test_deprecated_methods"
diff --git a/nixpkgs/pkgs/development/python-modules/griffe/default.nix b/nixpkgs/pkgs/development/python-modules/griffe/default.nix
index 3f4d5514f47e..361323ee17b1 100644
--- a/nixpkgs/pkgs/development/python-modules/griffe/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/griffe/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "griffe";
-  version = "0.34.0";
+  version = "0.35.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "mkdocstrings";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-kc+RL5ulV2VfB4ojgv/ZSupPy36kyOqbLBWHPiSpqkk=";
+    hash = "sha256-Sskz14aAPqUXhQjetPfhjVm8gjG4yrck3sHpgD37DPU=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/grpc-interceptor/default.nix b/nixpkgs/pkgs/development/python-modules/grpc-interceptor/default.nix
index 1dadad2238d7..a940aa17de74 100644
--- a/nixpkgs/pkgs/development/python-modules/grpc-interceptor/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/grpc-interceptor/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pythonOlder
 , poetry-core
 , grpcio
@@ -11,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "grpc-interceptor";
-  version = "0.15.2";
+  version = "0.15.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -20,13 +21,17 @@ buildPythonPackage rec {
     owner = "d5h-foss";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-zulK0SVehzHcrmgIyH0D5sUOiAN53eIg88IoVyF6/DA=";
+    hash = "sha256-tTi1X1r7584ZXa12eLp2G/Am8G6Dnd18eE5wF/Lp/EY=";
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "poetry.masonry.api" "poetry.core.masonry.api"
-  '';
+  patches = [
+    # https://github.com/d5h-foss/grpc-interceptor/pull/44
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core.patch";
+      url = "https://github.com/d5h-foss/grpc-interceptor/commit/916cb394acd8dd7abb4f5edcb4e88aee961a32d0.patch";
+      hash = "sha256-W2SF2zyjusTxgvCxBDLpisD03bofzDug1eyd4FLJmKs=";
+    })
+  ];
 
   nativeBuildInputs = [
     poetry-core
@@ -37,6 +42,8 @@ buildPythonPackage rec {
     protobuf
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [
     pytest-asyncio
     pytestCheckHook
diff --git a/nixpkgs/pkgs/development/python-modules/gspread/default.nix b/nixpkgs/pkgs/development/python-modules/gspread/default.nix
index 6ac240e4b61e..9d05bf5e0930 100644
--- a/nixpkgs/pkgs/development/python-modules/gspread/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gspread/default.nix
@@ -1,32 +1,43 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, requests
+, fetchFromGitHub
+, flitBuildHook
 , google-auth
 , google-auth-oauthlib
+, pytest-vcr
+, pytestCheckHook
 , pythonOlder
+, requests
 }:
 
 buildPythonPackage rec {
   pname = "gspread";
-  version = "5.9.0";
-  format = "setuptools";
+  version = "5.10.0";
+  format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-NLl4NLvvrM9ySXcCuuJtEvltBoXkmkGK/mqSqbvLnJw=";
+  src = fetchFromGitHub {
+    owner = "burnash";
+    repo = "gspread";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-GAlQYQVuwsnkXqZOvG66f9kig+m392CVlrgUTqrTKyA=";
   };
 
+  nativeBuildInputs = [
+    flitBuildHook
+  ];
+
   propagatedBuildInputs = [
-    requests
     google-auth
     google-auth-oauthlib
+    requests
   ];
 
-  # No tests included
-  doCheck = false;
+  nativeCheckInputs = [
+    pytest-vcr
+    pytestCheckHook
+  ];
 
   pythonImportsCheck = [
     "gspread"
diff --git a/nixpkgs/pkgs/development/python-modules/gumath/default.nix b/nixpkgs/pkgs/development/python-modules/gumath/default.nix
index 41c0d2352c88..013662314b72 100644
--- a/nixpkgs/pkgs/development/python-modules/gumath/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gumath/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , buildPythonPackage
+, fetchpatch
 , python
 , numba
 , ndtypes
@@ -13,10 +14,26 @@
 
 buildPythonPackage {
   pname = "gumath";
+  format = "setuptools";
   disabled = isPy27;
   inherit (libgumath) src version meta;
 
+  patches = [
+    # https://github.com/xnd-project/gumath/pull/42
+    (fetchpatch {
+      name = "remove-np-warnings-call.patch";
+      url = "https://github.com/xnd-project/gumath/commit/83ab3aa3b07d55654b4e6e75e5ec6be8190fca97.patch";
+      hash = "sha256-7lUXNVH5M+Go1iEu0bud03XI8cyGbdLNdLraMZplDaM=";
+    })
+    (fetchpatch {
+      name = "remove-np-1.25-bartlett-test-assertion.patch";
+      url = "https://github.com/xnd-project/gumath/commit/8741e31f2967ded08c96a7f0631e1e38fe813870.patch";
+      hash = "sha256-flltk3RNPHalbcIV0BrkxWuhqqJBrycos7Fyv3P3mWg=";
+    })
+  ];
+
   nativeCheckInputs = [ numba ];
+
   propagatedBuildInputs = [ ndtypes xnd ];
 
   postPatch = ''
@@ -42,6 +59,5 @@ buildPythonPackage {
     python test_xndarray.py
     popd
   '';
-
 }
 
diff --git a/nixpkgs/pkgs/development/python-modules/gymnasium/default.nix b/nixpkgs/pkgs/development/python-modules/gymnasium/default.nix
index 9926b3cfe915..6e9e33913fb7 100644
--- a/nixpkgs/pkgs/development/python-modules/gymnasium/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gymnasium/default.nix
@@ -10,34 +10,67 @@
 , farama-notifications
 , importlib-metadata
 , pythonOlder
+, ffmpeg
+, jax
+, jaxlib
+, matplotlib
+, moviepy
+, opencv4
+, pybox2d
+, pygame
+, pytestCheckHook
+, scipy
 }:
 
 buildPythonPackage rec {
   pname = "gymnasium";
-  version = "0.29.0";
+  version = "0.29.1";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "Farama-Foundation";
-    repo = pname;
+    repo = "gymnasium";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4YaEFEWSOTEdGgO1kSOleZQp7OrcOf+WAT/E0BWeoKI=";
+    hash = "sha256-L7fn9FaJzXwQhjDKwI9hlFpbPuQdwynU+Xjd8bbjxiw=";
   };
 
-  format = "pyproject";
-
   nativeBuildInputs = [ setuptools ];
 
   propagatedBuildInputs = [
-    jax-jumpy
     cloudpickle
-    numpy
+    farama-notifications
     gym-notices
+    jax-jumpy
+    numpy
     typing-extensions
-    farama-notifications
   ] ++ lib.optionals (pythonOlder "3.10") [ importlib-metadata ];
 
   pythonImportsCheck = [ "gymnasium" ];
 
+  nativeCheckInputs = [
+    ffmpeg
+    jax
+    jaxlib
+    matplotlib
+    moviepy
+    opencv4
+    pybox2d
+    pygame
+    pytestCheckHook
+    scipy
+  ];
+
+  disabledTestPaths = [
+    # mujoco is required for those tests but the mujoco python bindings are not packaged in nixpkgs.
+    "tests/envs/mujoco/test_mujoco_custom_env.py"
+
+    # Those tests need to write on the filesystem which cause them to fail.
+    "tests/experimental/wrappers/test_record_video.py"
+    "tests/utils/test_save_video.py"
+    "tests/wrappers/test_record_video.py"
+    "tests/wrappers/test_video_recorder.py"
+  ];
+
   meta = with lib; {
     description = "A standard API for reinforcement learning and a diverse set of reference environments (formerly Gym)";
     homepage = "https://github.com/Farama-Foundation/Gymnasium";
diff --git a/nixpkgs/pkgs/development/python-modules/gyp/default.nix b/nixpkgs/pkgs/development/python-modules/gyp/default.nix
index ca9a8dc5a2d7..385f28b4615a 100644
--- a/nixpkgs/pkgs/development/python-modules/gyp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/gyp/default.nix
@@ -27,6 +27,12 @@ buildPythonPackage {
 
   pythonImportsCheck = [ "gyp" "gyp.generator" ];
 
+  # Make mac_tool.py executable so that patchShebangs hook processes it. This
+  # file is copied and run by builds using gyp on macOS
+  preFixup = ''
+    chmod +x "$out/${python.sitePackages}/gyp/mac_tool.py"
+  '';
+
   meta = with lib; {
     description = "A tool to generate native build files";
     homepage = "https://gyp.gsrc.io";
diff --git a/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix b/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix
index d1bd71fa1c57..9aa76821650b 100644
--- a/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hahomematic/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "hahomematic";
-  version = "2023.8.9";
+  version = "2023.8.14";
   format = "pyproject";
 
   disabled = pythonOlder "3.11";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "danielperna84";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-PQ9KxKyTa9xiLa6suqHRem6Rs732djbjzFKKLZDUM/g=";
+    hash = "sha256-msN3S7rBYZnCAh2IGBVzHjqiTapzH2kMV5CBFHmtcNE=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix b/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix
index 96297616d7b6..9bc33f5c7e01 100644
--- a/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "hass-nabucasa";
-  version = "0.69.0";
+  version = "0.70.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "nabucasa";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-7FO/z5AseP80y74e4ivLXlwB9t5jJf2bCaNp6HfqZ1c=";
+    hash = "sha256-lELb39N5pAZFeANgzg5TBmC+gmY/wgXbE7wlvdlJe2A=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/hdfs/default.nix b/nixpkgs/pkgs/development/python-modules/hdfs/default.nix
index c00bd18640b6..45bd4faf4462 100644
--- a/nixpkgs/pkgs/development/python-modules/hdfs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/hdfs/default.nix
@@ -11,14 +11,13 @@
 
 buildPythonPackage rec {
   pname = "hdfs";
-  # See https://github.com/mtth/hdfs/issues/176.
-  version = "2.5.8";
+  version = "2.7.2";
 
   src = fetchFromGitHub {
     owner = "mtth";
     repo = pname;
-    rev = version;
-    hash = "sha256-94Q3IUoX1Cb+uRqvsfpVZJ1koJSx5cQ3/XpYJ0gkQNU=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-KXJDQEc4+T9r8sB41SOgcx8Gth3qAOZceoOpsLbJ+ak=";
   };
 
   propagatedBuildInputs = [ docopt requests six ];
@@ -30,6 +29,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python API and command line interface for HDFS";
     homepage = "https://github.com/mtth/hdfs";
+    changelog = "https://github.com/mtth/hdfs/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ samuela ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/home-assistant-bluetooth/default.nix b/nixpkgs/pkgs/development/python-modules/home-assistant-bluetooth/default.nix
index bae4dc5a71d9..a0833b20798e 100644
--- a/nixpkgs/pkgs/development/python-modules/home-assistant-bluetooth/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/home-assistant-bluetooth/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "home-assistant-bluetooth";
-  version = "1.10.2";
+  version = "1.10.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "home-assistant-libs";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-zNhqiWYZ3tv6lwYgmi6Yue+mFcgk7Y1dDMbzWlsvVJM=";
+    hash = "sha256-77RrqmoCftPc48fFtuuFo0KqGX3n+6aDx2RFkwGCNzQ=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/homematicip/default.nix b/nixpkgs/pkgs/development/python-modules/homematicip/default.nix
index 2f384ab5c078..2cdb4b76df25 100644
--- a/nixpkgs/pkgs/development/python-modules/homematicip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/homematicip/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "homematicip";
-  version = "1.0.14";
+  version = "1.0.15";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "hahn-th";
     repo = "homematicip-rest-api";
     rev = "refs/tags/${version}";
-    hash = "sha256-2tJoIknqcwEvX2mQsrSEEh45pEMpNfeefuXVKSJTwig=";
+    hash = "sha256-wetkcHtm5O6mxhyU3/E4yrv6UGHAdKUlae2wJdCXtJI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ical/default.nix b/nixpkgs/pkgs/development/python-modules/ical/default.nix
index 2f539c87524d..da27462cc50b 100644
--- a/nixpkgs/pkgs/development/python-modules/ical/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ical/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "ical";
-  version = "5.0.0";
+  version = "5.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.10";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "allenporter";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-6xDbr/y9ZNT9thWMLHPi9/EXVXrUdMCVJdQAcd3G2vo=";
+    hash = "sha256-6gMmY6XlFdqF0DxkrCJhZPzUYZuEpDnIHG++nBRE3hg=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/idasen/default.nix b/nixpkgs/pkgs/development/python-modules/idasen/default.nix
index e4792be41690..8ce6928b9057 100644
--- a/nixpkgs/pkgs/development/python-modules/idasen/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/idasen/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
-, fetchpatch
 , bleak
 , pyyaml
 , voluptuous
@@ -13,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "idasen";
-  version = "0.9.6";
+  version = "0.10.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -22,17 +21,9 @@ buildPythonPackage rec {
     owner = "newAM";
     repo = "idasen";
     rev = "refs/tags/v${version}";
-    hash = "sha256-t8w4USDzyS0k5yk0XtQF8fVffzdf+udKSkdveMlseHk=";
+    hash = "sha256-aCVKnKWJlrlKD+74KL9JKlNpMGOzg/iWmB+1IMn0V/E=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "replace-poetry-with-poetry-core.patch";
-      url = "https://github.com/newAM/idasen/commit/b9351d5c9def0687e4ae4cb65f38d14ed9ff2df5.patch";
-      hash = "sha256-Qi3psPZExJ5tBJ4IIvDC3JnWf4Gym6Z7akGCV8GZUNY=";
-    })
-  ];
-
   nativeBuildInputs = [
     poetry-core
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/impacket/default.nix b/nixpkgs/pkgs/development/python-modules/impacket/default.nix
index 3e5db5b39678..7c7542252601 100644
--- a/nixpkgs/pkgs/development/python-modules/impacket/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/impacket/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
-, chardet
+, charset-normalizer
+, dsinternals
 , fetchPypi
 , flask
 , ldapdomaindump
@@ -14,18 +15,19 @@
 
 buildPythonPackage rec {
   pname = "impacket";
-  version = "0.10.0";
+  version = "0.11.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-uOsCCiy7RxRmac/jHGS7Ln1kmdBJxJPWQYuXFvXHRYM=";
+    hash = "sha256-7kA5tNKu3o9fZEeLxZ+qyGA2eWviTeqNwY8An7CQXko=";
   };
 
   propagatedBuildInputs = [
-    chardet
+    charset-normalizer
+    dsinternals
     flask
     ldapdomaindump
     pyasn1
@@ -45,8 +47,10 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Network protocols Constructors and Dissectors";
     homepage = "https://github.com/SecureAuthCorp/impacket";
+    changelog = "https://github.com/fortra/impacket/releases/tag/impacket_"
+      + replaceStrings [ "." ] [ "_" ] version;
     # Modified Apache Software License, Version 1.1
     license = licenses.free;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/installer/default.nix b/nixpkgs/pkgs/development/python-modules/installer/default.nix
index 02934550273b..d4f1e33ca606 100644
--- a/nixpkgs/pkgs/development/python-modules/installer/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/installer/default.nix
@@ -4,6 +4,7 @@
 , fetchFromGitHub
 , pytestCheckHook
 , flit-core
+, installer
 , mock
 }:
 
@@ -21,10 +22,26 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ flit-core ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-    mock
-  ];
+  # We need to disable tests because this package is part of the bootstrap chain
+  # and its test dependencies cannot be built yet when this is being built.
+  doCheck = false;
+
+  passthru.tests = {
+    pytest = buildPythonPackage {
+      pname = "${pname}-pytest";
+      inherit version;
+      format = "other";
+
+      dontBuild = true;
+      dontInstall = true;
+
+      nativeCheckInputs = [
+        installer
+        mock
+        pytestCheckHook
+      ];
+    };
+  };
 
   meta = with lib; {
     description = "A low-level library for installing a Python package from a wheel distribution";
diff --git a/nixpkgs/pkgs/development/python-modules/ipfshttpclient/default.nix b/nixpkgs/pkgs/development/python-modules/ipfshttpclient/default.nix
index b3c912551d48..1ac7fdd3cf75 100644
--- a/nixpkgs/pkgs/development/python-modules/ipfshttpclient/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipfshttpclient/default.nix
@@ -1,7 +1,7 @@
-{ stdenv
-, lib
+{ lib
 , buildPythonPackage
 , fetchFromGitHub
+, flit-core
 , pythonOlder
 , python
 , py-multiaddr
@@ -22,7 +22,7 @@
 buildPythonPackage rec {
   pname = "ipfshttpclient";
   version = "0.8.0a2";
-  format = "flit";
+  format = "pyproject";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
@@ -32,6 +32,10 @@ buildPythonPackage rec {
     hash = "sha256-OmC67pN2BbuGwM43xNDKlsLhwVeUbpvfOazyIDvoMEA=";
   };
 
+  nativeBuildInputs = [
+    flit-core
+  ];
+
   propagatedBuildInputs = [
     py-multiaddr
     requests
@@ -85,7 +89,6 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ipfshttpclient" ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     description = "A python client library for the IPFS API";
     homepage = "https://github.com/ipfs-shipyard/py-ipfs-http-client";
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/development/python-modules/ipycanvas/default.nix b/nixpkgs/pkgs/development/python-modules/ipycanvas/default.nix
index 05fdb6e85882..85961b450ec1 100644
--- a/nixpkgs/pkgs/development/python-modules/ipycanvas/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipycanvas/default.nix
@@ -20,6 +20,16 @@ buildPythonPackage rec {
     hash = "sha256-+cOUBoG8ODgzkPjEbqXYRF1uEcbaZITDfYnfWuHawTE=";
   };
 
+  # We relax dependencies here instead of pulling in a patch because upstream
+  # has released a new version using hatch-jupyter-builder, but it is not yet
+  # trivial to upgrade to that.
+  #
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace '"jupyterlab==3.*",' "" \
+      --replace 'jupyter_packaging~=' 'jupyter_packaging>='
+  '';
+
   nativeBuildInputs = [ jupyter-packaging ];
 
   propagatedBuildInputs = [ ipywidgets numpy pillow ];
diff --git a/nixpkgs/pkgs/development/python-modules/ipyniivue/default.nix b/nixpkgs/pkgs/development/python-modules/ipyniivue/default.nix
index a126030d0cb1..2f711f92a087 100644
--- a/nixpkgs/pkgs/development/python-modules/ipyniivue/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipyniivue/default.nix
@@ -21,7 +21,18 @@ buildPythonPackage rec {
     hash = "sha256-kym7949VI6C+62p3IOQ2QIzWnuSBcrmySb83oqUwhjI=";
   };
 
-  nativeBuildInputs = [ hatchling hatch-jupyter-builder ];
+  # We do not need the jupyterlab build dependency, because we do not need to
+  # build any JS components; these are present already in the PyPI artifact.
+  #
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace '"jupyterlab==3.*",' ""
+  '';
+
+  nativeBuildInputs = [
+    hatchling
+    hatch-jupyter-builder
+  ];
 
   propagatedBuildInputs = [ ipywidgets jupyter-ui-poll ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/ipyparallel/default.nix b/nixpkgs/pkgs/development/python-modules/ipyparallel/default.nix
index 272a192e3ada..509b70b7fd3a 100644
--- a/nixpkgs/pkgs/development/python-modules/ipyparallel/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipyparallel/default.nix
@@ -28,6 +28,14 @@ buildPythonPackage rec {
     hash = "sha256-o5ql75VgFwvw6a/typ/wReG5wYMsSTAzd+3Mkc6p+3c=";
   };
 
+  # We do not need the jupyterlab build dependency, because we do not need to
+  # build any JS components; these are present already in the PyPI artifact.
+  #
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace '"jupyterlab>=3.0.0,==3.*",' ""
+  '';
+
   nativeBuildInputs = [
     hatchling
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/ipytablewidgets/default.nix b/nixpkgs/pkgs/development/python-modules/ipytablewidgets/default.nix
index 6e05a3a36f0a..4aad3219eb52 100644
--- a/nixpkgs/pkgs/development/python-modules/ipytablewidgets/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ipytablewidgets/default.nix
@@ -27,6 +27,15 @@ buildPythonPackage rec {
     hash = "sha256-14vIih+r/PHLxhgG29YtwuosSBLpewD2CluWpH2+pLc=";
   };
 
+  # Opened https://github.com/progressivis/ipytablewidgets/issues/3 to ask if
+  # jupyterlab can be updated upstream. (From commits, it looks like it was
+  # set to this version on purpose.) In the meantime, the build still works.
+  #
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace 'jupyterlab>=3.0.0,<3.7' 'jupyterlab>=3.0.0'
+  '';
+
   nativeBuildInputs = [
     jupyter-packaging
     jupyterlab
diff --git a/nixpkgs/pkgs/development/python-modules/jedi/default.nix b/nixpkgs/pkgs/development/python-modules/jedi/default.nix
index d12691c177f0..5f802767c83a 100644
--- a/nixpkgs/pkgs/development/python-modules/jedi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jedi/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , buildPythonPackage
-, pythonAtLeast
 , pythonOlder
 , fetchFromGitHub
 , attrs
@@ -12,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "jedi";
-  version = "0.18.2";
+  version = "0.19.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -21,7 +20,7 @@ buildPythonPackage rec {
     owner = "davidhalter";
     repo = "jedi";
     rev = "v${version}";
-    hash = "sha256-hNRmUFpRzVKJQAtfsSNV4jeTR8vVj1+mGBIPO6tUGto=";
+    hash = "sha256-Hw0+KQkB9ICWbBJDQQmHyKngzJlJ8e3wlpe4aSrlkvo=";
     fetchSubmodules = true;
   };
 
@@ -43,16 +42,6 @@ buildPythonPackage rec {
   ] ++ lib.optionals (stdenv.isAarch64 && pythonOlder "3.9") [
     # AssertionError: assert 'foo' in ['setup']
     "test_init_extension_module"
-  ] ++ lib.optionals (pythonAtLeast "3.11") [
-    # disabled until 3.11 is added to _SUPPORTED_PYTHONS in jedi/api/environment.py
-    "test_find_system_environments"
-
-    # disabled until https://github.com/davidhalter/jedi/issues/1858 is resolved
-    "test_interpreter"
-    "test_scanning_venvs"
-    "test_create_environment_venv_path"
-    "test_create_environment_executable"
-    "test_venv_and_pths"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/jellyfish/default.nix b/nixpkgs/pkgs/development/python-modules/jellyfish/default.nix
index 65f385db922f..5afe54567cb4 100644
--- a/nixpkgs/pkgs/development/python-modules/jellyfish/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jellyfish/default.nix
@@ -1,20 +1,40 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchPypi
 , isPy3k
 , pytest
 , unicodecsv
+, rustPlatform
+, libiconv
 }:
 
 buildPythonPackage rec {
   pname = "jellyfish";
-  version = "0.9.0";
+  version = "1.0.0";
 
   disabled = !isPy3k;
 
+  format = "pyproject";
+
   src = fetchPypi {
     inherit pname version;
-    sha256 = "40c9a2ffd8bd3016f7611d424120442f627f56d518a106847dc93f0ead6ad79a";
+    hash = "sha256-iBquNnGZm7B85QwnaW8pyn6ELz4SOswNtlJcmZmIG9Q=";
+  };
+
+  nativeBuildInputs = with rustPlatform; [
+    maturinBuildHook
+    cargoSetupHook
+  ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    libiconv
+  ];
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit src;
+    name = "${pname}-${version}-rust-dependencies";
+    hash = "sha256-Grk+n4VCPjirafcRWWI51jHw/IFUYkBtbXY739j0MFI=";
   };
 
   nativeCheckInputs = [ pytest unicodecsv ];
diff --git a/nixpkgs/pkgs/development/python-modules/jenkins-job-builder/default.nix b/nixpkgs/pkgs/development/python-modules/jenkins-job-builder/default.nix
index 5d8e36519e8c..05f857641b66 100644
--- a/nixpkgs/pkgs/development/python-modules/jenkins-job-builder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jenkins-job-builder/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "jenkins-job-builder";
-  version = "5.0.3";
+  version = "5.0.4";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9SrFF1QAEpbS5WWBhOA1p8/YyToSbUb69vINUMQ1cug=";
+    hash = "sha256-+zrsfyi4I8venFGMKXDMUq+9+f7y6IY59y1/OJDExGs=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/json-tricks/default.nix b/nixpkgs/pkgs/development/python-modules/json-tricks/default.nix
index f6f0ddf77cba..b75020c0e5bf 100644
--- a/nixpkgs/pkgs/development/python-modules/json-tricks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/json-tricks/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "json-tricks";
-  version = "3.17.2";
+  version = "3.17.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "mverleg";
     repo = "pyjson_tricks";
     rev = "refs/tags/v${version}";
-    hash = "sha256-7AT4h+f3FDTITfVZyLTimZlDGuAxKwe0kFYBEFGv51s=";
+    hash = "sha256-xddMc4PvVI+mqB3eeVqECZmdeSKAURsdbOnUAXahqM0=";
   };
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/json5/default.nix b/nixpkgs/pkgs/development/python-modules/json5/default.nix
index d1c3ccb9ea0a..b6a54dccc73d 100644
--- a/nixpkgs/pkgs/development/python-modules/json5/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/json5/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "json5";
-  version = "0.9.9";
+  version = "0.9.14";
 
   src = fetchFromGitHub {
     owner = "dpranke";
     repo = "pyjson5";
     rev = "v${version}";
-    hash = "sha256-0ommoTv5q7YuLNF+ZPWW/Xg/8CwnPrF7rXJ+eS0joUs=";
+    hash = "sha256-cshP1kraLENqWuQTlm4HPAP/0ywRRLFOJI8mteWcjR4=";
   };
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/jsonpath/default.nix b/nixpkgs/pkgs/development/python-modules/jsonpath/default.nix
index 383df6e2652e..00205eb1907a 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonpath/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonpath/default.nix
@@ -1,21 +1,38 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "jsonpath";
-  version = "0.82";
+  version = "0.82.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "46d3fd2016cd5b842283d547877a02c418a0fe9aa7a6b0ae344115a2c990fef4";
+    hash = "sha256-2H7yvLze1o7pa8NMGAm2lFfs7JsMTdRxZYoSvTkQAtE=";
   };
 
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "jsonpath"
+  ];
+
+  pytestFlagsArray = [
+    "test/test*.py"
+  ];
+
   meta = with lib; {
     description = "An XPath for JSON";
     homepage = "https://github.com/json-path/JsonPath";
     license = licenses.mit;
-    maintainers = [ maintainers.mic92 ];
+    maintainers = with maintainers; [ mic92 ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jsonrpc-async/default.nix b/nixpkgs/pkgs/development/python-modules/jsonrpc-async/default.nix
index b34bb4435d0c..613d4478af87 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonrpc-async/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonrpc-async/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "jsonrpc-async";
-  version = "2.1.1";
+  version = "2.1.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "emlove";
     repo = pname;
     rev = version;
-    hash = "sha256-HhesXzxVjhWJkubiBi6sMoXi/zicqn99dqT5bilycS8=";
+    hash = "sha256-KOnycsOZFDEVj8CJDwGbdtbOpMPQMVdrXbHG0fzr9PI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix b/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix
index a23e3a5b931c..0f3d69b18d8c 100644
--- a/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jsonschema/default.nix
@@ -8,6 +8,7 @@
 , importlib-resources
 , jsonschema-specifications
 , pkgutil-resolve-name
+, pip
 , pytestCheckHook
 , pythonOlder
 , referencing
@@ -81,6 +82,7 @@ buildPythonPackage rec {
   };
 
   nativeCheckInputs = [
+    pip
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/jupyter-collaboration/default.nix b/nixpkgs/pkgs/development/python-modules/jupyter-collaboration/default.nix
index 17ec03145137..de73ea621b47 100644
--- a/nixpkgs/pkgs/development/python-modules/jupyter-collaboration/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupyter-collaboration/default.nix
@@ -10,6 +10,7 @@
 , jupyter-server
 , jupyter-server-fileid
 , jupyter-ydoc
+, jupyterlab
 , ypy-websocket
 , pytest-asyncio
 , pytest-jupyter
@@ -18,16 +19,15 @@
 
 buildPythonPackage rec {
   pname = "jupyter-collaboration";
-  version = "1.0.1";
+  version = "1.1.0";
+  format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
-  format = "pyproject";
-
   src = fetchPypi {
     pname = "jupyter_collaboration";
     inherit version;
-    hash = "sha256-cf7BpF6WSoHQJQW0IXdpCAGTdkX9RNWZ4JovTHvcPho=";
+    hash = "sha256-3OxduJ93TmbS/fKSKmVXs5vj2IZMX5MqKPTeGklFCbM=";
   };
 
   postPatch = ''
@@ -38,6 +38,7 @@ buildPythonPackage rec {
     hatch-jupyter-builder
     hatch-nodejs-version
     hatchling
+    jupyterlab
     pythonRelaxDepsHook
   ];
 
@@ -53,14 +54,16 @@ buildPythonPackage rec {
     ypy-websocket
   ];
 
-  pythonImportsCheck = [ "jupyter_collaboration" ];
-
   nativeCheckInputs = [
     pytest-asyncio
     pytest-jupyter
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [
+    "jupyter_collaboration"
+  ];
+
   pytestFlagsArray = [
     "-W" "ignore::DeprecationWarning"
   ];
@@ -69,11 +72,11 @@ buildPythonPackage rec {
     export HOME=$TEMP
   '';
 
-  meta = {
-    changelog = "https://github.com/jupyterlab/jupyter_collaboration/blob/v${version}/CHANGELOG.md";
+  meta = with lib; {
     description = "JupyterLab Extension enabling Real-Time Collaboration";
     homepage = "https://github.com/jupyterlab/jupyter_collaboration";
-    license = lib.licenses.bsd3;
-    maintainers = lib.teams.jupyter.members;
+    changelog = "https://github.com/jupyterlab/jupyter_collaboration/blob/v${version}/CHANGELOG.md";
+    license = licenses.bsd3;
+    maintainers = teams.jupyter.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/jupytext/default.nix b/nixpkgs/pkgs/development/python-modules/jupytext/default.nix
index 030035f744cf..a3e0eba387f9 100644
--- a/nixpkgs/pkgs/development/python-modules/jupytext/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/jupytext/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "jupytext";
-  version = "1.15.0";
+  version = "1.15.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "mwouts";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-M4BoST18sf1C1lwhFkp4a0B3fc0VKerwuVEIfwkD7i0=";
+    hash = "sha256-XGjAPeMtg2Epu85JiqQPyZJVez5Z8uA+E40SFcZM7WY=";
   };
 
   # Follow https://github.com/mwouts/jupytext/pull/1119 to see if the patch
diff --git a/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix b/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix
index ab6959389a9e..f463b18950dd 100644
--- a/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/keyrings-alt/default.nix
@@ -1,24 +1,24 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pythonOlder
-, isPy27
-, six
-
-, pytestCheckHook
+, jaraco-classes
 , keyring
+, pytestCheckHook
+, pythonOlder
 , setuptools-scm
 }:
 
 buildPythonPackage rec {
-  pname = "keyrings.alt";
-  version = "4.2.0";
+  pname = "keyrings-alt";
+  version = "5.0.0";
   format = "pyproject";
-  disabled = isPy27;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-K6PVZEG6Bjf1+cCWBo9nAQrART+dC2Jt4qowGTU7ZDE=";
+    pname = "keyrings.alt";
+    inherit version;
+    hash = "sha256-nURstHu86pD/ouzD6AA6z0FXP8IBv0S0vxO9DhFISCg=";
   };
 
   nativeBuildInputs = [
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
-    six
+    jaraco-classes
   ];
 
   nativeCheckInputs = [
@@ -39,9 +39,10 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    license = licenses.mit;
     description = "Alternate keyring implementations";
     homepage = "https://github.com/jaraco/keyrings.alt";
+    changelog = "https://github.com/jaraco/keyrings.alt/blob/v${version}/NEWS.rst";
+    license = licenses.mit;
     maintainers = with maintainers; [ nyarly ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix b/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix
index a31a5a3c957d..4a640d7b1b7c 100644
--- a/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/keyrings-cryptfile/default.nix
@@ -1,8 +1,7 @@
 { lib
+, argon2-cffi
 , buildPythonPackage
 , fetchPypi
-, fetchpatch
-, argon2-cffi
 , keyring
 , pycryptodome
 , pytestCheckHook
@@ -10,26 +9,22 @@
 }:
 
 buildPythonPackage rec {
-  pname = "keyrings.cryptfile";
-  # NOTE: newer releases are bugged/incompatible
-  # https://github.com/frispete/keyrings.cryptfile/issues/15
-  version = "1.3.4";
+  pname = "keyrings-cryptfile";
+  version = "1.3.9";
+  format = "setuptools";
+
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-jW+cKMm+xef8C+fl0CGe+6SEkYBHDjFX2/kLCZ62j6c=";
+    pname = "keyrings.cryptfile";
+    inherit version;
+    hash = "sha256-fCpFPKuZhUJrjCH3rVSlfkn/joGboY4INAvYgBrPAJE=";
   };
 
-  patches = [
-    # upstream setup.cfg has an option that is not supported
-    ./fix-testsuite.patch
-    # change of API in keyrings.testing
-    (fetchpatch {
-      url = "https://github.com/frispete/keyrings.cryptfile/commit/6fb9e45f559b8b69f7a0a519c0bece6324471d79.patch";
-      hash = "sha256-1878pMO9Ed1zs1pl+7gMjwx77HbDHdE1CryN8TPfPdU=";
-    })
-  ];
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace "-s --cov=keyrings/cryptfile" ""
+  '';
 
   propagatedBuildInputs = [
     argon2-cffi
@@ -46,13 +41,14 @@ buildPythonPackage rec {
   ];
 
   disabledTests = [
-    "test_set_properties"
-    "UncryptedFileKeyringTestCase"
+    # FileNotFoundError: [Errno 2] No such file or directory: '/build/...
+    "test_versions"
   ];
 
   meta = with lib; {
     description = "Encrypted file keyring backend";
     homepage = "https://github.com/frispete/keyrings.cryptfile";
+    changelog = "https://github.com/frispete/keyrings.cryptfile/blob/v${version}/CHANGES.md";
     license = licenses.mit;
     maintainers = teams.chia.members;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/klaus/default.nix b/nixpkgs/pkgs/development/python-modules/klaus/default.nix
index cede627f9110..0d393d0e8ae5 100644
--- a/nixpkgs/pkgs/development/python-modules/klaus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/klaus/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "klaus";
-  version = "2.0.2";
+  version = "2.0.3";
 
   src = fetchFromGitHub {
     owner = "jonashaag";
     repo = pname;
     rev = version;
-    hash = "sha256-kQcza2beyekJhRT9RwSdMIkeyapcUDtjgkapK3rocvg=";
+    hash = "sha256-VAwIdmwdo/Rim2sVlR605Wo5/zkNOMiGkh40qLrENmU=";
   };
 
   prePatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/knx-frontend/default.nix b/nixpkgs/pkgs/development/python-modules/knx-frontend/default.nix
index ff8b8f587ce4..47b9fa4d8357 100644
--- a/nixpkgs/pkgs/development/python-modules/knx-frontend/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/knx-frontend/default.nix
@@ -1,7 +1,9 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -16,8 +18,18 @@ buildPythonPackage rec {
     hash = "sha256-MeurZ6731qjeBK6HTwXYLVs6+nXF9Hf1p8/NNwxmae4=";
   };
 
+  patches = [
+    # https://github.com/XKNX/knx-frontend/pull/96
+    (fetchpatch {
+      name = "relax-setuptools-dependency.patch";
+      url = "https://github.com/XKNX/knx-frontend/commit/72ac6dc42eeeb488992b0709ee58ea4a79287817.patch";
+      hash = "sha256-EpfgEq4pIx7ahqJZalzo30ruj8NlZYHcKHxFXCGL98w=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/development/python-modules/kombu/default.nix b/nixpkgs/pkgs/development/python-modules/kombu/default.nix
index cdccecf72b09..af8e8ed29be9 100644
--- a/nixpkgs/pkgs/development/python-modules/kombu/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/kombu/default.nix
@@ -27,14 +27,14 @@
 
 buildPythonPackage rec {
   pname = "kombu";
-  version = "5.3.1";
+  version = "5.3.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+9dXLZLAv3HBEqa0UWMVPepae2pwHsFrVown0P0jcPI=";
+    hash = "sha256-C6IT9jCiyydycorvVqxog9w6LxNDXhAEj26X1IUG270=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/kornia/default.nix b/nixpkgs/pkgs/development/python-modules/kornia/default.nix
index c36540714acf..5d98379045ed 100644
--- a/nixpkgs/pkgs/development/python-modules/kornia/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/kornia/default.nix
@@ -2,23 +2,22 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
-, pytestCheckHook
 , packaging
 , torch
 }:
 
 buildPythonPackage rec {
   pname = "kornia";
-  version = "0.6.12";
+  version = "0.7.0";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-qLJos1ivEws/jFK4j0Kp1ij9J9ZwCoHFRYXnlYxwPFY=";
+    hash = "sha256-XcQXKn4F3DIgn+XQcN5ZcGZLehd/IPBgLuGzIkPSxZg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/laszip/default.nix b/nixpkgs/pkgs/development/python-modules/laszip/default.nix
index 2c6f4196595f..85187d08f99f 100644
--- a/nixpkgs/pkgs/development/python-modules/laszip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/laszip/default.nix
@@ -2,17 +2,18 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , scikit-build-core
 , pybind11
 , cmake
 , LASzip
+, ninja
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "laszip-python";
   version = "0.2.3";
-
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -24,14 +25,25 @@ buildPythonPackage rec {
     hash = "sha256-MiPzL9TDCf1xnCv7apwdfcpkFnBRi4PO/atTQxqL8cw=";
   };
 
+  patches = [
+    # Removes depending on the cmake and ninja PyPI packages, since we can pass
+    # in the tools directly, and scikit-build-core can use them.
+    # https://github.com/tmontaigu/laszip-python/pull/9
+    (fetchpatch {
+      name = "remove-cmake-ninja-pypi-dependencies.patch";
+      url = "https://github.com/tmontaigu/laszip-python/commit/17e648d04945fa2d095d6d74d58c790a4fcde84a.patch";
+      hash = "sha256-k58sS1RqVzT1WPh2OVt/D4Y045ODtj6U3bUjegd44VY=";
+    })
+  ];
+
   env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-std=c++17";
 
   nativeBuildInputs = [
     cmake
+    ninja
     pybind11
     scikit-build-core
-    scikit-build-core.optional-dependencies.pyproject
-  ];
+  ] ++ scikit-build-core.optional-dependencies.pyproject;
 
   dontUseCmakeConfigure = true;
 
diff --git a/nixpkgs/pkgs/development/python-modules/ledgerblue/default.nix b/nixpkgs/pkgs/development/python-modules/ledgerblue/default.nix
index ea89a9ac688f..5a39ef7ecba4 100644
--- a/nixpkgs/pkgs/development/python-modules/ledgerblue/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ledgerblue/default.nix
@@ -18,14 +18,14 @@
 
 buildPythonPackage rec {
   pname = "ledgerblue";
-  version = "0.1.47";
+  version = "0.1.48";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-xe8ude2JzrdmJqwzqLlxRO697IjcGuQgGG6c3nQ/drg=";
+    hash = "sha256-LVRNcsTmJOR3zTBhbKV4V0zCQk0sk/Uf6kSmfbAhgfY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/libtmux/default.nix b/nixpkgs/pkgs/development/python-modules/libtmux/default.nix
index 9382ccd36b63..ac07b77bf2b4 100644
--- a/nixpkgs/pkgs/development/python-modules/libtmux/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/libtmux/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , buildPythonPackage
 , poetry-core
 , pytest-rerunfailures
@@ -13,25 +12,16 @@
 
 buildPythonPackage rec {
   pname = "libtmux";
-  version = "0.22.1";
+  version = "0.23.0post0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "tmux-python";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-tz7Pynm/xHx2X3QjXkvFlX6sVlsVKqrsS1CVmqlqfj0=";
+    hash = "sha256-qk9QYfLVJVtkNgAZ19UziU7metluz10gDs9HbMoqZjo=";
   };
 
-  patches = [
-    # https://github.com/tmux-python/libtmux/pull/493
-    (fetchpatch {
-      name = "remove-setuptools.patch";
-      url = "https://github.com/tmux-python/libtmux/commit/aa3a1e2015ade73129191ad04146ce52765d478c.patch";
-      hash = "sha256-p3KMktd6eG9/lRK+DdBvDtSwhI+sV2RQfBAuElMk8tQ=";
-    })
-  ];
-
   postPatch = ''
     sed -i '/addopts/d' setup.cfg
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix b/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
index e4c0e6f955cd..bc4dcaee1a19 100644
--- a/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/liquidctl/default.nix
@@ -19,16 +19,16 @@
 
 buildPythonPackage rec {
   pname = "liquidctl";
-  version = "1.12.1";
+  version = "1.13.0";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-0QjgnTxqB50JNjSUAgBrGyhN2XC/TDYiC1tvhw1Bl1M=";
+    hash = "sha256-LU8rQmXrEIoOBTTFotGvMeHqksYGrtNo2YSl2l2e/UI=";
   };
 
   env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/logbook/default.nix b/nixpkgs/pkgs/development/python-modules/logbook/default.nix
index e6d155760d51..d8251a40099f 100644
--- a/nixpkgs/pkgs/development/python-modules/logbook/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/logbook/default.nix
@@ -1,30 +1,87 @@
-{ lib, buildPythonPackage, fetchPypi, isPy3k, pytest, mock, brotli }:
+{ lib
+, brotli
+, buildPythonPackage
+, cython
+, execnet
+, fetchFromGitHub
+, jinja2
+, pytestCheckHook
+, pythonOlder
+, pyzmq
+, redis
+, setuptools
+, sqlalchemy
+}:
 
 buildPythonPackage rec {
   pname = "logbook";
-  version = "1.5.3";
+  version = "1.6.0";
+  format = "setuptools";
 
-  src = fetchPypi {
-    pname = "Logbook";
-    inherit version;
-    sha256 = "1s1gyfw621vid7qqvhddq6c3z2895ci4lq3g0r1swvpml2nm9x36";
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "getlogbook";
+    repo = "logbook";
+    rev = "refs/tags/${version}";
+    hash = "sha256-2K6fM6MFrh3l0smhSz8RFd79AIOXQZJQbNLTJM4WZUo=";
   };
 
-  nativeCheckInputs = [ pytest ] ++ lib.optionals (!isPy3k) [ mock ];
+  nativeBuildInputs = [
+    cython
+    setuptools
+  ];
 
-  propagatedBuildInputs = [ brotli ];
+  passthru.optional-dependencies = {
+    execnet = [
+      execnet
+    ];
+    sqlalchemy = [
+      sqlalchemy
+    ];
+    redis = [
+      redis
+    ];
+    zmq = [
+      pyzmq
+    ];
+    compression = [
+      brotli
+    ];
+    jinja = [
+      jinja2
+    ];
+    all = [
+      brotli
+      execnet
+      jinja2
+      pyzmq
+      redis
+      sqlalchemy
+    ];
+  };
 
-  checkPhase = ''
-    find tests -name \*.pyc -delete
-    py.test tests
-  '';
+  nativeCheckInputs = [
+    pytestCheckHook
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
 
   # Some of the tests use localhost networking.
   __darwinAllowLocalNetworking = true;
 
-  meta = {
-    homepage = "https://pythonhosted.org/Logbook/";
+  pythonImportsCheck = [
+    "logbook"
+  ];
+
+  disabledTests = [
+    # Test require Redis instance
+    "test_redis_handler"
+  ];
+
+  meta = with lib; {
     description = "A logging replacement for Python";
-    license = lib.licenses.bsd3;
+    homepage = "https://logbook.readthedocs.io/";
+    changelog = "https://github.com/getlogbook/logbook/blob/${version}/CHANGES";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/losant-rest/default.nix b/nixpkgs/pkgs/development/python-modules/losant-rest/default.nix
index 7f0231c7d357..1a103d2a8c52 100644
--- a/nixpkgs/pkgs/development/python-modules/losant-rest/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/losant-rest/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "losant-rest";
-  version = "1.18.0";
+  version = "1.19.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "Losant";
     repo = "losant-rest-python";
     rev = "v${version}";
-    hash = "sha256-wl8L+ZQQgzWb7QUHWHSOT3meCn1baE7Prs1nWAOvnKo=";
+    hash = "sha256-Kr+L8zHcutpxzqvwQ10iebHiwBIT+sZiiT38G6O/joY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/manifest-ml/default.nix b/nixpkgs/pkgs/development/python-modules/manifest-ml/default.nix
index 71d7d3e26d31..329f676ef45b 100644
--- a/nixpkgs/pkgs/development/python-modules/manifest-ml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/manifest-ml/default.nix
@@ -95,6 +95,12 @@ buildPythonPackage rec {
     "test_get"
     # this test has network access
     "test_retry_handling"
+    # Test is time-senstive
+    "test_timing"
+  ];
+
+  pythonImportsCheck = [
+    "manifest"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/manifestoo-core/default.nix b/nixpkgs/pkgs/development/python-modules/manifestoo-core/default.nix
new file mode 100644
index 000000000000..3135ded66ebf
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/manifestoo-core/default.nix
@@ -0,0 +1,40 @@
+{ buildPythonPackage
+, typing-extensions
+, fetchPypi
+, lib
+, nix-update-script
+, hatch-vcs
+, pythonOlder
+, importlib-resources
+}:
+
+buildPythonPackage rec {
+  pname = "manifestoo-core";
+  version = "0.11.0";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit version;
+    pname = "manifestoo_core";
+    hash = "sha256-ZZAJDOtGcYWm0yS5bMOUdM1Jf+kfurwiLsJwyTYPz/4=";
+  };
+
+  nativeBuildInputs = [
+    hatch-vcs
+  ];
+
+  propagatedBuildInputs =
+    lib.optionals (pythonOlder "3.7") [ importlib-resources ]
+    ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ];
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = with lib; {
+    description = "A library to reason about Odoo addons manifests";
+    homepage = "https://github.com/acsone/manifestoo-core";
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ yajo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/manifestoo/default.nix b/nixpkgs/pkgs/development/python-modules/manifestoo/default.nix
new file mode 100644
index 000000000000..c9499eb11310
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/manifestoo/default.nix
@@ -0,0 +1,51 @@
+{ buildPythonPackage
+, fetchPypi
+, hatch-vcs
+, importlib-metadata
+, lib
+, manifestoo-core
+, nix-update-script
+, pytestCheckHook
+, pythonOlder
+, textual
+, typer
+, typing-extensions
+}:
+
+buildPythonPackage rec {
+  pname = "manifestoo";
+  version = "0.7";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-gCGchc+fShBgt6fVJAx80+QnH+vxWo3jsIyePkFwhYE=";
+  };
+
+  nativeBuildInputs = [
+    hatch-vcs
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  propagatedBuildInputs = [
+    manifestoo-core
+    textual
+    typer
+  ]
+  ++ typer.passthru.optional-dependencies.all
+  ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ];
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = with lib; {
+    description = "A tool to reason about Odoo addons manifests";
+    homepage = "https://github.com/acsone/manifestoo";
+    license = licenses.mit;
+    maintainers = with maintainers; [ yajo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/mashumaro/default.nix b/nixpkgs/pkgs/development/python-modules/mashumaro/default.nix
index 13bee5c38958..97eeb09d7b8a 100644
--- a/nixpkgs/pkgs/development/python-modules/mashumaro/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mashumaro/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "mashumaro";
-  version = "3.9";
+  version = "3.9.1";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "Fatal1ty";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-oH44poFVnoM831dJuA9KcHCsuW6gh5B2EHrnKwza6A4=";
+    hash = "sha256-VDB6313lvKuLJFOnuzEaiiRLUBOvbdjfowgl3nvG8Y0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix b/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix
index 2cfd5d21db19..e5df4ea7d4ea 100644
--- a/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/matplotlib/default.nix
@@ -8,10 +8,13 @@
 
 # https://github.com/matplotlib/matplotlib/blob/main/doc/devel/dependencies.rst
 # build-system
+, certifi
+, oldest-supported-numpy
 , pkg-config
 , pybind11
 , setuptools
 , setuptools-scm
+, wheel
 
 # native libraries
 , ffmpeg-headless
@@ -116,11 +119,14 @@ buildPythonPackage rec {
     '';
 
   nativeBuildInputs = [
+    certifi
+    numpy
+    oldest-supported-numpy # TODO remove after updating to 3.8.0
     pkg-config
     pybind11
     setuptools
     setuptools-scm
-    numpy
+    wheel
   ] ++ lib.optionals enableGtk3 [
     gobject-introspection
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/mdformat-mkdocs/default.nix b/nixpkgs/pkgs/development/python-modules/mdformat-mkdocs/default.nix
index 5df491ea8575..734045426526 100644
--- a/nixpkgs/pkgs/development/python-modules/mdformat-mkdocs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mdformat-mkdocs/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "mdformat-mkdocs";
-  version = "1.0.2";
+  version = "1.0.4";
   format = "flit";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "KyleKing";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-H+wqgcXNrdrZ5aQvZ7XM8YpBpVZM6pFtsANC00UZ0jM=";
+    hash = "sha256-mGWeG8clWJ7obsvO+gYaVzfAyDOh9HNdyWW5KgOgfmM=";
   };
 
   buildInputs = [
@@ -34,6 +34,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "mdformat plugin for MkDocs";
     homepage = "https://github.com/KyleKing/mdformat-mkdocs";
+changelog = "https://github.com/KyleKing/mdformat-mkdocs/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ aldoborrero ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/mdformat/default.nix b/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
index 3ac61c1a1888..a25a632f5150 100644
--- a/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mdformat/default.nix
@@ -47,7 +47,7 @@ let
 
   package = buildPythonPackage rec {
     pname = "mdformat";
-    version = "0.7.16";
+    version = "0.7.17";
     format = "pyproject";
 
     disabled = pythonOlder "3.7";
@@ -55,8 +55,8 @@ let
     src = fetchFromGitHub {
       owner = "executablebooks";
       repo = pname;
-      rev = version;
-      hash = "sha256-6MWUkvZp5CYUWsbMGXM2gudjn5075j5FIuaNnCrgRNs=";
+      rev = "refs/tags/${version}";
+      hash = "sha256-umtfbhN6sDR/rFr1LwmJ21Ph9bK1Qq43bmMVzGCPD5s=";
     };
 
     nativeBuildInputs = [
@@ -93,6 +93,7 @@ let
     meta = with lib; {
       description = "CommonMark compliant Markdown formatter";
       homepage = "https://mdformat.rtfd.io/";
+      changelog = "https://github.com/executablebooks/mdformat/blob/${version}/docs/users/changelog.md";
       license = with licenses; [ mit ];
       maintainers = with maintainers; [ fab aldoborrero ];
       mainProgram = "mdformat";
diff --git a/nixpkgs/pkgs/development/python-modules/meep/default.nix b/nixpkgs/pkgs/development/python-modules/meep/default.nix
index 021121a44ac2..df0dd2cb1bb1 100644
--- a/nixpkgs/pkgs/development/python-modules/meep/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/meep/default.nix
@@ -4,6 +4,7 @@
 , fetchFromGitHub
 , autoreconfHook
 , pkg-config
+, mpiCheckPhaseHook
 , gfortran
 , mpi
 , blas
@@ -108,15 +109,11 @@ buildPythonPackage rec {
   errors can be caught.
   */
   doCheck = true;
+  nativeCheckInputs = [ mpiCheckPhaseHook openssh ];
   checkPhase = ''
-    export PATH=$PATH:${openssh}/bin
-    export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
-
-    export OMP_NUM_THREADS=1
+    runHook preCheck
 
-    # Fix to make mpich run in a sandbox
-    export HYDRA_IFACE=lo
-    export OMPI_MCA_rmaps_base_oversubscribe=1
+    export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
 
     # Generate a python test script
     cat > test.py << EOF
@@ -139,6 +136,8 @@ buildPythonPackage rec {
     EOF
 
     ${mpi}/bin/mpiexec -np 2 python3 test.py
+
+    runHook postCheck
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix b/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
index 00552394c8bb..18b2ae836151 100644
--- a/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/meshtastic/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "meshtastic";
-  version = "2.2.1";
+  version = "2.2.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "meshtastic";
     repo = "Meshtastic-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-szeY3+84xAihGK9nLgMQf9oLRDlKlaPg6+I42TJkfVY=";
+    hash = "sha256-7mQq0phe920t7aJxvP0cCpVNH9s7F+x1fBdzAVUgtKE=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/millheater/default.nix b/nixpkgs/pkgs/development/python-modules/millheater/default.nix
index fb4f054cd212..6edd37f14dbc 100644
--- a/nixpkgs/pkgs/development/python-modules/millheater/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/millheater/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "millheater";
-  version = "0.11.0";
+  version = "0.11.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.10";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "Danielhiversen";
     repo = "pymill";
     rev = "refs/tags/${version}";
-    hash = "sha256-NECGUosjrhRCVGHOFV+YjY8o3heoA7qi9kKsgXpeHh0=";
+    hash = "sha256-RlnZUI7F1u1rjmuPc2guqVomR25Izf5jejN6LlMZYS8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mip/default.nix b/nixpkgs/pkgs/development/python-modules/mip/default.nix
index e7ba8740cbbf..db2786915b56 100644
--- a/nixpkgs/pkgs/development/python-modules/mip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mip/default.nix
@@ -8,6 +8,9 @@
 , numpy
 , pytestCheckHook
 , pythonOlder
+, setuptools
+, setuptools-scm
+, wheel
 , gurobi
 , gurobipy
 # Enable support for the commercial Gurobi solver (requires a license)
@@ -20,9 +23,9 @@
 buildPythonPackage rec {
   pname = "mip";
   version = "1.15.0";
+  format = "pyproject";
 
   disabled = pythonOlder "3.7";
-  format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
@@ -30,7 +33,14 @@ buildPythonPackage rec {
   };
 
   nativeCheckInputs = [ matplotlib networkx numpy pytestCheckHook ];
-  nativeBuildInputs = [ dos2unix ];
+
+  nativeBuildInputs = [
+    dos2unix
+    setuptools
+    setuptools-scm
+    wheel
+  ];
+
   propagatedBuildInputs = [
     cffi
   ] ++ lib.optionals gurobiSupport ([
diff --git a/nixpkgs/pkgs/development/python-modules/mkdocs-minify/default.nix b/nixpkgs/pkgs/development/python-modules/mkdocs-minify/default.nix
index 462768eed799..5ad4ef448454 100644
--- a/nixpkgs/pkgs/development/python-modules/mkdocs-minify/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mkdocs-minify/default.nix
@@ -11,13 +11,13 @@
 
 buildPythonPackage rec {
   pname = "mkdocs-minify";
-  version = "0.6.3";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "byrnereese";
     repo = "${pname}-plugin";
     rev = "refs/tags/${version}";
-    hash = "sha256-ajXkEKLBC86Y8YzDCZXd6x6QtLLrCDJkb6kDrRE536o=";
+    hash = "sha256-LDCAWKVbFsa6Y/tmY2Zne4nOtxe4KvNplZuWxg4e4L8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix b/nixpkgs/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
index a7b109d127eb..ff9326a8ba7d 100644
--- a/nixpkgs/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
@@ -1,22 +1,26 @@
 { lib
+, beautifulsoup4
 , buildPythonPackage
 , drawio-headless
-, fetchPypi
-, pythonOlder
+, fetchFromGitHub
 , mkdocs
-, beautifulsoup4
+, pathspec
+, pytestCheckHook
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "mkdocs-swagger-ui-tag";
-  version = "0.6.2";
+  version = "0.6.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-H/eqrwlZntEYoKkJZKiRV+KyzkrDKRirMDDSciFNIGo=";
+  src = fetchFromGitHub {
+    owner = "Blueswen";
+    repo = "mkdocs-swagger-ui-tag";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-/Spvj3lt7p+ZUbA/7xaQMLCSmHOOsoCRliqaAN+YU3g=";
   };
 
   propagatedBuildInputs = [
@@ -24,10 +28,22 @@ buildPythonPackage rec {
     beautifulsoup4
   ];
 
+  nativeCheckInputs = [
+    pathspec
+    pytestCheckHook
+  ];
+
   pythonImportsCheck = [
     "mkdocs_swagger_ui_tag"
   ];
 
+  disabledTests = [
+    # Don't actually build results
+    "test_material"
+    "test_material_dark_scheme_name"
+    "test_template"
+  ];
+
   meta = with lib; {
     description = "A MkDocs plugin supports for add Swagger UI in page";
     homepage = "https://github.com/Blueswen/mkdocs-swagger-ui-tag";
diff --git a/nixpkgs/pkgs/development/python-modules/mkdocstrings-python/default.nix b/nixpkgs/pkgs/development/python-modules/mkdocstrings-python/default.nix
index e297f47a0b5d..df8b47a3e983 100644
--- a/nixpkgs/pkgs/development/python-modules/mkdocstrings-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mkdocstrings-python/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocstrings-python";
-  version = "1.5.0";
+  version = "1.6.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "mkdocstrings";
     repo = "python";
     rev = "refs/tags/${version}";
-    hash = "sha256-Z92w84JI7tzARHNdVZvOrMHFbMLUayf6uHak++C0suc=";
+    hash = "sha256-r9zboUvF1IH32d6jQ+nRbzXejlZADt5+YNZ/LdFyULk=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ml-dtypes/default.nix b/nixpkgs/pkgs/development/python-modules/ml-dtypes/default.nix
index c329196d51de..eae60372af0d 100644
--- a/nixpkgs/pkgs/development/python-modules/ml-dtypes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ml-dtypes/default.nix
@@ -27,6 +27,14 @@ buildPythonPackage rec {
     fetchSubmodules = true;
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "numpy~=1.21.2" "numpy" \
+      --replace "numpy~=1.23.3" "numpy" \
+      --replace "pybind11~=2.10.0" "pybind11" \
+      --replace "setuptools~=67.6.0" "setuptools"
+  '';
+
   nativeBuildInputs = [
     setuptools
     pybind11
diff --git a/nixpkgs/pkgs/development/python-modules/model-bakery/default.nix b/nixpkgs/pkgs/development/python-modules/model-bakery/default.nix
index 005efb6c686d..12f47a9e80d0 100644
--- a/nixpkgs/pkgs/development/python-modules/model-bakery/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/model-bakery/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "model-bakery";
-  version = "1.14.0";
+  version = "1.15.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "model-bakers";
     repo = "model_bakery";
     rev = "refs/tags/${version}";
-    hash = "sha256-eiCbx15lY8H+xS2HhDCpsqwsuZGxou8aHgaktd/+65U=";
+    hash = "sha256-gB6lcLymkajRoeOQ70kmZVlBI7oeZgQo1VySfPGeQLQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/molecule/default.nix b/nixpkgs/pkgs/development/python-modules/molecule/default.nix
index c12dc3a92f35..e62ee8fb29db 100644
--- a/nixpkgs/pkgs/development/python-modules/molecule/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/molecule/default.nix
@@ -4,7 +4,6 @@
 , ansible-compat
 , ansible-core
 , click-help-colors
-, cookiecutter
 , enrich
 , jsonschema
 , withPlugins ? true, molecule-plugins
@@ -12,36 +11,41 @@
 , pluggy
 , rich
 , setuptools
+, setuptools-scm
 , yamllint
+, wcmatch
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "molecule";
-  version = "5.1.0";
+  version = "6.0.2";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+nr4n9+TF1OcPsqZyx5edSLXpX4LZ/W2mORCdvmNnYI=";
+    hash = "sha256-uRk1P3mXRt5gsWonV1YneD45wmj98vKqA3LwFix7VHg=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+    wheel
+  ];
+
   propagatedBuildInputs = [
     ansible-compat
     ansible-core
     click-help-colors
-    cookiecutter
     enrich
     jsonschema
     packaging
     pluggy
     rich
     yamllint
+    wcmatch
   ] ++ lib.optional withPlugins molecule-plugins;
 
-  nativeBuildInputs = [
-    setuptools
-  ];
-
   pythonImportsCheck = [ "molecule" ];
 
   # tests can't be easily run without installing things from ansible-galaxy
diff --git a/nixpkgs/pkgs/development/python-modules/molecule/plugins.nix b/nixpkgs/pkgs/development/python-modules/molecule/plugins.nix
index 9cb8a635c31e..af36fe3bb60c 100644
--- a/nixpkgs/pkgs/development/python-modules/molecule/plugins.nix
+++ b/nixpkgs/pkgs/development/python-modules/molecule/plugins.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "molecule-plugins";
-  version = "23.4.1";
+  version = "23.5.0";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-NMR+4sEcNbowyoTqaEwe4Wac9+WNIZesnb/L9C0KG3s=";
+    hash = "sha256-8T6gR7hlDIkmBLgbdjgryAu0riXqULI/MOgf2dWAKv8=";
   };
 
   # reverse the dependency
diff --git a/nixpkgs/pkgs/development/python-modules/monai-deploy/default.nix b/nixpkgs/pkgs/development/python-modules/monai-deploy/default.nix
index a74fa36629df..85c23a39c77a 100644
--- a/nixpkgs/pkgs/development/python-modules/monai-deploy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/monai-deploy/default.nix
@@ -26,6 +26,12 @@ buildPythonPackage rec {
     hash = "sha256-oaNZ0US0YR/PSwAZ5GfRpAW+HRYVhdCZI83fC00rgok=";
   };
 
+  postPatch = ''
+    # Asked in https://github.com/Project-MONAI/monai-deploy-app-sdk/issues/450
+    # if this patch can be incorporated upstream.
+    substituteInPlace pyproject.toml --replace 'versioneer-518' 'versioneer'
+  '';
+
   nativeBuildInputs = [ versioneer ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mpi4py/default.nix b/nixpkgs/pkgs/development/python-modules/mpi4py/default.nix
index 8584930c31f1..887c5446d53c 100644
--- a/nixpkgs/pkgs/development/python-modules/mpi4py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mpi4py/default.nix
@@ -1,4 +1,6 @@
-{ lib, fetchPypi, fetchpatch, python, buildPythonPackage, mpi, openssh }:
+{ lib, fetchPypi, fetchpatch, python, buildPythonPackage
+, mpi, mpiCheckPhaseHook, openssh
+}:
 
 buildPythonPackage rec {
   pname = "mpi4py";
@@ -33,10 +35,6 @@ buildPythonPackage rec {
     # sometimes packages specify where files should be installed outside the usual
     # python lib prefix, we override that back so all infrastructure (setup hooks)
     # work as expected
-
-    # Needed to run the tests reliably. See:
-    # https://bitbucket.org/mpi4py/mpi4py/issues/87/multiple-test-errors-with-openmpi-30
-    export OMPI_MCA_rmaps_base_oversubscribe=yes
   '';
 
   setupPyBuildFlags = ["--mpicc=${mpi}/bin/mpicc"];
@@ -45,7 +43,7 @@ buildPythonPackage rec {
 
   __darwinAllowLocalNetworking = true;
 
-  nativeCheckInputs = [ openssh ];
+  nativeCheckInputs = [ openssh mpiCheckPhaseHook ];
 
   meta = with lib; {
     description = "Python bindings for the Message Passing Interface standard";
diff --git a/nixpkgs/pkgs/development/python-modules/msgspec/default.nix b/nixpkgs/pkgs/development/python-modules/msgspec/default.nix
index 89ccbb63ff60..f5ae1860039c 100644
--- a/nixpkgs/pkgs/development/python-modules/msgspec/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/msgspec/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "msgspec";
-  version = "0.18.1";
+  version = "0.18.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "jcrist";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-cacwbl5JYqQGXhdt/F0nhX032GCw8RwFi0XBsn7dlq0=";
+    hash = "sha256-t5TM7CgVIxdXR6jMOXh1XhpA9vBrYHBcR2iLYP4A/Jc=";
   };
 
   # Requires libasan to be accessible
diff --git a/nixpkgs/pkgs/development/python-modules/msprime/default.nix b/nixpkgs/pkgs/development/python-modules/msprime/default.nix
index d33adc13080a..f4b3a2eb70c6 100644
--- a/nixpkgs/pkgs/development/python-modules/msprime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/msprime/default.nix
@@ -1,7 +1,9 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, oldest-supported-numpy
 , setuptools-scm
+, wheel
 , pythonOlder
 , gsl
 , numpy
@@ -25,8 +27,10 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    setuptools-scm
     gsl
+    oldest-supported-numpy
+    setuptools-scm
+    wheel
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/multiset/default.nix b/nixpkgs/pkgs/development/python-modules/multiset/default.nix
index 6d9a28e564ba..0e6e143676bc 100644
--- a/nixpkgs/pkgs/development/python-modules/multiset/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/multiset/default.nix
@@ -1,8 +1,10 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , setuptools
 , setuptools-scm
+, wheel
 , pytestCheckHook
 }:
 
@@ -16,9 +18,13 @@ buildPythonPackage rec {
     hash = "sha256-5FZxyug4Wo5iSKmwejqDKAwtDMQxJxMFjPus3F7Jlz4=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-    setuptools-scm
+  patches = [
+    # https://github.com/wheerd/multiset/pull/115
+    (fetchpatch {
+      name = "relax-setuptools-scm-dependency.patch";
+      url = "https://github.com/wheerd/multiset/commit/296187b07691c94b783f65504afc580a355abd96.patch";
+      hash = "sha256-vnZR1cyM/2/JfbLuVOxJuC9oMVVVploUHpbzagmo+AE=";
+    })
   ];
 
   postPatch = ''
@@ -26,6 +32,12 @@ buildPythonPackage rec {
     sed -i '/python_requires/d' setup.cfg
   '';
 
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+    wheel
+  ];
+
   pythonImportsCheck = [
     "multiset"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix b/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
index d64d9d20c5ca..2df248c3d4de 100644
--- a/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mypy-boto3-builder/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "mypy-boto3-builder";
-  version = "7.17.3";
+  version = "7.18.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.10";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "youtype";
     repo = "mypy_boto3_builder";
     rev = "refs/tags/${version}";
-    hash = "sha256-ziJb/aIvK8zZ2NwCKtyGHNQ0LM0Sro6//oAESlku0kI=";
+    hash = "sha256-43kyDgolXEu5J5OVaLKqjVdyWaobfGNvevNFh4CFjss=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mypy-boto3-ebs/default.nix b/nixpkgs/pkgs/development/python-modules/mypy-boto3-ebs/default.nix
index 56734b6a9d52..8b22c42f0f7b 100644
--- a/nixpkgs/pkgs/development/python-modules/mypy-boto3-ebs/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mypy-boto3-ebs/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "mypy-boto3-ebs";
-  version = "1.28.16";
+  version = "1.28.36";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PJkVweQPGGR3NwCpg/O+Cs822XU6awMfUL6wWwT6e0w=";
+    hash = "sha256-w9OLKJAn9UBnA7x+uedhplSV8plZRYlBpviU9Gv1Ny8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix b/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix
index 063974c955fe..61aa96fa1340 100644
--- a/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix
@@ -1,6 +1,7 @@
 { lib
 , boto3
 , buildPythonPackage
+, cython_3
 , fetchPypi
 , pythonOlder
 , typing-extensions
@@ -8,19 +9,23 @@
 
 buildPythonPackage rec {
   pname = "mypy-boto3-s3";
-  version = "1.28.27";
+  version = "1.28.36";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-8QlDRPaNH/4rmYQE4uT/mqQjlDhpIYf6g617c0c5mRw=";
+    hash = "sha256-RNo3X9TXWxxczCbc075IKUxwYURe/W2Q6/ykP/67s+Q=";
   };
 
+  nativeBuildInputs = [
+    cython_3
+  ];
+
   propagatedBuildInputs = [
     boto3
-  ] ++ lib.optionals (pythonOlder "3.9") [
+  ] ++ lib.optionals (pythonOlder "3.12") [
     typing-extensions
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/napalm/hp-procurve.nix b/nixpkgs/pkgs/development/python-modules/napalm/hp-procurve.nix
index c0a326b0ef7f..87dad04cf781 100644
--- a/nixpkgs/pkgs/development/python-modules/napalm/hp-procurve.nix
+++ b/nixpkgs/pkgs/development/python-modules/napalm/hp-procurve.nix
@@ -1,30 +1,44 @@
-{ lib, buildPythonPackage, fetchFromGitHub, setuptools, napalm, netmiko
-, pytestCheckHook }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, napalm
+, netmiko
+, pip
+, pytestCheckHook
+}:
 
 buildPythonPackage rec {
   pname = "napalm-hp-procurve";
   version = "0.7.0";
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "napalm-automation-community";
     repo = pname;
     rev = version;
-    sha256 = "1lspciddkd1w5lfyz35i0qwgpbn5jq9cbqkwjbsvi4kliz229vkh";
+    hash = "sha256-cO4kxI90krj1knzixRKWxa77OAaxjO8dLTy02VpkV9M=";
   };
 
+  nativeBuildInputs = [
+    pip
+  ];
+
   # dependency installation in setup.py doesn't work
   patchPhase = ''
     echo -n > requirements.txt
   '';
 
-  buildInputs = [ setuptools napalm ];
+  buildInputs = [ napalm ];
+
   propagatedBuildInputs = [ netmiko ];
 
   # setup.cfg seems to contain invalid pytest parameters
   preCheck = ''
     rm setup.cfg
   '';
+
   nativeCheckInputs = [ pytestCheckHook ];
+
   disabledTests = [
     # AssertionError: Some methods vary.
     "test_method_signatures"
diff --git a/nixpkgs/pkgs/development/python-modules/napari/default.nix b/nixpkgs/pkgs/development/python-modules/napari/default.nix
index 769134bcd4e5..9df87e357dd3 100644
--- a/nixpkgs/pkgs/development/python-modules/napari/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/napari/default.nix
@@ -38,7 +38,7 @@
 
 mkDerivationWith buildPythonPackage rec {
   pname = "napari";
-  version = "0.4.17";
+  version = "0.4.18";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -47,7 +47,7 @@ mkDerivationWith buildPythonPackage rec {
     owner = "napari";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-34FALCI7h0I295553Rv0KZxKIipuA2OMNsINGde7/oE=";
+    hash = "sha256-xF0DYK+226MZpB050IukNvTg2iHMQAIZW0serKRJd/0=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix b/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix
index 6f17d83524c2..79febaf68518 100644
--- a/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbclassic/default.nix
@@ -26,14 +26,14 @@
 
 buildPythonPackage rec {
   pname = "nbclassic";
-  version = "0.5.2";
+  version = "1.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-QPEbvMWeiVbD1e8TLeyOWoU+iT7Pgx55HVTaDYpQ150=";
+    hash = "sha256-CuEesjGUVdgFWWvzIDNs2pVUtB2Zq5o8Mb+BgL/6MOM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/nbsphinx/default.nix b/nixpkgs/pkgs/development/python-modules/nbsphinx/default.nix
index 74018b75e93d..de0d972aa986 100644
--- a/nixpkgs/pkgs/development/python-modules/nbsphinx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nbsphinx/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "nbsphinx";
-  version = "0.9.2";
+  version = "0.9.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-VA239AZjR/I9BlDEro59hTNMaa33SeAwr2TBLplv+I4=";
+    hash = "sha256-7DOchpG2iPhnYQSjZ6S4zz6gH9CJ3CjSTewi1WOxFWI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/neo4j/default.nix b/nixpkgs/pkgs/development/python-modules/neo4j/default.nix
index 1447ceb9bcf1..96790c04c450 100644
--- a/nixpkgs/pkgs/development/python-modules/neo4j/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/neo4j/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "neo4j";
-  version = "5.11.0";
+  version = "5.12.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "neo4j";
     repo = "neo4j-python-driver";
     rev = "refs/tags/${version}";
-    hash = "sha256-xPMO1Db1+TwOT+JsBGJcTc7BL2B8Eb1K3kqKMGnsUmE=";
+    hash = "sha256-feKKBbULkWxEgUaMROvmQph2YTAgSOVDRz/OnpzG9Ac=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix b/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix
index e75315400621..9f00a33fdf6b 100644
--- a/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix
@@ -3,7 +3,9 @@
 , fetchPypi
 , isPyPy
 , python
+, oldest-supported-numpy
 , setuptools
+, wheel
 , numpy
 , zlib
 , netcdf
@@ -26,7 +28,12 @@ buildPythonPackage rec {
     hash = "sha256-A4KwL/aiiEGfb/7IXexA9FH0G4dVVHFUxXXd2fD0rlM=";
   };
 
-  nativeBuildInputs = [ setuptools cython ];
+  nativeBuildInputs = [
+    cython
+    oldest-supported-numpy
+    setuptools
+    wheel
+  ];
 
   propagatedBuildInputs = [
     cftime
diff --git a/nixpkgs/pkgs/development/python-modules/newversion/default.nix b/nixpkgs/pkgs/development/python-modules/newversion/default.nix
index f1643b9f21cb..e3283a4eb9e2 100644
--- a/nixpkgs/pkgs/development/python-modules/newversion/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/newversion/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , packaging
 , poetry-core
 , pytestCheckHook
@@ -22,6 +23,15 @@ buildPythonPackage rec {
     hash = "sha256-27HWMzSzyAbiOW7OUhlupRWIVJG6DrpXObXmxlCsmxU=";
   };
 
+  patches = [
+    # https://github.com/vemel/newversion/pull/9
+    (fetchpatch {
+      name = "remove-setuptools-dependency.patch";
+      url = "https://github.com/vemel/newversion/commit/b50562671029dd6834bc7a8ad0dd3f9e0fbdfc1d.patch";
+      hash = "sha256-6dXVQ9Hk0/EfSwPbW19ZV8MAFcSx+ZRO5G94kbh23GM=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/ninja/default.nix b/nixpkgs/pkgs/development/python-modules/ninja/default.nix
index 0ff678569302..808bf9fb8c0e 100644
--- a/nixpkgs/pkgs/development/python-modules/ninja/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ninja/default.nix
@@ -16,6 +16,7 @@ buildPythonPackage rec {
       --subst-var version
 
     substituteInPlace "$sourceRoot/ninja/__init__.py" \
+      --subst-var version \
       --subst-var-by BIN_DIR "${ninja}/bin"
   '';
 
diff --git a/nixpkgs/pkgs/development/python-modules/ninja/stub/ninja/__init__.py b/nixpkgs/pkgs/development/python-modules/ninja/stub/ninja/__init__.py
index fcf70f10ba31..d6e7abe15205 100644
--- a/nixpkgs/pkgs/development/python-modules/ninja/stub/ninja/__init__.py
+++ b/nixpkgs/pkgs/development/python-modules/ninja/stub/ninja/__init__.py
@@ -2,6 +2,8 @@ import os
 import subprocess
 import sys
 
+__version__ = '@version@'
+
 BIN_DIR = '@BIN_DIR@'
 
 def _program(name, args):
diff --git a/nixpkgs/pkgs/development/python-modules/nitime/default.nix b/nixpkgs/pkgs/development/python-modules/nitime/default.nix
index 105cecd95b10..b0870c984911 100644
--- a/nixpkgs/pkgs/development/python-modules/nitime/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/nitime/default.nix
@@ -5,6 +5,9 @@
 , pythonOlder
 , pytestCheckHook
 , cython
+, setuptools
+, setuptools-scm
+, wheel
 , numpy
 , scipy
 , matplotlib
@@ -23,11 +26,32 @@ buildPythonPackage rec {
     hash = "sha256-NnoVrSt6MTTcNup1e+/1v5JoHCYcycuQH4rHLzXJt+Y=";
   };
 
-  buildInputs = [ cython ];
-  propagatedBuildInputs = [ numpy scipy matplotlib networkx nibabel ];
+  # Upstream wants to build against the oldest version of numpy possible, but
+  # we only want to build against the most recent version.
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "numpy==" "numpy>="
+  '';
+
+  nativeBuildInputs = [
+    cython
+    setuptools
+    setuptools-scm
+    wheel
+  ];
+
+  propagatedBuildInputs = [
+    numpy
+    scipy
+    matplotlib
+    networkx
+    nibabel
+  ];
 
   nativeCheckInputs = [ pytestCheckHook ];
+
   doCheck = !stdenv.isDarwin;  # tests hang indefinitely
+
   pythonImportsCheck = [ "nitime" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/notus-scanner/default.nix b/nixpkgs/pkgs/development/python-modules/notus-scanner/default.nix
index ce438528bc28..7252ce45b711 100644
--- a/nixpkgs/pkgs/development/python-modules/notus-scanner/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/notus-scanner/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , paho-mqtt
 , poetry-core
 , psutil
@@ -15,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "notus-scanner";
-  version = "22.5.0";
+  version = "22.6.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -24,17 +23,9 @@ buildPythonPackage rec {
     owner = "greenbone";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-h+jZWjDvTfW9XjoGhWYX08hgJ/Qp64MEaqHHwnahnC4=";
+    hash = "sha256-Ih6Uz7dTVMNCBsLcDsslyIzttg+IDBW3B+Ixpp7sz1Y=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "update-packaging-dependency.patch";
-      url = "https://github.com/greenbone/notus-scanner/commit/bfa7d3d2e63e250ff25a66c60b782eb9da0e89e7.patch";
-      hash = "sha256-hzS8TYBXDEq+cgWlp6fSOtSbyeX9EX2rURmnFMF5jN0=";
-    })
-  ];
-
   pythonRelaxDeps = [
     "python-gnupg"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/numpyro/default.nix b/nixpkgs/pkgs/development/python-modules/numpyro/default.nix
index e521e19e8621..f301fdac7be9 100644
--- a/nixpkgs/pkgs/development/python-modules/numpyro/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/numpyro/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "numpyro";
-  version = "0.12.1";
+  version = "0.13.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit version pname;
-    hash = "sha256-S3ifL/KPOJQcyBEYoE1XGxPLmSfh1uT9wJG/YtABBKQ=";
+    hash = "sha256-n+5K6fZlatKkXGVxzKcVhmP5XNuJeeM+GcCJ1Kh/WMk=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix b/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix
index 855ecb8384d4..37f7a1e44c21 100644
--- a/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "oauthenticator";
-  version = "16.0.6";
+  version = "16.0.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-82I+ZmWRUUV+kxveHNDXTsbOeZcT0QJo/SJP3paxRcY=";
+    hash = "sha256-opF7HdTJX4M7gTgB0VyWyyG/DO7lrVTvTcxMBX3a6UE=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/oci/default.nix b/nixpkgs/pkgs/development/python-modules/oci/default.nix
index 9cae940ccc38..13f5819a6ef3 100644
--- a/nixpkgs/pkgs/development/python-modules/oci/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/oci/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "oci";
-  version = "2.110.1";
+  version = "2.111.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "oracle";
     repo = "oci-python-sdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-v2h/K1gat+nHGjn6a9r1BDMDAoJ/OtNctxHzV41gRkg=";
+    hash = "sha256-7lkxk/oFb5DPH3LcOJLJByMaf4xQB8L6FLKrXOn+HsM=";
   };
 
   pythonRelaxDeps = [
diff --git a/nixpkgs/pkgs/development/python-modules/oldest-supported-numpy/default.nix b/nixpkgs/pkgs/development/python-modules/oldest-supported-numpy/default.nix
index a7b99614aef8..5d6e11c34daf 100644
--- a/nixpkgs/pkgs/development/python-modules/oldest-supported-numpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/oldest-supported-numpy/default.nix
@@ -25,10 +25,11 @@ buildPythonPackage rec {
       --replace 'numpy==' 'numpy>='
   '';
 
-  nativeBuildInputs = [
+  propagatedBuildInputs = [
     numpy
   ];
 
+  # package has no tests
   doCheck = false;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/opentsne/default.nix b/nixpkgs/pkgs/development/python-modules/opentsne/default.nix
index beab3b0d5e6d..9fc3c7fe8143 100644
--- a/nixpkgs/pkgs/development/python-modules/opentsne/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/opentsne/default.nix
@@ -3,11 +3,13 @@
 , fetchFromGitHub
 , cython
 , numpy
+, oldest-supported-numpy
 , scipy
 , scikit-learn
 , pytestCheckHook
 , nix-update-script
 , setuptools
+, wheel
 }:
 
 let
@@ -23,8 +25,14 @@ let
       hash = "sha256-L5Qx6dMJlXF3EaWwlFTQ3dkhGXc5PvQBXYJo+QO+Hxc=";
     };
 
+    nativeBuildInputs = [
+      cython
+      oldest-supported-numpy
+      setuptools
+      wheel
+    ];
+
     propagatedBuildInputs = [ numpy scipy scikit-learn ];
-    nativeBuildInputs = [ cython setuptools ];
 
     pythonImportsCheck = [ "openTSNE" ];
     doCheck = false;
diff --git a/nixpkgs/pkgs/development/python-modules/opower/default.nix b/nixpkgs/pkgs/development/python-modules/opower/default.nix
index 381afbea510f..916a4c66b9fc 100644
--- a/nixpkgs/pkgs/development/python-modules/opower/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/opower/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "opower";
-  version = "0.0.31";
+  version = "0.0.33";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "tronikos";
     repo = "opower";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lJVaQnGfZBjMgWLKZG/LNao8l4Fj3z3AZhnfgJwOcxo=";
+    hash = "sha256-YZ9I+Pdfh7i8gtBYnVwIaJSRSG0uU+8hKSCSk391hzc=";
   };
 
   pythonRemoveDeps = [
diff --git a/nixpkgs/pkgs/development/python-modules/optimum/default.nix b/nixpkgs/pkgs/development/python-modules/optimum/default.nix
index 6f781c3f174d..0c8a9a738aa1 100644
--- a/nixpkgs/pkgs/development/python-modules/optimum/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/optimum/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "optimum";
-  version = "1.11.1";
+  version = "1.12.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "huggingface";
     repo = "optimum";
     rev = "refs/tags/v${version}";
-    hash = "sha256-J0QcHmR2hVd/Ygi7QFtsObwx/Sm3DCwU+DojzXHokYU=";
+    hash = "sha256-/Z7Gh8pAa5z96X7rdcuq6kxtpF53EFGIYOu1ft8w+XM=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/osc/default.nix b/nixpkgs/pkgs/development/python-modules/osc/default.nix
index 07157162f4cd..e6e7f7bc6ce9 100644
--- a/nixpkgs/pkgs/development/python-modules/osc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/osc/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "osc";
-  version = "1.0.0b1";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "openSUSE";
     repo = "osc";
     rev = version;
-    sha256 = "cMltsR4Nxe0plHU5cP2Lj/qqlIqRbCXi6FXP8qx7908=";
+    sha256 = "sha256-gHcPqo3AuSrVprYUGLenC0kw9hKNmjabZ1m6YVMsNPs=";
   };
 
   buildInputs = [ bashInteractive ]; # needed for bash-completion helper
@@ -18,8 +18,8 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ urllib3 cryptography ];
 
   postInstall = ''
-    install -D -m444 osc.fish $out/etc/fish/completions/osc.fish
-    install -D -m555 dist/osc.complete $out/share/bash-completion/helpers/osc-helper
+    install -D -m444 contrib/osc.fish $out/etc/fish/completions/osc.fish
+    install -D -m555 contrib/osc.complete $out/share/bash-completion/helpers/osc-helper
     mkdir -p $out/share/bash-completion/completions
     cat >>$out/share/bash-completion/completions/osc <<EOF
     test -z "\$BASH_VERSION" && return
diff --git a/nixpkgs/pkgs/development/python-modules/oslo-serialization/default.nix b/nixpkgs/pkgs/development/python-modules/oslo-serialization/default.nix
index 3591669291aa..1e89c69f7e2f 100644
--- a/nixpkgs/pkgs/development/python-modules/oslo-serialization/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/oslo-serialization/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "oslo-serialization";
-  version = "5.1.1";
+  version = "5.2.0";
 
   src = fetchPypi {
     pname = "oslo.serialization";
     inherit version;
-    hash = "sha256-irvaixdjoGBx/CjF2Km+VHuihfSDDminD/iP4R8Wv0M=";
+    hash = "sha256-nPAw1hpszh9Hpi1AUPXoPhvRoQGKxnG7GTruB9Fb28I=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/paddleocr/default.nix b/nixpkgs/pkgs/development/python-modules/paddleocr/default.nix
new file mode 100644
index 000000000000..9bd81077abfd
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/paddleocr/default.nix
@@ -0,0 +1,111 @@
+{ lib
+, buildPythonPackage
+, pythonRelaxDepsHook
+, fetchFromGitHub
+, attrdict
+, beautifulsoup4
+, cython
+, fire
+, fonttools
+, lmdb
+, lxml
+, numpy
+, opencv4
+, openpyxl
+, pdf2docx
+, pillow
+, premailer
+, pyclipper
+, pymupdf
+, python-docx
+, rapidfuzz
+, scikit-image
+, shapely
+, tqdm
+, paddlepaddle
+, lanms-neo
+, polygon3
+}:
+
+let
+  version = "2.7.0.1";
+in
+buildPythonPackage {
+  pname = "paddleocr";
+  inherit version;
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "PaddlePaddle";
+    repo = "PaddleOCR";
+    rev = "254786752a2659e184822b4b2de5637a05236590";
+    hash = "sha256-M/Fpk9swX9Gds7o5poM9Iv6LOhKoZNbe0Wv9JNMPOU0=";
+  };
+
+  patches = [
+    # The `ppocr.data.imaug` re-exports the `IaaAugment` and `CopyPaste`
+    # classes. These classes depend on the `imgaug` package which is
+    # unmaintained and has been removed from nixpkgs.
+    #
+    # The image OCR feature of PaddleOCR doesn't use these classes though, so
+    # they work even after stripping the the `IaaAugment` and `CopyPaste`
+    # exports. It probably breaks some of the OCR model creation tooling that
+    # PaddleOCR provides, however.
+    ./remove-import-imaug.patch
+  ];
+
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+  # trying to relax only pymupdf makes the whole build fail
+  pythonRelaxDeps = true;
+  pythonRemoveDeps = [
+    "imgaug"
+    "visualdl"
+    "opencv-python"
+    "opencv-contrib-python"
+  ];
+
+  propagatedBuildInputs = [
+    attrdict
+    beautifulsoup4
+    cython
+    fire
+    fonttools
+    lmdb
+    lxml
+    numpy
+    opencv4
+    openpyxl
+    pdf2docx
+    pillow
+    premailer
+    pyclipper
+    pymupdf
+    python-docx
+    rapidfuzz
+    scikit-image
+    shapely
+    tqdm
+    paddlepaddle
+    lanms-neo
+    polygon3
+  ];
+
+  # TODO: The tests depend, among possibly other things, on `cudatoolkit`.
+  # But Cudatoolkit fails to install.
+  # preCheck = "export HOME=$TMPDIR";
+  # nativeCheckInputs = with pkgs; [ which cudatoolkit ];
+  doCheck = false;
+
+  meta = with lib; {
+    homepage = "https://github.com/PaddlePaddle/PaddleOCR";
+    license = licenses.asl20;
+    description = "Multilingual OCR toolkits based on PaddlePaddle";
+    longDescription = ''
+      PaddleOCR aims to create multilingual, awesome, leading, and practical OCR
+      tools that help users train better models and apply them into practice.
+    '';
+    changelog = "https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v${version}";
+    maintainers = with maintainers; [ happysalada ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/paddleocr/remove-import-imaug.patch b/nixpkgs/pkgs/development/python-modules/paddleocr/remove-import-imaug.patch
new file mode 100644
index 000000000000..f24156fb6a12
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/paddleocr/remove-import-imaug.patch
@@ -0,0 +1,20 @@
+diff --git a/ppocr/data/imaug/__init__.py b/ppocr/data/imaug/__init__.py
+index 121582b4..a6987c75 100644
+--- a/ppocr/data/imaug/__init__.py
++++ b/ppocr/data/imaug/__init__.py
+@@ -16,7 +16,6 @@ from __future__ import division
+ from __future__ import print_function
+ from __future__ import unicode_literals
+ 
+-from .iaa_augment import IaaAugment
+ from .make_border_map import MakeBorderMap
+ from .make_shrink_map import MakeShrinkMap
+ from .random_crop_data import EastRandomCropData, RandomCropImgMask
+@@ -30,7 +29,6 @@ from .rec_img_aug import BaseDataAugmentation, RecAug, RecConAug, RecResizeImg,
+     RFLRecResizeImg, SVTRRecAug
+ from .ssl_img_aug import SSLRotateResize
+ from .randaugment import RandAugment
+-from .copy_paste import CopyPaste
+ from .ColorJitter import ColorJitter
+ from .operators import *
+ from .label_ops import *
diff --git a/nixpkgs/pkgs/development/python-modules/pallets-sphinx-themes/default.nix b/nixpkgs/pkgs/development/python-modules/pallets-sphinx-themes/default.nix
index be4329a41334..460d99575b9e 100644
--- a/nixpkgs/pkgs/development/python-modules/pallets-sphinx-themes/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pallets-sphinx-themes/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "pallets-sphinx-themes";
-  version = "2.1.0";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     owner = "pallets";
     repo = "pallets-sphinx-themes";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-u1sHeO0fk11+M5M0yqDcWsMJKBMeAGW+GPOgu1oniok=";
+    sha256 = "sha256-Z03rsqkwF2rYaqRZflf5qc5EdHPIEcEcB1ftYIm5DQs=";
   };
 
   propagatedBuildInputs = [ packaging sphinx ];
diff --git a/nixpkgs/pkgs/development/python-modules/pandas/default.nix b/nixpkgs/pkgs/development/python-modules/pandas/default.nix
index 0c3b28d1d215..d79b9eea4bce 100644
--- a/nixpkgs/pkgs/development/python-modules/pandas/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pandas/default.nix
@@ -6,8 +6,10 @@
 
 # build-system
 , cython
+, oldest-supported-numpy
 , setuptools
 , versioneer
+, wheel
 
 # propagates
 , numpy
@@ -75,7 +77,9 @@ buildPythonPackage rec {
     setuptools
     cython
     numpy
+    oldest-supported-numpy
     versioneer
+    wheel
   ] ++ versioneer.optional-dependencies.toml;
 
   enableParallelBuilding = true;
@@ -168,10 +172,6 @@ buildPythonPackage rec {
     all = lib.concatLists (lib.attrValues extras);
   };
 
-  # Doesn't work with -Werror,-Wunused-command-line-argument
-  # https://github.com/NixOS/nixpkgs/issues/39687
-  hardeningDisable = lib.optional stdenv.cc.isClang "strictoverflow";
-
   nativeCheckInputs = [
     glibcLocales
     hypothesis
diff --git a/nixpkgs/pkgs/development/python-modules/particle/default.nix b/nixpkgs/pkgs/development/python-modules/particle/default.nix
index 1a9f4fef309b..69eabb7cf57f 100644
--- a/nixpkgs/pkgs/development/python-modules/particle/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/particle/default.nix
@@ -1,6 +1,7 @@
 { lib
 , attrs
 , buildPythonPackage
+, deprecated
 , fetchFromGitHub
 , fetchPypi
 , hatch-vcs
@@ -15,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "particle";
-  version = "0.21.2";
+  version = "0.23.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-BDTTmqtPxyvORSoR+CJzb5WTfF9BFrDoMSVOvO9s/Ns=";
+    hash = "sha256-2BD4/CfeuOf9ZBdAF9lgfVBSIknAlzoACOWA+T2xF1A=";
   };
 
   postPatch = ''
@@ -39,6 +40,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     attrs
+    deprecated
     hepunits
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/paste/default.nix b/nixpkgs/pkgs/development/python-modules/paste/default.nix
index ba082c9285b9..2388e2d15c6d 100644
--- a/nixpkgs/pkgs/development/python-modules/paste/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/paste/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "paste";
-  version = "3.5.2";
+  version = "3.5.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "cdent";
     repo = "paste";
     rev = "refs/tags/${version}";
-    hash = "sha256-lpQMzrRpcG5TqWm/FJn4oo9TV8Skf0ypZVeQC4y8p1U=";
+    hash = "sha256-W02UY9P3qjIFhR/DCpQZyvjEmJYl0MvMcGt9N4xgbaY=";
   };
 
   postPatch = ''
@@ -35,15 +35,10 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  disabledTests = [
-    # broken test
-    "test_file_cache"
-    # requires network connection
-    "test_proxy_to_website"
-  ] ++ lib.optionals (pythonAtLeast "3.11") [
-    # https://github.com/cdent/paste/issues/72
-    "test_form"
-  ];
+  preCheck = ''
+    # needs to be modified after Sat, 1 Jan 2005 12:00:00 GMT
+    touch tests/urlparser_data/secured.txt
+  '';
 
   pythonNamespaces = [
     "paste"
diff --git a/nixpkgs/pkgs/development/python-modules/pathvalidate/default.nix b/nixpkgs/pkgs/development/python-modules/pathvalidate/default.nix
index ecdc7dfe80d9..31ec1f003144 100644
--- a/nixpkgs/pkgs/development/python-modules/pathvalidate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pathvalidate/default.nix
@@ -2,20 +2,25 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "pathvalidate";
-  version = "2.5.2";
-  format = "setuptools";
+  version = "3.1.0";
+  format = "pyproject";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-X/V9D6vl7Lek8eSVe/61rYq1q0wPpx95xrvCS9m30U0=";
+    hash = "sha256-QmlwIm4kGZ/ZDZOZXSI8Hii9qWfN9DcHVaFM33KiqO4=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   # Requires `pytest-md-report`, causing infinite recursion.
   doCheck = false;
 
@@ -24,8 +29,9 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A Python library to sanitize/validate a string such as filenames/file-paths/etc";
+    description = "Library to sanitize/validate a string such as filenames/file-paths/etc";
     homepage = "https://github.com/thombashi/pathvalidate";
+    changelog = "https://github.com/thombashi/pathvalidate/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ oxalica ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/patool/default.nix b/nixpkgs/pkgs/development/python-modules/patool/default.nix
index f23521ea2140..7d22c167a356 100644
--- a/nixpkgs/pkgs/development/python-modules/patool/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/patool/default.nix
@@ -1,6 +1,21 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, p7zip,
-  cabextract, zip, lzip, zpaq, gnutar, gnugrep, diffutils, file,
-  gzip, bzip2, xz}:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, pytestCheckHook
+, p7zip
+, cabextract
+, zip
+, lzip
+, zpaq
+, gnutar
+, gnugrep
+, diffutils
+, file
+, gzip
+, bzip2
+, xz
+}:
 
 # unrar is unfree, as well as 7z with unrar support, not including it (patool doesn't support unar)
 # it will still use unrar if present in the path
@@ -24,15 +39,31 @@ in
 buildPythonPackage rec {
   pname = "patool";
   version = "1.12";
+  format = "setuptools";
 
   #pypi doesn't have test data
   src = fetchFromGitHub {
     owner = "wummel";
     repo = pname;
     rev = "upstream/${version}";
-    sha256 = "0v4r77sm3yzh7y1whfwxmp01cchd82jbhvbg9zsyd2yb944imzjy";
+    hash = "sha256-Xv4aCUnLi+b1T29tuKRADTIWwK2dO8iDP/D7UfU5mWw=";
   };
 
+  patches = [
+    # https://github.com/wummel/patool/pull/63
+    (fetchpatch {
+      name = "apk-sometimes-has-mime-jar.patch";
+      url = "https://github.com/wummel/patool/commit/a9f3ee3d639a1065be024001e89c0b153511b16b.patch";
+      hash = "sha256-a4aWqHHc/cBs5T2QKZ08ky1K1tqKZEgqVmTmV11aTVE=";
+    })
+    # https://github.com/wummel/patool/pull/130
+    (fetchpatch {
+      name = "apk-sometimes-has-mime-android-package.patch";
+      url = "https://github.com/wummel/patool/commit/e8a1eea1d273b278a1b6f5029d2e21cb18bc9ffd.patch";
+      hash = "sha256-AVooVdU4FNIixUfwyrn39N2SDFHNs4CUYzS5Eey+DrU=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace patoolib/util.py \
       --replace "path = None" 'path = os.environ["PATH"] + ":${lib.makeBinPath compression-utilities}"'
diff --git a/nixpkgs/pkgs/development/python-modules/pdf2docx/default.nix b/nixpkgs/pkgs/development/python-modules/pdf2docx/default.nix
index fc9987d3e903..e337bf292fcf 100644
--- a/nixpkgs/pkgs/development/python-modules/pdf2docx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pdf2docx/default.nix
@@ -5,6 +5,7 @@
 , buildPythonPackage
 , pythonRelaxDepsHook
 , imagemagick
+, pip
 , pytestCheckHook
 , pymupdf
 , fire
@@ -29,7 +30,12 @@ buildPythonPackage {
     hash = "sha256-NrT4GURQIJbqnHstfJrPzwLXT9c2oGBi4QJ6eGIFwu4=";
   };
 
-  nativeBuildInputs = [ pythonRelaxDepsHook imagemagick ];
+  nativeBuildInputs = [
+    pip
+    pythonRelaxDepsHook
+    imagemagick
+  ];
+
   pythonRemoveDeps = [ "opencv-python" ];
 
   preBuild = "echo '${version}' > version.txt";
diff --git a/nixpkgs/pkgs/development/python-modules/peaqevcore/default.nix b/nixpkgs/pkgs/development/python-modules/peaqevcore/default.nix
index 200d765c81f2..e92022ecd68a 100644
--- a/nixpkgs/pkgs/development/python-modules/peaqevcore/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/peaqevcore/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "peaqevcore";
-  version = "19.0.3";
+  version = "19.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-DRTXBOrz//IdoMC+zKFkKS2KX0EsAbTqu1tOqskQRQ4=";
+    hash = "sha256-1j1QQo8hTUM7CzDUiRvOUWImb+rGIQgPWl69hTvlZUo=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pex/default.nix b/nixpkgs/pkgs/development/python-modules/pex/default.nix
index 56d36ebdda56..51f13095ed08 100644
--- a/nixpkgs/pkgs/development/python-modules/pex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pex/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "pex";
-  version = "2.1.143";
-  format = "flit";
+  version = "2.1.145";
+  format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-xyYD9oGrlK1kswQ7uiO3/gAJUnelvWv7ZHyzn/g5iCg=";
+    hash = "sha256-1rrIxOjOdGz+Xxb6QrH6Zth/eF+zaBOGFf4I9P17nbI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pg8000/default.nix b/nixpkgs/pkgs/development/python-modules/pg8000/default.nix
index 1e2fc644b29d..9e0815ddfc71 100644
--- a/nixpkgs/pkgs/development/python-modules/pg8000/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pg8000/default.nix
@@ -7,6 +7,7 @@
 , pythonOlder
 , scramp
 , setuptools
+, versioningit
 }:
 
 buildPythonPackage rec {
@@ -23,6 +24,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools
+    versioningit
   ];
 
   propagatedBuildInputs = [
@@ -33,10 +35,6 @@ buildPythonPackage rec {
     importlib-metadata
   ];
 
-  postPatch = ''
-    sed '/^\[metadata\]/a version = ${version}' setup.cfg
-  '';
-
   # Tests require a running PostgreSQL instance
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/development/python-modules/pglast/default.nix b/nixpkgs/pkgs/development/python-modules/pglast/default.nix
index 0c0b611fbb06..61022edb9f22 100644
--- a/nixpkgs/pkgs/development/python-modules/pglast/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pglast/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pglast";
-  version = "5.3";
+  version = "5.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-fiNd+11hqMHgzSMNT7fgne3pTeJ4nu5krA48LCgIaIQ=";
+    hash = "sha256-fyLvgaYHmTh9OaWXkuenKmNTHCVYFln/FbN+5u2a9+8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pgvector/default.nix b/nixpkgs/pkgs/development/python-modules/pgvector/default.nix
index 89f3974d4069..a521038ef03d 100644
--- a/nixpkgs/pkgs/development/python-modules/pgvector/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pgvector/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "pgvector";
-  version = "0.2.0";
+  version = "0.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "pgvector";
     repo = "pgvector-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-VcV/WyDY1UN2TcuvNRQRIh5YIlewGQXf6fcTZihvftQ=";
+    hash = "sha256-Phe8iAdOCVp4wpLuLfO+fQMD1MOD47OEIQJ45rYQzug=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix b/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix
index 976fd81f6cfd..3fca04a27db4 100644
--- a/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/phonenumbers/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "phonenumbers";
-  version = "8.13.18";
+  version = "8.13.19";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-s2DHViUoBdRLRHtbym0lDPa9bGm28PQljzv+Wrgb72k=";
+    hash = "sha256-OBgCR2lyQMzt103sS/vbwiuxCLnF+ZHycMo+QTleb5Y=";
   };
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/picosvg/default.nix b/nixpkgs/pkgs/development/python-modules/picosvg/default.nix
index a04479cfb414..d344fca85e59 100644
--- a/nixpkgs/pkgs/development/python-modules/picosvg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/picosvg/default.nix
@@ -11,13 +11,13 @@
 }:
 buildPythonPackage rec {
   pname = "picosvg";
-  version = "0.22.0";
+  version = "0.22.1";
 
   src = fetchFromGitHub {
     owner = "googlefonts";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-J06ijF1c3ZKPqKiQha6yqfj8EjFZoZzA6i6UCCrexi8=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-jG1rfamegnX8GXDwqkGFBFzUeycRLDObJvGbxNk6OpM=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/pillow/default.nix b/nixpkgs/pkgs/development/python-modules/pillow/default.nix
index f1489e1f458d..bb669f421177 100644
--- a/nixpkgs/pkgs/development/python-modules/pillow/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pillow/default.nix
@@ -24,6 +24,16 @@ import ./generic.nix (rec {
     hash = "sha256-nIK1s+BDx68NlXktDSDM9o9hof7Gs1MOcYtohCJyc5Y=";
   };
 
+  patches = [
+    # Pull in zlib-1.3 fix pending upstream inclusion
+    #   https://github.com/python-pillow/Pillow/pull/7344
+    (fetchpatch {
+      name = "zlib-1.3.patch";
+      url = "https://github.com/python-pillow/Pillow/commit/9ef7cb39def45b0fe1cdf4828ca20838a1fc39d1.patch";
+      hash = "sha256-N7V6Xz+SBHSm3YIgmbty7zbqkv8MzpLMhU4Xxerhx8w=";
+    })
+  ];
+
   passthru.tests = {
     inherit imageio matplotlib pilkit pydicom reportlab;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix b/nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix
index a4dd78a557e6..6cc7cd22a97d 100644
--- a/nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pint-pandas/default.nix
@@ -3,6 +3,8 @@
 , buildPythonPackage
 , fetchFromGitHub
 , setuptools
+, setuptools-scm
+, wheel
 , pint
 , pandas
 , pytestCheckHook
@@ -20,8 +22,12 @@ buildPythonPackage rec {
     hash = "sha256-FuH6wksSCkkL2AyQN46hwTnfeAZFwkWRl6KEEhsxmUY=";
   };
 
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
   nativeBuildInputs = [
     setuptools
+    setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix b/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix
index f1fcf59ce2fe..1871ce74dd73 100644
--- a/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pip-tools/default.nix
@@ -11,19 +11,21 @@
 , pythonOlder
 , setuptools
 , setuptools-scm
+, tomli
+, tomli-w
 , wheel
 }:
 
 buildPythonPackage rec {
   pname = "pip-tools";
-  version = "6.13.0";
+  version = "7.3.0";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-YdRr0uuAFu1Kkk4Zbm5bCiaM07q9eeWTBIcg2yNSK7E=";
+    hash = "sha256-jpyZEn/gJMAltGoLLRXHvUfxjzMibPczDTVJNmP8HR0=";
   };
 
   patches = [ ./fix-setup-py-bad-syntax-detection.patch ];
@@ -39,11 +41,16 @@ buildPythonPackage rec {
     pip
     setuptools
     wheel
+  ] ++ lib.optionals (pythonOlder "3.11") [
+    tomli
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [
     pytest-xdist
     pytestCheckHook
+    tomli-w
   ];
 
   preCheck = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) ''
diff --git a/nixpkgs/pkgs/development/python-modules/pip/default.nix b/nixpkgs/pkgs/development/python-modules/pip/default.nix
index ebac5724d66f..bc06cb39e247 100644
--- a/nixpkgs/pkgs/development/python-modules/pip/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pip/default.nix
@@ -1,10 +1,12 @@
 { lib
 , buildPythonPackage
-, bootstrapped-pip
 , fetchFromGitHub
+, installShellFiles
 , mock
 , scripttest
+, setuptools
 , virtualenv
+, wheel
 , pretend
 , pytest
 
@@ -14,33 +16,40 @@
 
 buildPythonPackage rec {
   pname = "pip";
-  version = "23.0.1";
-  format = "other";
+  version = "23.2.1";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pypa";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-BSonlwKmegrlrQTTIL0avPi61/TY2M0f7kOZpSzPRQk=";
-    name = "${pname}-${version}-source";
+    hash = "sha256-mUlzfYmq1FE3X1/2o7sYJzMgwHRI4ib4EMhpg83VvrI=";
   };
 
-  nativeBuildInputs = [ bootstrapped-pip ];
-
   postPatch = ''
     # Remove vendored Windows PE binaries
     # Note: These are unused but make the package unreproducible.
     find -type f -name '*.exe' -delete
   '';
 
-  # pip detects that we already have bootstrapped_pip "installed", so we need
-  # to force it a little.
-  pipInstallFlags = [ "--ignore-installed" ];
+  nativeBuildInputs = [
+    installShellFiles
+    setuptools
+    wheel
+  ];
 
   nativeCheckInputs = [ mock scripttest virtualenv pretend pytest ];
+
   # Pip wants pytest, but tests are not distributed
   doCheck = false;
 
+  postInstall = ''
+    installShellCompletion --cmd pip \
+      --bash <($out/bin/pip completion --bash) \
+      --fish <($out/bin/pip completion --fish) \
+      --zsh <($out/bin/pip completion --zsh)
+  '';
+
   passthru.tests = { inherit pip-tools; };
 
   meta = {
@@ -48,6 +57,5 @@ buildPythonPackage rec {
     license = with lib.licenses; [ mit ];
     homepage = "https://pip.pypa.io/";
     changelog = "https://pip.pypa.io/en/stable/news/#v${lib.replaceStrings [ "." ] [ "-" ] version}";
-    priority = 10;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pipdeptree/default.nix b/nixpkgs/pkgs/development/python-modules/pipdeptree/default.nix
index d248672b170a..250ad2f2399d 100644
--- a/nixpkgs/pkgs/development/python-modules/pipdeptree/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pipdeptree/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage rec {
     hatch-vcs
   ];
 
-  propagatedBuildInput = [
+  propagatedBuildInputs = [
     pip
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix b/nixpkgs/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
index 33831490708f..f48ffb81e586 100644
--- a/nixpkgs/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "pipenv-poetry-migrate";
-  version = "0.3.2";
+  version = "0.4.0";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "yhino";
     repo = "pipenv-poetry-migrate";
     rev = "refs/tags/v${version}";
-    hash = "sha256-aPG0MgChnJbivJRjYx9aQE5OPhL4WlPyt5uKCHZUpeE=";
+    hash = "sha256-QNp+KYOJIKV1fROmIhnWgDXFU8CymXkS2p90bOEPeoQ=";
   };
 
   nativeBuildInputs = [
@@ -33,11 +33,6 @@ buildPythonPackage rec {
     typer
   ];
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace 'typer = "^0.4.0"' 'typer = ">=0.4"'
-  '';
-
   nativeCheckInputs = [
     pytestCheckHook
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/pkg-about/default.nix b/nixpkgs/pkgs/development/python-modules/pkg-about/default.nix
new file mode 100644
index 000000000000..b82712dc443f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pkg-about/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, importlib-metadata
+, importlib-resources
+, setuptools
+, packaging
+, tomli
+, tox
+}:
+
+buildPythonPackage rec {
+  pname = "pkg-about";
+  version = "1.0.8";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    pname = "pkg_about";
+    inherit version;
+    extension = "zip";
+    hash = "sha256-mb43XbKypgilagXLW33kP8wXxioNsfLtl6AEnOI1WlA=";
+  };
+
+  nativeBuildInputs = [
+    packaging
+    setuptools
+    tox
+  ];
+
+  propagatedBuildInputs = [
+    importlib-metadata
+    importlib-resources
+    packaging
+    setuptools
+    tomli
+  ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pkg_about"
+  ];
+
+  meta = with lib; {
+    description = "Python metadata sharing at runtime";
+    homepage = "https://github.com/karpierz/pkg_about/";
+    changelog = "https://github.com/karpierz/pkg_about/blob/${version}/CHANGES.rst";
+    license = licenses.zlib;
+    maintainers = [ teams.ororatech ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/plaid-python/default.nix b/nixpkgs/pkgs/development/python-modules/plaid-python/default.nix
index 99fbb98703bf..a449edd308b6 100644
--- a/nixpkgs/pkgs/development/python-modules/plaid-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/plaid-python/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "plaid-python";
-  version = "15.4.0";
+  version = "15.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-IO+IIMMJHrpVTS/L/cwwK2UYrYZDDQ0F/AxKITms9+0=";
+    hash = "sha256-zI3fOd1IcnXS5moM3mHl/1qzrAHnxoVrFg1GBCqiA10=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/playwright/default.nix b/nixpkgs/pkgs/development/python-modules/playwright/default.nix
index 1c64471778a6..ec7a53f423a0 100644
--- a/nixpkgs/pkgs/development/python-modules/playwright/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/playwright/default.nix
@@ -16,7 +16,7 @@ in
 buildPythonPackage rec {
   pname = "playwright";
   # run ./pkgs/development/python-modules/playwright/update.sh to update
-  version = "1.36.0";
+  version = "1.37.0";
   format = "setuptools";
   disabled = pythonOlder "3.7";
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "microsoft";
     repo = "playwright-python";
     rev = "v${version}";
-    hash = "sha256-/umpMkD+WEpBmw2cRb71PtOMd1sRNfwmURKdaRy4Qsc=";
+    hash = "sha256-7egK76A3+C+JPbCNFXDd4qTjepBRSZgtQmFrE/jWJN4=";
   };
 
   patches = [
@@ -88,6 +88,7 @@ buildPythonPackage rec {
       driver = playwright-driver;
       browsers = playwright-driver.browsers;
     };
+    updateScript = ./update.sh;
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/playwright/update.sh b/nixpkgs/pkgs/development/python-modules/playwright/update.sh
index 464f9a3cba05..23c327608865 100755
--- a/nixpkgs/pkgs/development/python-modules/playwright/update.sh
+++ b/nixpkgs/pkgs/development/python-modules/playwright/update.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl gnused nix-prefetch common-updater-scripts node2nix
+#!nix-shell -i bash -p curl gnused nix-prefetch common-updater-scripts node2nix jq
 set -euo pipefail
 
 root="$(dirname "$(readlink -f "$0")")"
diff --git a/nixpkgs/pkgs/development/python-modules/poetry-core/default.nix b/nixpkgs/pkgs/development/python-modules/poetry-core/default.nix
index 270c78a69826..1205b860b8da 100644
--- a/nixpkgs/pkgs/development/python-modules/poetry-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/poetry-core/default.nix
@@ -6,53 +6,72 @@
 , pythonOlder
 , build
 , git
-, importlib-metadata
-, pep517
 , pytest-mock
 , pytestCheckHook
 , setuptools
+, tomli-w
 , virtualenv
 }:
 
 buildPythonPackage rec {
   pname = "poetry-core";
-  version = "1.5.1";
+  version = "1.6.1";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "python-poetry";
     repo = pname;
     rev = version;
-    hash = "sha256-h3d0h+WCrrNlfPOlUx6Rj0aG6untD6MiunqvPj4yT+0=";
+    hash = "sha256-Gc22Y2T4uO39jiOqEUFeOfnVCbknuDjmzFPZgk2eY74=";
   };
 
   # revert update of vendored dependencies to unbreak e.g. zeroconf on x86_64-darwin
   patches = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
     (fetchpatch {
+      url = "https://github.com/python-poetry/poetry-core/commit/0bdf29e9631fda9436066a07ca8e69a4aa97a31e.patch";
+      revert = true;
+      hash = "sha256-Uqlv17GUcmVkB6ZFePtrbUonsbkiIXay7LLuT/WcPh8=";
+    })
+    (fetchpatch {
+      url = "https://github.com/python-poetry/poetry-core/commit/48447a18a60c43240bf075fc0c2501f6d68f0211.patch";
+      revert = true;
+      hash = "sha256-23GazppqYmuAmkE/xMtuzng2PbxhYNwgtmsvb6lfvig=";
+    })
+    (fetchpatch {
+      url = "https://github.com/python-poetry/poetry-core/commit/bc97ac6030049a01e5337fcb53493112a9c75a81.patch";
+      revert = true;
+      hash = "sha256-8NAG+Xm/BNL16NONZJRNB3JiRRKvjMsZJH2FWlw+dHk=";
+    })
+    (fetchpatch {
+      url = "https://github.com/python-poetry/poetry-core/commit/835bc91393fbb983de6227d67b076aea1360ea68.patch";
+      revert = true;
+      hash = "sha256-Z5viypprDY9GGeX6luBsIoSI9D0lN9g14U9uMh4DTfA=";
+    })
+    (fetchpatch {
       url = "https://github.com/python-poetry/poetry-core/commit/80d7dcdc722dee0e09e5f3303b663003d794832c.patch";
       revert = true;
       hash = "sha256-CPjkNCmuAiowp/kyKqnEfUQNmXK95RMJOIa24nG6xi8=";
     })
     (fetchpatch {
       url = "https://github.com/python-poetry/poetry-core/commit/43fd7fe62676421b3661c96844b5d7cf49b87c07.patch";
+      excludes = [
+        "vendors/poetry.lock"
+        "vendors/pyproject.toml"
+      ];
       revert = true;
-      hash = "sha256-fXq8L23qjLraLeMzB1bwW1jU0eGd236/GHIoYKwOuL0=";
+      hash = "sha256-mbu16qFH9ymDZ0KIMiYMy7js5OmxY7z5qg6ZfgfgeLs=";
     })
   ];
 
-  propagatedBuildInputs = lib.optionals (pythonOlder "3.8") [
-    importlib-metadata
-  ];
-
   nativeCheckInputs = [
     build
     git
-    pep517
     pytest-mock
     pytestCheckHook
     setuptools
+    tomli-w
     virtualenv
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/polyline/default.nix b/nixpkgs/pkgs/development/python-modules/polyline/default.nix
index 26cec2331cb7..5ab360ae7e37 100644
--- a/nixpkgs/pkgs/development/python-modules/polyline/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/polyline/default.nix
@@ -1,9 +1,11 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pytestCheckHook
 , pythonOlder
 , setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -20,6 +22,15 @@ buildPythonPackage rec {
     hash = "sha256-e9ZDqcS3MaMlXi2a2JHI6NtRPqIV7rjsucGXEH6V8LA=";
   };
 
+  patches = [
+    # https://github.com/frederickjansen/polyline/pull/15
+    (fetchpatch {
+      name = "relax-build-dependencies.patch";
+      url = "https://github.com/frederickjansen/polyline/commit/cb9fc80606c33dbbcaa0d94de25ae952358443b6.patch";
+      hash = "sha256-epg2pZAG+9QuICa1ms+/EO2DDmYEz+KEtxxnvG7rsWY=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace " --cov=polyline --cov-report term-missing" ""
@@ -27,6 +38,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/procmon-parser/default.nix b/nixpkgs/pkgs/development/python-modules/procmon-parser/default.nix
new file mode 100644
index 000000000000..b45d72f3d07d
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/procmon-parser/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildPythonPackage
+, construct
+, fetchFromGitHub
+, pytestCheckHook
+, python-dateutil
+, pythonOlder
+, six
+}:
+
+buildPythonPackage rec {
+  pname = "procmon-parser";
+  version = "0.3.13";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "eronnen";
+    repo = "procmon-parser";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-XkMf3MQK4WFRLl60XHDG/j2gRHAiz7XL9MmC6SRg9RE=";
+  };
+
+  propagatedBuildInputs = [
+    construct
+    six
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    python-dateutil
+  ];
+
+  pythonImportsCheck = [
+    "procmon_parser"
+  ];
+
+  meta = with lib; {
+    description = "Parser to process monitor file formats";
+    homepage = "https://github.com/eronnen/procmon-parser/";
+    changelog = "https://github.com/eronnen/procmon-parser/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/proxy-py/default.nix b/nixpkgs/pkgs/development/python-modules/proxy-py/default.nix
index 911637bf8505..7c88211f5d27 100644
--- a/nixpkgs/pkgs/development/python-modules/proxy-py/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/proxy-py/default.nix
@@ -3,6 +3,7 @@
 , bash
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , gnumake
 , httpx
 , openssl
@@ -13,6 +14,7 @@
 , pythonOlder
 , setuptools-scm
 , typing-extensions
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -29,6 +31,22 @@ buildPythonPackage rec {
     hash = "sha256-dA7a9RicBFCSf6IoGX/CdvI8x/xMOFfNtyuvFn9YmHI=";
   };
 
+  patches = [
+    # this patch is so that the one following it applies cleanly
+    # https://github.com/abhinavsingh/proxy.py/pull/1209
+    (fetchpatch {
+      name = "update-build-dependencies.patch";
+      url = "https://github.com/abhinavsingh/proxy.py/commit/2e535360ce5ed9734f2c00dc6aefe5ebd281cea5.patch";
+      hash = "sha256-eR3R4M7jwQMnY5ob0V6G71jXcrkV7YZvo1JOUG4gnrY=";
+    })
+    # https://github.com/abhinavsingh/proxy.py/pull/1345
+    (fetchpatch {
+      name = "remove-setuptools-scm-git-archive-dependency.patch";
+      url = "https://github.com/abhinavsingh/proxy.py/commit/027bfa6b912745f588d272f1a1082f6ca416f815.patch";
+      hash = "sha256-O2LlSrSrB3u2McAZRY+KviuU7Hv1tOuf0n+D/H4BWvI=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace Makefile \
     --replace "SHELL := /bin/bash" "SHELL := ${bash}/bin/bash"
@@ -40,6 +58,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/publicsuffixlist/default.nix b/nixpkgs/pkgs/development/python-modules/publicsuffixlist/default.nix
index 1c6e042e5778..79070dcfcb08 100644
--- a/nixpkgs/pkgs/development/python-modules/publicsuffixlist/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/publicsuffixlist/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "publicsuffixlist";
-  version = "0.10.0.20230814";
+  version = "0.10.0.20230828";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-GG6ilUUauVT2u/BuS4agzJVQdydEuGwpxJVznWDb46Q=";
+    hash = "sha256-eVPcj1gMY9a8Znhon2lEs9EKWgc55euyvzxnrkDH05o=";
   };
 
   passthru.optional-dependencies = {
diff --git a/nixpkgs/pkgs/development/python-modules/pulumi-aws/default.nix b/nixpkgs/pkgs/development/python-modules/pulumi-aws/default.nix
index a1cedcaa5ab4..cad2f1366e18 100644
--- a/nixpkgs/pkgs/development/python-modules/pulumi-aws/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pulumi-aws/default.nix
@@ -12,7 +12,7 @@
 buildPythonPackage rec {
   pname = "pulumi-aws";
   # Version is independant of pulumi's.
-  version = "5.42.0";
+  version = "6.0.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "pulumi";
     repo = "pulumi-aws";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UUUnbByfxBMdJzZRu7EZHa809eshrR4h4poBxJAdTiI=";
+    hash = "sha256-AnyKDoD7hh3iYheUK8RXFfXEi5yChkZNAyWobC2ghmQ=";
   };
 
   sourceRoot = "${src.name}/sdk/python";
diff --git a/nixpkgs/pkgs/development/python-modules/py-dormakaba-dkey/default.nix b/nixpkgs/pkgs/development/python-modules/py-dormakaba-dkey/default.nix
index 6c70ad8861c7..27443d166e76 100644
--- a/nixpkgs/pkgs/development/python-modules/py-dormakaba-dkey/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py-dormakaba-dkey/default.nix
@@ -4,8 +4,10 @@
 , buildPythonPackage
 , cryptography
 , fetchFromGitHub
+, fetchpatch
 , pythonOlder
 , setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -22,8 +24,18 @@ buildPythonPackage rec {
     hash = "sha256-1jIsKQa27XNVievU02jjanRWFtJDYsHolgPBab6qpM0=";
   };
 
+  patches = [
+    # https://github.com/emontnemery/py-dormakaba-dkey/pull/45
+    (fetchpatch {
+      name = "relax-setuptools-dependency.patch";
+      url = "https://github.com/emontnemery/py-dormakaba-dkey/commit/cfda4be71d39f2cfd1c0d4f7fff9018050c57f1a.patch";
+      hash = "sha256-JGsaLQNbUfz0uK/MeGnR2XTJDs4RnTOEg7BavfDPArg=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/py-partiql-parser/default.nix b/nixpkgs/pkgs/development/python-modules/py-partiql-parser/default.nix
index 481d73134178..c6c35ebd297d 100644
--- a/nixpkgs/pkgs/development/python-modules/py-partiql-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/py-partiql-parser/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "py-partiql-parser";
-  version = "0.3.6";
+  version = "0.3.7";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "getmoto";
     repo = "py-partiql-parser";
     rev = "refs/tags/${version}";
-    hash = "sha256-wfVADL87ObJbuYQ2MYcRH0DCOGymS6+mrp7pAIKoS4Q=";
+    hash = "sha256-RObJSvkqD3T8i470po/CayGC/ae8J6rFQROsrQ1EAGs=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyTelegramBotAPI/default.nix b/nixpkgs/pkgs/development/python-modules/pyTelegramBotAPI/default.nix
index 6d9ea5ddf2ed..951d5d849714 100644
--- a/nixpkgs/pkgs/development/python-modules/pyTelegramBotAPI/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyTelegramBotAPI/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "pytelegrambotapi";
-  version = "4.12.0";
+  version = "4.13.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "eternnoir";
     repo = "pyTelegramBotAPI";
     rev = "refs/tags/${version}";
-    hash = "sha256-cW9IQy4D2iaoQ6oHQ07f27YQR7q9DBv2JkoukUtPBRQ=";
+    hash = "sha256-5P0DfQL8lwCY4nvp5efB7fO7YyBMTRaB4qflkc+Arso=";
   };
 
   passthru.optional-dependencies = {
diff --git a/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix b/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix
index 75525b943445..c9563039b0a8 100644
--- a/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyairvisual/default.nix
@@ -4,6 +4,7 @@
 , buildPythonPackage
 , certifi
 , fetchFromGitHub
+, fetchpatch
 , numpy
 , poetry-core
 , pygments
@@ -28,6 +29,15 @@ buildPythonPackage rec {
     hash = "sha256-+yqN3q+uA/v01uCguzUSoeCJK9lRmiiYn8d272+Dd2M=";
   };
 
+  patches = [
+    # https://github.com/bachya/pyairvisual/pull/298
+    (fetchpatch {
+      name = "clean-up-build-dependencies.patch";
+      url = "https://github.com/bachya/pyairvisual/commit/eb32beb7229a53ff81917cc417ed66b26aae47dd.patch";
+      hash = "sha256-RLRbHmaR2A8MNc96WHx0L8ccyygoBUaOulAuRJkFuUM=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace pyproject.toml --replace \
       'certifi = ">=2023.07.22"' \
@@ -46,6 +56,9 @@ buildPythonPackage rec {
     pysmb
   ];
 
+  # this lets tests bind to localhost in sandbox mode on macOS
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [
     aresponses
     pytest-aiohttp
diff --git a/nixpkgs/pkgs/development/python-modules/pybox2d/default.nix b/nixpkgs/pkgs/development/python-modules/pybox2d/default.nix
new file mode 100644
index 000000000000..c7a8e7d83ebf
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pybox2d/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, swig
+}:
+
+buildPythonPackage rec {
+  pname = "pybox2d";
+  version = "2.3.10";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "pybox2d";
+    repo = "pybox2d";
+    rev = "refs/tags/${version}";
+    hash = "sha256-yjLFvsg8GQLxjN1vtZM9zl+kAmD4+eS/vzRkpj0SCjY=";
+  };
+
+  nativeBuildInputs = [
+    swig
+  ];
+
+  # We need to build the package explicitly a first time so that the library/Box2D/Box2D.py file
+  # gets generated.
+  # After that, the default behavior will succeed at installing the package.
+  preBuild = ''
+    python setup.py build
+  '';
+
+  pythonImportsCheck = [
+    "Box2D"
+    "Box2D._Box2D"
+  ];
+
+  # Tests need to start GUI windows.
+  doCheck = false;
+
+  meta = with lib; {
+    description = "2D Game Physics for Python";
+    homepage = "https://github.com/pybox2d/pybox2d";
+    license = licenses.zlib;
+    maintainers = with maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pybtex-docutils/default.nix b/nixpkgs/pkgs/development/python-modules/pybtex-docutils/default.nix
index d8f9e4616f4e..b2c05f73bc63 100644
--- a/nixpkgs/pkgs/development/python-modules/pybtex-docutils/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pybtex-docutils/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "pybtex-docutils";
-  version = "1.0.2";
+  version = "1.0.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Q6o1O21Jj9WsMPAHOpjjMtBh00/mGdPVDRdh+P1KoBY=";
+    hash = "sha256-On69+StZPgDowcU4qpogvKXZLYQjESRxWsyWTVHZPGs=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pycardano/default.nix b/nixpkgs/pkgs/development/python-modules/pycardano/default.nix
new file mode 100644
index 000000000000..8345a3da2065
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pycardano/default.nix
@@ -0,0 +1,67 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+# Python deps
+, blockfrost-python
+, cbor2
+, cose
+, ecpy
+, frozendict
+, frozenlist
+, mnemonic
+, poetry-core
+, pprintpp
+, pynacl
+, setuptools
+, typeguard
+, websocket-client
+}:
+
+let
+  cose_0_9_dev8 = cose.overridePythonAttrs (old: rec {
+    version = "0.9.dev8";
+    src = (old.src.override {
+      rev = "v${version}";
+      hash = "sha256-/jwq2C2nvHInsgPG4jZCr+XsvlUJdYewAkasrUPVaHM=";
+    });
+    pythonImportsCheck = [ "cose" ];
+  });
+
+in buildPythonPackage rec {
+  pname = "pycardano";
+  version = "0.9.0";
+
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "Python-Cardano";
+    repo = "pycardano";
+    rev = "v${version}";
+    hash = "sha256-KRlpGhEzABBh1YWCDcrpW4hyMOhEA1Rla9nh95qdVik=";
+  };
+
+  propagatedBuildInputs = [
+    blockfrost-python
+    cbor2
+    cose_0_9_dev8
+    ecpy
+    frozendict
+    frozenlist
+    mnemonic
+    poetry-core
+    pprintpp
+    pynacl
+    setuptools
+    typeguard
+    websocket-client
+  ];
+
+  pythonImportsCheck = [ "pycardano" ];
+
+  meta = with lib; {
+    description = "A lightweight Cardano library in Python";
+    homepage = "https://github.com/Python-Cardano/pycardano";
+    license = licenses.mit;
+    maintainers = with maintainers; [ t4ccer ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pycmarkgfm/default.nix b/nixpkgs/pkgs/development/python-modules/pycmarkgfm/default.nix
index 89b1eef76b9f..79700a7bdc7f 100644
--- a/nixpkgs/pkgs/development/python-modules/pycmarkgfm/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pycmarkgfm/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "pycmarkgfm";
-  version = "1.2.0";
+  version = "1.2.1";
   format = "setuptools";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qvTMXpQhC3Yx8LwbQDiELhgdkGzjirKT30N1NkXF5ps=";
+    hash = "sha256-oPklCB54aHn33ewTiSlXgx38T0RzLure5OzGuFwsLNo=";
   };
 
   propagatedNativeBuildInputs = [ cffi ];
diff --git a/nixpkgs/pkgs/development/python-modules/pydaikin/default.nix b/nixpkgs/pkgs/development/python-modules/pydaikin/default.nix
index 8e51bf8d085f..eb1029837435 100644
--- a/nixpkgs/pkgs/development/python-modules/pydaikin/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydaikin/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "pydaikin";
-  version = "2.10.5";
+  version = "2.11.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "mustang51";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-G4mNBHk8xskQyt1gbMqz5XhoTfWWxp+qTruOSqmTvOc=";
+    hash = "sha256-IBrd4PH8EzVVVFQtJdJ8bTMLEzfh7MYMe79yuCrhmww=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pydeck/default.nix b/nixpkgs/pkgs/development/python-modules/pydeck/default.nix
index ccdc8509b8cb..da009608b678 100644
--- a/nixpkgs/pkgs/development/python-modules/pydeck/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydeck/default.nix
@@ -4,6 +4,7 @@
 , ipykernel
 , ipywidgets
 , jinja2
+, jupyter
 , numpy
 , pandas
 , pytestCheckHook
@@ -26,6 +27,8 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
+    jinja2
+    jupyter
     setuptools
     wheel
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/pydicom-seg/default.nix b/nixpkgs/pkgs/development/python-modules/pydicom-seg/default.nix
index c18c0210c86d..52708208d4c9 100644
--- a/nixpkgs/pkgs/development/python-modules/pydicom-seg/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pydicom-seg/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pythonOlder
 , pytestCheckHook
 , pythonRelaxDepsHook
@@ -26,10 +27,14 @@ buildPythonPackage rec {
     fetchSubmodules = true;
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "poetry.masonry.api" "poetry.core.masonry.api"
-  '';
+  patches = [
+    # https://github.com/razorx89/pydicom-seg/pull/54
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core.patch";
+      url = "https://github.com/razorx89/pydicom-seg/commit/ac91eaefe3b0aecfe745869972c08de5350d2b61.patch";
+      hash = "sha256-xBOVjWZPjyQ8gSj6JLe9B531e11TI3FUFFtL+IelZOM=";
+    })
+  ];
 
   pythonRelaxDeps = [
     "jsonschema"
diff --git a/nixpkgs/pkgs/development/python-modules/pydiscourse/default.nix b/nixpkgs/pkgs/development/python-modules/pydiscourse/default.nix
new file mode 100644
index 000000000000..d17c719196e1
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pydiscourse/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, requests
+, unittestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pydiscourse";
+  version = "1.4.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "pydiscourse";
+    repo = pname;
+    rev = "refs/tags/v${version}";
+    hash = "sha256-peDkXRcD/ieWYWXqv8hPxTSNRXBHcb/3sj/JJSF2RYg=";
+  };
+
+  propagatedBuildInputs = [
+    requests
+  ];
+
+  nativeCheckInputs = [
+    unittestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "pydiscourse"
+  ];
+
+  meta = with lib; {
+    description = "A Python library for working with Discourse";
+    homepage = "https://github.com/pydiscourse/pydiscourse";
+    changelog = "https://github.com/pydiscourse/pydiscourse/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ Dettorer ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pydrawise/default.nix b/nixpkgs/pkgs/development/python-modules/pydrawise/default.nix
new file mode 100644
index 000000000000..4adda6c53ccc
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pydrawise/default.nix
@@ -0,0 +1,65 @@
+{ lib
+, aiohttp
+, aioresponses
+, apischema
+, buildPythonPackage
+, fetchFromGitHub
+, freezegun
+, gql
+, graphql-core
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, requests
+, setuptools
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+  pname = "pydrawise";
+  version = "2023.8.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.10";
+
+  src = fetchFromGitHub {
+    owner = "dknowles2";
+    repo = "pydrawise";
+    rev = "refs/tags/${version}";
+    hash = "sha256-cnQJ0enDgOB66rEZePmfTImFrPNMiXfggATM6hsL+ag=";
+  };
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+    apischema
+    gql
+    graphql-core
+    requests
+  ];
+
+  nativeCheckInputs = [
+    aioresponses
+    freezegun
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "pydrawise"
+  ];
+
+  meta = with lib; {
+    description = "Library for interacting with Hydrawise sprinkler controllers through the GraphQL API";
+    homepage = "https://github.com/dknowles2/pydrawise";
+    changelog = "https://github.com/dknowles2/pydrawise/releases/tag/${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyduotecno/default.nix b/nixpkgs/pkgs/development/python-modules/pyduotecno/default.nix
index a8d7dbb16c5d..6c1db830955a 100644
--- a/nixpkgs/pkgs/development/python-modules/pyduotecno/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyduotecno/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "pyduotecno";
-  version = "2023.8.3";
+  version = "2023.8.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "Cereal2nd";
     repo = "pyDuotecno";
     rev = "refs/tags/${version}";
-    hash = "sha256-zqaW6iQe982BgxaxeeRFTJ/a2nySGoSW4sxKmNxbKQc=";
+    hash = "sha256-VDDDG/D21yumWmcTC0mwXoGItB7OTdVCcjo01W1YZXY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pygobject-stubs/default.nix b/nixpkgs/pkgs/development/python-modules/pygobject-stubs/default.nix
new file mode 100644
index 000000000000..77ec68ea2884
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pygobject-stubs/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, black
+, codespell
+, isort
+, mypy
+, pre-commit
+, pygobject3
+}:
+
+buildPythonPackage rec {
+  pname = "pygobject-stubs";
+  version = "2.8.0";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "pygobject";
+    repo = "pygobject-stubs";
+    rev = "v${version}";
+    hash = "sha256-8TB8eqXPhvoKtyQ8+hnCQnH4NwO2WC1NYAxmVj+FCvg=";
+  };
+
+  nativeBuildInputs = [
+    setuptools
+  ];
+
+  # This package does not include any tests.
+  doCheck = false;
+
+  meta = with lib; {
+    description = "PEP 561 Typing Stubs for PyGObject";
+    homepage = "https://github.com/pygobject/pygobject-stubs";
+    changelog = "https://github.com/pygobject/pygobject-stubs/blob/${src.rev}/CHANGELOG.md";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ hacker1024 ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pyhanko-certvalidator/default.nix b/nixpkgs/pkgs/development/python-modules/pyhanko-certvalidator/default.nix
index 5018f8f924a5..5e83dc793ca5 100644
--- a/nixpkgs/pkgs/development/python-modules/pyhanko-certvalidator/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyhanko-certvalidator/default.nix
@@ -5,7 +5,6 @@
 , cryptography
 , fetchFromGitHub
 , freezegun
-, openssl
 , oscrypto
 , pytest-asyncio
 , pytestCheckHook
@@ -29,6 +28,11 @@ buildPythonPackage rec {
     hash = "sha256-q2YxncyMHmbRmcoLb68huK02CYiKqF2CFRl8vkUfxg4=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace ', "pytest-runner",' ""
+  '';
+
   nativeBuildInputs = [
     setuptools
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyhepmc/default.nix b/nixpkgs/pkgs/development/python-modules/pyhepmc/default.nix
new file mode 100644
index 000000000000..7e59dbf9b112
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pyhepmc/default.nix
@@ -0,0 +1,69 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, cmake
+, setuptools
+, setuptools-scm
+, numpy
+, pybind11
+, wheel
+, pytestCheckHook
+, pythonOlder
+, graphviz
+}:
+
+buildPythonPackage rec {
+  pname = "pyhepmc";
+  version = "2.12.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "scikit-hep";
+    repo = pname;
+    rev = "refs/tags/v${version}";
+    hash = "sha256-po1ad02dpY69RRhaRApskH6tdOaSIsCl5PgpjsAzyKo=";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    cmake
+    setuptools
+    setuptools-scm
+    wheel
+  ];
+
+  buildInputs = [
+    pybind11
+  ];
+
+  propagatedBuildInputs = [
+    numpy
+  ];
+
+  dontUseCmakeConfigure = true;
+
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  CMAKE_ARGS = [ "-DEXTERNAL_PYBIND11=ON" ];
+
+  preBuild = ''
+    export CMAKE_BUILD_PARALLEL_LEVEL="$NIX_BUILD_CORES"
+  '';
+
+  nativeCheckInputs = [
+    graphviz
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "pyhepmc" ];
+
+  meta = with lib; {
+    description = "Easy-to-use Python bindings for HepMC3";
+    homepage = "https://github.com/scikit-hep/pyhepmc";
+    changelog = "https://github.com/scikit-hep/pyhepmc/releases/tag/v${version}";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ veprbl ];
+  };
+}
+
diff --git a/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix b/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix
index 1747fc677398..dbf6ab12b44e 100644
--- a/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyinsteon/default.nix
@@ -4,6 +4,7 @@
 , async-generator
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pypubsub
 , pyserial
 , pyserial-asyncio
@@ -11,24 +12,35 @@
 , pythonOlder
 , setuptools
 , voluptuous
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "pyinsteon";
-  version = "1.4.3";
+  version = "1.5.0";
   format = "pyproject";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-KKF+XYQgdmLbbicyMFyZBG4ol69xAWCF2W/r15gH2Mo=";
+    hash = "sha256-REm0E7+otqDypVslB5heHEaWA+q3Nh1O96gxFeCC3As=";
   };
 
+  patches = [
+    # https://github.com/pyinsteon/pyinsteon/pull/361
+    (fetchpatch {
+      name = "relax-setuptools-dependency.patch";
+      url = "https://github.com/pyinsteon/pyinsteon/commit/676bc5fff11b73a4c3fd189a6ac6d3de9ca21ae0.patch";
+      hash = "sha256-kTu1+IwDrcdqelyK/vfhxw8MQBis5I1jag7YTytKQhs=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
@@ -57,6 +69,7 @@ buildPythonPackage rec {
       2413U, 2412S, 2448A7 and Hub models 2242 and 2245.
     '';
     homepage = "https://github.com/pyinsteon/pyinsteon";
+    changelog = "https://github.com/pyinsteon/pyinsteon/releases/tag/${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix b/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix
index 48cd93608e98..392595fbc082 100644
--- a/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyiqvia/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pyiqvia";
-  version = "2022.10.0";
+  version = "2023.08.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-4xoK/SwpcsjIpGUertWoSlRsKIpgpV1XmuIzDJcZMZg=";
+    hash = "sha256-vPcb0mwREQri9FuYhWXihWSYnZ2ywBVujPMaNThTbVI=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix b/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix
index 69e55805993d..2b482295e422 100644
--- a/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pykeepass/default.nix
@@ -1,12 +1,12 @@
 { lib, fetchFromGitHub, buildPythonPackage
 , lxml, pycryptodomex, construct
-, argon2-cffi, python-dateutil, future
+, argon2-cffi, python-dateutil
 , python
 }:
 
 buildPythonPackage rec {
   pname   = "pykeepass";
-  version = "4.0.5";
+  version = "4.0.6";
 
   format = "setuptools";
 
@@ -14,16 +14,12 @@ buildPythonPackage rec {
     owner = "libkeepass";
     repo = "pykeepass";
     rev = "v${version}";
-    hash = "sha256-IdILcIhrxcTDddoxiK257II0V7ctVb1CTLfTPmuwjTQ=";
+    hash = "sha256-832cTVzI/MFdwiw6xWzRG35z3iwqb5Qpf6W6XYBIFWs=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py --replace "==" ">="
-  '';
-
   propagatedBuildInputs = [
     lxml pycryptodomex construct
-    argon2-cffi python-dateutil future
+    argon2-cffi python-dateutil
   ];
 
   propagatedNativeBuildInputs = [ argon2-cffi ];
diff --git a/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix b/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix
index eb6a93bc4a7a..00d69542c897 100644
--- a/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pylitterbot/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "pylitterbot";
-  version = "2023.4.5";
+  version = "2023.4.8";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "natekspencer";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-e3k4L/lY8yszqYmJCaZghtv1nrmTi+WyWuzYuHSXM08=";
+    hash = "sha256-74EKgHocrEi37bh4WBoYyLKF1XYrwxT7e2oo3igTWms=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix b/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
index c25d11eb1180..374f7d26c9d0 100644
--- a/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymavlink/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pymavlink";
-  version = "2.4.39";
+  version = "2.4.40";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-rS1EZGGAcWEi7MK565oii+KUaqACruLrWXNcB/aXPek=";
+    hash = "sha256-PWpVKtNEof/54MgRNhrJ2LuCAc9qrK1yJNUW+gN8yzA=";
   };
 
   propagatedBuildInputs = [ future lxml ];
diff --git a/nixpkgs/pkgs/development/python-modules/pymdown-extensions/default.nix b/nixpkgs/pkgs/development/python-modules/pymdown-extensions/default.nix
index 05da3476ea61..1f4bcb1cce29 100644
--- a/nixpkgs/pkgs/development/python-modules/pymdown-extensions/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymdown-extensions/default.nix
@@ -6,6 +6,12 @@
 , markdown
 , pyyaml
 , pygments
+
+# for passthru.tests
+, mkdocstrings
+, mkdocs-material
+, mkdocs-mermaid2-plugin
+, hydrus
 }:
 
 let
@@ -38,14 +44,14 @@ let
 in
 buildPythonPackage rec {
   pname = "pymdown-extensions";
-  version = "9.9.2";
+  version = "10.1.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "facelessuser";
     repo = "pymdown-extensions";
     rev = "refs/tags/${version}";
-    hash = "sha256-ld3NuBTjDJUN4ZK+eTwmmfzcB8XCtg8xaLMECo95+Cg=";
+    hash = "sha256-KqDEmWAWXdDpQPsP9Vrced+Ozz9IZiD8rCG57hPR7Xs=";
   };
 
   nativeBuildInputs = [ hatchling ];
@@ -59,6 +65,10 @@ buildPythonPackage rec {
 
   pythonImportsCheck = map (ext: "pymdownx.${ext}") extensions;
 
+  passthru.tests = {
+    inherit mkdocstrings mkdocs-material mkdocs-mermaid2-plugin hydrus;
+  };
+
   meta = with lib; {
     description = "Extensions for Python Markdown";
     homepage = "https://facelessuser.github.io/pymdown-extensions/";
diff --git a/nixpkgs/pkgs/development/python-modules/pymilvus/default.nix b/nixpkgs/pkgs/development/python-modules/pymilvus/default.nix
index 307ee7fbfd64..a27f49c8613a 100644
--- a/nixpkgs/pkgs/development/python-modules/pymilvus/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pymilvus/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , environs
 , fetchFromGitHub
+, gitpython
 , grpcio
 , grpcio-testing
 , mmh3
@@ -13,6 +14,7 @@
 , scikit-learn
 , setuptools-scm
 , ujson
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -29,15 +31,17 @@ buildPythonPackage rec {
     hash = "sha256-wwhgO2iCzPXobyZI0narHPn2WCAB9sS1+AoLrP1Ih6Q=";
   };
 
-  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
   pythonRelaxDeps = [
     "grpcio"
   ];
 
   nativeBuildInputs = [
+    gitpython
     pythonRelaxDepsHook
     setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pynisher/default.nix b/nixpkgs/pkgs/development/python-modules/pynisher/default.nix
index 3d1c3a842208..6c7f1c0f59a2 100644
--- a/nixpkgs/pkgs/development/python-modules/pynisher/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pynisher/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pynisher";
-  version = "1.0.8";
+  version = "1.0.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-BTH34zv7OAaVKc20VASfv3QaxAt/Y14Dkd/PBo/V6vo=";
+    hash = "sha256-hlN5uUlgmcipQqmr22rB245oEXOUe5WB9jWo7MXXViE=";
   };
 
   propagatedBuildInputs = [
@@ -33,6 +33,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Module intended to limit a functions resources";
     homepage = "https://github.com/automl/pynisher";
+    changelog = "https://github.com/automl/pynisher/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ psyanticy ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pyomo/default.nix b/nixpkgs/pkgs/development/python-modules/pyomo/default.nix
index c0900b664439..9e0de7f3915d 100644
--- a/nixpkgs/pkgs/development/python-modules/pyomo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyomo/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pyomo";
-  version = "6.6.1";
+  version = "6.6.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     repo = "pyomo";
     owner = "pyomo";
     rev = "refs/tags/${version}";
-    hash = "sha256-1FSu5ejFjjNTuvaFU/UqAI/817HkrOA1Hczq8gcPQGA=";
+    hash = "sha256-hh2sfWOUp3ac75NEuTrw3YkvS7hXpzJp39v6cfrhNiQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyopengl-accelerate/default.nix b/nixpkgs/pkgs/development/python-modules/pyopengl-accelerate/default.nix
index bc0a350a31c6..f85e825f2645 100644
--- a/nixpkgs/pkgs/development/python-modules/pyopengl-accelerate/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyopengl-accelerate/default.nix
@@ -2,12 +2,16 @@
 , buildPythonPackage
 , pythonAtLeast
 , fetchPypi
+, cython_3
+, numpy
+, setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "pyopengl-accelerate";
   version = "3.1.7";
-  disabled = pythonAtLeast "3.10"; # fails to compile
+  format = "pyproject";
 
   src = fetchPypi {
     pname = "PyOpenGL-accelerate";
@@ -15,6 +19,13 @@ buildPythonPackage rec {
     hash = "sha256-KxI2ISc6k59/0uwidUHjmfm11OgV1prgvbG2xwopNoA=";
   };
 
+  nativeBuildInputs = [
+    cython_3
+    numpy
+    setuptools
+    wheel
+  ];
+
   meta = {
     description = "This set of C (Cython) extensions provides acceleration of common operations for slow points in PyOpenGL 3.x";
     homepage = "https://pyopengl.sourceforge.net/";
diff --git a/nixpkgs/pkgs/development/python-modules/pyoutbreaksnearme/default.nix b/nixpkgs/pkgs/development/python-modules/pyoutbreaksnearme/default.nix
index c0e4ea20dd26..b9335d108b2e 100644
--- a/nixpkgs/pkgs/development/python-modules/pyoutbreaksnearme/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyoutbreaksnearme/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pyoutbreaksnearme";
-  version = "2022.10.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-D7oXkKDSg+yF+j1WyG/VVY12hLU6oyhEtxLrF6IkMSA=";
+    hash = "sha256-Qrq8/dPJsJMJNXobc+Ps6Nbg819+GFuYplovGuWK0nQ=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix b/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
index a12ae560bfc5..ac7f88d48575 100644
--- a/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pypandoc/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , pandoc
 , pandocfilters
+, poetry-core
 , pythonOlder
 , substituteAll
 , texlive
@@ -11,6 +12,7 @@
 buildPythonPackage rec {
   pname = "pypandoc";
   version = "1.10";
+  format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
@@ -30,6 +32,10 @@ buildPythonPackage rec {
     ./skip-tests.patch
   ];
 
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
   nativeCheckInputs = [
     texlive.combined.scheme-small
     pandocfilters
diff --git a/nixpkgs/pkgs/development/python-modules/pypck/default.nix b/nixpkgs/pkgs/development/python-modules/pypck/default.nix
index 3cdd7fa4aceb..3eef4a86ce8f 100644
--- a/nixpkgs/pkgs/development/python-modules/pypck/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pypck/default.nix
@@ -2,11 +2,13 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pytest-asyncio
 , pytest-timeout
 , pytestCheckHook
 , pythonOlder
 , setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -23,8 +25,18 @@ buildPythonPackage rec {
     hash = "sha256-Vlt4+fRULb9mB0ceRmc7MJ50DnF9DAJPHA8iCbNVvcE=";
   };
 
+  patches = [
+    # https://github.com/alengwenus/pypck/pull/109
+    (fetchpatch {
+      name = "relax-setuptools-dependency.patch";
+      url = "https://github.com/alengwenus/pypck/commit/17023ebe8082120b1eec086842ca809ec6e9df2b.patch";
+      hash = "sha256-kTu1+IwDrcdqelyK/vfhxw8MQBis5I1jag7YTytKQhs=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyproject-api/default.nix b/nixpkgs/pkgs/development/python-modules/pyproject-api/default.nix
index 6ca6ac25a98d..6cbef5b8a77f 100644
--- a/nixpkgs/pkgs/development/python-modules/pyproject-api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyproject-api/default.nix
@@ -6,7 +6,6 @@
 # build time
 , hatchling
 , hatch-vcs
-, setuptools-scm
 
 # runtime
 , packaging
@@ -21,13 +20,14 @@
 # tests
 , pytest-mock
 , pytestCheckHook
+, setuptools
 , virtualenv
 , wheel
 }:
 
 buildPythonPackage rec {
   pname = "pyproject-api";
-  version = "1.5.0";
+  version = "1.5.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -36,7 +36,7 @@ buildPythonPackage rec {
     owner = "tox-dev";
     repo = "pyproject-api";
     rev = "refs/tags/${version}";
-    hash = "sha256-VO+huA9i7uMpCVaWHC29XlfestSu+N9vWWHteY21uqs=";
+    hash = "sha256-HX+5BypfEOfQ3vg3vha0QCVrEarjMu/Q8id+xgmWGfA=";
   };
 
   outputs = [
@@ -44,12 +44,11 @@ buildPythonPackage rec {
     "doc"
   ];
 
-  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
   nativeBuildInputs = [
     hatchling
     hatch-vcs
-    setuptools-scm
 
     # docs
     sphinxHook
@@ -66,6 +65,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [
     pytest-mock
     pytestCheckHook
+    setuptools
     virtualenv
     wheel
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyproject-hooks/default.nix b/nixpkgs/pkgs/development/python-modules/pyproject-hooks/default.nix
index d751160b54d8..3624b5f02edb 100644
--- a/nixpkgs/pkgs/development/python-modules/pyproject-hooks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyproject-hooks/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , flit-core
+, pyproject-hooks
 , pytestCheckHook
 , pythonOlder
 , setuptools
@@ -30,17 +31,33 @@ buildPythonPackage rec {
     tomli
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-    setuptools
-    testpath
-  ];
+  # We need to disable tests because this package is part of the bootstrap chain
+  # and its test dependencies cannot be built yet when this is being built.
+  doCheck = false;
 
-  disabledTests = [
-    # fail to import setuptools
-    "test_setup_py"
-    "test_issue_104"
-  ];
+  passthru.tests = {
+    pytest = buildPythonPackage {
+      pname = "${pname}-pytest";
+      inherit version;
+      format = "other";
+
+      dontBuild = true;
+      dontInstall = true;
+
+      nativeCheckInputs = [
+        pyproject-hooks
+        pytestCheckHook
+        setuptools
+        testpath
+      ];
+
+      disabledTests = [
+        # fail to import setuptools
+        "test_setup_py"
+        "test_issue_104"
+      ];
+    };
+  };
 
   pythonImportsCheck = [
     "pyproject_hooks"
diff --git a/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix b/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix
index 0227aa102331..345b5aa13a1e 100644
--- a/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyqt-builder/default.nix
@@ -1,15 +1,28 @@
-{ lib, fetchPypi, buildPythonPackage, packaging, sip }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, packaging
+, setuptools
+, sip
+, wheel
+}:
 
 buildPythonPackage rec {
   pname = "pyqt-builder";
-  version = "1.14.1";
+  version = "1.15.2";
+  format = "pyproject";
 
   src = fetchPypi {
     pname = "PyQt-builder";
     inherit version;
-    hash = "sha256-g7w+MAr/i0FAWAS2qcKRM4mrWcSK2fDLhYSm73O8pQI=";
+    hash = "sha256-dGz+g8A+v/RFjUeKHAZxR5Dvk+RY7NWii8KDe6yI63Q=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+    wheel
+  ];
+
   propagatedBuildInputs = [ packaging sip ];
 
   pythonImportsCheck = [ "pyqtbuild" ];
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix
index 2252d619d030..3fdfd2bfdd6d 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-backend-opensearch";
-  version = "1.0.0";
+  version = "1.0.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-backend-opensearch";
     rev = "refs/tags/v${version}";
-    hash = "sha256-erqKAtTNMQQy/zUkpOd0LoQT2MY2mgz5yGuSQJ0QTjI=";
+    hash = "sha256-g3kGaNq07yMu3mnRDeZB3Ck8wwzK3HcOIzkl36cNOs8=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix
index 7fcd0092a7d4..bf939afd646c 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-backend-splunk/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-backend-splunk";
-  version = "1.0.2";
+  version = "1.0.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-backend-splunk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-SWD3Jw1wehWLvWkLA7rotweExYCrabq7men22D0zN5w=";
+    hash = "sha256-ZDRHCzNLwBx8cugNVSkk7lZhE7MzariX0OS4pHv0f1s=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix
index d438078e3cff..7b16c695e97f 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-crowdstrike/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-pipeline-crowdstrike";
-  version = "1.0.0";
+  version = "1.0.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-pipeline-crowdstrike";
     rev = "refs/tags/v${version}";
-    hash = "sha256-KHHs39RGksE7Rww8nHHo73+WOUzZaNiD4sZMhBPqqYQ=";
+    hash = "sha256-koXoBb3iyODQyjOmXSeEvVhYtrxpQtVb2HVqYBFkKrs=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix
index ccb8e6245e33..9b02a38cb18b 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-sysmon/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-pipeline-sysmon";
-  version = "1.0.2";
+  version = "1.0.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-pipeline-sysmon";
     rev = "refs/tags/v${version}";
-    hash = "sha256-W3Osv0RApm6sCVdsLXUB79H3g62yUID4dtBi5Ywk5NY=";
+    hash = "sha256-5CDwevzD6R1nIcID6C5PV+i6pwY2CLakRC6NUXtmPs8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-windows/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-windows/default.nix
index 4a05c5067e2a..b6f47d9f4a44 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-windows/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma-pipeline-windows/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-pipeline-windows";
-  version = "1.1.0";
+  version = "1.1.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-pipeline-windows";
     rev = "refs/tags/v${version}";
-    hash = "sha256-jXUTGt/kbw6XfxA7A+t9km5GdltV1VRBTUf4lw1AwO4=";
+    hash = "sha256-279+nP5IeZiIjKNhJ2adbcJSDzcu7yqIB5JNFK5CPF0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysigma/default.nix b/nixpkgs/pkgs/development/python-modules/pysigma/default.nix
index c85399eefa24..6ea53e7dadd8 100644
--- a/nixpkgs/pkgs/development/python-modules/pysigma/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysigma/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , fetchpatch
+, jinja2
 , packaging
 , poetry-core
 , pyparsing
@@ -14,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma";
-  version = "0.9.11";
+  version = "0.10.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -23,19 +24,20 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lbpx5THSegZK09jREH15RpokmdfOng2vX4tClsc/x/A=";
+    hash = "sha256-pEw0CmQYwZmfpN1mAv04eeOBTVX6JfW3aKhfofZaKYo=";
   };
 
+  pythonRelaxDeps = [
+    "packaging"
+  ];
+
   nativeBuildInputs = [
     poetry-core
     pythonRelaxDepsHook
   ];
 
-  pythonRelaxDeps = [
-    "packaging"
-  ];
-
   propagatedBuildInputs = [
+    jinja2
     packaging
     pyparsing
     pyyaml
diff --git a/nixpkgs/pkgs/development/python-modules/pysimplesoap/default.nix b/nixpkgs/pkgs/development/python-modules/pysimplesoap/default.nix
new file mode 100644
index 000000000000..eecf54425380
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pysimplesoap/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, fetchDebianPatch
+, fetchPypi
+, buildPythonPackage
+, m2crypto
+}:
+
+buildPythonPackage rec {
+  pname = "pysimplesoap";
+  # Unfortunately, the latest stable release is broken on Python 3.
+  version = "1.16.2";
+
+  src = fetchPypi {
+    pname = "PySimpleSOAP";
+    inherit version;
+    hash = "sha256-sbv00NCt/5tlIZfWGqG3ZzGtYYhJ4n0o/lyyUJFtZ+E=";
+  };
+
+  propagatedBuildInputs = [
+    m2crypto
+  ];
+
+  patches = map (args: fetchDebianPatch ({
+    inherit pname version;
+    debianRevision = "5";
+  } // args)) [
+    # Merged upstream: f5f96210e1483f81cb5c582a6619e3ec4b473027
+    { patch = "Add-quotes-to-SOAPAction-header-in-SoapClient";
+      hash = "sha256-xA8Wnrpr31H8wy3zHSNfezFNjUJt1HbSXn3qUMzeKc0="; }
+    # Merged upstream: ad03a21cafab982eed321553c4bfcda1755182eb
+    { patch = "fix-httplib2-version-check";
+      hash = "sha256-zUeF3v0N/eMyRVRH3tQLfuUfMKOD/B/aqEwFh/7HxH4="; }
+    { patch = "reorder-type-check-to-avoid-a-TypeError";
+      hash = "sha256-2p5Cqvh0SPfJ8B38wb/xq7jWGYgpI9pavA6qkMUb6hA="; }
+    # Merged upstream: 033e5899e131a2c1bdf7db5852f816f42aac9227
+    { patch = "Support-integer-values-in-maxOccurs-attribute";
+      hash = "sha256-IZ0DP7io+ihcnB5547cR53FAdnpRLR6z4J5KsNrkfaI="; }
+    { patch = "PR204";
+      hash = "sha256-JlxeTnKDFxvEMFBthZsaYRbNOoBvLJhBnXCRoiL/nVw="; }
+  ] ++ [ ./stringIO.patch ];
+
+  meta = with lib; {
+    description = "Python simple and lightweight SOAP Library";
+    homepage = "https://github.com/pysimplesoap/pysimplesoap";
+    license = licenses.lgpl3Plus;
+
+    # I don't directly use this, only needed it as a dependency of debianbts
+    #  so co-maintainers would be welcome.
+    maintainers = [ maintainers.nicoo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/pysimplesoap/stringIO.patch b/nixpkgs/pkgs/development/python-modules/pysimplesoap/stringIO.patch
new file mode 100644
index 000000000000..8ecad11b9a74
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/pysimplesoap/stringIO.patch
@@ -0,0 +1,31 @@
+diff --git i/pysimplesoap/c14n.py w/pysimplesoap/c14n.py
+index 5749e49..297592e 100644
+--- i/pysimplesoap/c14n.py
++++ w/pysimplesoap/c14n.py
+@@ -55,11 +55,8 @@ except:
+     class XMLNS:
+         BASE = "http://www.w3.org/2000/xmlns/"
+         XML = "http://www.w3.org/XML/1998/namespace"
+-try:
+-    import cStringIO
+-    StringIO = cStringIO
+-except ImportError:
+-    import StringIO
++
++from io import StringIO
+ 
+ _attrs = lambda E: (E.attributes and E.attributes.values()) or []
+ _children = lambda E: E.childNodes or []
+diff --git i/pysimplesoap/xmlsec.py w/pysimplesoap/xmlsec.py
+index 2f96df7..053149f 100644
+--- i/pysimplesoap/xmlsec.py
++++ w/pysimplesoap/xmlsec.py
+@@ -15,7 +15,7 @@ from __future__ import print_function
+ import base64
+ import hashlib
+ import os
+-from cStringIO import StringIO
++from io import StringIO
+ from M2Crypto import BIO, EVP, RSA, X509, m2
+ 
+ # if lxml is not installed, use c14n.py native implementation
diff --git a/nixpkgs/pkgs/development/python-modules/pyskyqremote/default.nix b/nixpkgs/pkgs/development/python-modules/pyskyqremote/default.nix
index aa9bb6732fb1..27be3381ae4f 100644
--- a/nixpkgs/pkgs/development/python-modules/pyskyqremote/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyskyqremote/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pyskyqremote";
-  version = "0.3.25";
+  version = "0.3.26";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "RogerSelwyn";
     repo = "skyq_remote";
     rev = "refs/tags/${version}";
-    hash = "sha256-yDeGY5BFj0DKqqK+CzrIxqLa7G5C6Le+GIcFHwtJK9E=";
+    hash = "sha256-aMgUwgKHgR+NQvRxiUV7GaXehjDIlJJJHwSmHDmzK08=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyslim/default.nix b/nixpkgs/pkgs/development/python-modules/pyslim/default.nix
index fcb53da4a4f3..f21dc7b354e3 100644
--- a/nixpkgs/pkgs/development/python-modules/pyslim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyslim/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "pyslim";
-  version = "1.0.3";
+  version = "1.0.4";
   format = "pyproject";
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-BRfv5AcdRpnvk7zGeYYWweh+foFEOSZjz3pTjX8KOnA=";
+    hash = "sha256-valAhPEVZNv/IYe85a88SGE+2/9O1omvBywz/HeeRco=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pysnooz/default.nix b/nixpkgs/pkgs/development/python-modules/pysnooz/default.nix
index 24868e7a6b62..dd8d6ea4fcde 100644
--- a/nixpkgs/pkgs/development/python-modules/pysnooz/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pysnooz/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "pysnooz";
-  version = "0.8.5";
+  version = "0.8.6";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -25,13 +25,14 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "AustinBrunkhorst";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-X7RjI4KytJI9raHAJHLygV3J4zHKuHk8Kq+3JfktPeg=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-hJwIObiuFEAVhgZXYB9VCeAlewBBnk0oMkP83MUCpyU=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace 'transitions = "^0.8.11"' 'transitions = ">0.8.11"' \
+      --replace 'transitions = "^0.8.11"' 'transitions = ">=0.8.11"' \
+      --replace 'Events = "^0.4"' 'Events = ">=0.4"' \
       --replace " --cov=pysnooz --cov-report=term-missing:skip-covered" ""
   '';
 
@@ -62,6 +63,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Library to control SNOOZ white noise machines";
     homepage = "https://github.com/AustinBrunkhorst/pysnooz";
+    changelog = "https://github.com/AustinBrunkhorst/pysnooz/blob/v${version}/CHANGELOG.md";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/pyssim/default.nix b/nixpkgs/pkgs/development/python-modules/pyssim/default.nix
index 6b32660ad02d..b69bf47c96d7 100644
--- a/nixpkgs/pkgs/development/python-modules/pyssim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyssim/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, numpy, scipy, pillow }:
+{ lib, buildPythonPackage, fetchFromGitHub, numpy, scipy, pillow, fetchpatch }:
 
 buildPythonPackage rec {
   pname = "pyssim";
@@ -14,6 +14,18 @@ buildPythonPackage rec {
     sha256 = "sha256-VvxQTvDTDms6Ccyclbf9P0HEQksl5atPPzHuH8yXTmc=";
   };
 
+  patches = [
+    # "Replace Image.ANTIALIAS with Image.LANCZOS"
+    # Image.ANTIALIAS has been removed in Pillow 10.0.0,
+    # the version currently in nixpkgs,
+    # and Image.LANCZOS is a drop-in since Pillow 2.7.0.
+    # https://github.com/jterrace/pyssim/pull/45
+    (fetchpatch {
+      url = "https://github.com/jterrace/pyssim/commit/db4296c12ca9c027eb9cd61b52195a78dfcc6711.patch";
+      hash = "sha256-wNp47EFtjXv6jIFX25IErXg83ksmGRNFKNeMFS+tP6s=";
+    })
+  ];
+
   # Tests are copied from .travis.yml
   checkPhase = ''
     $out/bin/pyssim test-images/test1-1.png test-images/test1-1.png | grep 1
diff --git a/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix b/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix
index f952cb475eb9..5ea2ebb98405 100644
--- a/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyswitchbot/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pyswitchbot";
-  version = "0.39.0";
+  version = "0.39.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "Danielhiversen";
     repo = "pySwitchbot";
     rev = "refs/tags/${version}";
-    hash = "sha256-CswgfEmKaQvhDXizpcu6d8JMYtJSgNQ3L4+63ee58eE=";
+    hash = "sha256-wrn57mluIvUYBXOxw4NTFuq0UuOQwtC/WRWhfQpyRTA=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytablewriter/default.nix b/nixpkgs/pkgs/development/python-modules/pytablewriter/default.nix
index 07461e06a298..86af2ae0846f 100644
--- a/nixpkgs/pkgs/development/python-modules/pytablewriter/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytablewriter/default.nix
@@ -1,31 +1,44 @@
-{ buildPythonPackage
-, fetchFromGitHub
-, lib
+{ lib
+, buildPythonPackage
 , dataproperty
+, dominate
+, elasticsearch
+, fetchFromGitHub
+, loguru
 , mbstrdecoder
+, pandas
 , pathvalidate
+, pytestCheckHook
+, pythonOlder
+, pyyaml
 , setuptools
+, simplejson
 , tabledata
 , tcolorpy
-, typepy
-, pytestCheckHook
-, pyyaml
 , toml
-, elasticsearch
-, dominate
+, typepy
+, xlsxwriter
+, xlwt
 }:
 
 buildPythonPackage rec {
   pname = "pytablewriter";
-  version = "0.64.2";
+  version = "1.0.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "thombashi";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-+IOHnmdd9g3SoHyITJJtbJ0/SAAmwWmwX5XeqsO34EM=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-VDx7/kKRBho4oWvUXYe5K9CC4vUCDs91G05Wlpa47OE=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     dataproperty
     mbstrdecoder
@@ -35,23 +48,82 @@ buildPythonPackage rec {
     typepy
   ];
 
-  checkInputs = [ pyyaml toml elasticsearch dominate ];
-  nativeCheckInputs = [ pytestCheckHook ];
-  # Circular dependency
+  passthru.optional-dependencies = {
+    all = [
+      dominate
+      elasticsearch
+      loguru
+      pandas
+      # pytablereader
+      pyyaml
+      simplejson
+      toml
+      xlsxwriter
+      xlwt
+    ];
+    es = [
+      elasticsearch
+    ];
+    es8 = [
+      elasticsearch
+    ];
+    excel = [
+      xlwt
+      xlsxwriter
+    ];
+    html = [
+      dominate
+    ];
+    logging = [
+      loguru
+    ];
+    # from = [
+    #   pytablereader
+    # ];
+    pandas = [
+      pandas
+    ];
+    # sqlite = [
+    #   simplesqlite
+    # ];
+    # theme = [
+    #   pytablewriter-altrow-theme
+    # ];
+    toml = [
+      toml
+    ];
+    yaml = [
+      pyyaml
+    ];
+  };
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+
+  pythonImportsCheck = [
+    "pathvalidate"
+  ];
+
   disabledTests = [
+    # Circular dependency
     "test_normal_from_file"
     "test_normal_from_text"
     "test_normal_clear_theme"
+    # Test compares CLI output
+    "test_normal"
   ];
+
   disabledTestPaths = [
     "test/writer/binary/test_excel_writer.py"
     "test/writer/binary/test_sqlite_writer.py"
   ];
 
   meta = with lib; {
-    homepage = "https://github.com/thombashi/pytablewriter";
     description = "A library to write a table in various formats";
-    maintainers = with maintainers; [ genericnerdyusername ];
+    homepage = "https://github.com/thombashi/pytablewriter";
+    changelog = "https://github.com/thombashi/pytablewriter/releases/tag/v${version}";
     license = licenses.mit;
+    maintainers = with maintainers; [ genericnerdyusername ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytado/default.nix b/nixpkgs/pkgs/development/python-modules/pytado/default.nix
index ddd618d6d14f..8575fceadc4f 100644
--- a/nixpkgs/pkgs/development/python-modules/pytado/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytado/default.nix
@@ -3,18 +3,21 @@
 , fetchFromGitHub
 , pytestCheckHook
 , requests
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "pytado";
-  version = "0.16.0";
+  version = "0.17.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "wmalgadey";
     repo = "PyTado";
-    # Upstream hasn't tagged 0.13.0 yet
     rev = "refs/tags/${version}";
-    sha256 = "sha256-tpWr+VlkJ9svN9XtBIDEAos4uxYCl6njvUBPIJG++Yg=";
+    sha256 = "sha256-w1qtSEpnZCs7+M/0Gywz9AeMxUzz2csHKm9SxBKzmz4=";
   };
 
   propagatedBuildInputs = [
@@ -32,7 +35,8 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python binding for Tado web API";
     homepage = "https://github.com/wmalgadey/PyTado";
-    license = licenses.gpl3;
+    changelog = "https://github.com/wmalgadey/PyTado/releases/tag/${version}";
+    license = licenses.gpl3Only;
     maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-playwright/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-playwright/default.nix
index f2a8d4bf1dc8..53766a3134a5 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-playwright/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-playwright/default.nix
@@ -14,16 +14,16 @@
 
 buildPythonPackage rec {
   pname = "pytest-playwright";
-  version = "0.3.3";
+  version = "0.4.2";
   format = "setuptools";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = "playwright-pytest";
     rev = "refs/tags/v${version}";
-    hash = "sha256-2xdRW8Q10x6mtNs/EdAsgrOtVmvLAOdbIGXfyeB8ZAg=";
+    hash = "sha256-yYFzaIPYOsuvS8bGcuwQQNS/CtvGUe1XQdORmfEJQmU=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-recording/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-recording/default.nix
index 87c0e8d33a02..7a53cbbba882 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-recording/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-recording/default.nix
@@ -5,8 +5,8 @@
 # install dependencies
 , pytest
 , vcrpy
-, attrs
 # test dependencies
+, hatchling
 , pytestCheckHook
 , pytest-httpbin
 , pytest-mock
@@ -15,22 +15,23 @@
 
 buildPythonPackage rec {
   pname = "pytest-recording";
-  version = "0.12.2";
+  version = "0.13.0";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "kiwicom";
     repo = "pytest-recording";
     rev = "v${version}";
-    hash = "sha256-nivwxaW8AIrBtPkzPJYfxlPxWn2NuYcaMry/IrBnnl0=";
+    hash = "sha256-SCHdzii6GYVWVY7MW/IW6CNZMuu5h/jXEj49P0jvhoE=";
   };
 
   buildInputs = [
+    hatchling
     pytest
   ];
 
   propagatedBuildInputs = [
     vcrpy
-    attrs
   ];
 
   __darwinAllowLocalNetworking = true;
diff --git a/nixpkgs/pkgs/development/python-modules/pytest-testinfra/default.nix b/nixpkgs/pkgs/development/python-modules/pytest-testinfra/default.nix
index fe663c3f265b..df1ae78c8612 100644
--- a/nixpkgs/pkgs/development/python-modules/pytest-testinfra/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytest-testinfra/default.nix
@@ -13,11 +13,11 @@
 
 buildPythonPackage rec {
   pname = "pytest-testinfra";
-  version = "8.1.0";
+  version = "9.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-m0CCi1j7esK/8pzBRlk0rfQ08Q3VoQj2BTXe5SZgpj0=";
+    hash = "sha256-UxGzaeBUaSD85GTDv5RbVevnWhJ1aPbWFelLiJE0AUk=";
   };
 
   nativeBuildInputs = [
@@ -34,7 +34,7 @@ buildPythonPackage rec {
   ];
 
   # markers don't get added when docker is not available (leads to warnings):
-  # https://github.com/pytest-dev/pytest-testinfra/blob/8.1.0/test/conftest.py#L228
+  # https://github.com/pytest-dev/pytest-testinfra/blob/9.0.0/test/conftest.py#L223
   preCheck = ''
     export HOME=$(mktemp -d)
     sed -i '54imarkers = \
diff --git a/nixpkgs/pkgs/development/python-modules/python-box/default.nix b/nixpkgs/pkgs/development/python-modules/python-box/default.nix
index cc66888ad4e7..3145debc745c 100644
--- a/nixpkgs/pkgs/development/python-modules/python-box/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-box/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, cython_3
 , fetchFromGitHub
 , msgpack
 , poetry-core
@@ -15,19 +16,20 @@
 
 buildPythonPackage rec {
   pname = "python-box";
-  version = "7.0.1";
+  version = "7.1.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "cdgriffith";
     repo = "Box";
     rev = "refs/tags/${version}";
-    hash = "sha256-Ddt8/S6HzmOt1kvzRzed3+TbOacw6RG9nd2UNn+ELB4=";
+    hash = "sha256-oxT2y3um6BZ3bwYa+LWBoTgU+9b+V7XtQdCdECU3Gu0=";
   };
 
   nativeBuildInputs = [
+    cython_3
     setuptools
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/python-bsblan/default.nix b/nixpkgs/pkgs/development/python-modules/python-bsblan/default.nix
index 647906511a17..10db66e4bb22 100644
--- a/nixpkgs/pkgs/development/python-modules/python-bsblan/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-bsblan/default.nix
@@ -1,6 +1,7 @@
 { lib
 , aiohttp
 , aresponses
+, backoff
 , buildPythonPackage
 , fetchFromGitHub
 , packaging
@@ -15,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "python-bsblan";
-  version = "0.5.12";
+  version = "0.5.15";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -24,7 +25,7 @@ buildPythonPackage rec {
     owner = "liudger";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-ftu79SnVa7wOMx/RiRBDPmmG7Mmw84r30G4yDzBea2k=";
+    hash = "sha256-PNgv3QXl3iyDX0KOn1egQrt6D64i3eCUyCPtXe94y0U=";
   };
 
   postPatch = ''
@@ -41,6 +42,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     aiohttp
+    backoff
     packaging
     pydantic
     yarl
diff --git a/nixpkgs/pkgs/development/python-modules/python-creole/default.nix b/nixpkgs/pkgs/development/python-modules/python-creole/default.nix
index a02a08e2b44b..52d13d452aff 100644
--- a/nixpkgs/pkgs/development/python-modules/python-creole/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-creole/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , runtimeShell
 
 # build
@@ -27,14 +28,20 @@ buildPythonPackage rec {
     hash = "sha256-8pXOnLNjhIv0d+BqjW8wlb6BT6CmFHSsxn5wLOv3LBQ=";
   };
 
+  patches = [
+    # https://github.com/jedie/python-creole/pull/77
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core.patch";
+      url = "https://github.com/jedie/python-creole/commit/bfc46730ab4a189f3142246cead8d26005a28671.patch";
+      hash = "sha256-WtoEQyu/154Cfj6eSnNA+t37+o7Ij328QGMKxwcLg5k=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
   ];
 
   postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "poetry.masonry.api" "poetry.core.masonry.api"
-
     substituteInPlace Makefile \
       --replace "/bin/bash" "${runtimeShell}"
 
diff --git a/nixpkgs/pkgs/development/python-modules/python-engineio/default.nix b/nixpkgs/pkgs/development/python-modules/python-engineio/default.nix
index 4c757735ada5..9a0269c983f0 100644
--- a/nixpkgs/pkgs/development/python-modules/python-engineio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-engineio/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "python-engineio";
-  version = "4.5.1";
+  version = "4.6.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "miguelgrinberg";
     repo = "python-engineio";
     rev = "refs/tags/v${version}";
-    hash = "sha256-XTr5potc3t9TxHEqMydRsAzslmLnrzsGqDaM8qdKfp8=";
+    hash = "sha256-za2JY5Gu9MEqi3W1zxcuwYiJ5XLc43ig6Hdx/4JwDbY=";
   };
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-homewizard-energy/default.nix b/nixpkgs/pkgs/development/python-modules/python-homewizard-energy/default.nix
index bfb53c92df41..c6b5f1ec4539 100644
--- a/nixpkgs/pkgs/development/python-modules/python-homewizard-energy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-homewizard-energy/default.nix
@@ -4,6 +4,7 @@
 , awesomeversion
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , poetry-core
 , protobuf
 , pytest-asyncio
@@ -25,6 +26,15 @@ buildPythonPackage rec {
     hash = "sha256-XTSnIL/hBL1Rsyv/tBce/WCvA3n7mZern0v3i6gTOeA=";
   };
 
+  patches = [
+    # https://github.com/DCSBL/python-homewizard-energy/pull/235
+    (fetchpatch {
+      name = "remove-setuptools-dependency.patch";
+      url = "https://github.com/DCSBL/python-homewizard-energy/commit/b006b0bc1f3d0b4a7569654a1afa90dd4cffaf18.patch";
+      hash = "sha256-WQeepxiYnBfFcQAmrc3pavBz5j1Qo0HmUcOxsK/pr50=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
   ];
@@ -34,6 +44,8 @@ buildPythonPackage rec {
     aiohttp
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [
     aresponses
     pytest-asyncio
diff --git a/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix b/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix
index 846361aa064c..e3c1b155c90b 100644
--- a/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-hosts/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "python-hosts";
-  version = "1.0.3";
+  version = "1.0.4";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-4SAXjx5pRDhv4YVUgrUttyUa5izpYqpDKiiGJc2y8V0=";
+    hash = "sha256-y7d7CuGuKYEUCjFHvWb+iDI6oDeVsTzBNPSySzxu1Zk=";
   };
 
   # win_inet_pton is required for windows support
diff --git a/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix b/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix
index 67bbaf998dbb..2dca97b7f858 100644
--- a/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-lsp-server/default.nix
@@ -4,6 +4,7 @@
 , buildPythonPackage
 , docstring-to-markdown
 , fetchFromGitHub
+, fetchpatch
 , flake8
 , flaky
 , jedi
@@ -28,6 +29,7 @@
 , ujson
 , websockets
 , whatthepatch
+, wheel
 , yapf
 }:
 
@@ -45,7 +47,14 @@ buildPythonPackage rec {
     hash = "sha256-plciPUROFileVULGBZpwUTkW2NZVHy4Nuf4+fSjd8nM=";
   };
 
-  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  patches = [
+    # https://github.com/python-lsp/python-lsp-server/pull/416
+    (fetchpatch {
+      name = "bump-jedi-upper-pin-to-0.20.patch";
+      url = "https://github.com/python-lsp/python-lsp-server/commit/f33a93afc8c3a0f16751f9e1f6601a37967fd7df.patch";
+      hash = "sha256-lBpzXxjlQp2ig0z2DRJw+jQZ5eRLIOJYjGrzfgvknDA=";
+    })
+  ];
 
   postPatch = ''
     substituteInPlace pyproject.toml \
@@ -53,6 +62,8 @@ buildPythonPackage rec {
       --replace "--cov pylsp --cov test" ""
   '';
 
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
   pythonRelaxDeps = [
     "autopep8"
     "flake8"
@@ -65,6 +76,7 @@ buildPythonPackage rec {
   nativeBuildInputs = [
     pythonRelaxDepsHook
     setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-magic/default.nix b/nixpkgs/pkgs/development/python-modules/python-magic/default.nix
index 056b466216bf..890cfb50c2cc 100644
--- a/nixpkgs/pkgs/development/python-modules/python-magic/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-magic/default.nix
@@ -29,6 +29,14 @@ buildPythonPackage rec {
       url = "https://github.com/ahupp/python-magic/commit/4ffcd59113fa26d7c2e9d5897b1eef919fd4b457.patch";
       hash = "sha256-67GpjlGiR4/os/iZ69V+ZziVLpjmid+7t+gQ2aQy9I0=";
     })
+
+    # Upstream patch to amend test suite for-5.45:
+    #   https://github.com/ahupp/python-magic/pull/290
+    (fetchpatch {
+      name = "file-5.45.patch";
+      url = "https://github.com/ahupp/python-magic/commit/3d2405ca80cd39b2a91decd26af81dcf181390a4.patch";
+      hash = "sha256-HRsnO9MGfMD9BkJdC4SrEFQ1OZEaXpwakXFLoaCPK94=";
+    })
   ];
 
   preCheck = ''
diff --git a/nixpkgs/pkgs/development/python-modules/python-matter-server/default.nix b/nixpkgs/pkgs/development/python-modules/python-matter-server/default.nix
index c04beb032f95..ccb013d14e54 100644
--- a/nixpkgs/pkgs/development/python-modules/python-matter-server/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-matter-server/default.nix
@@ -1,10 +1,12 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , pythonOlder
 
 # build
 , setuptools
+, wheel
 
 # propagates
 , aiohttp
@@ -39,8 +41,18 @@ buildPythonPackage rec {
     hash = "sha256-t++7jQreibGpJRjJawicxjFIye5X6R1dpFqiM6yvRf0=";
   };
 
+  patches = [
+    # https://github.com/home-assistant-libs/python-matter-server/pull/379
+    (fetchpatch {
+      name = "relax-setuptools-dependency.patch";
+      url = "https://github.com/home-assistant-libs/python-matter-server/commit/1bbc945634db92ea081051645b03c3d9c358fb15.patch";
+      hash = "sha256-kTu1+IwDrcdqelyK/vfhxw8MQBis5I1jag7YTytKQhs=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-otbr-api/default.nix b/nixpkgs/pkgs/development/python-modules/python-otbr-api/default.nix
index f11bb76057f5..d6137cf191e2 100644
--- a/nixpkgs/pkgs/development/python-modules/python-otbr-api/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-otbr-api/default.nix
@@ -4,10 +4,13 @@
 , buildPythonPackage
 , cryptography
 , fetchFromGitHub
+, fetchpatch
+, pytest-asyncio
 , pytestCheckHook
 , pythonOlder
 , setuptools
 , voluptuous
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -24,8 +27,18 @@ buildPythonPackage rec {
     hash = "sha256-bPN2h60ypjlKpXs1xDS7bZcGRXvatA3EdlAX/HLxxTM=";
   };
 
+  patches = [
+    # https://github.com/home-assistant-libs/python-otbr-api/pull/68
+    (fetchpatch {
+      name = "relax-setuptools-dependency.patch";
+      url = "https://github.com/home-assistant-libs/python-otbr-api/commit/37eb19c12d17ac7d040ded035d8401def872fbda.patch";
+      hash = "sha256-JGsaLQNbUfz0uK/MeGnR2XTJDs4RnTOEg7BavfDPArg=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
@@ -36,6 +49,7 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
+    pytest-asyncio
     pytestCheckHook
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/python-roborock/default.nix b/nixpkgs/pkgs/development/python-modules/python-roborock/default.nix
index c300ce9baa5b..5eb3b19afe06 100644
--- a/nixpkgs/pkgs/development/python-modules/python-roborock/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-roborock/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "python-roborock";
-  version = "0.32.3";
+  version = "0.32.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.10";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "humbertogontijo";
     repo = "python-roborock";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rKE+dgq0ax/EZ0qYkGVsnHhNxyt3F74hI2tZAaOHCqI=";
+    hash = "sha256-tZ0nyjARqXDffDOBTsGQ1iZSzzkMToUENb+NwhJ7xY4=";
   };
 
   pythonRelaxDeps = [
diff --git a/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix b/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix
index cea69bf5b14b..605d8157051c 100644
--- a/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-telegram-bot/default.nix
@@ -14,13 +14,15 @@
 , pytestCheckHook
 , pythonOlder
 , pytz
+, setuptools
+, wheel
 , tornado
 }:
 
 buildPythonPackage rec {
   pname = "python-telegram-bot";
   version = "20.4";
-  format = "setuptools";
+  format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
@@ -31,6 +33,11 @@ buildPythonPackage rec {
     hash = "sha256-owbJJZjBkMjsgfBLRl+rnePrIvQ0sUZs7rP9ie912pw=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+    wheel
+  ];
+
   propagatedBuildInputs = [
     aiolimiter
     apscheduler
diff --git a/nixpkgs/pkgs/development/python-modules/python-vagrant/default.nix b/nixpkgs/pkgs/development/python-modules/python-vagrant/default.nix
index a9d585c777da..61d780809db5 100644
--- a/nixpkgs/pkgs/development/python-modules/python-vagrant/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python-vagrant/default.nix
@@ -1,21 +1,29 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , setuptools
+, setuptools-scm
+, wheel
 }:
 
 buildPythonPackage rec {
-  version = "1.0.0";
+  version = "1.1.0";
   pname = "python-vagrant";
   format = "pyproject";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-qP6TzPL/N+zJXsL0nqdKkabOc6TbShapjdJtOXz9CeU=";
+  src = fetchFromGitHub {
+    owner = "pycontribs";
+    repo = "python-vagrant";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-apvYzH0IY6ZyUP/FiOVbGN3dXejgN7gn7Mq2tlEaTww=";
   };
 
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
   nativeBuildInputs = [
     setuptools
+    setuptools-scm
+    wheel
   ];
 
   # The tests try to connect to qemu
diff --git a/nixpkgs/pkgs/development/python-modules/python3-saml/default.nix b/nixpkgs/pkgs/development/python-modules/python3-saml/default.nix
index f3a55cfb7f56..981f963db389 100644
--- a/nixpkgs/pkgs/development/python-modules/python3-saml/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/python3-saml/default.nix
@@ -29,6 +29,9 @@ buildPythonPackage rec {
       url = "https://github.com/SAML-Toolkits/python3-saml/commit/bd65578e5a21494c89320094c61c1c77250bea33.diff";
       hash = "sha256-9Trew6R5JDjtc0NRGoklqMVDEI4IEqFOdK3ezyBU6gI=";
     })
+    # skip tests with expired test data
+    # upstream issue: https://github.com/SAML-Toolkits/python3-saml/issues/373
+    ./skip-broken-tests.patch
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/python3-saml/skip-broken-tests.patch b/nixpkgs/pkgs/development/python-modules/python3-saml/skip-broken-tests.patch
new file mode 100644
index 000000000000..ea845e7da3de
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/python3-saml/skip-broken-tests.patch
@@ -0,0 +1,28 @@
+diff --git a/tests/src/OneLogin/saml2_tests/response_test.py b/tests/src/OneLogin/saml2_tests/response_test.py
+index fbe714f..bbed3c2 100644
+--- a/tests/src/OneLogin/saml2_tests/response_test.py
++++ b/tests/src/OneLogin/saml2_tests/response_test.py
+@@ -562,6 +562,7 @@ class OneLogin_Saml2_Response_Test(unittest.TestCase):
+         response_2 = OneLogin_Saml2_Response(settings, xml_2)
+         self.assertTrue(response_2.check_one_condition())
+ 
++    @unittest.skip("test data expired")
+     def testCheckOneAuthnStatement(self):
+         """
+         Tests the check_one_authnstatement method of SamlResponse
+@@ -970,6 +971,7 @@ class OneLogin_Saml2_Response_Test(unittest.TestCase):
+         with self.assertRaisesRegex(Exception, 'Could not validate timestamp: expired. Check system clock.'):
+             response_2.is_valid(self.get_request_data(), raise_exceptions=True)
+ 
++    @unittest.skip("test data expired")
+     def testIsInValidNoStatement(self):
+         """
+         Tests the is_valid method of the OneLogin_Saml2_Response
+@@ -1080,6 +1082,7 @@ class OneLogin_Saml2_Response_Test(unittest.TestCase):
+         with self.assertRaisesRegex(Exception, 'Found an Attribute element with duplicated Name'):
+             response.get_attributes()
+ 
++    @unittest.skip("test data expired")
+     def testIsInValidDestination(self):
+         """
+         Tests the is_valid method of the OneLogin_Saml2_Response class
diff --git a/nixpkgs/pkgs/development/python-modules/pytibber/default.nix b/nixpkgs/pkgs/development/python-modules/pytibber/default.nix
index 6f782ae2139c..2701f7e64f1d 100644
--- a/nixpkgs/pkgs/development/python-modules/pytibber/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytibber/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pytibber";
-  version = "0.28.0";
+  version = "0.28.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "Danielhiversen";
     repo = "pyTibber";
     rev = "refs/tags/${version}";
-    hash = "sha256-S/arFxM+9VZECqUzPijTxclBQ6oeiOxdRXQLb+uhkfM=";
+    hash = "sha256-ZEdBV+X9Ib1JvE8nzey+er7GrQMAV79zqn8ssC+kKdU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytile/default.nix b/nixpkgs/pkgs/development/python-modules/pytile/default.nix
index 977cf15d074b..12d61c0da5eb 100644
--- a/nixpkgs/pkgs/development/python-modules/pytile/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytile/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "pytile";
-  version = "2023.04.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -21,8 +21,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "bachya";
     repo = pname;
-    rev = version;
-    hash = "sha256-SFHWhXKC7PIqanJIQyGcpM8klwxOAJPVtzk9w0i2YYA=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-wPtGofli3ZKBcAwjwjCbeYnLaSZ5lLshlBSz1/WlAcg=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/pytorch-lightning/default.nix b/nixpkgs/pkgs/development/python-modules/pytorch-lightning/default.nix
index d4067edd338e..c76b97c2374a 100644
--- a/nixpkgs/pkgs/development/python-modules/pytorch-lightning/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytorch-lightning/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "pytorch-lightning";
-  version = "2.0.6";
+  version = "2.0.7";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "Lightning-AI";
     repo = "pytorch-lightning";
     rev = "refs/tags/${version}";
-    hash = "sha256-/RfHryuIFhLn9SCg6YVn0Ley8ajcIlsDtuKNuhUFm8M=";
+    hash = "sha256-R1uX5kPRnLWqqpEYbzJp7aOSK6e5mfyQ14CkbBCDszw=";
   };
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/development/python-modules/pytrends/default.nix b/nixpkgs/pkgs/development/python-modules/pytrends/default.nix
index 84a5aed8c7ad..d52436348ad7 100644
--- a/nixpkgs/pkgs/development/python-modules/pytrends/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pytrends/default.nix
@@ -2,6 +2,8 @@
 , buildPythonPackage
 , fetchPypi
 , setuptools
+, setuptools-scm
+, wheel
 , requests
 , lxml
 , pandas
@@ -27,6 +29,8 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools
+    setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [ requests lxml pandas ];
diff --git a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
index a7c9ae9ecffe..292bd039f8d0 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvex/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "pyvex";
-  version = "9.2.65";
+  version = "9.2.66";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-iZygYN3874o9miKxp2+0KDgQKFHDX73/45FzMSeSAlg=";
+    hash = "sha256-NmOa/DH/EapcYCrpdcdn4CR9DiKuVnrDvKbnTiO3Ldc=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pyvisa-sim/default.nix b/nixpkgs/pkgs/development/python-modules/pyvisa-sim/default.nix
index 56fef67a1f9f..55d6ff6b5db6 100644
--- a/nixpkgs/pkgs/development/python-modules/pyvisa-sim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyvisa-sim/default.nix
@@ -7,6 +7,9 @@
 , stringparser
 , typing-extensions
 , pytestCheckHook
+, setuptools
+, setuptools-scm
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -19,9 +22,15 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "PyVISA-sim";
     inherit version;
-    sha256 = "sha256-vWxW941/1e58pqL/Rzq+eoZJpwsvLphgIe48SuJtohY=";
+    hash = "sha256-vWxW941/1e58pqL/Rzq+eoZJpwsvLphgIe48SuJtohY=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+    wheel
+  ];
+
   propagatedBuildInputs = [
     pyvisa
     pyyaml
diff --git a/nixpkgs/pkgs/development/python-modules/pywbem/default.nix b/nixpkgs/pkgs/development/python-modules/pywbem/default.nix
index 73376122eb1d..e13aafe71485 100644
--- a/nixpkgs/pkgs/development/python-modules/pywbem/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pywbem/default.nix
@@ -24,14 +24,14 @@
 
 buildPythonPackage rec {
   pname = "pywbem";
-  version = "1.6.1";
+  version = "1.6.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-q9vWzgi2xZfN1sdzDmtJqELZE/L2s8xitYXFjsPueUU=";
+    hash = "sha256-JugXm8F+MXa0zVdrn1p3MPhI1RvgUTdo/X8x/ZsnCpY=";
   };
 
   propagatedBuildInputs = [
@@ -67,6 +67,6 @@ buildPythonPackage rec {
     homepage = "https://pywbem.github.io";
     changelog = "https://github.com/pywbem/pywbem/blob/${version}/docs/changes.rst";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ peterhoeg ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/pyweatherflowrest/default.nix b/nixpkgs/pkgs/development/python-modules/pyweatherflowrest/default.nix
index c03a4d01b170..694f37de3974 100644
--- a/nixpkgs/pkgs/development/python-modules/pyweatherflowrest/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pyweatherflowrest/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "pyweatherflowrest";
-  version = "1.0.9";
+  version = "1.0.10";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "briis";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-LFA1GJCYFIWl7/YblRrYgAB4lbELpzhCJyjB8aCkJ/E=";
+    hash = "sha256-7eNhvpaikzdQBrzjXw67JGqoynvfmz4poruharTkuG0=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/pywemo/default.nix b/nixpkgs/pkgs/development/python-modules/pywemo/default.nix
index a2fc6c4bd279..277de7a83170 100644
--- a/nixpkgs/pkgs/development/python-modules/pywemo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/pywemo/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pywemo";
-  version = "1.2.1";
+  version = "1.3.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-6aigzwHP9iAQF4GKKQfnZl9sAbwZfOAG/xPf6ay7rGs=";
+    hash = "sha256-+AdNT7ClT8JkYLkwk+IVNWgXGS04WNtENOtqmbjv7nQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/qcodes-loop/default.nix b/nixpkgs/pkgs/development/python-modules/qcodes-loop/default.nix
index ef65af007d90..2590a557b8ce 100644
--- a/nixpkgs/pkgs/development/python-modules/qcodes-loop/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/qcodes-loop/default.nix
@@ -1,4 +1,5 @@
 { lib
+, fetchpatch
 , fetchPypi
 , pythonOlder
 , buildPythonPackage
@@ -8,7 +9,9 @@
 , matplotlib
 , numpy
 , pandas
+, setuptools
 , versioningit
+, wheel
 , xarray
 , hickle
 , ipython
@@ -24,18 +27,29 @@
 buildPythonPackage rec {
   pname = "qcodes-loop";
   version = "0.1.1";
+  format = "pyproject";
 
   disabled = pythonOlder "3.8";
-  format = "pyproject";
 
   src = fetchPypi {
     inherit version;
     pname = "qcodes_loop";
-    sha256 = "sha256-pDR0Ws8cYQifftdE9dKcSzMxmouFo4tJmQvNanm6zyM=";
+    hash = "sha256-pDR0Ws8cYQifftdE9dKcSzMxmouFo4tJmQvNanm6zyM=";
   };
 
+  patches = [
+    # https://github.com/QCoDeS/Qcodes_loop/pull/39
+    (fetchpatch {
+      name = "relax-versioningit-dependency.patch";
+      url = "https://github.com/QCoDeS/Qcodes_loop/commit/58006d3fb57344ae24dd44bceca98004617b5b57.patch";
+      hash = "sha256-mSlm/Ql8e5xPL73ifxSoVc9+U58AAcAmBkdW5P6zEsg=";
+    })
+  ];
+
   nativeBuildInputs = [
+    setuptools
     versioningit
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/quandl/default.nix b/nixpkgs/pkgs/development/python-modules/quandl/default.nix
index b70cdf4de385..5be099d98697 100644
--- a/nixpkgs/pkgs/development/python-modules/quandl/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/quandl/default.nix
@@ -29,9 +29,13 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit version;
     pname = "Quandl";
-    sha256 = "6e0b82fbc7861610b3577c5397277c4220e065eee0fed4e46cd6b6021655b64c";
+    hash = "sha256-bguC+8eGFhCzV3xTlyd8QiDgZe7g/tTkbNa2AhZVtkw=";
   };
 
+  patches = [
+    ./pandas2-datetime-removal.patch
+  ];
+
   propagatedBuildInputs = [
     pandas
     numpy
diff --git a/nixpkgs/pkgs/development/python-modules/quandl/pandas2-datetime-removal.patch b/nixpkgs/pkgs/development/python-modules/quandl/pandas2-datetime-removal.patch
new file mode 100644
index 000000000000..6e473ad4fb3c
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/quandl/pandas2-datetime-removal.patch
@@ -0,0 +1,33 @@
+diff --git a/test/test_datatable_data.py b/test/test_datatable_data.py
+index ee9ac61..0266a19 100644
+--- a/test/test_datatable_data.py
++++ b/test/test_datatable_data.py
+@@ -1,3 +1,4 @@
++import datetime
+ import re
+ import unittest
+ import httpretty
+@@ -135,7 +136,7 @@ class ListDatatableDataTest(unittest.TestCase):
+         df = results.to_pandas()
+         self.assertEqual(df.index.name, 'None')
+ 
+-    # if datatable has Date field then it should be convert to pandas datetime
++    # if datatable has Date field then it should be convert to datetime
+     @parameterized.expand(['GET', 'POST'])
+     def test_pandas_dataframe_date_field_is_datetime(self, request_method):
+         if request_method == 'POST':
+@@ -143,10 +144,10 @@ class ListDatatableDataTest(unittest.TestCase):
+         datatable = Datatable('ZACKS/FC')
+         results = Data.page(datatable, params={})
+         df = results.to_pandas()
+-        self.assertIsInstance(df['per_end_date'][0], pandas.datetime)
+-        self.assertIsInstance(df['per_end_date'][1], pandas.datetime)
+-        self.assertIsInstance(df['per_end_date'][2], pandas.datetime)
+-        self.assertIsInstance(df['per_end_date'][3], pandas.datetime)
++        self.assertIsInstance(df['per_end_date'][0], datetime.datetime)
++        self.assertIsInstance(df['per_end_date'][1], datetime.datetime)
++        self.assertIsInstance(df['per_end_date'][2], datetime.datetime)
++        self.assertIsInstance(df['per_end_date'][3], datetime.datetime)
+ 
+     @parameterized.expand(['GET', 'POST'])
+     def test_to_numpy_returns_numpy_object(self, request_method):
diff --git a/nixpkgs/pkgs/development/python-modules/radian/default.nix b/nixpkgs/pkgs/development/python-modules/radian/default.nix
index d8ffc2bff9ef..ab33203d7011 100644
--- a/nixpkgs/pkgs/development/python-modules/radian/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/radian/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "radian";
-  version = "0.6.6";
+  version = "0.6.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -27,13 +27,12 @@ buildPythonPackage rec {
     owner = "randy3k";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-zA7R9UIB0hOWev10Y4oySIKeIxTOo0V6Q3Fxe+FeHSU=";
+    hash = "sha256-MEstbQj1dOcrukgDvMwL330L9INEZcIupebrSYMOrZk=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace '"pytest-runner"' "" \
-      --replace '0.3.39,<0.4.0' '0.3.39'
+      --replace '"pytest-runner"' ""
   '';
 
   nativeBuildInputs = [
@@ -59,6 +58,8 @@ buildPythonPackage rec {
     git
   ];
 
+  makeWrapperArgs = [ "--set R_HOME ${R}/lib/R" ];
+
   preCheck = ''
     export HOME=$TMPDIR
     export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${R}/lib/R/lib
diff --git a/nixpkgs/pkgs/development/python-modules/rasterio/default.nix b/nixpkgs/pkgs/development/python-modules/rasterio/default.nix
index 7410b8029a85..02cdcbed68cd 100644
--- a/nixpkgs/pkgs/development/python-modules/rasterio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rasterio/default.nix
@@ -15,6 +15,7 @@
 , matplotlib
 , ipython
 , numpy
+, oldest-supported-numpy
 , packaging
 , pytest-randomly
 , pytestCheckHook
@@ -22,6 +23,7 @@
 , setuptools
 , shapely
 , snuggs
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -41,6 +43,10 @@ buildPythonPackage rec {
   nativeBuildInputs = [
     cython
     gdal
+    numpy
+    oldest-supported-numpy
+    setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/recipe-scrapers/default.nix b/nixpkgs/pkgs/development/python-modules/recipe-scrapers/default.nix
index 10e5a4ff34e3..f2a9f17ab670 100644
--- a/nixpkgs/pkgs/development/python-modules/recipe-scrapers/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/recipe-scrapers/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "recipe-scrapers";
-  version = "14.36.1";
+  version = "14.43.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "hhursev";
     repo = "recipe-scrapers";
     rev = "refs/tags/${version}";
-    hash = "sha256-JadtlJMxRib8FpNC4QGYXfUEJGyB1aniDbsbsBYU3no=";
+    hash = "sha256-ik/ADmu6yGY7xWXCAn0kcWJphANIIwM8QKWjm9xoVYQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/recordlinkage/default.nix b/nixpkgs/pkgs/development/python-modules/recordlinkage/default.nix
index c6321ebab664..8c911b282605 100644
--- a/nixpkgs/pkgs/development/python-modules/recordlinkage/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/recordlinkage/default.nix
@@ -17,12 +17,13 @@
 
 buildPythonPackage rec {
   pname = "recordlinkage";
-  version = "0.15";
+  version = "0.16";
+  format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-aIrx54vnf85I/Kit/4njg/VIOu6H0SE7NdQ1GbeP8Cc=";
+    hash = "sha256-7NoMEN/xOLFwaBXeMysShfZwrn6MzpJZYhNQHVieaqQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/reflink/default.nix b/nixpkgs/pkgs/development/python-modules/reflink/default.nix
index ccada2453a3e..44106c6ca814 100644
--- a/nixpkgs/pkgs/development/python-modules/reflink/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/reflink/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "reflink";
-  version = "0.2.1";
+  version = "0.2.2";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ySU1gtskQTv9cDq/wbKkneePMbSQcjnyhumhkpoebjo=";
+    hash = "sha256-iCN17nMZJ1rl9qahKHQGNl2sHpZDuRrRDlGH0/hCU70=";
   };
 
   propagatedBuildInputs = [ cffi ];
diff --git a/nixpkgs/pkgs/development/python-modules/regenmaschine/default.nix b/nixpkgs/pkgs/development/python-modules/regenmaschine/default.nix
index f506b13a7795..62de4b4f88c5 100644
--- a/nixpkgs/pkgs/development/python-modules/regenmaschine/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/regenmaschine/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "regenmaschine";
-  version = "2023.06.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-W5W/2gBraraZs8ai8tyg3aRWvHt6WOQCVICuiAigae0=";
+    hash = "sha256-2czpPLTJOUxjzG0+aOyY01jfwlcRgoHiQdB6ybQ6gWg=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/remarshal/default.nix b/nixpkgs/pkgs/development/python-modules/remarshal/default.nix
index 738c2f18f661..5d2e002538c2 100644
--- a/nixpkgs/pkgs/development/python-modules/remarshal/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/remarshal/default.nix
@@ -18,23 +18,16 @@
 
 buildPythonPackage rec {
   pname = "remarshal";
-  version = "0.14.0";
+  version = "0.17.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "dbohdan";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256:nTM3jrPf0kGE15J+ZXBIt2+NGSW2a6VlZCKj70n5kHM=";
+    hash = "sha256-FytVq9p7Yo0lS5rHj0crPIpHFjxolW8esSPkj2wLfaI=";
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "poetry.masonry.api" "poetry.core.masonry.api" \
-      --replace 'PyYAML = "^5.3"' 'PyYAML = "*"' \
-      --replace 'tomlkit = "^0.7"' 'tomlkit = "*"'
-  '';
-
   nativeBuildInputs = [
     poetry-core
   ];
@@ -52,6 +45,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
+    changelog = "https://github.com/remarshal-project/remarshal/releases/tag/v${version}";
     description = "Convert between TOML, YAML and JSON";
     license = licenses.mit;
     homepage = "https://github.com/dbohdan/remarshal";
diff --git a/nixpkgs/pkgs/development/python-modules/repoze_sphinx_autointerface/default.nix b/nixpkgs/pkgs/development/python-modules/repoze_sphinx_autointerface/default.nix
index e98159128247..073977d1252e 100644
--- a/nixpkgs/pkgs/development/python-modules/repoze_sphinx_autointerface/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/repoze_sphinx_autointerface/default.nix
@@ -1,20 +1,31 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, pytestCheckHook
 , zope_interface
+, zope_testrunner
 , sphinx
 }:
 
 buildPythonPackage rec {
   pname = "repoze.sphinx.autointerface";
   version = "1.0.0";
+  format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-SGvxQjpGlrkVPkiM750ybElv/Bbd6xSwyYh7RsYOKKE=";
   };
 
-  propagatedBuildInputs = [ zope_interface sphinx ];
+  propagatedBuildInputs = [
+    zope_interface
+    sphinx
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    zope_testrunner
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/repoze/repoze.sphinx.autointerface";
diff --git a/nixpkgs/pkgs/development/python-modules/reproject/default.nix b/nixpkgs/pkgs/development/python-modules/reproject/default.nix
index 3baf811140f9..00060c08bc2e 100644
--- a/nixpkgs/pkgs/development/python-modules/reproject/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/reproject/default.nix
@@ -6,6 +6,7 @@
 , cython
 , fetchPypi
 , numpy
+, oldest-supported-numpy
 , pytest-astropy
 , pytestCheckHook
 , pythonOlder
@@ -25,9 +26,16 @@ buildPythonPackage rec {
     hash = "sha256-OKxPPKcVVrEVUGR8Zaphn7ur9HOuqQKa9gnMo2RQQME=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "cython==" "cython>="
+  '';
+
   nativeBuildInputs = [
     astropy-extension-helpers
     cython
+    numpy
+    oldest-supported-numpy
     setuptools-scm
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/restrictedpython/default.nix b/nixpkgs/pkgs/development/python-modules/restrictedpython/default.nix
index 4f1aafbdfa66..875771d8f8c6 100644
--- a/nixpkgs/pkgs/development/python-modules/restrictedpython/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/restrictedpython/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "restrictedpython";
-  version = "6.1";
+  version = "6.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "RestrictedPython";
     inherit version;
-    hash = "sha256-fljqFcySoLkW4MjKKV6LLG1A/uTRLhorUGPYbvwnmpw=";
+    hash = "sha256-23Prfjs5ZQ8NIdEMyN2pwOKYbmIclLDF3jL7De46CK8=";
   };
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/rfcat/default.nix b/nixpkgs/pkgs/development/python-modules/rfcat/default.nix
index edb17bc813fd..9ee83c5fa728 100644
--- a/nixpkgs/pkgs/development/python-modules/rfcat/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rfcat/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "rfcat";
-  version = "1.9.7";
+  version = "2.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "atlas0fd00m";
     repo = "rfcat";
     rev = "refs/tags/v${version}";
-    hash = "sha256-VOLA/ZZLazW7u0VYkAHzDh4aaHGr3u09bKVOkhYk6Fk=";
+    hash = "sha256-hdRsVbDXRC1EOhBoFJ9T5ZE6hwOgDWSdN5sIpxJ0x3E=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/riscof/default.nix b/nixpkgs/pkgs/development/python-modules/riscof/default.nix
index d774e0ed3e8a..fc5874e39e33 100644
--- a/nixpkgs/pkgs/development/python-modules/riscof/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/riscof/default.nix
@@ -1,15 +1,19 @@
-{ buildPythonPackage
+{ lib
+, buildPythonPackage
 , fetchFromGitHub
-, lib
 , git
-, riscv-isac
-, riscv-config
 , jinja2
+, pythonOlder
+, riscv-config
+, riscv-isac
 }:
 
 buildPythonPackage rec {
   pname = "riscof";
   version = "1.25.3";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "riscv-software-src";
@@ -18,18 +22,36 @@ buildPythonPackage rec {
     hash = "sha256-ToI2xI0fvnDR+hJ++T4ss5X3gc4G6Cj1uJHx0m2X7GY=";
   };
 
-  postPatch = "substituteInPlace riscof/requirements.txt --replace 'GitPython==3.1.17' GitPython";
-
-  propagatedBuildInputs = [ riscv-isac riscv-config jinja2 ];
-
   patches = [
-    # riscof copies a template directory from the store, but breaks because it doesn't change permissions and expects it to be writeable
+    # riscof copies a template directory from the store, but breaks because it
+    # doesn't change permissions and expects it to be writeable
     ./make_writeable.patch
   ];
 
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "import pip" ""
+    substituteInPlace riscof/requirements.txt \
+      --replace "GitPython==3.1.17" "GitPython"
+  '';
+
+  propagatedBuildInputs = [
+    riscv-isac
+    riscv-config
+    jinja2
+  ];
+
+  pythonImportsCheck = [
+    "riscof"
+  ];
+
+  # No unitests available
+  doCheck = false;
+
   meta = with lib; {
-    homepage = "https://github.com/riscv-software-src/riscof";
     description = "RISC-V Architectural Test Framework";
+    homepage = "https://github.com/riscv-software-src/riscof";
+    changelog = "https://github.com/riscv-software-src/riscof/blob/${version}/CHANGELOG.md";
     maintainers = with maintainers; [ genericnerdyusername ];
     license = licenses.bsd3;
   };
diff --git a/nixpkgs/pkgs/development/python-modules/riscv-config/default.nix b/nixpkgs/pkgs/development/python-modules/riscv-config/default.nix
index 75dd855af33f..409c3a0d7ed1 100644
--- a/nixpkgs/pkgs/development/python-modules/riscv-config/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/riscv-config/default.nix
@@ -1,5 +1,6 @@
 { buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , lib
 , cerberus
 , pyyaml
@@ -9,6 +10,7 @@
 buildPythonPackage rec {
   pname = "riscv-config";
   version = "3.5.2";
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "riscv-software-src";
@@ -17,6 +19,15 @@ buildPythonPackage rec {
     hash = "sha256-K7W6yyqy/2c4WHyOojuvw2P/v7bND5K6WFfTujkofBw=";
   };
 
+  patches = [
+    # Remove when updating to v3.8.0+
+    (fetchpatch {
+      name = "remove-dangling-pip-import.patch";
+      url = "https://github.com/riscv-software-src/riscv-config/commit/f75e7e13fe600b71254b0391be015ec533d3c3ef.patch";
+      hash = "sha256-oVRynBIJevq3UzlMDRh2rVuBJZoEwEYhDma3Bb/QV2E=";
+    })
+  ];
+
   propagatedBuildInputs = [ cerberus pyyaml ruamel-yaml ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/rst2pdf/default.nix b/nixpkgs/pkgs/development/python-modules/rst2pdf/default.nix
index 6d6a48425574..6fb44840f5b2 100644
--- a/nixpkgs/pkgs/development/python-modules/rst2pdf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rst2pdf/default.nix
@@ -2,6 +2,8 @@
 , buildPythonPackage
 , fetchPypi
 , setuptools
+, setuptools-scm
+, wheel
 , docutils
 , importlib-metadata
 , jinja2
@@ -19,18 +21,19 @@
 buildPythonPackage rec {
   pname = "rst2pdf";
   version = "0.101";
-
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-AF8FssEIFHmeY2oVrAPNe85pbmgKWO52yD6ycNNzTSg=";
+    hash = "sha256-AF8FssEIFHmeY2oVrAPNe85pbmgKWO52yD6ycNNzTSg=";
   };
 
   outputs = [ "out" "man" ];
 
   nativeBuildInputs = [
     setuptools
+    setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/rustworkx/default.nix b/nixpkgs/pkgs/development/python-modules/rustworkx/default.nix
index 055d5ff85728..4c929ceef965 100644
--- a/nixpkgs/pkgs/development/python-modules/rustworkx/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/rustworkx/default.nix
@@ -15,18 +15,18 @@
 
 buildPythonPackage rec {
   pname = "rustworkx";
-  version = "0.12.1";
+  version = "0.13.1";
 
   src = fetchFromGitHub {
     owner = "Qiskit";
     repo = pname;
     rev = version;
-    hash = "sha256-d/KCxhJdyzhTjwJZ+GsXJE4ww30iPaXcPngpCi4hBZw=";
+    hash = "sha256-WwQuvRMDGiY9VrWPfxL0OotPCUhCsvbXoVSCNhmIF/g=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
-    hash = "sha256-imhiPj763iumRQb+oeBOpICD1nCvzZx+3yQWu1QRRQQ=";
+    hash = "sha256-QuzBJyM83VtB6CJ7i9/SFE8h6JbxkX/LQ9lOFSQIidU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-build-core/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-build-core/default.nix
index bf0d3b28c9bb..b1fb11573eb7 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-build-core/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-build-core/default.nix
@@ -14,7 +14,9 @@
 , pyproject-metadata
 , pytest-subprocess
 , pytestCheckHook
+, setuptools
 , tomli
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -62,6 +64,8 @@ buildPythonPackage rec {
     ninja
     pytest-subprocess
     pytestCheckHook
+    setuptools
+    wheel
   ] ++ passthru.optional-dependencies.pyproject;
 
   disabledTestPaths = [
@@ -74,12 +78,6 @@ buildPythonPackage rec {
     "tests/test_setuptools_pep518.py"
   ];
 
-  # Tries to access ninja.__version__ which our stub doesn't have.
-  # FIXME: remove for next cycle
-  disabledTests = [
-    "test_get_ninja_programs_cmake_module"
-  ];
-
   pythonImportsCheck = [
     "scikit_build_core"
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-fuzzy/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-fuzzy/default.nix
index dbb5d2044e21..354c27f01915 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-fuzzy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-fuzzy/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
+, fetchpatch
 , matplotlib
 , networkx
 , nose
@@ -24,12 +25,28 @@ buildPythonPackage rec {
     hash = "sha256-kS48aHC719wUdc2WcJa9geoMUcLHSj7ZsoRZYAhF2a0=";
   };
 
+  patches = [
+    # https://github.com/scikit-fuzzy/scikit-fuzzy/pull/299
+    (fetchpatch {
+      name = "numpy-1.25-test-compatibility-1.patch";
+      url = "https://github.com/scikit-fuzzy/scikit-fuzzy/commit/d7d114cff002e2edf9361a55cb985615e91797b5.patch";
+      hash = "sha256-udF/z94tVGRHq7gcOko4BSkvVnqe/A/bAARfCPrc06M=";
+    })
+    (fetchpatch {
+      name = "numpy-1.25-test-compatibility-2.patch";
+      url = "https://github.com/scikit-fuzzy/scikit-fuzzy/commit/f1612f6aeff34dc9329dbded7cee098fcd22ffd9.patch";
+      hash = "sha256-Le1ECR4+RjWCkfqjVrd471GD7tuVaQlZ7RZd3zvFdHU=";
+    })
+    (fetchpatch {
+      name = "numpy-1.25-test-compatibility-3.patch";
+      url = "https://github.com/scikit-fuzzy/scikit-fuzzy/commit/459b9602cf182b7b42f93aad8bcf3bda6f20bfb5.patch";
+      hash = "sha256-gKrhNpGt6XoAlMwQW70OPFZj/ZC8NhQq6dEaBpGE8yY=";
+    })
+  ];
+
   propagatedBuildInputs = [ networkx numpy scipy ];
   nativeCheckInputs = [ matplotlib nose pytestCheckHook ];
 
-  # numpy API breakage: "AttributeError: module 'numpy' has no attribute 'float'"
-  disabledTests = [ "test_fuzzy_compare" ];
-
   pythonImportsCheck = [ "skfuzzy" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-image/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-image/default.nix
index 03eaf556050f..7987f3bba1cb 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-image/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-image/default.nix
@@ -54,6 +54,9 @@ let
 
     postPatch = ''
       patchShebangs skimage/_build_utils/{version,cythoner}.py
+
+      substituteInPlace pyproject.toml \
+        --replace "numpy==" "numpy>="
     '';
 
     nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/scikit-misc/default.nix b/nixpkgs/pkgs/development/python-modules/scikit-misc/default.nix
index fa35fbd9ed93..2cb24d76b2b9 100644
--- a/nixpkgs/pkgs/development/python-modules/scikit-misc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scikit-misc/default.nix
@@ -8,6 +8,8 @@
 , pkg-config
 , numpy
 , openblas
+, setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -23,6 +25,9 @@ buildPythonPackage rec {
 
   postPatch = ''
     patchShebangs .
+
+    substituteInPlace pyproject.toml \
+      --replace 'numpy==' 'numpy>='
   '';
 
   nativeBuildInputs = [
@@ -30,7 +35,10 @@ buildPythonPackage rec {
     gfortran
     git
     meson-python
+    numpy
     pkg-config
+    setuptools
+    wheel
   ];
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/scim2-filter-parser/default.nix b/nixpkgs/pkgs/development/python-modules/scim2-filter-parser/default.nix
index 9b140ae6fed5..f3d37df7735c 100644
--- a/nixpkgs/pkgs/development/python-modules/scim2-filter-parser/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scim2-filter-parser/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , poetry-core
 , django
 , sly
@@ -20,6 +21,15 @@ buildPythonPackage rec {
     hash = "sha256-QEPTYpWlRPWO6Evyt4zoqUST4ousF67GmiOpD7WUqcI=";
   };
 
+  patches = [
+    # https://github.com/15five/scim2-filter-parser/pull/43
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core.patch";
+      url = "https://github.com/15five/scim2-filter-parser/commit/675d85f3a3ff338e96a408827d64d9e893fa5255.patch";
+      hash = "sha256-PjJH1S5CDe/BMI0+mB34KdpNNcHfexBFYBmHolsWH4o=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/scipy/default.nix b/nixpkgs/pkgs/development/python-modules/scipy/default.nix
index d51c049589ee..e58a165f5cca 100644
--- a/nixpkgs/pkgs/development/python-modules/scipy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scipy/default.nix
@@ -7,8 +7,6 @@
 , python
 , pythonOlder
 , buildPythonPackage
-, pypaBuildHook
-, pipInstallHook
 , cython
 , gfortran
 , meson-python
@@ -33,11 +31,9 @@ let
   #
   #     nix-shell maintainers/scripts/update.nix --argstr package python3.pkgs.scipy
   #
-  # Even if you do update these hashes manually, don't change their base
-  # (base16 or base64), because the update script uses sed regexes to replace
-  # them with the updated hashes.
-  version = "1.11.1";
-  srcHash = "sha256-bgnYXe3EhzL7+Gfriz1cXCl2eYQJ8zF+rcIwHyZR8bQ=";
+  # The update script uses sed regexes to replace them with the updated hashes.
+  version = "1.11.2";
+  srcHash = "sha256-7FE740/yKUXtujVX60fQB/xvCZFfV69FRihvSi6+UWo=";
   datasetsHashes = {
     ascent = "1qjp35ncrniq9rhzb14icwwykqg2208hcssznn3hz27w39615kh3";
     ecg = "1bwbjp43b7znnwha5hv6wiz3g0bhwrpqpi75s12zidxrbwvd62pj";
@@ -59,7 +55,7 @@ let
   '';
 in buildPythonPackage {
   inherit pname version;
-  format = "other";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "scipy";
@@ -80,12 +76,22 @@ in buildPythonPackage {
     })
   ];
 
+  # Relax deps a bit
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace "pybind11>=2.10.4,<2.11.0" "pybind11>=2.10.4,<2.12.0"
+      --replace 'numpy==' 'numpy>=' \
+      --replace "pybind11>=2.10.4,<2.11.0" "pybind11>=2.10.4,<2.12.0" \
+      --replace 'wheel<0.41.0' 'wheel'
   '';
 
-  nativeBuildInputs = [ pypaBuildHook pipInstallHook cython gfortran meson-python pythran pkg-config wheel ];
+  nativeBuildInputs = [
+    cython
+    gfortran
+    meson-python
+    pythran
+    pkg-config
+    wheel
+  ];
 
   buildInputs = [
     blas
@@ -99,14 +105,13 @@ in buildPythonPackage {
 
   propagatedBuildInputs = [ numpy ];
 
+  __darwinAllowLocalNetworking = true;
+
   nativeCheckInputs = [ nose pytest pytest-xdist ];
 
   doCheck = !(stdenv.isx86_64 && stdenv.isDarwin);
 
   preConfigure = ''
-    # Relax deps a bit
-    substituteInPlace pyproject.toml \
-      --replace 'numpy==' 'numpy>='
     # Helps parallelization a bit
     export NPY_NUM_BUILD_JOBS=$NIX_BUILD_CORES
     # We download manually the datasets and this variable tells the pooch
diff --git a/nixpkgs/pkgs/development/python-modules/scipy/update.sh b/nixpkgs/pkgs/development/python-modules/scipy/update.sh
index b0d6e2da4f41..c6b3dca49186 100755
--- a/nixpkgs/pkgs/development/python-modules/scipy/update.sh
+++ b/nixpkgs/pkgs/development/python-modules/scipy/update.sh
@@ -16,10 +16,12 @@ if grep -q 'version = "'$version $fname; then
     echo "Current version $version is the latest available, will update only datasets' hashes (don't take long)"
 else
     echoerr got version $version
-    sed -i -E 's/(version = ).*=/\1'$version'/g' $fname
+    sed -i -E 's/(version = ").*(";)/\1'$version'\2/g' $fname
+    # Verify the sed command above did not fail
+    grep -q $version $fname
     # Update srcHash
-    srcHash='"sha256-'$(nix-prefetch-github scipy scipy --rev v${version} --fetch-submodules | jq --raw-output .sha256)'"'
-    sed -i 's/srcHash = .*=";/srcHash = '$srcHash';/g' $fname
+    srcHash="$(nix-prefetch-github scipy scipy --rev v${version} --fetch-submodules | jq --raw-output .hash)"
+    sed -i -E 's#(srcHash = ").*(";)#\1'$srcHash'\2#g' $fname
 fi
 
 for d in $datasets; do
diff --git a/nixpkgs/pkgs/development/python-modules/scramp/default.nix b/nixpkgs/pkgs/development/python-modules/scramp/default.nix
index 954a95c94cd8..aa6013589cd3 100644
--- a/nixpkgs/pkgs/development/python-modules/scramp/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scramp/default.nix
@@ -7,6 +7,7 @@
 , pytestCheckHook
 , pythonOlder
 , setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -25,6 +26,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools
+    wheel
   ];
 
   propagatedBuildInputs = [
@@ -40,6 +42,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     # Upstream uses versioningit to set the version
+    sed -i "/versioningit >=/d" pyproject.toml
     sed -i '/^name =.*/a version = "${version}"' pyproject.toml
     sed -i "/dynamic =/d" pyproject.toml
   '';
diff --git a/nixpkgs/pkgs/development/python-modules/scrapy/default.nix b/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
index 61b3ed1e1e2d..2fd3c6ceb7db 100644
--- a/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/scrapy/default.nix
@@ -31,7 +31,7 @@
 
 buildPythonPackage rec {
   pname = "scrapy";
-  version = "2.10.0";
+  version = "2.10.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -39,7 +39,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit version;
     pname = "Scrapy";
-    hash = "sha256-ThajP8jAOli99OjUvcofhnNU6sacz1c2WMf/NPoMrjk=";
+    hash = "sha256-kdZ4dfu1N2B7B+MTY0RXGKNTK1RObitLr4oEKyGh0Q8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
index 94cb5ab003cc..b3953486902e 100644
--- a/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix
@@ -40,7 +40,7 @@
 
 buildPythonPackage rec {
   pname = "sentry-sdk";
-  version = "1.29.2";
+  version = "1.30.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -49,7 +49,7 @@ buildPythonPackage rec {
     owner = "getsentry";
     repo = "sentry-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-etn7vkKgCN7a8Dxv4gDSVaG6mvCltVh6rTOLaKEyNRA=";
+    hash = "sha256-bs2Eg9eq39/LeuAWyW8FlnPULRUvQXils7OFrAEIg0w=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/setupmeta/default.nix b/nixpkgs/pkgs/development/python-modules/setupmeta/default.nix
index ef031de98347..258f958ce03f 100644
--- a/nixpkgs/pkgs/development/python-modules/setupmeta/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/setupmeta/default.nix
@@ -4,10 +4,12 @@
 , git
 , mock
 , pep440
+, pip
 , pytestCheckHook
 , pythonOlder
 , setuptools-scm
 , six
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -30,12 +32,14 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools-scm
+    wheel
   ];
 
   nativeCheckInputs = [
     git
     mock
     pep440
+    pip
     pytestCheckHook
     six
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/setuptools-odoo/default.nix b/nixpkgs/pkgs/development/python-modules/setuptools-odoo/default.nix
new file mode 100644
index 000000000000..a9129334208f
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/setuptools-odoo/default.nix
@@ -0,0 +1,76 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, lib
+, nix-update-script
+, pytestCheckHook
+, git
+, setuptools-scm
+, writeScript
+}:
+buildPythonPackage rec {
+  pname = "setuptools-odoo";
+  version = "3.1.12";
+  src = fetchFromGitHub {
+    owner = "acsone";
+    repo = pname;
+    rev = version;
+    hash = "sha256-GIX21gOENE0r3yFIyzwjaoEcb0XvuCqiPU8F3GLxNt4=";
+  };
+
+  propagatedBuildInputs = [
+    setuptools-scm
+  ];
+
+  # HACK https://github.com/NixOS/nixpkgs/pull/229460
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  patchPhase = ''
+    runHook prePatch
+
+    old_manifest="$(cat MANIFEST.in 2>/dev/null || true)"
+    echo 'global-include **' > MANIFEST.in
+    echo "$old_manifest" >> MANIFEST.in
+
+    runHook postPatch
+  '';
+
+  pythonImportsCheck = [
+    "setuptools_odoo"
+  ];
+
+  setupHook = writeScript "setupHook.sh" ''
+    setuptoolsOdooHook() {
+      # Don't look for a version suffix from git when building addons
+      export SETUPTOOLS_ODOO_POST_VERSION_STRATEGY_OVERRIDE=none
+
+      # Let setuptools-odoo know which files to install, when Git is missing
+      # HACK https://github.com/acsone/setuptools-odoo/issues/20#issuecomment-340192355
+      echo 'recursive-include odoo/addons/* **' >> MANIFEST.in
+
+      # Make sure you can import the built addon
+      for manifest in $(find -L . -name __manifest__.py); do
+        export pythonImportsCheck="$pythonImportsCheck odoo.addons.$(basename $(dirname $manifest))"
+      done
+    }
+
+    preBuildHooks+=(setuptoolsOdooHook)
+  '';
+
+  nativeCheckInputs = [ pytestCheckHook git ];
+  disabledTests = [
+    "test_addon1_uncommitted_change"
+    "test_addon1"
+    "test_addon2_uncommitted_version_change"
+    "test_odoo_addon1_sdist"
+    "test_odoo_addon1"
+    "test_odoo_addon5_wheel"
+  ];
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = {
+    description = "Setuptools plugin for Odoo addons";
+    homepage = "https://github.com/acsone/setuptools-odoo";
+    license = lib.licenses.lgpl3Only;
+    maintainers = with lib.maintainers; [ yajo ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/setuptools/default.nix b/nixpkgs/pkgs/development/python-modules/setuptools/default.nix
index c851cef24b30..ad7638f3cb38 100644
--- a/nixpkgs/pkgs/development/python-modules/setuptools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/setuptools/default.nix
@@ -1,73 +1,36 @@
 { stdenv
+, lib
 , buildPythonPackage
 , fetchFromGitHub
 , python
-, bootstrapped-pip
-, lib
-, pipInstallHook
-, setuptoolsBuildHook
+, wheel
 }:
 
-let
+buildPythonPackage rec {
   pname = "setuptools";
-  version = "67.4.0";
-
-  # Create an sdist of setuptools
-  sdist = stdenv.mkDerivation rec {
-    name = "${pname}-${version}-sdist.tar.gz";
-
-    src = fetchFromGitHub {
-      owner = "pypa";
-      repo = pname;
-      rev = "refs/tags/v${version}";
-      hash = "sha256-QDHycUFA2VRUE9alan8rF0efZTNV3Jt0CskjkCc+in0=";
-      name = "${pname}-${version}-source";
-    };
-
-    patches = [
-      ./tag-date.patch
-      ./setuptools-distutils-C++.patch
-    ];
-
-    buildPhase = ''
-      ${python.pythonForBuild.interpreter} setup.py egg_info
-      ${python.pythonForBuild.interpreter} setup.py sdist --formats=gztar
-
-      # Here we untar the sdist and retar it in order to control the timestamps
-      # of all the files included
-      tar -xzf dist/${pname}-${version}.post0.tar.gz -C dist/
-      tar -czf dist/${name} -C dist/ --mtime="@$SOURCE_DATE_EPOCH" --sort=name ${pname}-${version}.post0
-    '';
-
-    installPhase = ''
-      echo "Moving sdist..."
-      mv dist/${name} $out
-    '';
+  version = "68.0.0";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "pypa";
+    repo = "setuptools";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Ew/DpI5XsYMB4kBfkFeeB5wv5cjx4oYTddZCWLgBHBs=";
   };
-in buildPythonPackage {
-  inherit pname version;
-  # Because of bootstrapping we don't use the setuptoolsBuildHook that comes with format="setuptools" directly.
-  # Instead, we override it to remove setuptools to avoid a circular dependency.
-  # The same is done for pip and the pipInstallHook.
-  format = "other";
 
-  src = sdist;
+  patches = [
+    ./tag-date.patch
+    ./setuptools-distutils-C++.patch
+  ];
 
   nativeBuildInputs = [
-    bootstrapped-pip
-    (pipInstallHook.override{pip=null;})
-    (setuptoolsBuildHook.override{setuptools=null; wheel=null;})
+    wheel
   ];
 
   preBuild = lib.optionalString (!stdenv.hostPlatform.isWindows) ''
     export SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES=0
   '';
 
-  pipInstallFlags = [ "--ignore-installed" ];
-
-  # Adds setuptools to nativeBuildInputs causing infinite recursion.
-  catchConflicts = false;
-
   # Requires pytest, causing infinite recursion.
   doCheck = false;
 
@@ -77,7 +40,6 @@ in buildPythonPackage {
     changelog = "https://setuptools.pypa.io/en/stable/history.html#v${replaceStrings [ "." ] [ "-" ] version}";
     license = with licenses; [ mit ];
     platforms = python.meta.platforms;
-    priority = 10;
     maintainers = teams.python.members;
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
index d4fbc5c861b8..c3264d7366f1 100644
--- a/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/simplisafe-python/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "simplisafe-python";
-  version = "2023.05.0";
+  version = "2023.08.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-dcWDB9tpKrFbnWf35HLDmgy2zNTzKNeJQrdtRXbSMvs=";
+    hash = "sha256-DExMa9z/VYAMoqUmr/gfZzYFWfTxnC+Cz4rRTaNSLBM=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
index fb6a49ff6204..349544f1d035 100644
--- a/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-files/default.nix
@@ -28,13 +28,13 @@
 
 buildPythonPackage rec {
   pname = "skytemple-files";
-  version = "1.4.7";
+  version = "1.5.4";
 
   src = fetchFromGitHub {
     owner = "SkyTemple";
     repo = pname;
     rev = version;
-    hash = "sha256-SLRZ9ThrH2UWqfr5BbjJKDM/SRkCfMNK70XZT4+Ks7w=";
+    hash = "sha256-RB+Cp4mL0y59/l7yu0z3jefADHR9/h0rbTZLm7BvJ7k=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix b/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
index 47bbf831afda..ddf1866a1056 100644
--- a/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/skytemple-rust/default.nix
@@ -13,19 +13,19 @@
 
 buildPythonPackage rec {
   pname = "skytemple-rust";
-  version = "1.4.0.post0";
+  version = "1.5.3";
 
   src = fetchFromGitHub {
     owner = "SkyTemple";
     repo = pname;
     rev = version;
-    hash = "sha256-aw57B15sDbMcdNPD8MW+O7AdqSSqjlOcuXNSm10GdPM=";
+    hash = "sha256-Txx8kQNb3ODbaJXfuHERzPx4zGUqYXzy+jbLNaMyf+w=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-SvHrMr5k4afVdU5nvg+bcoHVmzHYyoOYqv7nOSVxRCE=";
+    hash = "sha256-KQA8dfHnuysx9EUySJXZ/52Hfq6AbALwkBp3B1WJJuc=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv Foundation ];
diff --git a/nixpkgs/pkgs/development/python-modules/smbus2/default.nix b/nixpkgs/pkgs/development/python-modules/smbus2/default.nix
index ba36c02e6962..893dd1921b51 100644
--- a/nixpkgs/pkgs/development/python-modules/smbus2/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/smbus2/default.nix
@@ -1,13 +1,14 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, nose
+, pytestCheckHook
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "smbus2";
-  version = "0.4.2";
+  version = "0.4.3";
+  format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
@@ -15,19 +16,13 @@ buildPythonPackage rec {
     owner = "kplindegaard";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-6JzFbhUq8XR1nYkadPeYqItcLZDIFAwTe3BriEW2nVI=";
+    hash = "sha256-tjJurJzDn0ATiYY3Xo66lwUs98/7ZLG3d4+h1prVHAI=";
   };
 
   nativeCheckInputs = [
-    nose
+    pytestCheckHook
   ];
 
-  checkPhase = ''
-    runHook preCheck
-    nosetests
-    runHook postCheck
-  '';
-
   pythonImportsCheck = [
     "smbus2"
   ];
@@ -35,6 +30,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Drop-in replacement for smbus-cffi/smbus-python";
     homepage = "https://smbus2.readthedocs.io/";
+    changelog = "https://github.com/kplindegaard/smbus2/blob/${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/snitun/default.nix b/nixpkgs/pkgs/development/python-modules/snitun/default.nix
index 42b225aa3819..35d7a877fed1 100644
--- a/nixpkgs/pkgs/development/python-modules/snitun/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/snitun/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "snitun";
-  version = "0.35.0";
+  version = "0.36.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "NabuCasa";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-sZMmou9uHThl7AIMnuBxABnWTF1CCFsDj1I7FYxgJ3Y=";
+    hash = "sha256-ViFAPAA6uU5MQNHCTIw0OTR8eZPgF34GqRP+py6L6RU=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/socksio/default.nix b/nixpkgs/pkgs/development/python-modules/socksio/default.nix
index ad0e8e2e6c07..fb767db631d8 100644
--- a/nixpkgs/pkgs/development/python-modules/socksio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/socksio/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , pythonAtLeast
 , flit-core
@@ -19,6 +20,15 @@ buildPythonPackage {
     hash = "sha256-+IvrPaW1w4uYkEad5n0MsPnUlLeLEGyhhF+WwQuRxKw=";
   };
 
+  patches = [
+    # https://github.com/sethmlarson/socksio/pull/61
+    (fetchpatch {
+      name = "unpin-flit-core.patch";
+      url = "https://github.com/sethmlarson/socksio/commit/5c50fd76e7459bb822ff8f712172a78e21b8dd04.patch";
+      hash = "sha256-VVUzFvF2KCXXkCfCU5xu9acT6OLr+PlQQPeVGONtU4A=";
+    })
+  ];
+
   nativeBuildInputs = [
     flit-core
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/soxr/default.nix b/nixpkgs/pkgs/development/python-modules/soxr/default.nix
index 7c9251dfd7b6..20532f4c00fa 100644
--- a/nixpkgs/pkgs/development/python-modules/soxr/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/soxr/default.nix
@@ -2,9 +2,10 @@
 , buildPythonPackage
 , fetchFromGitHub
 
-# build-sytem
+# build-system
 , cython_3
 , numpy
+, oldest-supported-numpy
 , setuptools
 , setuptools-scm
 , gnutar
@@ -29,12 +30,13 @@ buildPythonPackage rec {
     hash = "sha256-q/K7XlqvDHAna+fqN6iiJ9wD8efsuwHiEfKjXS46jz8=";
   };
 
-  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
   nativeBuildInputs = [
     cython_3
     gnutar
     numpy
+    oldest-supported-numpy
     setuptools
     setuptools-scm
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/spdx-tools/default.nix b/nixpkgs/pkgs/development/python-modules/spdx-tools/default.nix
index 956eaa30b847..913a458ae0f3 100644
--- a/nixpkgs/pkgs/development/python-modules/spdx-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/spdx-tools/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "spdx-tools";
-  version = "0.8.0";
+  version = "0.8.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "spdx";
     repo = "tools-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-TMiaxapJuiLqm+x9K49MIzeWOE/CRAI+M1+9OeU0YvM=";
+    hash = "sha256-/iBy6i4J/IiJzfNdW6pN3VTE9PVED4ckoe4OBlw8wnI=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
index e5e92b8b038e..2a8085de7c23 100644
--- a/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sphinxcontrib-spelling/default.nix
@@ -5,7 +5,9 @@
 , importlib-metadata
 , sphinx
 , pyenchant
-, pbr
+, setuptools
+, setuptools-scm
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -21,7 +23,9 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    pbr
+    setuptools
+    setuptools-scm
+    wheel
   ];
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/sqlalchemy-mixins/default.nix b/nixpkgs/pkgs/development/python-modules/sqlalchemy-mixins/default.nix
index edb6ab2ed29e..1a075b227913 100644
--- a/nixpkgs/pkgs/development/python-modules/sqlalchemy-mixins/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sqlalchemy-mixins/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "sqlalchemy-mixins";
-  version = "2.0.4.2";
+  version = "2.0.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "absent1706";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-soashrkokHveEI9YXAAPBPHydhoToJhCHx+g7bunhLE=";
+    hash = "sha256-iJrRlV/M0Z1IOdrwWSblefm6wjvdk4/v0am+It8VeWI=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix b/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix
index c3ad45ec13a6..4edb02182b11 100644
--- a/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "sqlite-utils";
-  version = "3.34";
+  version = "3.35";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-RgdoPLsyz9TzxjkpBF6qAgqwIhxQNvm7QbeyW8dVzSM=";
+    hash = "sha256-j2/n+NEncs1c9FlHA6mNzQw3wP1oIN0gVBunS5/KNjo=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/starlette/default.nix b/nixpkgs/pkgs/development/python-modules/starlette/default.nix
index 20a9a0d81f78..1c08e61f6660 100644
--- a/nixpkgs/pkgs/development/python-modules/starlette/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/starlette/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "starlette";
-  version = "0.26.1";
+  version = "0.27.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "encode";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-/zYqYmmCcOLU8Di9b4BzDLFtB5wYEEF1bYN6u2rb8Lg=";
+    hash = "sha256-qT3ZJQY5l1K88llJdKoSkwHvfcWwjH6JysMnHYGknqw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/stim/default.nix b/nixpkgs/pkgs/development/python-modules/stim/default.nix
index 381676047c1a..734a3b3c9ff1 100644
--- a/nixpkgs/pkgs/development/python-modules/stim/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stim/default.nix
@@ -11,6 +11,8 @@
 , matplotlib
 , networkx
 , scipy
+, setuptools
+, wheel
 , pandas
 }:
 
@@ -28,9 +30,20 @@ buildPythonPackage rec {
     hash = "sha256-zXWdJjFkf74FCWxyVMF8dx0P8GmUkuHFxUo5wYNU2o0=";
   };
 
+  postPatch = ''
+    # asked to relax this in https://github.com/quantumlib/Stim/issues/623
+    substituteInPlace pyproject.toml \
+      --replace "pybind11==" "pybind11>="
+  '';
+
+  nativeBuildInputs = [
+    pybind11
+    setuptools
+    wheel
+  ];
+
   propagatedBuildInputs = [
     numpy
-    pybind11
   ];
 
   nativeCheckInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/stravalib/default.nix b/nixpkgs/pkgs/development/python-modules/stravalib/default.nix
index d41dcda8aba1..b05e147dcaa9 100644
--- a/nixpkgs/pkgs/development/python-modules/stravalib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stravalib/default.nix
@@ -3,6 +3,8 @@
 , fetchPypi
 , nose
 , setuptools
+, setuptools-scm
+, wheel
 , arrow
 , requests
 , units
@@ -22,6 +24,12 @@ buildPythonPackage rec {
     hash = "sha256-P00oxUz0oVQB969c/N2wpKLe09wtvQWPH4DH4EZUaxc=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+    wheel
+  ];
+
   nativeCheckInputs = [
     nose
   ];
@@ -33,7 +41,6 @@ buildPythonPackage rec {
     pint
     pydantic
     pytz
-    setuptools
     six
   ];
 
diff --git a/nixpkgs/pkgs/development/python-modules/strawberry-graphql/default.nix b/nixpkgs/pkgs/development/python-modules/strawberry-graphql/default.nix
index 98bd27072d16..761a14fbfd03 100644
--- a/nixpkgs/pkgs/development/python-modules/strawberry-graphql/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/strawberry-graphql/default.nix
@@ -42,20 +42,21 @@
 
 buildPythonPackage rec {
   pname = "strawberry-graphql";
-  version = "0.185.1";
+  version = "0.205.0";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "strawberry-graphql";
     repo = "strawberry";
     rev = "refs/tags/${version}";
-    hash = "sha256-PwhTD1k2GOVf6ACNDY1atLLP1jjAF6eTDCE3eLUIpJA=";
+    hash = "sha256-58pBsTQM3t5rj4AywhMqmCUzUQB4BH9FAF7J3p6Qkok=";
   };
 
   patches = [
     (fetchpatch {
+      # https://github.com/strawberry-graphql/strawberry/pull/2199
       name = "switch-to-poetry-core.patch";
       url = "https://github.com/strawberry-graphql/strawberry/commit/710bb96f47c244e78fc54c921802bcdb48f5f421.patch";
       hash = "sha256-ekUZ2hDPCqwXp9n0YjBikwSkhCmVKUzQk7LrPECcD7Y=";
@@ -64,7 +65,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace " --emoji --mypy-ini-file=mypy.ini --benchmark-disable" "" \
+      --replace "--emoji --mypy-ini-file=mypy.ini" "" \
   '';
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/streamlit/default.nix b/nixpkgs/pkgs/development/python-modules/streamlit/default.nix
index 2ab4d11e640d..95a11c70592b 100755
--- a/nixpkgs/pkgs/development/python-modules/streamlit/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/streamlit/default.nix
@@ -18,10 +18,12 @@
 , pympler
 , python-dateutil
 , pythonOlder
+, pythonRelaxDepsHook
 , requests
 , rich
 , tenacity
 , toml
+, tornado
 , typing-extensions
 , tzlocal
 , validators
@@ -30,16 +32,23 @@
 
 buildPythonPackage rec {
   pname = "streamlit";
-  version = "1.24.1";
+  version = "1.26.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version format;
-    hash = "sha256-/V8LZHmOlwY2RAj7WJt3WVMUpjFdE7LXULljx66X82I=";
+    hash = "sha256-JUdfsVo8yfsYSUXz/JNvARmYvYOG4MiS/r4UyWJb9Ho=";
   };
 
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+
+  pythonRelaxDeps = [
+    "pillow"
+    "pydeck"
+  ];
+
   propagatedBuildInputs = [
     altair
     blinker
@@ -60,6 +69,7 @@ buildPythonPackage rec {
     rich
     tenacity
     toml
+    tornado
     typing-extensions
     tzlocal
     validators
diff --git a/nixpkgs/pkgs/development/python-modules/stumpy/default.nix b/nixpkgs/pkgs/development/python-modules/stumpy/default.nix
index 7f13c29172e0..491af1105dae 100644
--- a/nixpkgs/pkgs/development/python-modules/stumpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/stumpy/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "stumpy";
-  version = "1.11.1";
+  version = "1.12.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "TDAmeritrade";
     repo = "stumpy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ARpXqZpWkbvIEDVkxA1SwlWoxq+3WO6tvv/e7WZ/25c=";
+    hash = "sha256-rVl3tIx8iWx2mnaix3V5YnfWWdPBTP8+K2JJKTfctDA=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/syrupy/default.nix b/nixpkgs/pkgs/development/python-modules/syrupy/default.nix
index a8047c5b16be..cd9d2addc604 100644
--- a/nixpkgs/pkgs/development/python-modules/syrupy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/syrupy/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pythonOlder
+, python
 , poetry-core
 , pytest
 , colored
@@ -10,16 +10,16 @@
 
 buildPythonPackage rec {
   pname = "syrupy";
-  version = "4.0.8";
+  version = "4.2.1";
   format = "pyproject";
 
-  disabled = pythonOlder "3.8.1";
+  disabled = lib.versionOlder python.version "3.8.1";
 
   src = fetchFromGitHub {
     owner = "tophat";
     repo = "syrupy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-qUKOZHkpQmeS/QELRf1FoUniaHs/gYyOtsBCFOidx4g=";
+    hash = "sha256-MXUuLw4+J/9JtXY1DYwBjj2sgAbO2cXQi1HnVRx3BhM=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/tensorflow-metadata/default.nix b/nixpkgs/pkgs/development/python-modules/tensorflow-metadata/default.nix
index 49c2124c7952..be299e867d32 100644
--- a/nixpkgs/pkgs/development/python-modules/tensorflow-metadata/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tensorflow-metadata/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonPackage rec {
   pname = "tensorflow-metadata";
-  version = "1.13.1";
+  version = "1.14.0";
 
   src = fetchFromGitHub {
     owner = "tensorflow";
     repo = "metadata";
     rev = "refs/tags/v${version}";
-    hash = "sha256-G7OEupjKDbblp96u2oHVdSueGG5NON5gvYhuvyz4f3E=";
+    hash = "sha256-ZfX25CaV+tZVdas+n7O6Gqv1GxOP1iwippIXxfhcOfg=";
   };
 
   patches = [
diff --git a/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix b/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
index 5ce4c59490da..9e33acfc991e 100644
--- a/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/teslajsonpy/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "teslajsonpy";
-  version = "3.9.2";
+  version = "3.9.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "zabuldon";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-K68UhtPtgTZoAl9NG5ZHOwzsvDl028coXS4ZpmJ0ULs=";
+    hash = "sha256-kA2MFYryz61Mm/sPfH1NuLKnz4whtdNb6hGPYQZgQKQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/textual/default.nix b/nixpkgs/pkgs/development/python-modules/textual/default.nix
index 883c62d9049b..23d332c4cbd1 100644
--- a/nixpkgs/pkgs/development/python-modules/textual/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/textual/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "textual";
-  version = "0.33.0";
+  version = "0.35.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "Textualize";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-IhqUUsS1kCG/AwnbcLAhmQYLBSqf1ff0pD2xH4Tgdho=";
+    hash = "sha256-WOYS1bovS6OGmFnJaxvEpqM3jRSzQg1M0vQGv1yfcnw=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/torch/default.nix b/nixpkgs/pkgs/development/python-modules/torch/default.nix
index 1d9fd2a469f6..0dcc2fdba2d9 100644
--- a/nixpkgs/pkgs/development/python-modules/torch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/torch/default.nix
@@ -196,7 +196,8 @@ in buildPythonPackage rec {
     export TORCH_CUDA_ARCH_LIST="${gpuTargetString}"
     export CC=${cudatoolkit.cc}/bin/gcc CXX=${cudatoolkit.cc}/bin/g++
   '' + lib.optionalString (cudaSupport && cudnn != null) ''
-    export CUDNN_INCLUDE_DIR=${cudnn}/include
+    export CUDNN_INCLUDE_DIR=${cudnn.dev}/include
+    export CUDNN_LIB_DIR=${cudnn.lib}/lib
   '' + lib.optionalString rocmSupport ''
     export ROCM_PATH=${rocmtoolkit_joined}
     export ROCM_SOURCE_DIR=${rocmtoolkit_joined}
@@ -290,7 +291,7 @@ in buildPythonPackage rec {
 
   buildInputs = [ blas blas.provider pybind11 ]
     ++ lib.optionals stdenv.isLinux [ linuxHeaders_5_19 ] # TMP: avoid "flexible array member" errors for now
-    ++ lib.optionals cudaSupport [ cudnn nccl ]
+    ++ lib.optionals cudaSupport [ cudnn.dev cudnn.lib nccl ]
     ++ lib.optionals rocmSupport [ openmp ]
     ++ lib.optionals (cudaSupport || rocmSupport) [ magma ]
     ++ lib.optionals stdenv.isLinux [ numactl ]
diff --git a/nixpkgs/pkgs/development/python-modules/torchio/default.nix b/nixpkgs/pkgs/development/python-modules/torchio/default.nix
index 58ab010eb969..66071011f2fb 100644
--- a/nixpkgs/pkgs/development/python-modules/torchio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/torchio/default.nix
@@ -19,15 +19,16 @@
 
 buildPythonPackage rec {
   pname = "torchio";
-  version = "0.18.90";
+  version = "0.19.1";
   format = "pyproject";
-  disabled = pythonOlder "3.7";
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fepegar";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-h8cvNhOkjMMbQ6Nry8FKtwnK+yhRYRGjXi/xp0i5yyY=";
+    hash = "sha256-SNX558kSRCS9Eks00Kj2kFmo7hCUgV6saYLsnx/Kus0=";
   };
 
   propagatedBuildInputs = [
@@ -57,7 +58,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Medical imaging toolkit for deep learning";
-    homepage = "http://www.torchio.org/";
+    homepage = "https://torchio.readthedocs.io";
     license = licenses.asl20;
     maintainers = [ maintainers.bcdarwin ];
   };
diff --git a/nixpkgs/pkgs/development/python-modules/tornado/4.nix b/nixpkgs/pkgs/development/python-modules/tornado/4.nix
index e4f59c148735..7476a22792ee 100644
--- a/nixpkgs/pkgs/development/python-modules/tornado/4.nix
+++ b/nixpkgs/pkgs/development/python-modules/tornado/4.nix
@@ -2,6 +2,7 @@
 , unittestCheckHook
 , buildPythonPackage
 , fetchPypi
+, fetchpatch
 , isPy27
 , pythonAtLeast
 }:
@@ -16,6 +17,14 @@ buildPythonPackage rec {
     sha256 = "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2023-28370.patch";
+      url = "https://github.com/tornadoweb/tornado/commit/32ad07c54e607839273b4e1819c347f5c8976b2f.patch";
+      hash = "sha256-2dpPHkNThOaZD8T2g1vb/I5WYZ/vy/t690539uprJyc=";
+    })
+  ];
+
   nativeCheckInputs = [ unittestCheckHook ];
 
   # We specify the name of the test files to prevent
diff --git a/nixpkgs/pkgs/development/python-modules/tornado/5.nix b/nixpkgs/pkgs/development/python-modules/tornado/5.nix
index d3961d06c405..8ba3a8c073ba 100644
--- a/nixpkgs/pkgs/development/python-modules/tornado/5.nix
+++ b/nixpkgs/pkgs/development/python-modules/tornado/5.nix
@@ -2,6 +2,7 @@
 , unittestCheckHook
 , buildPythonPackage
 , fetchPypi
+, fetchpatch
 , isPy27
 , pythonAtLeast
 }:
@@ -16,6 +17,14 @@ buildPythonPackage rec {
     sha256 = "4e5158d97583502a7e2739951553cbd88a72076f152b4b11b64b9a10c4c49409";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2023-28370.patch";
+      url = "https://github.com/tornadoweb/tornado/commit/32ad07c54e607839273b4e1819c347f5c8976b2f.patch";
+      hash = "sha256-2dpPHkNThOaZD8T2g1vb/I5WYZ/vy/t690539uprJyc=";
+    })
+  ];
+
   nativeCheckInputs = [ unittestCheckHook ];
 
   # We specify the name of the test files to prevent
diff --git a/nixpkgs/pkgs/development/python-modules/tornado/default.nix b/nixpkgs/pkgs/development/python-modules/tornado/default.nix
index e255e603b9a1..ac57f212d229 100644
--- a/nixpkgs/pkgs/development/python-modules/tornado/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tornado/default.nix
@@ -3,17 +3,29 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pytestCheckHook
+
+# for passthru.tests
+, distributed
+, jupyter-server
+, jupyterlab
+, matplotlib
+, mitmproxy
+, pytest-tornado
+, pytest-tornasync
+, pyzmq
+, sockjs-tornado
+, urllib3
 }:
 
 buildPythonPackage rec {
   pname = "tornado";
-  version = "6.2.0";
+  version = "6.3.3";
 
   src = fetchFromGitHub {
     owner = "tornadoweb";
     repo = "tornado";
     rev = "v${version}";
-    hash = "sha256-IV0QN3GqoclFo9kWJVc21arypmBkvUClo86Zmt/Gv6E=";
+    hash = "sha256-l9Ce/c2wDSmsySr9yXu5Fl/+63QkQay46aDSUTJmetA=";
   };
 
   nativeCheckInputs = [
@@ -38,6 +50,20 @@ buildPythonPackage rec {
 
   __darwinAllowLocalNetworking = true;
 
+  passthru.tests = {
+    inherit
+      distributed
+      jupyter-server
+      jupyterlab
+      matplotlib
+      mitmproxy
+      pytest-tornado
+      pytest-tornasync
+      pyzmq
+      sockjs-tornado
+      urllib3;
+  };
+
   meta = with lib; {
     description = "A web framework and asynchronous networking library";
     homepage = "https://www.tornadoweb.org/";
diff --git a/nixpkgs/pkgs/development/python-modules/trimesh/default.nix b/nixpkgs/pkgs/development/python-modules/trimesh/default.nix
index 1482d0a6589f..a561bcbdfb74 100644
--- a/nixpkgs/pkgs/development/python-modules/trimesh/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/trimesh/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "trimesh";
-  version = "3.23.3";
+  version = "3.23.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-61nMytrqc7w7IbO7TX7H4O4DYoVL9MTBasN3UDx492w=";
+    hash = "sha256-vf1mnszEs/r/IyggCklAjNXsrZ8ZtgIsSttVS7s6JiE=";
   };
 
   nativeBuildInputs = [ setuptools ];
diff --git a/nixpkgs/pkgs/development/python-modules/troposphere/default.nix b/nixpkgs/pkgs/development/python-modules/troposphere/default.nix
index 567c2dec60e2..39c71da17761 100644
--- a/nixpkgs/pkgs/development/python-modules/troposphere/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/troposphere/default.nix
@@ -1,18 +1,16 @@
 { lib
+, awacs
 , buildPythonPackage
+, cfn-flip
 , fetchFromGitHub
 , pythonOlder
-, python
-
-  # python dependencies
-, awacs
-, cfn-flip
 , typing-extensions
+, unittestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "troposphere";
-  version = "4.3.2";
+  version = "4.4.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,34 +19,35 @@ buildPythonPackage rec {
     owner = "cloudtools";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-8vIpwZBUdU9gD1Ya0+L1phMDMcAABtuyRx4quDfQWGA=";
+    hash = "sha256-ecRpp8XsP/iv4G8m85qcGJXHXH4CPdgBO8c0IZU56wU=";
   };
 
   propagatedBuildInputs = [
     cfn-flip
-  ] ++ lib.lists.optionals (pythonOlder "3.8") [
+  ] ++ lib.optionals (pythonOlder "3.8") [
     typing-extensions
   ];
 
   nativeCheckInputs = [
     awacs
+    unittestCheckHook
   ];
 
   passthru.optional-dependencies = {
-    policy = [ awacs ];
+    policy = [
+      awacs
+    ];
   };
 
-  checkPhase = ''
-    ${python.interpreter} -m unittest discover
-  '';
-
-  pythonImportsCheck = [ "troposphere" ];
+  pythonImportsCheck = [
+    "troposphere"
+  ];
 
   meta = with lib; {
     description = "Library to create AWS CloudFormation descriptions";
-    maintainers = with maintainers; [ jlesquembre ];
-    license = licenses.bsd2;
     homepage = "https://github.com/cloudtools/troposphere";
     changelog = "https://github.com/cloudtools/troposphere/blob/${version}/CHANGELOG.rst";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ jlesquembre ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/tweedledum/default.nix b/nixpkgs/pkgs/development/python-modules/tweedledum/default.nix
index af5a65a08037..bc4808a268cb 100644
--- a/nixpkgs/pkgs/development/python-modules/tweedledum/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/tweedledum/default.nix
@@ -21,6 +21,11 @@ buildPythonPackage rec {
     hash = "sha256-wgrY5ajaMYxznyNvlD0ul1PFr3W8oV9I/OVsStlZEBM=";
   };
 
+  postPatch = ''
+    sed -i '/\[project\]/a version = "${version}"' pyproject.toml
+    sed -i '/\[project\]/a name = "tweedledum"' pyproject.toml
+  '';
+
   nativeBuildInputs = [ cmake ninja scikit-build ];
   dontUseCmakeConfigure = true;
 
diff --git a/nixpkgs/pkgs/development/python-modules/twilio/default.nix b/nixpkgs/pkgs/development/python-modules/twilio/default.nix
index fadf2ef3818c..ef2678e88b31 100644
--- a/nixpkgs/pkgs/development/python-modules/twilio/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/twilio/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "twilio";
-  version = "8.6.0";
+  version = "8.7.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "twilio";
     repo = "twilio-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-ATspn/cY9DJahcsesnzwDOCEKYoUbqSoeOR3+kLou0s=";
+    hash = "sha256-wzsAHW0OlorLVI6nnDjv8WP1dpzyrmtE4OfwzFnZOH4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/typecode/default.nix b/nixpkgs/pkgs/development/python-modules/typecode/default.nix
index 9bcb05076c4e..88e76fda670a 100644
--- a/nixpkgs/pkgs/development/python-modules/typecode/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/typecode/default.nix
@@ -47,9 +47,17 @@ buildPythonPackage rec {
 
   disabledTests = [
     "TestFileTypesDataDriven"
+
+    # Many of the failures below are reported in:
+    # https://github.com/nexB/typecode/issues/36
+
     # AssertionError: assert 'application/x-bytecode.python'...
     "test_compiled_python_1"
     "test_package_json"
+
+    # fails due to change in file (libmagic) 5.45
+    "test_doc_postscript_eps"
+    "test_package_debian"
   ];
 
   pythonImportsCheck = [
diff --git a/nixpkgs/pkgs/development/python-modules/typepy/default.nix b/nixpkgs/pkgs/development/python-modules/typepy/default.nix
index a1d9e7df1534..c5c393b29c01 100644
--- a/nixpkgs/pkgs/development/python-modules/typepy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/typepy/default.nix
@@ -26,14 +26,23 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     mbstrdecoder
-    python-dateutil
-    pytz
-    packaging
   ];
 
+  passthru.optional-dependencies = {
+    datetime = [
+      python-dateutil
+      pytz
+      packaging
+    ];
+  };
+
   nativeCheckInputs = [
     pytestCheckHook
     tcolorpy
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+
+  pythonImportsCheck = [
+    "typepy"
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/types-awscrt/default.nix b/nixpkgs/pkgs/development/python-modules/types-awscrt/default.nix
new file mode 100644
index 000000000000..ea56034cf9c2
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/types-awscrt/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, poetry-core
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "types-awscrt";
+  version = "0.19.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    pname = "types_awscrt";
+    inherit version;
+    hash = "sha256-YYM6oUDnJKkJgCVhD0uM3j3PZbhCYx10RzePn1204f0=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  pythonImportsCheck = [
+    "awscrt-stubs"
+  ];
+
+  meta = with lib; {
+    description = "Type annotations and code completion for awscrt";
+    homepage = "https://github.com/youtype/types-awscrt";
+    changelog = "https://github.com/youtype/types-awscrt/releases/tag/${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/types-beautifulsoup4/default.nix b/nixpkgs/pkgs/development/python-modules/types-beautifulsoup4/default.nix
new file mode 100644
index 000000000000..00ebb5123e3c
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/types-beautifulsoup4/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, types-html5lib
+}:
+
+buildPythonPackage rec {
+  pname = "types-beautifulsoup4";
+  version = "4.12.0.6";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-BFqyhdPlQBhuFhM2EvQ/Z+MfkQ5tdXiQa0OgrY+BE0c=";
+  };
+
+  propagatedBuildInputs = [
+    types-html5lib
+  ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "bs4-stubs"
+  ];
+
+  meta = with lib; {
+    description = "Typing stubs for beautifulsoup4";
+    homepage = "https://pypi.org/project/types-beautifulsoup4/";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/types-docopt/default.nix b/nixpkgs/pkgs/development/python-modules/types-docopt/default.nix
new file mode 100644
index 000000000000..7c1128efb840
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/types-docopt/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "types-docopt";
+  version = "0.6.11.4";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-mRpkwVaTEMIkCuc0/SwQYnq7ikr6875axvTv+aYB8xo=";
+  };
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "docopt-stubs"
+  ];
+
+  meta = with lib; {
+    description = "Typing stubs for docopt";
+    homepage = "https://pypi.org/project/types-docopt/";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/types-html5lib/default.nix b/nixpkgs/pkgs/development/python-modules/types-html5lib/default.nix
new file mode 100644
index 000000000000..843b1a108c85
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/types-html5lib/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "types-html5lib";
+  version = "1.1.11.15";
+  format = "setuptools";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-gOGiBi0io6/+XCjZfaML/786B205PID8bxZxIWwb1JI=";
+  };
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "html5lib-stubs"
+  ];
+
+  meta = with lib; {
+    description = "Typing stubs for html5lib";
+    homepage = "https://pypi.org/project/types-html5lib/";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/types-redis/default.nix b/nixpkgs/pkgs/development/python-modules/types-redis/default.nix
index 8275ed31f944..adbf50aa924b 100644
--- a/nixpkgs/pkgs/development/python-modules/types-redis/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/types-redis/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "types-redis";
-  version = "4.6.0.4";
+  version = "4.6.0.5";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-xHWp089z3WlsOIfTBkQyP8VvXgCvlhUQNbO1tSh1ybM=";
+    hash = "sha256-XxedEL08qZWoE0qvzd/D4S1SsghDfEUp7yfmisswHzg=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/ulid-transform/default.nix b/nixpkgs/pkgs/development/python-modules/ulid-transform/default.nix
index d6ec6611b755..77c4b099687d 100644
--- a/nixpkgs/pkgs/development/python-modules/ulid-transform/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ulid-transform/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "ulid-transform";
-  version = "0.8.0";
+  version = "0.8.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "bdraco";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-UOAeIVjn3Z5zC4jZP0y+XH1HjYesxjGmFYpEknu8cag=";
+    hash = "sha256-isngr9CZ2YYuq+5s3p4HXrTU20vPqZGZ1r8mBoVkxiI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/universal-pathlib/default.nix b/nixpkgs/pkgs/development/python-modules/universal-pathlib/default.nix
index 802844afb65d..966e9c459d86 100644
--- a/nixpkgs/pkgs/development/python-modules/universal-pathlib/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/universal-pathlib/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, pythonOlder
 , fetchPypi
 , setuptools
 , setuptools-scm
@@ -8,13 +9,15 @@
 
 buildPythonPackage rec {
   pname = "universal-pathlib";
-  version = "0.1.1";
+  version = "0.1.3";
   format = "pyproject";
 
+  disabled = pythonOlder "3.8";
+
   src = fetchPypi {
     pname = "universal_pathlib";
     inherit version;
-    hash = "sha256-UhTIbyEP6rm+W8wALwQtZeruw8CTP9ZlpDNstw6GxZ0=";
+    hash = "sha256-GgUqteBRcwHfZr5lF+n+Y82fwAgT5c5xpzcBRBrCtcg=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/unstructured-api-tools/default.nix b/nixpkgs/pkgs/development/python-modules/unstructured-api-tools/default.nix
index 7b3b5c8983cd..b3c904ba2f24 100644
--- a/nixpkgs/pkgs/development/python-modules/unstructured-api-tools/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/unstructured-api-tools/default.nix
@@ -28,7 +28,7 @@
 , pytest-mock
 }:
 let
-  version = "0.10.10";
+  version = "0.10.11";
 in
 buildPythonPackage {
   pname = "unstructured-api-tools";
@@ -40,8 +40,8 @@ buildPythonPackage {
   src = fetchFromGitHub {
     owner = "Unstructured-IO";
     repo = "unstructured-api-tools";
-    rev = version;
-    hash = "sha256-CJ5bsII24hw03JN4+8VywYRYCsnMlYHjmaIIn0zttIs=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-t1fK40ayR2bxc1iMIwvn/OHuyVlR98Gq+NpIhOmaP+4=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/unstructured/default.nix b/nixpkgs/pkgs/development/python-modules/unstructured/default.nix
index 02b060c790f4..951aec2cd879 100644
--- a/nixpkgs/pkgs/development/python-modules/unstructured/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/unstructured/default.nix
@@ -133,6 +133,8 @@ buildPythonPackage {
     grpcio
   ];
 
+  passthru.optional-dependencies = optional-dependencies;
+
   meta = with lib; {
     description = "Open source libraries and APIs to build custom preprocessing pipelines for labeling, training, or production machine learning pipelines";
     homepage = "https://github.com/Unstructured-IO/unstructured";
diff --git a/nixpkgs/pkgs/development/python-modules/us/default.nix b/nixpkgs/pkgs/development/python-modules/us/default.nix
index 4e7d97068f25..e489879bd502 100644
--- a/nixpkgs/pkgs/development/python-modules/us/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/us/default.nix
@@ -2,35 +2,52 @@
 , buildPythonPackage
 , fetchPypi
 , jellyfish
+, pytestCheckHook
+, pythonOlder
+, pytz
 }:
 
 buildPythonPackage rec {
   pname = "us";
-  version = "2.0.2";
+  version = "3.1.1";
+  format = "setuptools";
 
-  propagatedBuildInputs = [ jellyfish ];
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "cb11ad0d43deff3a1c3690c74f0c731cff5b862c73339df2edd91133e1496fbc";
+    hash = "sha256-40eWPo0kocp0N69EP6aFkXdoR7UMhlDY7w61NILnBcI=";
   };
 
-  # Upstream requires jellyfish==0.5.6 but we have 0.6.1
   postPatch = ''
-    substituteInPlace setup.py --replace "jellyfish==" "jellyfish>="
+    # Upstream spins jellyfish
+    substituteInPlace setup.py \
+      --replace "jellyfish==" "jellyfish>="
   '';
 
-  doCheck = false; # pypi version doesn't include tests
+  propagatedBuildInputs = [
+    jellyfish
+  ];
 
-  meta = {
+  nativeCheckInputs = [
+    pytestCheckHook
+    pytz
+  ];
+
+  pythonImportsCheck = [
+    "us"
+  ];
+
+  meta = with lib; {
     description = "A package for easily working with US and state metadata";
     longDescription = ''
-    all US states and territories, postal abbreviations, Associated Press style
-    abbreviations, FIPS codes, capitals, years of statehood, time zones, phonetic
-    state name lookup, is contiguous or continental, URLs to shapefiles for state,
-    census, congressional districts, counties, and census tracts
+      All US states and territories, postal abbreviations, Associated Press style
+      abbreviations, FIPS codes, capitals, years of statehood, time zones, phonetic
+      state name lookup, is contiguous or continental, URLs to shapefiles for state,
+      census, congressional districts, counties, and census tracts.
     '';
     homepage = "https://github.com/unitedstates/python-us/";
-    license = lib.licenses.bsd3;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/vega/default.nix b/nixpkgs/pkgs/development/python-modules/vega/default.nix
index b071612562aa..556d06d7d393 100644
--- a/nixpkgs/pkgs/development/python-modules/vega/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vega/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
 , pythonOlder
 , pythonRelaxDepsHook
@@ -26,10 +27,14 @@ buildPythonPackage rec {
     hash = "sha256-v1/8taHdN1n9+gy7L+g/wAJ2x9FwYCaxZiEdFqLct1Y=";
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "poetry.masonry.api" "poetry.core.masonry.api"
-  '';
+  patches = [
+    # https://github.com/vega/ipyvega/pull/507
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core.patch";
+      url = "https://github.com/vega/ipyvega/commit/1a5028ee5d54e24b9650b66685f54c42b72c7899.patch";
+      hash = "sha256-W8UmMit7DJGKCM9+/OSRLTuRvC0ZR42AP/b/frVEvsk=";
+    })
+  ];
 
   nativeBuildInputs = [
     poetry-core
diff --git a/nixpkgs/pkgs/development/python-modules/vsure/default.nix b/nixpkgs/pkgs/development/python-modules/vsure/default.nix
index 709271d0905f..f8242d34f4c2 100644
--- a/nixpkgs/pkgs/development/python-modules/vsure/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/vsure/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "vsure";
-  version = "2.6.5";
+  version = "2.6.6";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-2w1D0380ljgRa5NSPAUlUPFTmGzjl79hyLwirmuHmGo=";
+    hash = "sha256-ecrBvKOhW3znVoXHQeKKW4o/hbA4fLhxJrWZObwtki8=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/watchfiles/default.nix b/nixpkgs/pkgs/development/python-modules/watchfiles/default.nix
index 3f75354376dd..2d2b9aa649ca 100644
--- a/nixpkgs/pkgs/development/python-modules/watchfiles/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/watchfiles/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "watchfiles";
-  version = "0.19.0";
+  version = "0.20.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -28,13 +28,13 @@ buildPythonPackage rec {
     owner = "samuelcolvin";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-NmmeoaIfFMNKCcjH6tPnkpflkN35bKlT76MqF9W8LBc=";
+    hash = "sha256-eoKF6uBHgML63DrDlC1zPfDu/mAMoaevttwqHLCKh+M=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-9ruk3PMcWNLOIGth5fo91/miyF17lgERWL3F4y4as18=";
+    hash = "sha256-4XqR6pZqPAftZoJqZf+iZWp0c8xv00MDJDDETiGGEDo=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/development/python-modules/wcmatch/default.nix b/nixpkgs/pkgs/development/python-modules/wcmatch/default.nix
index 689c27a470e2..08b6e1800955 100644
--- a/nixpkgs/pkgs/development/python-modules/wcmatch/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/wcmatch/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "wcmatch";
-  version = "8.4.1";
+  version = "8.5";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sfBCqJnqTEWLcyHaG14zMePg7HgVg0NN4TAZRs6tuUM=";
+    hash = "sha256-hsF1ctD3XL87yxoY878vnnKzmpwIybSnTpkeGIKo77M=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/web3/default.nix b/nixpkgs/pkgs/development/python-modules/web3/default.nix
index f4afe0646158..ae709ef40886 100644
--- a/nixpkgs/pkgs/development/python-modules/web3/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/web3/default.nix
@@ -1,22 +1,20 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, pythonOlder
 , aiohttp
 , eth-abi
 , eth-account
 , eth-hash
 , eth-typing
 , eth-utils
-, eth-rlp
 , hexbytes
 , ipfshttpclient
 , jsonschema
 , lru-dict
 , protobuf
 , requests
-, typing-extensions
 , websockets
-, pythonOlder
 }:
 
 buildPythonPackage rec {
@@ -33,24 +31,25 @@ buildPythonPackage rec {
     hash = "sha256-RNWCZQjcse415SSNkHhMWckDcBJGFZnjisckF7gbYY8=";
   };
 
+  # Note: to reflect the extra_requires in main/setup.py.
+  passthru.optional-dependencies = {
+    ipfs = [ ipfshttpclient ];
+  };
+
   propagatedBuildInputs = [
     aiohttp
     eth-abi
     eth-account
-    eth-hash
-    eth-rlp
+    eth-hash ] ++ eth-hash.optional-dependencies.pycryptodome ++ [
     eth-typing
     eth-utils
     hexbytes
-    ipfshttpclient
     jsonschema
     lru-dict
     protobuf
     requests
     websockets
-  ] ++ lib.optionals (pythonOlder "3.8") [
-    typing-extensions
-  ] ++ eth-hash.optional-dependencies.pycryptodome;
+  ];
 
   # TODO: package eth-tester required for tests
   doCheck = false;
@@ -64,9 +63,9 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Web3 library for interactions";
-    homepage = "https://github.com/ethereum/web3";
+    description = "A python interface for interacting with the Ethereum blockchain and ecosystem";
+    homepage = "https://web3py.readthedocs.io/";
     license = licenses.mit;
-    maintainers = with maintainers; [ raitobezarius ];
+    maintainers = with maintainers; [ hellwolf ];
   };
 }
diff --git a/nixpkgs/pkgs/development/python-modules/wheel/default.nix b/nixpkgs/pkgs/development/python-modules/wheel/default.nix
index 3be508a0ec59..16c6c2dc087d 100644
--- a/nixpkgs/pkgs/development/python-modules/wheel/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/wheel/default.nix
@@ -1,21 +1,19 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, bootstrapped-pip
-, setuptools
+, flit-core
 }:
 
 buildPythonPackage rec {
   pname = "wheel";
-  version = "0.38.4";
-  format = "other";
+  version = "0.41.1";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pypa";
     repo = pname;
     rev = version;
-    hash = "sha256-yZLU0t/nz6kfnnoLL15bybOxN4+SJUaTJsCpGffl1QU=";
-    name = "${pname}-${version}-source";
+    hash = "sha256-/EaDJ2zI/ly2BrrGhiZGwiBYDVPYWTki+87UqtCS3bw=";
     postFetch = ''
       cd $out
       mv tests/testdata/unicode.dist/unicodedist/åäö_日本語.py \
@@ -25,16 +23,13 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
-    bootstrapped-pip
-    setuptools
+    flit-core
   ];
 
   # No tests in archive
   doCheck = false;
-  pythonImportsCheck = [ "wheel" ];
 
-  # We add this flag to ignore the copy installed by bootstrapped-pip
-  pipInstallFlags = [ "--ignore-installed" ];
+  pythonImportsCheck = [ "wheel" ];
 
   meta = with lib; {
     homepage = "https://github.com/pypa/wheel";
diff --git a/nixpkgs/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix b/nixpkgs/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix
index 5985b96d6dc9..91c56472e77e 100644
--- a/nixpkgs/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/whirlpool-sixth-sense/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "whirlpool-sixth-sense";
-  version = "0.18.4";
+  version = "0.18.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "abmantis";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-9dwkylr+aCTGw/VIY90nxq8IkqBASeEfdr5JGz7pZrc=";
+    hash = "sha256-0NJsZex054CWfKX2wyJRd6Cnxa89mNrZN59VqIV2MD8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/whitenoise/default.nix b/nixpkgs/pkgs/development/python-modules/whitenoise/default.nix
index 9a6d19583455..13168c3757eb 100644
--- a/nixpkgs/pkgs/development/python-modules/whitenoise/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/whitenoise/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "whitenoise";
-  version = "6.4.0";
+  version = "6.5.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "evansd";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-ouEoqMcNh3Vwahwaq6bGQuVUFViVN14CDJosDXC5ozI=";
+    hash = "sha256-g1D0tjGsAP3y1fWvODWwNvxnTSZJuTpyZ0Otk83Oq9E=";
   };
 
   nativeBuildInputs = [
@@ -57,7 +57,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Library to serve static file for WSGI applications";
-    homepage = "https://whitenoise.evans.io/";
+    homepage = "https://whitenoise.readthedocs.io/";
     changelog = "https://github.com/evansd/whitenoise/blob/${version}/docs/changelog.rst";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
diff --git a/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix b/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix
index 57d1549ee867..156fbb9d387a 100644
--- a/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xlsx2csv/default.nix
@@ -2,6 +2,8 @@
 , buildPythonPackage
 , fetchPypi
 , setuptools
+, setuptools-scm
+, wheel
 }:
 
 buildPythonPackage rec {
@@ -16,6 +18,8 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools
+    setuptools-scm
+    wheel
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix b/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix
index a04ff8b72eed..33911fbd16db 100644
--- a/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xml2rfc/default.nix
@@ -11,6 +11,7 @@
 , jinja2
 , lxml
 , markupsafe
+, platformdirs
 , pycairo
 , pycountry
 , pyflakes
@@ -26,7 +27,7 @@
 
 buildPythonPackage rec {
   pname = "xml2rfc";
-  version = "3.17.3";
+  version = "3.18.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -35,7 +36,7 @@ buildPythonPackage rec {
     owner = "ietf-tools";
     repo = "xml2rfc";
     rev = "refs/tags/v${version}";
-    hash = "sha256-5RL4DkWcQRxzi1dhSJlGgoU0BU3aUWOfBNINFKiOwLg=";
+    hash = "sha256-yhzOfX2umux1ulDiInbbKXvATA+k1TLQrSa9vcR/i58=";
   };
 
   postPatch = ''
@@ -56,6 +57,7 @@ buildPythonPackage rec {
     jinja2
     lxml
     markupsafe
+    platformdirs
     pycountry
     pyflakes
     pypdf2
diff --git a/nixpkgs/pkgs/development/python-modules/xpath-expressions/default.nix b/nixpkgs/pkgs/development/python-modules/xpath-expressions/default.nix
index eebd30364e47..97e5e62b01aa 100644
--- a/nixpkgs/pkgs/development/python-modules/xpath-expressions/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/xpath-expressions/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , lxml
 , poetry-core
 , pythonOlder
@@ -10,16 +11,25 @@
 buildPythonPackage rec {
   pname = "xpath-expressions";
   version = "1.1.0";
-  disabled = pythonOlder "3.5";
   format = "pyproject";
+  disabled = pythonOlder "3.5";
 
   src = fetchFromGitHub {
     owner = "orf";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0l289iw2zmzxyfi3g2z7b917vmsaz47h5jp871zvykpmpigc632h";
+    hash = "sha256-UAzDXrz1Tr9/OOjKAg/5Std9Qlrnizei8/3XL3hMSFA=";
   };
 
+  patches = [
+    # https://github.com/orf/xpath-expressions/pull/4
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core.patch";
+      url = "https://github.com/orf/xpath-expressions/commit/3c5900fd6b2d08dd9468707f35ab42072cf75bd3.patch";
+      hash = "sha256-IeV6ncJyt/w2s5TPpbM5a3pljNT6Bp5PIiqgTg2iTRA=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
   ];
@@ -29,12 +39,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    # Was fixed upstream but not released
-    substituteInPlace pyproject.toml \
-      --replace "poetry.masonry.api" "poetry.core.masonry.api"
-  '';
-
   pythonImportsCheck = [ "xpath" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix b/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix
index 72d5e4035519..8334fba45ffb 100644
--- a/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/ytmusicapi/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , pythonOlder
 , requests
 , setuptools
@@ -9,14 +9,16 @@
 
 buildPythonPackage rec {
   pname = "ytmusicapi";
-  version = "1.1.1";
+  version = "1.2.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-UCWNub0FErdmF3kGSIJlpIcKdPZdPzJ5y8yx9ZPBUlw=";
+  src = fetchFromGitHub {
+    owner = "sigma67";
+    repo = "ytmusicapi";
+    rev = "refs/tags/${version}";
+    hash = "sha256-YgV3kCvCOLNXb3cWBVXRuzH4guuvPpXVojOnSnrXj20=";
   };
 
   nativeBuildInputs = [
@@ -24,6 +26,8 @@ buildPythonPackage rec {
     setuptools-scm
   ];
 
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
   propagatedBuildInputs = [
     requests
   ];
diff --git a/nixpkgs/pkgs/development/python-modules/zephyr-python-api/default.nix b/nixpkgs/pkgs/development/python-modules/zephyr-python-api/default.nix
new file mode 100644
index 000000000000..07cc6a2b7a19
--- /dev/null
+++ b/nixpkgs/pkgs/development/python-modules/zephyr-python-api/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, requests
+, setuptools
+}:
+
+buildPythonPackage rec {
+  pname = "zephyr-python-api";
+  version = "0.0.3";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-M9Kf0RtoSeDFAAgAuks+Ek+Wg5OM8qmd3eDoaAgAa3A=";
+  };
+
+  nativeBuildInputs = [ setuptools ];
+
+  propagatedBuildInputs = [
+    requests
+  ];
+
+  # No tests in archive
+  doCheck = false;
+
+  pythonImportsCheck = [ "zephyr" ];
+
+  meta = {
+    homepage = "https://github.com/nassauwinter/zephyr-python-api";
+    description = "A set of wrappers for Zephyr Scale (TM4J) REST API";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ rapiteanu ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix b/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
index 1fe56ea5c747..0fb2134276e4 100644
--- a/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zeroconf/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "zeroconf";
-  version = "0.82.1";
+  version = "0.88.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "jstasiak";
     repo = "python-zeroconf";
     rev = "refs/tags/${version}";
-    hash = "sha256-8zfhrRjW+WucwCo5M+rPOjuqfNKI6ne3bTumwDGIcbI=";
+    hash = "sha256-PE/KK2MFSVinaCLztdu7LS+gSemlq4UzVVwSjK+9yiM=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix b/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
index 29ffbdeb3709..698e93d76076 100644
--- a/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "zha-quirks";
-  version = "0.0.102";
+  version = "0.0.103";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = "zha-device-handlers";
     rev = "refs/tags/${version}";
-    hash = "sha256-TsL6JRxYf8KqmLqfN0nosxaTbzezlP4Q0Fb876WeTHI=";
+    hash = "sha256-H6LkCjpyj1uk05aIvO2TNJoAEXsPZlsIHo+t5rO5ikY=";
   };
 
   propagatedBuildInputs = [
diff --git a/nixpkgs/pkgs/development/python-modules/zigpy/default.nix b/nixpkgs/pkgs/development/python-modules/zigpy/default.nix
index c73600df5a52..77fb2ac72c42 100644
--- a/nixpkgs/pkgs/development/python-modules/zigpy/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zigpy/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "zigpy";
-  version = "0.56.4";
+  version = "0.57.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = "zigpy";
     rev = "refs/tags/${version}";
-    hash = "sha256-PxvTg/z7WmJaH/iwHoJu2bQDLR4G5nkMS5fSP46C3mQ=";
+    hash = "sha256-79TOt3PRvkhuF6wf+acYhhzFFkYX0l3yLpxv8dNRk1U=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/development/python-modules/zimports/default.nix b/nixpkgs/pkgs/development/python-modules/zimports/default.nix
index ee9d683c8642..22cd50c9189e 100644
--- a/nixpkgs/pkgs/development/python-modules/zimports/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/zimports/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "zimports";
-  version = "0.6.0";
+  version = "0.6.1";
   format = "setuptools";
 
   # upstream technically support 3.7 through 3.9, but 3.10 happens to work while 3.11 breaks with an import error
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "sqlalchemyorg";
     repo = "zimports";
     rev = "refs/tags/v${version}";
-    hash = "sha256-qm5mA8pCSLbkupGBo+ppHSW6uy1j/FfV3idvGQGhjqU=";
+    hash = "sha256-+sDvl8z0O0cZyS1oZgt924hlOkYeHiStpXL9y9+JZ5I=";
   };
 
   propagatedBuildInputs = [