Commit Graph

10646 Commits

Author SHA1 Message Date
dependabot[bot] f6907ea979
Update tox requirement from <=4.15.1,>=4.15.1 to >=4.15.1,<=4.16.0 (#7054)
Updates the requirements on [tox](https://github.com/tox-dev/tox) to permit the latest version.
- [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.15.1...4.16.0)

---
updated-dependencies:
- dependency-name: tox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 14:07:37 +02:00
dependabot[bot] 47fdad06f6
Bump pyinstaller from 6.8.0 to 6.9.0 in the pyinstaller group (#7048)
Bumps the pyinstaller group with 1 update: [pyinstaller](https://github.com/pyinstaller/pyinstaller).


Updates `pyinstaller` from 6.8.0 to 6.9.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.8.0...v6.9.0)

---
updated-dependencies:
- dependency-name: pyinstaller
  dependency-type: direct:production
  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>
2024-07-29 14:07:03 +02:00
Maximilian Hils f52faead84
Dependabot: group pyopenssl and cryptography updates (#7057)
dependabot: group pyopenssl and cryptography updates
2024-07-29 14:06:20 +02:00
dependabot[bot] 73d8969add
Update aioquic requirement from <=1.1.0,>=1.1.0 to >=1.1.0,<=1.2.0 (#7052)
Updates the requirements on [aioquic](https://github.com/aiortc/aioquic) to permit the latest version.
- [Changelog](https://github.com/aiortc/aioquic/blob/main/docs/changelog.rst)
- [Commits](https://github.com/aiortc/aioquic/compare/1.1.0...1.2.0)

---
updated-dependencies:
- dependency-name: aioquic
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 12:01:48 +00:00
dependabot[bot] 00349d3b9a
Update zstandard requirement from <=0.22.0,>=0.15 to >=0.15,<=0.23.0 (#7050)
Updates the requirements on [zstandard](https://github.com/indygreg/python-zstandard) to permit the latest version.
- [Release notes](https://github.com/indygreg/python-zstandard/releases)
- [Changelog](https://github.com/indygreg/python-zstandard/blob/main/docs/news.rst)
- [Commits](https://github.com/indygreg/python-zstandard/compare/0.15.0...0.23.0)

---
updated-dependencies:
- dependency-name: zstandard
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 12:01:35 +00:00
dependabot[bot] ddd46687d1
Update pyopenssl requirement from <=24.1.0,>=22.1 to >=22.1,<=24.2.1 (#7051)
Updates the requirements on [pyopenssl](https://github.com/pyca/pyopenssl) to permit the latest version.
- [Changelog](https://github.com/pyca/pyopenssl/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/pyopenssl/compare/22.1.0...24.2.1)

---
updated-dependencies:
- dependency-name: pyopenssl
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 12:01:33 +00:00
dependabot[bot] c632295e6e
Bump the github-actions group with 2 updates (#7046)
Bumps the github-actions group with 2 updates: [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) and [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action).


Updates `docker/setup-qemu-action` from 3.0.0 to 3.2.0
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](68827325e0...49b3bc8e6b)

Updates `docker/setup-buildx-action` from 3.3.0 to 3.5.0
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](d70bba72b1...aa33708b10)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 11:58:27 +00:00
dependabot[bot] 9744b0776d
Bump the pytest group with 3 updates (#7047)
Updates the requirements on [hypothesis](https://github.com/HypothesisWorks/hypothesis), [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) and [pytest](https://github.com/pytest-dev/pytest) to permit the latest version.

Updates `hypothesis` to 6.108.5
- [Release notes](https://github.com/HypothesisWorks/hypothesis/releases)
- [Commits](https://github.com/HypothesisWorks/hypothesis/compare/hypothesis-python-6.104.2...hypothesis-python-6.108.5)

Updates `pytest-asyncio` to 0.23.8
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.23.6...v0.23.8)

Updates `pytest` to 8.3.2
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.2.2...8.3.2)

---
updated-dependencies:
- dependency-name: hypothesis
  dependency-type: direct:production
  dependency-group: pytest
- dependency-name: pytest-asyncio
  dependency-type: direct:production
  dependency-group: pytest
- dependency-name: pytest
  dependency-type: direct:production
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 11:58:21 +00:00
Maximilian Hils 2fbdc525b7
Bump required mitmproxy-rs version (#7045)
bump required mitmproxy-rs version
2024-07-29 11:38:17 +00:00
Maximilian Hils fcce334fce
Update README.md 2024-07-25 16:27:25 +02:00
mitmproxy release bot 64b4994b73 reopen main for development 2024-07-25 13:45:53 +00:00
mitmproxy release bot fbf3ad7d4d mitmproxy 10.4.0 2024-07-25 13:45:53 +00:00
Maximilian Hils f6f72daef4
revise CHANGELOG.md for release 2024-07-25 15:44:05 +02:00
Maximilian Hils 091399f811
Add experimental option for HTTP/3 in transparent mode (#7037)
* add experimental option for HTTP/3 in transparent mode

* fix test

* fix next layer selection for raw quic

* tests++

* remove leftover constant
2024-07-25 17:29:04 +05:30
Maximilian Hils 3beb3b21ff
Nextlayer: detect SSH as non-HTTP (#7041)
* nextlayer: detect SSH as non-HTTP

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-25 16:42:14 +05:30
Maximilian Hils 4f1bc6fc9a
Do not block local mode connections (#7036)
do not block local mode connections
2024-07-25 12:15:23 +02:00
Maximilian Hils fa1633842a
web: add index column (#7039)
* web: add index column

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-25 12:07:34 +02:00
Maximilian Hils 74424df839
Guard server_event against reentrancy, fix #7027 (#7031)
* guard server_event against reentrancy, fix #7027

* [autofix.ci] apply automated fixes

* attribution for excellent repros

* simplify test for compatibility with older Python versions

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-23 14:42:09 +05:30
Gaurav Jain 317f5b9dce
Support all query types in DNS mode (#6975)
* Use mitmproxy_rust's getaddrinfo to resolve domain names

* Use mitmproxy.DnsResolver for A/AAAA queries and forward other queries to dns server

* [autofix.ci] apply automated fixes

* Add suggested changes

* [autofix.ci] apply automated fixes

* nits

* lazy-load resolver

* fix lookup of non A/AAAA records

* bump required mitmproxy_rs version

* [autofix.ci] apply automated fixes

* Add tests

* Update CHANGELOG

* [autofix.ci] apply automated fixes

* Fix tests

* [autofix.ci] apply automated fixes

* Fixup

* Fixup

* [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>
2024-07-16 17:31:11 +02:00
Denis Stanishevsky 9512e99819
Fix for loading HAR that contains BOM (#6897)
* Didn't work with the file from Fiddler, because of the BOM at the beginning of the file

* Update CHANGELOG.md

* [autofix.ci] apply automated fixes

* Added sample HAR with BOM as it comes from Fiddler

* Both HAR and JSON for it

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Denis Stanishevskiy <>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2024-07-16 15:44:49 +02:00
Maximilian Hils e7f3bfda23
handle certificate parsing errors more gracefully, fix #6968 (#6994)
* handle certificate parsing errors more gracefully, fix #6968

* [autofix.ci] apply automated fixes

* fixup

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-16 15:43:59 +02:00
Pet Sneakers 71d7b3d6e7
Include Host header with CONNECT requests. Fixes #7019. (#7021)
* Include Host header with CONNECT requests. Fixes #7019.

* [autofix.ci] apply automated fixes

* Update CHANGELOG

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-16 15:43:11 +02:00
Matteo Luppi 9c99bf4485
Feature/single reverse mode (#7012)
* add reverse mode (UI)

* make dropdown functional and add input field for port

* finally make reverse mode functional

* adjust placeholders

* fix eslint

* [autofix.ci] apply automated fixes

* change host to destination

* create specific function for partition

* generate protocols

* [autofix.ci] apply automated fixes

* update protocols using BACKEND_CONSTS

* change name partition function

* move to enum for protocols

* [autofix.ci] apply automated fixes

* adapt protocols to enum

* write test for reverse mode

* [autofix.ci] apply automated fixes

* update changelog

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-16 15:42:21 +02:00
Gaurav Jain bbf5df326a
Fix decompressing fake pointers in DNS messages (#7022)
* Don't decompress fake pointers

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-13 16:18:03 +02:00
Maximilian Hils 30ecc2dfbc
Update Web Dependencies (#7011)
* update gulp

* update web dependencies

* update typescript

* update testing-library

* update esbuild

* update react

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-13 01:20:15 +02:00
Matteo Luppi f77327634c
Sync consts backend-frontend (#7016)
* remove version from state and create new script to extract version

* fix lint

* [autofix.ci] apply automated fixes

* fix web/gen script to error on file permissions

* [autofix.ci] apply automated fixes

* add version to footer

* adjust tests

* [autofix.ci] apply automated fixes

* update changelog

* move version back into state

* [autofix.ci] apply automated fixes

* nits

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2024-07-11 09:54:22 +00:00
Maximilian Hils 59fbbdc4b2
autofix: eslint shouldn't abort the entire fixing process. 2024-07-09 20:58:46 +02:00
Maximilian Hils f211ca91be
Adopt ESLint (#7008)
* adopt eslint

* `eslint --fix`

* optimize imports

* make eslint happy, upgrade some legacy react code

* more eslint fixes

* const indentation

* enforce typescript only

* [autofix.ci] apply automated fixes

* remove no-case-declarations

* better exhaustiveness checking

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-09 11:06:05 +02:00
Gaurav Jain 181756f287
Allow `typing.Sequence[str]` to be an editable option (#7001)
* Allow typing.Sequence[str] to be an editable option

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-08 18:04:12 +02:00
Matteo Luppi 5b2659acb9
update changelog (#7005)
* update changelog

* fix typo
2024-07-06 08:43:42 +02:00
Maximilian Hils 04433e2c22
loosen cryptography warning (#7003) 2024-07-05 23:24:06 +00:00
Maximilian Hils 5353df5f1e
Incorporate existing SNI into allow/ignore decision, fix #5064 (#7002)
* incorporate existing SNI into allow/ignore decision, fix #5064

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-05 22:19:55 +00:00
Maximilian Hils 7fdf111feb
mitmweb: Add Capture Tab (#6999)
* Squashed commit of the following:

commit 5ca998dd9ece4292407e42d6b2989703b5b0e562
Author: Matteo Luppi <100372313+lups2000@users.noreply.github.com>
Date:   Wed Jun 26 17:27:47 2024 +0200

    Sync capture tab to main (#6963)

    * Update CHANGELOG.md

    * Autofix generated JS files and do not patch them in tests (#6910)

    * autofix generated JS files and do not patch them in tests

    * autofix: setup python

    * [autofix.ci] apply automated fixes

    * autofix: setup node

    * add missing newline

    * fixup

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * Update package-lock.json, bump esbuild (#6915)

    update node version, bump esbuild

    * Fix clipboard handling in safari (#6917)

    * fix clipboard handling in safari

    closes #6911, #6909

    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>

    * [autofix.ci] apply automated fixes

    * update dependencies

    ---------

    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>
    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * mitmproxy 10.3.1

    * reopen main for development

    * release script: add one less newline

    * fix zstd decompression (#6921)

    * fix zstd decompression (issue #6914)

    * add our fix to CHANGELOG

    * add explicit read_across_frames=True + move zstd test to test_encoding.py

    ---------

    Co-authored-by: Maximilian Hils <git@maximilianhils.com>

    * Update CHANGELOG.md

    * web: Upgrade Redux (#6926)

    * update redux and fix resulting test and type failures
    * update prettier

    * Use upstream urwid again (#6929)

    use upstream urwid again

    * Add `HttpConnectedHook` and `HttpConnectErrorHook` (#6930)

    * Add HttpConnectedHook and HttpConnectErrorHook

    * [autofix.ci] apply automated fixes

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * make DNS mode listen for both UDP and TCP (#6912)

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * release ci: strip "v" prefix from sigstore file

    * fix: OSError raised when ipv6 is disabled (#6942)

    the function should return None in this case

    * Update autofix action (#6946)

    update autofix action

    * Fix issue #6944: Optimize response/request_body_buf by using list of byte chunks to avoid concatenation overhead (#6952)

    * Fix the issue #6944: non-linear growth in processing time with mitmproxy regarding packet size. Replace the string (bytes) concatenation implementation of request_body_buf and response_body_buf to a list of chunk of bytes.

    * Update the CHANGELOG.md regarding issue #6944

    * [autofix.ci] apply automated fixes

    * Update CHANGELOG.md

    * [autofix.ci] apply automated fixes

    * move receivebuffer into dedicated class

    * [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>

    * Use existing API to unpack/pack domain names in HTTPS records (#6949)

    * Use existing API to unpack/pack domain names in HTTPS records

    * [autofix.ci] apply automated fixes

    * tangentially related grammar fix

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
    Co-authored-by: Maximilian Hils <github@maximilianhils.com>

    * Add support for DNS over TCP (#6935)

    * Parse DNS over TCP messages

    * [autofix.ci] apply automated fixes

    * Update _next_layer to detect DNS over TCP messages

    * [autofix.ci] apply automated fixes

    * Fixup

    * allow query pipelining

    * [autofix.ci] apply automated fixes

    * Restructure pack/unpack mechanism and update tests

    * Add tests

    * [autofix.ci] apply automated fixes

    * [autofix.ci] apply automated fixes (attempt 2/3)

    * [autofix.ci] apply automated fixes

    * [autofix.ci] apply automated fixes

    * Update next_layer test

    * Add suggested changes

    * [autofix.ci] apply automated fixes

    * bump minimum hypothesis version

    * bump hypothesis for good

    * Update CHANGELOG.md

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
    Co-authored-by: Maximilian Hils <git@maximilianhils.com>

    * web: fix "show more" button (#6958)

    fix #6951

    ---------

    Co-authored-by: Maximilian Hils <git@maximilianhils.com>
    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>
    Co-authored-by: mitmproxy release bot <noreply@mitmproxy.org>
    Co-authored-by: Andras Spitzer <sendai@swordsaint.net>
    Co-authored-by: Gaurav Jain <64748057+errorxyz@users.noreply.github.com>
    Co-authored-by: Walt Chen <godsarmycy@gmail.com>
    Co-authored-by: jackfromeast <thisiszhengyu@gmail.com>
    Co-authored-by: Maximilian Hils <github@maximilianhils.com>
    Co-authored-by: Alexander Prinzhorn <alexander@prinzhorn.it>

commit e047e76b22
Author: Matteo Luppi <100372313+lups2000@users.noreply.github.com>
Date:   Wed Jun 26 13:07:27 2024 +0200

    Feature/wireguard mode (#6959)

    * define first components

    * Update CHANGELOG.md

    * Autofix generated JS files and do not patch them in tests (#6910)

    * autofix generated JS files and do not patch them in tests

    * autofix: setup python

    * [autofix.ci] apply automated fixes

    * autofix: setup node

    * add missing newline

    * fixup

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * Update package-lock.json, bump esbuild (#6915)

    update node version, bump esbuild

    * Fix clipboard handling in safari (#6917)

    * fix clipboard handling in safari

    closes #6911, #6909

    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>

    * [autofix.ci] apply automated fixes

    * update dependencies

    ---------

    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>
    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * define first modes components

    * adapt code to reuse checkbox component

    * mitmproxy 10.3.1

    * reopen main for development

    * [autofix.ci] apply automated fixes

    * improve mode toggle design

    * remove inline style

    * release script: add one less newline

    * fix zstd decompression (#6921)

    * fix zstd decompression (issue #6914)

    * add our fix to CHANGELOG

    * add explicit read_across_frames=True + move zstd test to test_encoding.py

    ---------

    Co-authored-by: Maximilian Hils <git@maximilianhils.com>

    * first attempt to make the modes functional

    * [autofix.ci] apply automated fixes

    * Update CHANGELOG.md

    * web: Upgrade Redux (#6926)

    * update redux and fix resulting test and type failures
    * update prettier

    * refactor code according to review

    * [autofix.ci] apply automated fixes

    * first prototype regular mode

    * [autofix.ci] apply automated fixes

    * Use upstream urwid again (#6929)

    use upstream urwid again

    * change name regular duck

    * Add `HttpConnectedHook` and `HttpConnectErrorHook` (#6930)

    * Add HttpConnectedHook and HttpConnectErrorHook

    * [autofix.ci] apply automated fixes

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * rewrite updateMode function and error handling regular mode

    * remove label component

    * add input field to local mode and fix onKeyDown issue

    * add dropdown to reverse mode

    * [autofix.ci] apply automated fixes

    * change defualt string reverse dropdown

    * add new logic to handle modes in the duck

    * add local mode with no applications

    * [autofix.ci] apply automated fixes

    * regular mode is now persistent

    * forgot recieve event in regular mode

    * join receive and update event

    * make local mode functional

    * make wireguard mode functional

    * [autofix.ci] apply automated fixes

    * make reverse mode functional

    * [autofix.ci] apply automated fixes

    * fix bug reverse mode when refreshing

    * fix bug local mode

    * [autofix.ci] apply automated fixes

    * fix old test

    * implement first tests

    * [autofix.ci] apply automated fixes

    * make DNS mode listen for both UDP and TCP (#6912)

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * remove wireguard and reverse modes

    * change name function to set local applications

    * remove error handling

    * remove left over

    * add some other review changes

    * [autofix.ci] apply automated fixes

    * release ci: strip "v" prefix from sigstore file

    * fix addListen Addr function

    * adjust reverse protocol attribute

    * create proper method to parse the mode

    * adjust passing applications to local mode

    * fix onKeyDown listener and add new input field to local mode

    * [autofix.ci] apply automated fixes

    * remove leftover

    * update tests

    * [autofix.ci] apply automated fixes

    * remove wireguard and reverse files

    * remove additional state local mode

    * adjust tests local mode

    * update tests local mode

    * update last tests modes

    * [autofix.ci] apply automated fixes

    * fix: OSError raised when ipv6 is disabled (#6942)

    the function should return None in this case

    * use fetchMock instead of jest.mock

    this is slightly nicer because we are testing at the application boundary

    * duck tests should use action creators and not manually construct actions

    * move toggleLocal to fetchMock

    * move updateMode and ModeState into utils

    this avoids circular imports. utils may not be the perfect place, but much better than the circular imports

    * nits

    * [autofix.ci] apply automated fixes

    * update tests regular and local mode

    * [autofix.ci] apply automated fixes

    * review changes tests

    * [autofix.ci] apply automated fixes

    * adjust parseMode issue

    * [autofix.ci] apply automated fixes

    * add first components for wireguard mode

    * fix CI

    * fix typo

    * add tests to wireguard mode

    * [autofix.ci] apply automated fixes

    ---------

    Co-authored-by: Maximilian Hils <git@maximilianhils.com>
    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>
    Co-authored-by: mitmproxy release bot <noreply@mitmproxy.org>
    Co-authored-by: Andras Spitzer <sendai@swordsaint.net>
    Co-authored-by: Gaurav Jain <64748057+errorxyz@users.noreply.github.com>
    Co-authored-by: Walt Chen <godsarmycy@gmail.com>

commit d9770ad2b1
Author: Matteo Luppi <100372313+lups2000@users.noreply.github.com>
Date:   Mon Jun 24 19:40:47 2024 +0200

    Feature/implement mvp new tab page (#6923)

commit afb22c2105
Author: Maximilian Hils <git@maximilianhils.com>
Date:   Fri Jun 21 23:09:31 2024 +0200

    Sync `capture-tab` with `main` (#6943)

    * Update CHANGELOG.md

    * Autofix generated JS files and do not patch them in tests (#6910)

    * autofix generated JS files and do not patch them in tests

    * autofix: setup python

    * [autofix.ci] apply automated fixes

    * autofix: setup node

    * add missing newline

    * fixup

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * Update package-lock.json, bump esbuild (#6915)

    update node version, bump esbuild

    * Fix clipboard handling in safari (#6917)

    * fix clipboard handling in safari

    closes #6911, #6909

    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>

    * [autofix.ci] apply automated fixes

    * update dependencies

    ---------

    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>
    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * mitmproxy 10.3.1

    * reopen main for development

    * release script: add one less newline

    * fix zstd decompression (#6921)

    * fix zstd decompression (issue #6914)

    * add our fix to CHANGELOG

    * add explicit read_across_frames=True + move zstd test to test_encoding.py

    ---------

    Co-authored-by: Maximilian Hils <git@maximilianhils.com>

    * Update CHANGELOG.md

    * web: Upgrade Redux (#6926)

    * update redux and fix resulting test and type failures
    * update prettier

    * Use upstream urwid again (#6929)

    use upstream urwid again

    * Add `HttpConnectedHook` and `HttpConnectErrorHook` (#6930)

    * Add HttpConnectedHook and HttpConnectErrorHook

    * [autofix.ci] apply automated fixes

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * make DNS mode listen for both UDP and TCP (#6912)

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

    * release ci: strip "v" prefix from sigstore file

    * fix: OSError raised when ipv6 is disabled (#6942)

    the function should return None in this case

    * [autofix.ci] apply automated fixes

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
    Co-authored-by: Can Yesilyurt <36952967+canyesilyurt@users.noreply.github.com>
    Co-authored-by: mitmproxy release bot <noreply@mitmproxy.org>
    Co-authored-by: Andras Spitzer <sendai@swordsaint.net>
    Co-authored-by: Gaurav Jain <64748057+errorxyz@users.noreply.github.com>
    Co-authored-by: Walt Chen <godsarmycy@gmail.com>

commit d0867f66d6
Author: Matteo Luppi <100372313+lups2000@users.noreply.github.com>
Date:   Mon Jun 10 11:27:54 2024 +0200

    Feature/add new capture tab (#6887)

    * add just the new tab to the header

    * remove header menu from capture tab

    * create context to handle the current active menu tab

    * update tests

    * remove useless comments

    * update tests to reach higher coverage

    * remove context, use props to achieve same result

    * update tests

    * [autofix.ci] apply automated fixes

    * add test for capture menu component

    * adjust changelog format

    * [autofix.ci] apply automated fixes

    * fix CHANGELOG

    ---------

    Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
    Co-authored-by: Maximilian Hils <git@maximilianhils.com>
    Co-authored-by: Maximilian Hils <github@maximilianhils.com>

* Feature/regular mode port (#6965)

* add input field with default port to regular mode

* remove useless code

* make port functional

* fix tests

* add tests regular mode

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* Feature/error handling regular mode (#6972)

* first prototype error handling

* update tests , but failing

* [autofix.ci] apply automated fixes

* fix tests

* change error names

* [autofix.ci] apply automated fixes

* listen fro state updates instead of options ones

* forgot error state

* change backend config

* [autofix.ci] apply automated fixes

* Update mitmproxy/addons/proxyserver.py

* [autofix.ci] apply automated fixes

* fix tests

* change logic backend error

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <github@maximilianhils.com>

* Feature/error handling wireguard local (#6995)

* add error handling wireguard mode

* update tests wireguard mode

* add errror handling local mode and tests

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* add remianing modes message

* getMode returns if there aren't errors + update tests

* [autofix.ci] apply automated fixes

* move check inside includeModeState + tests

* remove useless checks

* modify toggle method for wireguard mode (test fails)

* fixups

* [autofix.ci] apply automated fixes

* add fetch tests

* add snapshot tests for regular mode ui

we want more of those once we have changed the structure of backendState.servers

* [autofix.ci] apply automated fixes

* nits

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>

* Web: Switch to flow list upon arrival of the first flow. (#7000)

* move active menu into redux state

this is necessary so that we can incorporate it into url state

* switch to flow list upon arrival of the first flow

* [autofix.ci] apply automated fixes

* simplify test

* update header.less

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

---------

Co-authored-by: Matteo Luppi <100372313+lups2000@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-05 20:53:14 +00:00
Maximilian Hils b646b7ee9d
fixup release script 2024-07-05 17:54:55 +02:00
Maximilian Hils 34a7956484
QUIC: Fix Supported Versions (#6993)
* quic: fix supported versions

Co-authored-by: Jeremy Lainé <jeremy.laine@m4x.org>

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Jeremy Lainé <jeremy.laine@m4x.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-05 03:31:45 +02:00
Gaurav Jain 8d3906e531
Decompress domain names in ResourceRecord data (#6954)
* Parse compressed domain names in rr data

* Update CHANGELOG.md

* [autofix.ci] apply automated fixes

* Add comments

* Decompress only certain records

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* increase test coverage

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-07-05 03:19:19 +02:00
Maximilian Hils 252a07e24a
Improve intercept specs with new syntax from mitmproxy_rs (#6980)
improve intercept specs with new syntax from mitmproxy_rs
2024-07-03 15:52:38 +00:00
dependabot[bot] 5496045e0b
Update ruff requirement from <=0.4.7,>=0.4.1 to <=0.5.0,>=0.5.0 (#6990)
* Update ruff requirement from <=0.4.7,>=0.4.1 to <=0.5.0,>=0.5.0

Updates the requirements on [ruff](https://github.com/astral-sh/ruff) to permit the latest version.
- [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/v0.4.1...0.5.0)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:production
...

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

* fixup

* fixup

* fixuppppps

* fixups

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <github@maximilianhils.com>
2024-07-02 12:07:47 +02:00
Jeremy Lainé c1e187c6e7
Fix QUIC version negotiation test (#6992)
To exercise incompatible version negotiation, we must not use version 0,
as this would cause the client's INITIAL packet to be erroneously
interpreted as a VERSION_NEGOTIATION packet - but with a corrupt format.

So far this has not caused any errors, because aioquic's
`pull_quic_header` did not fully parse VERSION_NEGOTIATION packets, but
this will change with the next aioquic version.

Use one of the reserved version numbers of the form 0x?a?a?a?a, as
defined in https://datatracker.ietf.org/doc/html/rfc9000#section-15
2024-07-02 11:34:37 +02:00
dependabot[bot] 20187c3449
Bump the pytest group across 1 directory with 2 updates (#6982)
Updates the requirements on [hypothesis](https://github.com/HypothesisWorks/hypothesis) and [pytest](https://github.com/pytest-dev/pytest) to permit the latest version.

Updates `hypothesis` to 6.104.2
- [Release notes](https://github.com/HypothesisWorks/hypothesis/releases)
- [Commits](https://github.com/HypothesisWorks/hypothesis/compare/hypothesis-python-6.102.4...hypothesis-python-6.104.2)

Updates `pytest` to 8.2.2
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.1.1...8.2.2)

---
updated-dependencies:
- dependency-name: hypothesis
  dependency-type: direct:production
  dependency-group: pytest
- dependency-name: pytest
  dependency-type: direct:production
  dependency-group: pytest
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 05:27:40 +00:00
dependabot[bot] 7f9c818f6e
Update tox requirement from <=4.15.0,>=3.5 to <=4.15.1,>=4.15.1 (#6986)
Updates the requirements on [tox](https://github.com/tox-dev/tox) to permit the latest version.
- [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/3.5.0...4.15.1)

---
updated-dependencies:
- dependency-name: tox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 07:21:34 +02:00
dependabot[bot] 94b321cf5f
Update pdoc requirement from <=14.5.0,>=4.0.0 to <=14.5.1,>=14.5.1 (#6987)
Updates the requirements on [pdoc](https://github.com/mitmproxy/pdoc) to permit the latest version.
- [Changelog](https://github.com/mitmproxy/pdoc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mitmproxy/pdoc/compare/v4.0.0...v14.5.1)

---
updated-dependencies:
- dependency-name: pdoc
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 07:21:09 +02:00
dependabot[bot] 6222192a39
Update protobuf requirement from <=5.27.0,>=3.14 to <=5.27.2,>=5.27.2 (#6989)
Updates the requirements on [protobuf](https://github.com/protocolbuffers/protobuf) to permit the latest version.
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/protobuf_release.bzl)
- [Commits](https://github.com/protocolbuffers/protobuf/compare/v3.14.0...v5.27.2)

---
updated-dependencies:
- dependency-name: protobuf
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 07:20:42 +02:00
dependabot[bot] 1c5dc80472
Update tornado requirement from <=6.4,>=6.2 to <=6.4.1,>=6.4.1 (#6988)
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.2.0...v6.4.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 07:20:28 +02:00
dependabot[bot] 5e572da32f
Update pyperclip requirement from <=1.8.2,>=1.6.0 to <=1.9.0,>=1.9.0 (#6985)
---
updated-dependencies:
- dependency-name: pyperclip
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 07:20:05 +02:00
dependabot[bot] 7fa0c406f6
Update aioquic requirement from <=1.0.0,>=1.0.0 to <=1.1.0,>=1.1.0 (#6984)
Updates the requirements on [aioquic](https://github.com/aiortc/aioquic) to permit the latest version.
- [Changelog](https://github.com/aiortc/aioquic/blob/main/docs/changelog.rst)
- [Commits](https://github.com/aiortc/aioquic/compare/1.0.0...1.1.0)

---
updated-dependencies:
- dependency-name: aioquic
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 06:44:07 +02:00
dependabot[bot] c4eaddedfd
Bump the mypy group with 2 updates (#6983)
---
updated-dependencies:
- dependency-name: mypy
  dependency-type: direct:production
  dependency-group: mypy
- dependency-name: types-requests
  dependency-type: direct:production
  dependency-group: mypy
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 06:43:38 +02:00
dependabot[bot] 311e2d2cbb
Bump pyinstaller from 6.7.0 to 6.8.0 in the pyinstaller group (#6981)
Bumps the pyinstaller group with 1 update: [pyinstaller](https://github.com/pyinstaller/pyinstaller).


Updates `pyinstaller` from 6.7.0 to 6.8.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.7.0...v6.8.0)

---
updated-dependencies:
- dependency-name: pyinstaller
  dependency-type: direct:production
  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>
2024-07-02 06:43:06 +02:00
Alexander Prinzhorn 27f990203a
web: fix "show more" button (#6958)
fix #6951
2024-06-25 13:58:26 +02:00
Gaurav Jain 7f7cb28d32
Add support for DNS over TCP (#6935)
* Parse DNS over TCP messages

* [autofix.ci] apply automated fixes

* Update _next_layer to detect DNS over TCP messages

* [autofix.ci] apply automated fixes

* Fixup

* allow query pipelining

* [autofix.ci] apply automated fixes

* Restructure pack/unpack mechanism and update tests

* Add tests

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* Update next_layer test

* Add suggested changes

* [autofix.ci] apply automated fixes

* bump minimum hypothesis version

* bump hypothesis for good

* Update CHANGELOG.md

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
2024-06-24 10:50:25 +00:00