Commit graph

11224 commits

Author SHA1 Message Date
citizen204
8fc25b3045
docs: clarify when filter regexes must be quoted (#8346)
Applies reviewer's suggested wording and drops the unrelated
certs.py/test_certs.py changes that had leaked into this branch.

Fixes #7715
2026-08-22 11:33:08 +02:00
Rogdham
72995cab1c
Use compression.zstd (PEP-784) (#8397)
* Use compression.zstd (PEP-784)

* [autofix.ci] apply automated fixes

* Fix coverage issue

* pin upper bound

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2026-08-21 20:29:27 +00:00
dependabot[bot]
e74f9dc920
build(deps-dev): bump requests from 2.33.1 to 2.34.2 (#8394)
* build(deps-dev): bump requests from 2.33.1 to 2.34.2

Bumps [requests](https://github.com/psf/requests) from 2.33.1 to 2.34.2.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.33.1...v2.34.2)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.34.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-21 20:23:31 +00:00
dependabot[bot]
16eccae49d
build(deps): update urwid requirement from <=4.0.8,>=2.6.14 to >=2.6.14,<=4.0.9 (#8398)
build(deps): update urwid requirement

Updates the requirements on [urwid](https://github.com/urwid/urwid) to permit the latest version.
- [Release notes](https://github.com/urwid/urwid/releases)
- [Changelog](https://github.com/urwid/urwid/blob/master/docs/changelog.rst)
- [Commits](https://github.com/urwid/urwid/compare/2.6.14...4.0.9)

---
updated-dependencies:
- dependency-name: urwid
  dependency-version: 4.0.9
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-21 20:22:29 +00:00
dependabot[bot]
4b5c2beb97
build(deps-dev): bump build from 1.4.3 to 1.5.0 (#8391)
Bumps [build](https://github.com/pypa/build) from 1.4.3 to 1.5.0.
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.4.3...1.5.0)

---
updated-dependencies:
- dependency-name: build
  dependency-version: 1.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-21 20:19:09 +00:00
dependabot[bot]
3f5265c17a
build(deps): update tornado requirement from <=6.5.5,>=6.5.0 to >=6.5.0,<=6.5.8 (#8393)
build(deps): update tornado requirement

Updates the requirements on [tornado](https://github.com/tornadoweb/tornado) to permit the latest version.
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst)
- [Commits](https://github.com/tornadoweb/tornado/compare/v6.5.0...v6.5.8)

---
updated-dependencies:
- dependency-name: tornado
  dependency-version: 6.5.8
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-20 23:12:01 +00:00
dependabot[bot]
f86d347a4c
build(deps-dev): bump click from 8.4.0 to 8.4.2 (#8392)
* build(deps-dev): bump click from 8.4.0 to 8.4.2

Bumps [click](https://github.com/pallets/click) from 8.4.0 to 8.4.2.
- [Release notes](https://github.com/pallets/click/releases)
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.md)
- [Commits](https://github.com/pallets/click/compare/8.4.0...8.4.2)

---
updated-dependencies:
- dependency-name: click
  dependency-version: 8.4.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-20 23:09:06 +00:00
Sleeyax
43ee31cbc5
chore: add a sample flow generator for mitmweb (#8342)
test/helper_tools/gen_sample_flows.py writes a flow file with one flow per type and state the mitmweb flow table can display, including the TCP, UDP, DNS and QUIC flows a regular HTTP proxy never sees.
This makes it possible to eyeball the whole table without having to capture the traffic first.
Passing --upload pushes the flows into a running mitmweb instead of writing a file.
2026-08-21 01:08:47 +02:00
dependabot[bot]
2209baf32d
build(deps-dev): bump wheel from 0.47.0 to 0.48.0 (#8390)
* build(deps-dev): bump wheel from 0.47.0 to 0.48.0

Bumps [wheel](https://github.com/pypa/wheel) from 0.47.0 to 0.48.0.
- [Release notes](https://github.com/pypa/wheel/releases)
- [Changelog](https://github.com/pypa/wheel/blob/main/docs/news.rst)
- [Commits](https://github.com/pypa/wheel/compare/0.47.0...0.48.0)

---
updated-dependencies:
- dependency-name: wheel
  dependency-version: 0.48.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-20 23:08:44 +00:00
Gaurav Dubey
f384cb7401
net.tls: handle SSL.Error from set_min/max_proto_version in is_supported_version (#8294)
* net.tls: handle SSL.Error from set_min/max_proto_version in is_supported_version

is_supported_version() built an SSL.Context, set the min/max protocol
version, then probed support with client_conn.recv(). Only the recv()
probe was wrapped in try/except SSL.Error.

On OpenSSL builds that have dropped a protocol version entirely (e.g.
SSLv3 after POODLE / CVE-2014-3566, see pyca/cryptography#9523),
set_min_proto_version(SSL3_VERSION) raises SSL.Error already at
context-setup time, before the guarded recv(). The exception then
propagated unhandled and crashed callers such as
TlsConfig._warn_unsupported_version, which iterates over every Version to
build the "supported versions" list.

Move the protocol-version setters and connection setup inside the
existing try, so a setup-time SSL.Error is treated the same as a
probe-time one: the version is reported as unsupported (return False)
instead of raising. Behavior for currently-supported versions is
unchanged.

Add a regression test that monkeypatches SSL.Context.set_min_proto_version
to raise SSL.Error, reproducing the crash path deterministically on any
OpenSSL build, and clear the is_supported_version LRU cache around it.

Closes #8264

* Remove test for SSL context setup error handling

---------

Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2026-08-20 22:57:26 +00:00
dependabot[bot]
b4c895efd5
build(deps-dev): bump the deploy group with 2 updates (#8384)
* build(deps-dev): bump the deploy group with 2 updates

Bumps the deploy group with 2 updates: [awscli](https://github.com/aws/aws-cli) and [twine](https://github.com/pypa/twine).


Updates `awscli` from 1.45.34 to 1.46.0
- [Release notes](https://github.com/aws/aws-cli/releases)
- [Commits](https://github.com/aws/aws-cli/compare/1.45.34...1.46.0)

Updates `twine` from 6.2.0 to 7.0.0
- [Release notes](https://github.com/pypa/twine/releases)
- [Changelog](https://github.com/pypa/twine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/twine/compare/6.2.0...7.0.0)

---
updated-dependencies:
- dependency-name: awscli
  dependency-version: 1.46.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deploy
- dependency-name: twine
  dependency-version: 7.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: deploy
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-21 00:48:15 +02:00
dependabot[bot]
64994386e4
build(deps): update urwid requirement from <=4.0.2,>=2.6.14 to >=2.6.14,<=4.0.8 (#8388)
* build(deps): update urwid requirement

Updates the requirements on [urwid](https://github.com/urwid/urwid) to permit the latest version.
- [Release notes](https://github.com/urwid/urwid/releases)
- [Changelog](https://github.com/urwid/urwid/blob/master/docs/changelog.rst)
- [Commits](https://github.com/urwid/urwid/compare/2.6.14...4.0.8)

---
updated-dependencies:
- dependency-name: urwid
  dependency-version: 4.0.8
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-21 00:48:06 +02:00
dependabot[bot]
c53f951a52
build(deps-dev): bump ruff from 0.15.11 to 0.16.3 (#8386)
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.11 to 0.16.3.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.15.11...0.16.3)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.16.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-20 22:47:00 +00:00
dependabot[bot]
5662499c60
build(deps): update h2 requirement from <=4.3.0,>=4.3.0 to >=4.3.0,<=4.4.1 (#8385)
build(deps): update h2 requirement

Updates the requirements on [h2](https://github.com/python-hyper/h2) to permit the latest version.
- [Changelog](https://github.com/python-hyper/h2/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/python-hyper/h2/compare/v4.3.0...v4.4.1)

---
updated-dependencies:
- dependency-name: h2
  dependency-version: 4.4.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-20 22:46:43 +00:00
dependabot[bot]
85e73a1576
build(deps): update asgiref requirement from <=3.11.1,>=3.2.10 to >=3.2.10,<=3.12.1 (#8387)
build(deps): update asgiref requirement

Updates the requirements on [asgiref](https://github.com/django/asgiref) to permit the latest version.
- [Changelog](https://github.com/django/asgiref/blob/main/CHANGELOG.txt)
- [Commits](https://github.com/django/asgiref/compare/3.2.10...3.12.1)

---
updated-dependencies:
- dependency-name: asgiref
  dependency-version: 3.12.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-20 22:45:48 +00:00
dependabot[bot]
8087011220
build(deps): bump the github-actions group with 16 updates (#8389)
Bumps the github-actions group with 16 updates:

| Package | From | To |
| --- | --- | --- |
| [mhils/workflows/checkout](https://github.com/mhils/workflows) | `8fe88b311a66c441e01edfebe4cd90d8a47fa335` | `acc73c7af100db9fb3f1ad3c0178d382048e943f` |
| [mhils/workflows/setup-uv](https://github.com/mhils/workflows) | `8fe88b311a66c441e01edfebe4cd90d8a47fa335` | `acc73c7af100db9fb3f1ad3c0178d382048e943f` |
| [mhils/workflows/uv-sync](https://github.com/mhils/workflows) | `8fe88b311a66c441e01edfebe4cd90d8a47fa335` | `acc73c7af100db9fb3f1ad3c0178d382048e943f` |
| [actions/setup-node](https://github.com/actions/setup-node) | `6.4.0` | `7.0.0` |
| [codecov/codecov-action](https://github.com/codecov/codecov-action) | `6.0.1` | `7.0.0` |
| [mhils/workflows/.github/workflows/python-build.yml](https://github.com/mhils/workflows) | `8fe88b311a66c441e01edfebe4cd90d8a47fa335` | `acc73c7af100db9fb3f1ad3c0178d382048e943f` |
| [actions/cache](https://github.com/actions/cache) | `5.0.5` | `6.1.0` |
| [mhils/workflows/.github/workflows/alls-green.yml](https://github.com/mhils/workflows) | `8fe88b311a66c441e01edfebe4cd90d8a47fa335` | `acc73c7af100db9fb3f1ad3c0178d382048e943f` |
| [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) | `4.0.0` | `4.2.0` |
| [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) | `4.0.0` | `4.2.0` |
| [docker/login-action](https://github.com/docker/login-action) | `4.1.0` | `4.6.0` |
| [docker/metadata-action](https://github.com/docker/metadata-action) | `6.0.0` | `6.2.0` |
| [docker/build-push-action](https://github.com/docker/build-push-action) | `7.1.0` | `7.3.0` |
| [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance) | `4.1.0` | `4.2.2` |
| [actions/checkout](https://github.com/actions/checkout) | `6.0.2` | `7.0.1` |
| [mhils/workflows/setup-python](https://github.com/mhils/workflows) | `8fe88b311a66c441e01edfebe4cd90d8a47fa335` | `acc73c7af100db9fb3f1ad3c0178d382048e943f` |


Updates `mhils/workflows/checkout` from 8fe88b311a66c441e01edfebe4cd90d8a47fa335 to acc73c7af100db9fb3f1ad3c0178d382048e943f
- [Release notes](https://github.com/mhils/workflows/releases)
- [Commits](8fe88b311a...acc73c7af1)

Updates `mhils/workflows/setup-uv` from 8fe88b311a66c441e01edfebe4cd90d8a47fa335 to acc73c7af100db9fb3f1ad3c0178d382048e943f
- [Release notes](https://github.com/mhils/workflows/releases)
- [Commits](8fe88b311a...acc73c7af1)

Updates `mhils/workflows/uv-sync` from 8fe88b311a66c441e01edfebe4cd90d8a47fa335 to acc73c7af100db9fb3f1ad3c0178d382048e943f
- [Release notes](https://github.com/mhils/workflows/releases)
- [Commits](8fe88b311a...acc73c7af1)

Updates `actions/setup-node` from 6.4.0 to 7.0.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](48b55a011b...8207627860)

Updates `codecov/codecov-action` from 6.0.1 to 7.0.0
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](e79a6962e0...fb8b3582c8)

Updates `mhils/workflows/.github/workflows/python-build.yml` from 8fe88b311a66c441e01edfebe4cd90d8a47fa335 to acc73c7af100db9fb3f1ad3c0178d382048e943f
- [Release notes](https://github.com/mhils/workflows/releases)
- [Commits](8fe88b311a...acc73c7af1)

Updates `actions/cache` from 5.0.5 to 6.1.0
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](27d5ce7f10...55cc834586)

Updates `mhils/workflows/.github/workflows/alls-green.yml` from 8fe88b311a66c441e01edfebe4cd90d8a47fa335 to acc73c7af100db9fb3f1ad3c0178d382048e943f
- [Release notes](https://github.com/mhils/workflows/releases)
- [Commits](8fe88b311a...acc73c7af1)

Updates `docker/setup-qemu-action` from 4.0.0 to 4.2.0
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](ce360397dd...96fe6ef7f3)

Updates `docker/setup-buildx-action` from 4.0.0 to 4.2.0
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](4d04d5d948...bb05f3f551)

Updates `docker/login-action` from 4.1.0 to 4.6.0
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](4907a6ddec...dbcb813823)

Updates `docker/metadata-action` from 6.0.0 to 6.2.0
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](030e881283...dc80280410)

Updates `docker/build-push-action` from 7.1.0 to 7.3.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](bcafcacb16...53b7df96c9)

Updates `actions/attest-build-provenance` from 4.1.0 to 4.2.2
- [Release notes](https://github.com/actions/attest-build-provenance/releases)
- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md)
- [Commits](a2bbfa2537...4d101475d8)

Updates `actions/checkout` from 6.0.2 to 7.0.1
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](de0fac2e45...3d3c42e5aa)

Updates `mhils/workflows/setup-python` from 8fe88b311a66c441e01edfebe4cd90d8a47fa335 to acc73c7af100db9fb3f1ad3c0178d382048e943f
- [Release notes](https://github.com/mhils/workflows/releases)
- [Commits](8fe88b311a...acc73c7af1)

---
updated-dependencies:
- dependency-name: mhils/workflows/checkout
  dependency-version: acc73c7af100db9fb3f1ad3c0178d382048e943f
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: mhils/workflows/setup-uv
  dependency-version: acc73c7af100db9fb3f1ad3c0178d382048e943f
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: mhils/workflows/uv-sync
  dependency-version: acc73c7af100db9fb3f1ad3c0178d382048e943f
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: actions/setup-node
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: codecov/codecov-action
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: mhils/workflows/.github/workflows/python-build.yml
  dependency-version: acc73c7af100db9fb3f1ad3c0178d382048e943f
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: actions/cache
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: mhils/workflows/.github/workflows/alls-green.yml
  dependency-version: acc73c7af100db9fb3f1ad3c0178d382048e943f
  dependency-type: direct:production
  dependency-group: github-actions
- dependency-name: docker/setup-qemu-action
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/setup-buildx-action
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/login-action
  dependency-version: 4.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/metadata-action
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/build-push-action
  dependency-version: 7.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: actions/attest-build-provenance
  dependency-version: 4.2.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: actions/checkout
  dependency-version: 7.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: mhils/workflows/setup-python
  dependency-version: acc73c7af100db9fb3f1ad3c0178d382048e943f
  dependency-type: direct:production
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-20 22:43:37 +00:00
dependabot[bot]
75779f936f
build(deps-dev): bump pyinstaller from 6.21.0 to 6.22.0 in the pyinstaller group (#8382)
build(deps-dev): bump pyinstaller in the pyinstaller group

Bumps the pyinstaller group with 1 update: [pyinstaller](https://github.com/pyinstaller/pyinstaller).


Updates `pyinstaller` from 6.21.0 to 6.22.0
- [Release notes](https://github.com/pyinstaller/pyinstaller/releases)
- [Changelog](https://github.com/pyinstaller/pyinstaller/blob/develop/doc/CHANGES.rst)
- [Commits](https://github.com/pyinstaller/pyinstaller/compare/v6.21.0...v6.22.0)

---
updated-dependencies:
- dependency-name: pyinstaller
  dependency-version: 6.22.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pyinstaller
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-20 22:38:46 +00:00
Maximilian Hils
c5c68a9986
Reduce dependency cooldown
Dependabot seems to have a bug where it does not update dependencies with too-frequent updates at all if a cooldown is applied.
2026-08-21 00:29:06 +02:00
Aroh Maurya
bae1a7e179
docs: mention Microsoft Store install on Windows (#8374)
The Windows installation instructions only pointed at the installer and
standalone binaries from mitmproxy.org, even though every release is also
published to the Microsoft Store by CI (release/deploy-microsoft-store.py).

Refs #6053.
2026-08-13 15:50:59 +02:00
Lei Yan
88462f4ab3
fix: replace deprecated pyparsing API aliases with snake_case equivalents (#8344)
* fix: replace deprecated pyparsing API aliases with snake_case equivalents

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-08 08:07:53 +02:00
Sleeyax
d3df6b9567
mitmweb: use SVG icons for flow table resource types (#8337)
* feat(web): replace flow table resource icons with lucide SVGs

The resource type icons were 32x32 PNGs, so they could not be recolored and stayed dark against the dark theme's background.
The SVG icons inherit currentColor and follow the active theme.

getIcon becomes getResourceType and returns a semantic resource type rather than a CSS class name, which keeps the icon choice in the view layer and out of the column's sort key.
Removing the last raster icons also drops the Chromium BSD notice that only covered the four DevTools PNGs.

* refactor(web): size flow rows from the rowHeight prop

Flow rows were 32px tall only as a side effect of the 32x32 icon bitmap, which the virtual scroller's hardcoded rowHeight silently depended on.
Pinning the height in CSS would have restated that number in a second place and would still break for any caller overriding the prop, so rows now take their height from rowHeight directly.
This also stops rows collapsing when the icon column is hidden via web_columns.

* docs(web): drop redundant comments on rowHeight and getResourceType

* docs: tighten the changelog entry for the SVG resource icons

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-04 16:29:59 +02:00
Georg Russe
04ab385563
Fix for modified reason phrase not being sent (#8333)
* Fix modified reason phrase being overridden

* Changelog entry added

* [autofix.ci] apply automated fixes

* test(web): add test to cover FlowHandler response.reason update

* test(web): revert previous test and add new test for modified http_version

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:56:45 +02:00
dependabot[bot]
bbade987f0
build(deps): update pydivert requirement from <=3.1.1,>=2.0.3 to >=2.0.3,<=3.1.3 (#8353)
* build(deps): update pydivert requirement

Updates the requirements on [pydivert](https://github.com/ffalcinelli/pydivert) to permit the latest version.
- [Release notes](https://github.com/ffalcinelli/pydivert/releases)
- [Changelog](https://github.com/ffalcinelli/pydivert/blob/main/CHANGELOG)
- [Commits](https://github.com/ffalcinelli/pydivert/compare/2.0.3...v3.1.3)

---
updated-dependencies:
- dependency-name: pydivert
  dependency-version: 3.1.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:30:15 +02:00
dependabot[bot]
d714e566fe
build(deps-dev): bump maturin from 1.13.3 to 1.14.1 (#8352)
* build(deps-dev): bump maturin from 1.13.3 to 1.14.1

Bumps [maturin](https://github.com/pyo3/maturin) from 1.13.3 to 1.14.1.
- [Release notes](https://github.com/pyo3/maturin/releases)
- [Changelog](https://github.com/PyO3/maturin/blob/main/Changelog.md)
- [Commits](https://github.com/pyo3/maturin/compare/v1.13.3...v1.14.1)

---
updated-dependencies:
- dependency-name: maturin
  dependency-version: 1.14.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:29:55 +02:00
dependabot[bot]
c7d8136165
build(deps): update urwid requirement from <=4.0.0,>=2.6.14 to >=2.6.14,<=4.0.2 (#8351)
* build(deps): update urwid requirement

Updates the requirements on [urwid](https://github.com/urwid/urwid) to permit the latest version.
- [Release notes](https://github.com/urwid/urwid/releases)
- [Changelog](https://github.com/urwid/urwid/blob/master/docs/changelog.rst)
- [Commits](https://github.com/urwid/urwid/compare/2.6.14...4.0.2)

---
updated-dependencies:
- dependency-name: urwid
  dependency-version: 4.0.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:29:34 +02:00
dependabot[bot]
984e8582b7
build(deps-dev): bump awscli from 1.45.12 to 1.45.34 in the deploy group (#8350)
* build(deps-dev): bump awscli from 1.45.12 to 1.45.34 in the deploy group

Bumps the deploy group with 1 update: [awscli](https://github.com/aws/aws-cli).


Updates `awscli` from 1.45.12 to 1.45.34
- [Release notes](https://github.com/aws/aws-cli/releases)
- [Commits](https://github.com/aws/aws-cli/compare/1.45.12...1.45.34)

---
updated-dependencies:
- dependency-name: awscli
  dependency-version: 1.45.34
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: deploy
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:29:13 +02:00
dependabot[bot]
aa9cc56e3c
build(deps-dev): bump tox from 4.54.0 to 4.55.1 in the tox group (#8349)
* build(deps-dev): bump tox from 4.54.0 to 4.55.1 in the tox group

Bumps the tox group with 1 update: [tox](https://github.com/tox-dev/tox).


Updates `tox` from 4.54.0 to 4.55.1
- [Release notes](https://github.com/tox-dev/tox/releases)
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/tox/compare/4.54.0...4.55.1)

---
updated-dependencies:
- dependency-name: tox
  dependency-version: 4.55.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: tox
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:28:51 +02:00
dependabot[bot]
172d7842ae
build(deps): update cryptography requirement from <=49.0.0,>=42.0 to >=42.0,<=50.0.0 in the openssl group (#8348)
* build(deps): update cryptography requirement in the openssl group

Updates the requirements on [cryptography](https://github.com/pyca/cryptography) to permit the latest version.

Updates `cryptography` to 50.0.0
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/42.0.0...50.0.0)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 50.0.0
  dependency-type: direct:production
  dependency-group: openssl
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:28:27 +02:00
dependabot[bot]
1eaeee2d3a
build(deps-dev): bump the pyinstaller group with 2 updates (#8347)
* build(deps-dev): bump the pyinstaller group with 2 updates

Bumps the pyinstaller group with 2 updates: [pyinstaller](https://github.com/pyinstaller/pyinstaller) and [pyinstaller-hooks-contrib](https://github.com/pyinstaller/pyinstaller-hooks-contrib).


Updates `pyinstaller` from 6.20.0 to 6.21.0
- [Release notes](https://github.com/pyinstaller/pyinstaller/releases)
- [Changelog](https://github.com/pyinstaller/pyinstaller/blob/develop/doc/CHANGES.rst)
- [Commits](https://github.com/pyinstaller/pyinstaller/compare/v6.20.0...v6.21.0)

Updates `pyinstaller-hooks-contrib` from 2026.5 to 2026.6
- [Release notes](https://github.com/pyinstaller/pyinstaller-hooks-contrib/releases)
- [Changelog](https://github.com/pyinstaller/pyinstaller-hooks-contrib/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pyinstaller/pyinstaller-hooks-contrib/compare/v2026.5...v2026.6)

---
updated-dependencies:
- dependency-name: pyinstaller
  dependency-version: 6.21.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pyinstaller
- dependency-name: pyinstaller-hooks-contrib
  dependency-version: '2026.6'
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pyinstaller
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:27:49 +02:00
Sleeyax
4c018bb9d4
mitmweb: add status/method badges to the flow table (#8335)
* feat(web): add status/method badges and flow-table tooltips

Replace the inline-colored status text with a colored status-code badge and render the request method as an outlined badge.
Both reuse the semantic state tokens, so they follow the dark theme automatically.
Add hover tooltips (via a new optional Icon `title` prop and a title on the TLS cell) to the TLS, replay, intercept, and error indicators.

Part of #7789.

* feat(web): tone down solid state fills in the dark theme

Add a soft variant of the state palette (`--mitmweb-<state>-soft-bg`/`-fg`) and use it for the status badges and the footer option labels.
A saturated fill glares against a dark surface once it is repeated across every row, so the soft fill sinks towards the background and the label text carries the hue.
The solid tokens stay vivid for the header connection label and `.btn-info`, which appear one at a time and are meant to draw the eye.
Light values alias the existing solid colors, so the light theme is unchanged.

* feat(web): drop the now-unused status-code color tokens

The status column renders a badge that reuses the semantic state tokens, so nothing consumes --mitmweb-status-1xx…5xx/-other any more.

* [autofix.ci] apply automated fixes

* refactor(web): unify the status and method badges into one component

The two components differed only in styling, so a single presentational Badge in common/ now carries the shared class and callers pass the variant class.
statusClass moves to flow/utils next to statusCode, mirroring getIcon which likewise returns a CSS class.

* fix(web): give the status and method badges the same height

The two badges sized themselves from their own font size, padding and border, so the outlined method badge came out about a pixel shorter than the filled status badge.
A fixed height on the shared base plus a transparent border makes the box identical regardless of the variant.

* fix(web): widen the status column so DNS codes fit

The badge's padding and border pushed word-shaped DNS response codes such as NOERROR past the 60px cell, where the table's overflow rule clipped them.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-08-03 09:26:46 +02:00
Kyungmin Kim
9a9c21ed74
ci: add name to macOS app build step for readability (#8343) 2026-08-01 10:08:45 +02:00
Samarth D N
57a2f45bb6
fix: correct typo in test data (#8341) 2026-07-31 16:47:13 +02:00
Sleeyax
c69122bd86
fix(web): theme the sorted flow table header (#8336)
* fix(web): theme the sorted flow table header

The sorted column header and its chevron mask were the only colors left as literals after the semantic token layer landed, because LESS `lighten`/`fadeout` cannot operate on `var()`.
In dark mode this painted the sorted `th` near-white and hid the chevron, which is stroked in `--mitmweb-fg`, against its own mask.

Both now read `--mitmweb-th-sorted-bg`, with the mask deriving its alpha through `color-mix` instead.
The light value is byte-equal to what `lighten(#f2f2f2, 3%)` produced, so the light theme is unchanged.

No LESS color functions remain in the stylesheets, so the note about them in the token header comment goes away too.

* docs: add changelog entry for the sorted flow table header fix

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-29 16:12:35 +02:00
Sleeyax
9362b05c29
feat(web): add dark theme (#8317)
* feat(web): add dark theme and web_theme option

Add a `web_theme` mitmweb option (system/dark/light; default system) and apply it in the frontend by setting `data-theme` on the document root.
`system` follows the OS `prefers-color-scheme` and tracks live changes.
The dark palette overrides the semantic color tokens under `[data-theme="dark"]`, with targeted overrides for surfaces whose colors are consumed by LESS functions.
The CodeMirror content editor switches to the one-dark theme in dark mode.

Part of #7789.

* fix(web): theme native form controls for dark mode

Native selects, inputs, checkboxes and scrollbars ignored the semantic tokens and rendered with the browser's light defaults.
Set color-scheme per theme so they follow it, and replace the remaining literal black text colors on the local-applications input and the close-button hover states with tokens.

* fix(web): make search and close icons legible in dark mode

The search filter icon and the eventlog/flow-detail close icons were hardcoded to black/grey, which is hard to read on dark surfaces.
Route them through the foreground tokens instead.

* [autofix.ci] apply automated fixes

* fix(web): theme header and tab separators for dark mode

The header, nav-tab, and menu-group separator borders were computed with lighten(grey, ...), leaving them as bright literals that stayed light-grey on dark surfaces.
Route them through the border tokens instead so they follow the theme.

* feat(web): add a theme selector to the Options menu

The web_theme option was only reachable by scrolling to the bottom of the raw options list in the Edit Options modal.
Surface it as an Appearance dropdown (system/dark/light) in the header Options menu so the theme is discoverable and switchable in one click.

* refactor(web): drop the dark flow table rule override

The base branch tokenized every flow table row color, so the nested .flow-table tr block in the dark theme now duplicates rules that var() already resolves.
Override the --mitmweb-row-* tokens instead.
Base rows fall through to --mitmweb-bg / --mitmweb-bg-alt like they do in the light theme, rather than carrying their own near-identical literals.

* fix(web): give row hover a dark highlight color

--mitmweb-highlight kept its light value in dark mode, compositing a pale blue over the dark surface and leaving hovered header rows and command suggestions hard to read.

* fix(web): darken the first-line banner in dark mode

The request/response first line reused --mitmweb-accent, which is brightened for dark surfaces and left white monospace text at roughly 2.5:1 contrast.
Give the banner its own token pair so dark mode can use a deep blue with pale text without dragging the accent color along.

* fix(web): make status codes legible in dark mode

The status column painted itself with hardcoded CSS color names.
`darkgreen` and `darkred` are near-invisible against the dark surface, so route the colors through per-class tokens instead.
Light values are byte-equal to the literals they replace.

The shadow token added alongside them is consumed in the next commit.

* fix(web): stop footers casting a light halo in dark mode

Both footer shadows were hardcoded to a light gray, which on a dark surface reads as a thick white border rather than a shadow.
Route them through the shadow token so the dark theme casts black instead.

* fix(web): dim OS-supplied app icons in dark mode

The executable icons in the local-applications dropdown come from the OS as bitmaps, so we cannot recolor them.
macOS hands back a plain white square for the generic executable, which glares against the dark popover.
Dim them via a token so the white square reads as grey while colored app icons stay recognizable.

* fix(web): stop idle scrollbars showing as stray lines in dark mode

Panes such as the flow table reserve a scrollbar gutter permanently via `overflow-y: scroll`.
Under `color-scheme: dark` the UA paints that gutter light, so an idle scrollbar reads as a stray vertical line beside the pane divider rather than as a scrollbar.
Color the track to match the surface so it stays as invisible as it already is on light backgrounds.

* fix(web): blend the process-filter input into its dark header

Under color-scheme: dark the browser paints the native text field a lighter grey than the transparent dropdown header around it, so the input read lighter than the chevron beside it.
Making the field background transparent lets it blend with the header.

* fix(web): make the filter-docs row hover visible in dark mode

The dark highlight token was barely distinguishable from the popover surface, so a hovered suggestion row read as unhighlighted.
Brightening it makes the hovered row stand out.
The command-bar suggestion highlight shares this token and gains the same visibility.

* test(web): cover theme selector and status column colors

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-29 07:45:53 +02:00
Sleeyax
a4b234a3e1
feat(web): add semantic CSS custom-property color layer (#8316)
* feat(web): add semantic CSS custom-property color layer

Introduce a :root set of semantic color tokens (surfaces, text, borders, accent, state) in global.less and route the recurring, directly-used colors across the LESS files through them.
Light-mode values are byte-equal to the literals they replace, so this is a visual no-op; it exists to give a future dark theme a single place to override.
Colors that LESS functions (lighten/darken/fadeout) consume, and one-off decorative colors, are intentionally left as literals because those functions cannot operate on var().

Part of #7789.

* [autofix.ci] apply automated fixes

* refactor(web): route remaining hardcoded colors through color tokens

Route the remaining directly-used background, text, and border literals across the LESS files through the existing semantic tokens introduced in the color layer, reusing tokens rather than adding new ones.
Light-mode colors stay visually unchanged; one-off decorative colors and LESS-function inputs are left as literals.

* refactor(web): tokenize recurring colors and drop dead styles

Add a --mitmweb-highlight token for the shared row-hover / suggestion-selection color (used in header.less and command.less) and a --mitmweb-gray token for the neutral gray reused across mode.less.
Remove the unused .command-suggestion rule and the dead rgba() border fallback in dropdown.less, which was overriding the tokenized border and rendering as translucent black.

* refactor(web): use the accent token for the first line and special tab

Replace the near-accent literals #428bca (flow detail first line) and #396cad (special tab) with --mitmweb-accent so the accent lives in exactly one place.
Both were within a few percent of the token, so this is a small deliberate light-theme shift rather than a visual no-op.
The special tab derived its hover from lighten(@special-color, 10%); since LESS functions cannot operate on var(), it now uses --mitmweb-accent-active, the same hover shade .btn-primary already uses.

* refactor(web): tokenize the mode green left border

Add a --mitmweb-green token for the #77c77a left border in mode.less, mirroring the --mitmweb-gray token already used by the neighbouring .gray-left-border.

* refactor(web): tokenize flow table row state colors

Add --mitmweb-row-* tokens for the highlighted, selected, and selected+highlighted row shades and route flowtable.less through them.
The base rows reuse the existing --mitmweb-bg / --mitmweb-bg-alt surfaces, whose values are byte-equal to the hsl() literals they replace.
Values are unchanged, so this is a visual no-op; it gives the dark theme one place to override the row states.

* docs: drop the changelog entry for the CSS color token layer

The entry conflicts with the upstream CHANGELOG.md on the PR.
Removing it for now; the entry will be re-added once the branch is rebased.

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-18 14:16:31 +02:00
tbodt
6fa0a50ac8
Handle fragmented quic client hellos in ignore_hosts handling (#8296) 2026-07-17 15:28:58 +02:00
tbodt
99054d774d
Don't stall QUIC flows when host ignoring is enabled (#8295)
If allow_hosts or ignore_hosts was set, any QUIC connections would stall
forever after TLS handshake and never get assigned an HttpLayer or e.g.
appear in the flow list in mitmweb. The codepath goes like this:

1. After client TLS handshake completes, next layer hook is invoked with
   data_client = b'', i.e. the data so far inside the QUIC stream
2. _next_layer first checks using _ignore_connection
3. _ignore_connection uses _get_client_hello, passing b'' data_client
4. quick_parse_client_hello_from_datagram raises a type of ValueError
   because b'' is definitely not a valid QUIC packet
5. ValueError is skipped, so dtls_parse_client_hello is tried, which
   also raises a type of ValueError for about the same reason
6. This is now converted into NeedsMoreData, which bails out of the
   entire _next_layer process.

This repeats each time next_layer is called and never makes progress,
even if data is read on the QUIC stream, it's still not going to be a
valid QUIC or DTLS packet.

This fix matches the tcp case and only tries to parse the packet as quic
or dtls if it heuristically looks like that.
2026-07-17 14:14:42 +02:00
Gaurav Dubey
af35c326cb
proxy: bracket IPv6 literals in upstream CONNECT authority (#8326)
* proxy: bracket IPv6 literals in upstream CONNECT authority

When mitmproxy runs in upstream mode and the target server is an IPv6
literal, the CONNECT request and Host header sent to the upstream proxy
built the authority as `host:port` without bracketing the address, e.g.
`CONNECT 2001:db8::1:443` / `Host: 2001:db8::1:443`. That is a malformed
authority per RFC 3986 §3.2.2 / RFC 7230 §5.4, and downstream proxies
(e.g. Burp) reject it as an unparseable CONNECT target.

Bracket IPv6 literals so the authority is `[2001:db8::1]:443`. Hostnames
(still IDNA-encoded) and IPv4 addresses are unchanged.

Closes #8309

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-17 14:07:20 +02:00
Matteo Luppi
c8e8553108
Add Flowfilter description strings (#8245)
* restore previous state + add missing tests

* fix lint and mypy

* [autofix.ci] apply automated fixes

* fix coverage

* [autofix.ci] apply automated fixes

* update pyparsing dependency to version 3.3.2

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-15 15:22:40 +02:00
user77
cca8d91b56
fix(web): avoid infinite componentDidUpdate loop in the event log (#8312)
* fix(web): avoid infinite componentDidUpdate loop in the event log

EventList.componentDidUpdate called this.onViewportUpdate() on every
update, even when the inputs to calcVScroll (the event list and the row
height) had not changed. onViewportUpdate reads the current scroll
position, recomputes vScroll, and setStates when the window shape
changes. Because the event log measures per-row heights, a setState it
produced could feed itself: rendering a new window remeasured rows,
which shifted the computed window, which setState again, so the cycle
never converged and surfaced as "Maximum update depth exceeded" while
scrolling the log.

Gate the call on prevProps.events !== this.props.events ||
prevProps.rowHeight !== this.props.rowHeight, mirroring the FlowTable fix
in #8233. The other call sites (componentDidMount, the resize listener,
the viewport onScroll, and setHeight when a row is first measured) still
drive updates as needed, so scrolling and autoscroll keep working.

Adds a regression test that fails without the gate.

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2026-07-14 10:11:05 +00:00
Luke Hsiao
a138148e4f
build(deps): remove unused msgpack dependency (#8319)
The msgpack contentview was rewritten in Rust and moved to mitmproxy_rs
in #7623, which deleted the only import of the msgpack package. The
pyproject entry survived, and the dependency-bump automation has been
dutifully maintaining the dead dependency ever since, most recently
resolving msgpack 1.1.2 in uv.lock. Dropping it removes a C-extension
wheel from every install, and users lose nothing because the Rust
contentview still provides msgpack rendering.

Discovered using `pyproject-udeps` [[1]].

[1]: https://github.com/lukehsiao/pyproject-udeps

Fixes: d0a35dcf9b ("introduce new contentview API (#7623)")
2026-07-14 12:05:36 +02:00
dependabot[bot]
a67fc64596
build(deps): update cryptography requirement from <=48.1,>=42.0 to >=42.0,<=49.0.0 in the openssl group (#8303)
* build(deps): update cryptography requirement in the openssl group

Updates the requirements on [cryptography](https://github.com/pyca/cryptography) to permit the latest version.

Updates `cryptography` to 49.0.0
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/42.0.0...49.0.0)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 49.0.0
  dependency-type: direct:production
  dependency-group: openssl
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-03 09:49:23 +02:00
dependabot[bot]
0996cb15fa
build(deps-dev): bump maturin from 1.13.1 to 1.13.3 (#8308)
* build(deps-dev): bump maturin from 1.13.1 to 1.13.3

Bumps [maturin](https://github.com/pyo3/maturin) from 1.13.1 to 1.13.3.
- [Release notes](https://github.com/pyo3/maturin/releases)
- [Changelog](https://github.com/PyO3/maturin/blob/main/Changelog.md)
- [Commits](https://github.com/pyo3/maturin/compare/v1.13.1...v1.13.3)

---
updated-dependencies:
- dependency-name: maturin
  dependency-version: 1.13.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-03 09:48:18 +02:00
dependabot[bot]
be9e4813ea
build(deps-dev): bump wheel from 0.46.3 to 0.47.0 (#8307)
* build(deps-dev): bump wheel from 0.46.3 to 0.47.0

Bumps [wheel](https://github.com/pypa/wheel) from 0.46.3 to 0.47.0.
- [Release notes](https://github.com/pypa/wheel/releases)
- [Changelog](https://github.com/pypa/wheel/blob/main/docs/news.rst)
- [Commits](https://github.com/pypa/wheel/compare/0.46.3...0.47.0)

---
updated-dependencies:
- dependency-name: wheel
  dependency-version: 0.47.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-03 09:48:04 +02:00
dependabot[bot]
1d9a5b9a17
build(deps-dev): bump click from 8.3.2 to 8.4.0 (#8306)
* build(deps-dev): bump click from 8.3.2 to 8.4.0

Bumps [click](https://github.com/pallets/click) from 8.3.2 to 8.4.0.
- [Release notes](https://github.com/pallets/click/releases)
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.md)
- [Commits](https://github.com/pallets/click/compare/8.3.2...8.4.0)

---
updated-dependencies:
- dependency-name: click
  dependency-version: 8.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-03 09:47:48 +02:00
dependabot[bot]
ac5a56ff68
build(deps-dev): bump awscli from 1.44.83 to 1.45.12 in the deploy group (#8305)
* build(deps-dev): bump awscli from 1.44.83 to 1.45.12 in the deploy group

Bumps the deploy group with 1 update: [awscli](https://github.com/aws/aws-cli).


Updates `awscli` from 1.44.83 to 1.45.12
- [Release notes](https://github.com/aws/aws-cli/releases)
- [Commits](https://github.com/aws/aws-cli/compare/1.44.83...1.45.12)

---
updated-dependencies:
- dependency-name: awscli
  dependency-version: 1.45.12
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deploy
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-03 09:47:22 +02:00
dependabot[bot]
fcc64baa8f
build(deps-dev): bump the tox group with 2 updates (#8304)
* build(deps-dev): bump the tox group with 2 updates

Bumps the tox group with 2 updates: [tox](https://github.com/tox-dev/tox) and [tox-uv](https://github.com/tox-dev/tox-uv).


Updates `tox` from 4.53.0 to 4.54.0
- [Release notes](https://github.com/tox-dev/tox/releases)
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/tox/compare/4.53.0...4.54.0)

Updates `tox-uv` from 1.35.1 to 1.35.2
- [Release notes](https://github.com/tox-dev/tox-uv/releases)
- [Commits](https://github.com/tox-dev/tox-uv/compare/1.35.1...1.35.2)

---
updated-dependencies:
- dependency-name: tox
  dependency-version: 4.54.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: tox
- dependency-name: tox-uv
  dependency-version: 1.35.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: tox
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-03 09:46:41 +02:00
dependabot[bot]
ccf7afcd43
build(deps-dev): bump the pyinstaller group with 2 updates (#8301)
* build(deps-dev): bump the pyinstaller group with 2 updates

Bumps the pyinstaller group with 2 updates: [pyinstaller](https://github.com/pyinstaller/pyinstaller) and [pyinstaller-hooks-contrib](https://github.com/pyinstaller/pyinstaller-hooks-contrib).


Updates `pyinstaller` from 6.19.0 to 6.20.0
- [Release notes](https://github.com/pyinstaller/pyinstaller/releases)
- [Changelog](https://github.com/pyinstaller/pyinstaller/blob/develop/doc/CHANGES.rst)
- [Commits](https://github.com/pyinstaller/pyinstaller/compare/v6.19.0...v6.20.0)

Updates `pyinstaller-hooks-contrib` from 2026.4 to 2026.5
- [Release notes](https://github.com/pyinstaller/pyinstaller-hooks-contrib/releases)
- [Changelog](https://github.com/pyinstaller/pyinstaller-hooks-contrib/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pyinstaller/pyinstaller-hooks-contrib/compare/v2026.4...v2026.5)

---
updated-dependencies:
- dependency-name: pyinstaller
  dependency-version: 6.20.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pyinstaller
- dependency-name: pyinstaller-hooks-contrib
  dependency-version: '2026.5'
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pyinstaller
...

Signed-off-by: dependabot[bot] <support@github.com>

* [autofix.ci] apply automated fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-03 09:41:51 +02:00
user77
3500dacba0
mitmweb: honor view_order_reversed for live flows (#8288)
* mitmweb: honor view_order_reversed for live flows

mitmweb only applied view_order_reversed to the initial flow list it
fetches over HTTP. Flows delivered afterwards over the WebSocket were
always appended to the end of the table, so with the option enabled the
newest flow stayed off-screen at the bottom instead of appearing on top.

Track the option in the flows reducer and, when no column sort is active,
insert newly added flows at the front when view_order_reversed is set and
at the back otherwise. This matches the order the server already uses for
the initial list.

Closes #5520

* [autofix.ci] apply automated fixes

* mitmweb: destructure orderReversed in flows reducer for consistency

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-06-24 20:28:26 +02:00
Julio César Suástegui
c4fa9fb8c8
docs: fix typos (#8285) 2026-06-18 08:51:03 +02:00