Skip to content

Comments

Update flared branch to latest mitmproxy#9

Merged
leameow merged 643 commits intoFlared:flaredfrom
xshill:flared
Feb 19, 2026
Merged

Update flared branch to latest mitmproxy#9
leameow merged 643 commits intoFlared:flaredfrom
xshill:flared

Conversation

@xshill
Copy link

@xshill xshill commented Feb 18, 2026

Description

  • Rebased the flared branch on the new master branch
  • Tested with my own branch to make sure everything still works fine

To make the review easier, compare the diff between this PR and the master branch to the diff of the current commits on the flared branch.

Note that protobuf was removed in upstream so some of the commits we did to remove protobuf are gone.

dependabot bot and others added 30 commits February 1, 2025 23:21
…proxy#7528)

* Update ruff requirement from <=0.8.6,>=0.5.0 to >=0.5.0,<=0.9.4

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](astral-sh/ruff@0.5.0...0.9.4)

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

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

* [autofix.ci] apply automated fixes

* fixup

---------

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>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
Updates the requirements on [hypothesis](https://github.com/HypothesisWorks/hypothesis) and [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit the latest version.

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

Updates `pytest-asyncio` to 0.25.3
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](pytest-dev/pytest-asyncio@v0.23.6...v0.25.3)

---
updated-dependencies:
- dependency-name: hypothesis
  dependency-type: direct:production
  dependency-group: pytest
- dependency-name: pytest-asyncio
  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>
* Unescape escaped characters in curl and httpie args

Fixes: [mitmproxy#7517]

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* create ui component for copying content

* write function to copy viewcontentdata to clipboard

* add type string to url

* call the endpoint to fetch the full content

* update snapshots

* disable button after copying text

* update changelog

* remove disable on copy button

* [autofix.ci] apply automated fixes

* disable copy button while fetching

* [autofix.ci] apply automated fixes

* adjust isFetching and isCopied position

* hide copy button if there is no content

* update snapshot

* Delete web/src/templates/index.html

* adjust naming convention

* update test

* update snapshots

* nits

* add async/await

* [autofix.ci] apply automated fixes

* improve test coverage

* improve even more test coverage

* test coverage final improvement

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
update bug report template to use form
this is not necessary anymore with token-based auth
* docs: add local capture mode

* [autofix.ci] apply automated fixes

---------

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

* docs++

* [autofix.ci] apply automated fixes

---------

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

* mitmweb: recommend setting `web_password` for systems without browser

fix mitmproxy#7551

* [autofix.ci] apply automated fixes

---------

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

* fix type annotations to be compatible with future h2 release

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
add proxy mode docs for tun mode
* ensure export output has no surrogates

fix mitmproxy#7561

* [autofix.ci] apply automated fixes

---------

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

* [autofix.ci] apply automated fixes

---------

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

* docs: Add --cask in brew install command

# Motivation

As a Brewfile user, the current installation command in the documentation
does not tell me that mitmproxy is a Cask, which is a bit of an
inconvenience due to how Brewfile works.

Adding a formulae in a Brewfile is done by adding the line `brew "<formulae>"`
while adding a cask in a Brewfile is done by adding the line `cask "<cask>"`

Contrarily to the behavior of the brew install command, adding a formulae line
in the Brewfile will not check for a Cask if the formulae does not exist: it
will just fail.

# Impact

The brew install command currently works by first checking if a "mitmproxy"
formulae exists in the homebrew repository, then after finding out there is
none, it checks for a "mitmproxy" cask in the homebrew repository.

Adding the explicit `--cask` argument allows to skip the unnecessary
formulae existence check, while being more convenient for Brewfile users.

# TL;DR

Adding the explicit `--cask` argument is useful to Brewfile users in such
that they directly know that mitmproxy is a Cask, while not impacting users
copy-pasting the command directly in their terminal (while also avoiding an
unwanted check for a corresponding formulae before the cask installation).

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* socket.io content view for websocket transport

* [autofix.ci] apply automated fixes

* create tests, implement render priority

* [autofix.ci] apply automated fixes

* fix tox errors

* update changelog

* [autofix.ci] apply automated fixes

---------

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

* update test

* [autofix.ci] apply automated fixes

* update changelog

* [autofix.ci] apply automated fixes

* Revert "update test"

This reverts commit 301afc0.

* trigger GitHub actions

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
* keepserving: do not exit before client has disconnected

* [autofix.ci] apply automated fixes

* fix tests

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
xBZZZZ and others added 22 commits January 2, 2026 00:33
* Add option name to parsing exceptions

* update changelog

* [autofix.ci] apply automated fixes

* update tests

* 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>
Co-authored-by: Maximilian Hils <github@maximilianhils.com>
* Fix TypeScript build

- Add package `@types/react`
- Remove `@ts-expect-error no popover support yet` in `Popover.tsx`

* [autofix.ci] apply automated fixes

---------

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

Change 'uvx' to 'uv tool install'

'uvx' is an alias for 'uv tool run' that installs packages in a temporary virtual environment that is deleted when the uv cache is cleaned. The correct installation command should be 'uv tool install' which installs the virtual environment in the uv tools directory and makes the executable available on the PATH.
See: https://docs.astral.sh/uv/concepts/tools/
* eslint: consistent-type-imports

* [autofix.ci] apply automated fixes

* fix tests

* more types

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
…pe (mitmproxy#8041)

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
* add/edit a comment in the console

* [autofix.ci] apply automated fixes

* move command at the bottom of the list

* [autofix.ci] apply automated fixes

* update changelog

* update changelog

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
* Add ZIP content view for issue mitmproxy#8051

- Implement ZipContentview with ZIP file parsing
- Display file metadata (names, sizes, compression methods, dates, comments)
- Add comprehensive test suite with 12 test cases covering all scenarios
- Register view in contentviews module
- Achieve 100% test coverage

Fixes mitmproxy#8051

* [autofix.ci] apply automated fixes

* Add coverage tests for ZIP content view exception handling

- Add test_view_zip_invalid_date_time to cover ValueError exception
- Add test_view_zip_overflow_date_time to cover OverflowError exception
- Add test_view_zip_general_exception to cover general Exception handler
- Achieves 100% code coverage for _view_zip.py

* Update ZIP content view to match unzip -l and unzip -l -v formats

- Standard view now matches unzip -l format with Length, Date, Time, Name columns
- Added verbose view matching unzip -l -v format with compression details
- Updated tests to assert against new table-like output format
- Added comprehensive test coverage for both standard and verbose views
- Handles edge cases: empty archives, different compression methods, invalid dates

* Fix lint errors: remove unused variables

- Remove unused max_date and max_time variables from ZIP content views
- Fix import ordering in test file

* Fix PR feedback: separator hyphen count and CRC spacing

* Fix PR feedback: separator hyphen count and CRC spacing

* Simplify ZIP contentview per maintainer feedback

* Add test cases for ZIP contentview

* Simplify ZIP contentview: compact one-line format per file

* Simplify ZIP contentview: use yaml_dumps for safe filename output

- Output just filenames as YAML list (no size info)
- Use yaml_dumps() to avoid template injection risk
- Remove try/catch, let framework handle exceptions
- Return '(empty zip file)' for empty archives
- Reduce test suite to minimal golden test with edge cases

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Prinzhorn <679144+Prinzhorn@users.noreply.github.com>
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
* Mitmweb: Add number of selected flows in the footer

* [autofix.ci] apply automated fixes

* Mitmweb: Fix failing tests for mitmproxy#8057

* [autofix.ci] apply automated fixes

* Resolve mitmproxy#8057 (comment)

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
…=0.19.1 (mitmproxy#8067)

* Update ruamel-yaml requirement

Updates the requirements on ruamel-yaml to permit the latest version.

---
updated-dependencies:
- dependency-name: ruamel-yaml
  dependency-version: 0.19.1
  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>
Bumps [maturin](https://github.com/pyo3/maturin) from 1.10.2 to 1.11.5.
- [Release notes](https://github.com/pyo3/maturin/releases)
- [Changelog](https://github.com/PyO3/maturin/blob/main/Changelog.md)
- [Commits](PyO3/maturin@v1.10.2...v1.11.5)

---
updated-dependencies:
- dependency-name: maturin
  dependency-version: 1.11.5
  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>
…oup (mitmproxy#8064)

Bumps the github-actions group with 1 update: [docker/login-action](https://github.com/docker/login-action).


Updates `docker/login-action` from 3.6.0 to 3.7.0
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@5e57cd1...c94ce9f)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 3.7.0
  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>
Bumps [build](https://github.com/pypa/build) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](pypa/build@1.3.0...1.4.0)

---
updated-dependencies:
- dependency-name: build
  dependency-version: 1.4.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>
* Bump tox from 4.32.0 to 4.34.1 in the tox group

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


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

---
updated-dependencies:
- dependency-name: tox
  dependency-version: 4.34.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>
* Bump awscli from 1.44.9 to 1.44.29 in the deploy group

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


Updates `awscli` from 1.44.9 to 1.44.29
- [Release notes](https://github.com/aws/aws-cli/releases)
- [Commits](aws/aws-cli@1.44.9...1.44.29)

---
updated-dependencies:
- dependency-name: awscli
  dependency-version: 1.44.29
  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>
* Bump the mypy group with 2 updates

Bumps the mypy group with 2 updates: [mypy](https://github.com/python/mypy) and [types-requests](https://github.com/typeshed-internal/stub_uploader).


Updates `mypy` from 1.19.0 to 1.19.1
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](python/mypy@v1.19.0...v1.19.1)

Updates `types-requests` from 2.32.4.20250913 to 2.32.4.20260107
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.19.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: mypy
- dependency-name: types-requests
  dependency-version: 2.32.4.20260107
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: mypy
...

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>
* 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.17.0 to 6.18.0
- [Release notes](https://github.com/pyinstaller/pyinstaller/releases)
- [Changelog](https://github.com/pyinstaller/pyinstaller/blob/develop/doc/CHANGES.rst)
- [Commits](pyinstaller/pyinstaller@v6.17.0...v6.18.0)

Updates `pyinstaller-hooks-contrib` from 2025.11 to 2026.0
- [Release notes](https://github.com/pyinstaller/pyinstaller-hooks-contrib/releases)
- [Changelog](https://github.com/pyinstaller/pyinstaller-hooks-contrib/blob/master/CHANGELOG.rst)
- [Commits](pyinstaller/pyinstaller-hooks-contrib@v2025.11...v2026.0)

---
updated-dependencies:
- dependency-name: pyinstaller
  dependency-version: 6.18.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: pyinstaller
- dependency-name: pyinstaller-hooks-contrib
  dependency-version: '2026.0'
  dependency-type: direct:development
  update-type: version-update:semver-major
  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>
* Bump wheel from 0.45.1 to 0.46.3

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

---
updated-dependencies:
- dependency-name: wheel
  dependency-version: 0.46.3
  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>
…itmproxy#8046)

* Fix modify_body crash when replacement contains backslash sequences

When using modify_body with replacement strings containing backslashes
(e.g., \n, \x00, \u003), re.sub() interprets them as escape sequences,
causing a PatternError.

Using a lambda function for the replacement argument treats the string
literally, avoiding regex escape interpretation.

Fixes mitmproxy#7579

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Hugh <HueCodes@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
@xshill
Copy link
Author

xshill commented Feb 18, 2026

I don't know what's up with the conflicts at this point but I would just take the values from my branch?

@leameow
Copy link
Member

leameow commented Feb 18, 2026

What could go wrong! (seems like there are conflict tho)

@xshill xshill force-pushed the flared branch 3 times, most recently from 08feb46 to 268d624 Compare February 19, 2026 14:56
@leameow leameow merged commit 4bb35f0 into Flared:flared Feb 19, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.