2023-03-26 17:40:32 +00:00
|
|
|
[project]
|
|
|
|
name = "mitmproxy"
|
|
|
|
description = "An interactive, SSL/TLS-capable intercepting proxy for HTTP/1, HTTP/2, and WebSockets."
|
|
|
|
readme = "README.md"
|
|
|
|
requires-python = ">=3.10"
|
|
|
|
license = {file="LICENSE"}
|
|
|
|
authors = [{name = "Aldo Cortesi", email = "aldo@corte.si"}]
|
|
|
|
maintainers = [{name = "Maximilian Hils", email = "mitmproxy@maximilianhils.com"}]
|
|
|
|
dynamic = ["version"]
|
|
|
|
|
|
|
|
classifiers = [
|
|
|
|
"License :: OSI Approved :: MIT License",
|
|
|
|
"Development Status :: 5 - Production/Stable",
|
|
|
|
"Environment :: Console :: Curses",
|
|
|
|
"Operating System :: MacOS",
|
|
|
|
"Operating System :: POSIX",
|
|
|
|
"Operating System :: Microsoft :: Windows",
|
|
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
|
|
"Programming Language :: Python :: 3.10",
|
|
|
|
"Programming Language :: Python :: 3.11",
|
2023-10-31 17:57:21 +00:00
|
|
|
"Programming Language :: Python :: 3.12",
|
2023-03-26 17:40:32 +00:00
|
|
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
|
|
"Topic :: Security",
|
|
|
|
"Topic :: Internet :: WWW/HTTP",
|
|
|
|
"Topic :: Internet :: Proxy Servers",
|
|
|
|
"Topic :: System :: Networking :: Monitoring",
|
|
|
|
"Topic :: Software Development :: Testing",
|
|
|
|
"Typing :: Typed",
|
|
|
|
]
|
|
|
|
|
|
|
|
# https://packaging.python.org/en/latest/discussions/install-requires-vs-requirements/#install-requires
|
|
|
|
# It is not considered best practice to use install_requires to pin dependencies to specific versions.
|
|
|
|
dependencies = [
|
2024-01-01 13:03:06 +00:00
|
|
|
"aioquic>=0.9.24,<0.10",
|
2023-06-02 10:07:01 +00:00
|
|
|
"asgiref>=3.2.10,<3.8",
|
2023-10-01 22:34:40 +00:00
|
|
|
"Brotli>=1.0,<1.2",
|
2023-03-26 17:40:32 +00:00
|
|
|
"certifi>=2019.9.11", # no semver here - this should always be on the last release!
|
2023-12-17 06:34:53 +00:00
|
|
|
"cryptography>=39.0,<41.1",
|
2023-10-01 22:26:28 +00:00
|
|
|
"flask>=1.1.1,<3.1",
|
2023-03-26 17:40:32 +00:00
|
|
|
"h11>=0.11,<0.15",
|
|
|
|
"h2>=4.1,<5",
|
|
|
|
"hyperframe>=6.0,<7",
|
|
|
|
"kaitaistruct>=0.10,<0.11",
|
|
|
|
"ldap3>=2.8,<2.10",
|
2023-11-04 10:52:18 +00:00
|
|
|
"mitmproxy_rs>=0.4,<0.5",
|
2023-03-26 17:40:32 +00:00
|
|
|
"msgpack>=1.0.0, <1.1.0",
|
|
|
|
"passlib>=1.6.5, <1.8",
|
|
|
|
"protobuf>=3.14,<5",
|
|
|
|
"pydivert>=2.0.3,<2.2; sys_platform == 'win32'",
|
2023-11-02 09:52:28 +00:00
|
|
|
"pyOpenSSL>=22.1,<23.4",
|
2023-07-01 22:27:07 +00:00
|
|
|
"pyparsing>=2.4.2,<3.2",
|
2023-03-26 17:40:32 +00:00
|
|
|
"pyperclip>=1.6.0,<1.9",
|
2023-11-02 09:52:35 +00:00
|
|
|
"ruamel.yaml>=0.16,<0.19",
|
2023-03-26 17:40:32 +00:00
|
|
|
"sortedcontainers>=2.3,<2.5",
|
|
|
|
"tornado>=6.2,<7",
|
2023-08-09 08:34:26 +00:00
|
|
|
"typing-extensions>=4.3,<5; python_version<'3.11'",
|
2023-03-26 17:40:32 +00:00
|
|
|
"urwid-mitmproxy>=2.1.1,<2.2",
|
|
|
|
"wsproto>=1.0,<1.3",
|
|
|
|
"publicsuffix2>=2.20190812,<3",
|
2023-11-02 09:52:45 +00:00
|
|
|
"zstandard>=0.11,<0.23",
|
2023-03-26 17:40:32 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
[project.optional-dependencies]
|
|
|
|
dev = [
|
|
|
|
"click>=7.0,<8.2",
|
|
|
|
"hypothesis>=5.8,<7",
|
|
|
|
"pdoc>=4.0.0",
|
Bump pyinstaller from 6.2.0 to 6.3.0 (#6576)
Bumps [pyinstaller](https://github.com/pyinstaller/pyinstaller) from
6.2.0 to 6.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pyinstaller/pyinstaller/releases">pyinstaller's
releases</a>.</em></p>
<blockquote>
<h2>v6.3.0</h2>
<p>Please see the <a
href="https://pyinstaller.org/en/v6.3.0/CHANGES.html#id1">v6.3.0 section
of the changelog</a> for a list of the changes since v6.2.0.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pyinstaller/pyinstaller/blob/develop/doc/CHANGES.rst">pyinstaller's
changelog</a>.</em></p>
<blockquote>
<h2>6.3.0 (2023-12-10)</h2>
<p>Bugfix</p>
<pre><code>
* (Linux) Optimize the automatic binary-vs-data classification by
avoiding
``objdump`` based check on files that do not have ELF signature. This
mitigates noticeably longer analysis times for projects with large
number of
(data) files. (:issue:`8148`)
* (Windows) Add Windows error code 110 (``ERROR_OPEN_FAILED``) to the
list of
error codes eligible for the retry mechanism that attempts to mitigate
build
failures due to anti-virus program interference. (:issue:`8138`)
* (Windows) Fix issue with non-functional :func:`time.sleep()` when
building
program with Python <= 3.8.6 or Python 3.9.0. (:issue:`8104`)
* (Windows) Fix issue with splash screen in ``onefile`` mode failing to
extract
``VCRUNTIME140.dll`` from the archive due to character-case mismatch. We
now
perform case-insensitive comparison between the name listed in splash
dependency list and the names in archive TOC. (:issue:`8103`)
* Fix PEP 597 EncodingWarnings when :envvar:`PYTHONWARNDEFAULTENCODING`
is set
to true. (:issue:`8117`)
* Fix pre-safe-import hooks for ``six.moves``,
``urllib3.packages.six.moves``,
and ``setuptools.extern.six.moves`` to gracefully handle cases when the
corresponding ``six`` package is unavailable, as the hook may end up
being
executed even in that case. (:issue:`8145`)
* Fix symbolic link tracking in ``MERGE`` processing, so that distinct
symbolic
links with same relative target (e.g. ``Current -> A`` symbolic links
in Qt
.framework bundles collected on macOS) are properly processed, and kept
in the
original TOC upon their first occurrence. (:issue:`8124`)
<p>Hooks</p>
<pre><code>
* Add hook for ``gi.repository.DBus``. (:issue:`8149`)
* Add hooks for ``gi.repository.AppIndicator3`` and
``gi.repository.AyatanaAppIndicator3``. (:issue:`8149`)
Bootloader
</code></pre>
<ul>
<li>When setting up embedded Python interpreter configuration, set
<code>PyConfig.install_signal_handlers=1</code> to install
signal handlers.
This matches the behavior of PyInstaller 5.x bootloaders, where
interpreter
was initialized via <code>Py_Initialize()</code>, which in
turn calls
<code>Py_InitializeEx(1)</code>, i.e., with
<code>install_sigs=1</code>.
(:issue:<code>8105</code>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/f563dce1e83fd5ec72a20dffd2ac24be3e647150"><code>f563dce</code></a>
Release v6.3.0. [skip ci]</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/79aa828e130ef334ab228f6fa43a28ade41596ca"><code>79aa828</code></a>
hooks: gi: add hook for gi.repository.DBus</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/3f42b9574fe290fa3e2853a07d6c6c02f2dd5875"><code>3f42b95</code></a>
hooks: gi: add hooks for AppIndicator3 and
AyatanaAppIndicator3</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/b262373f689df7bc75cd7bc35bb64f8b42932062"><code>b262373</code></a>
Tests: Requirements: Scheduled weekly dependency update for week 50
(<a
href="https://redirect.github.com/pyinstaller/pyinstaller/issues/8157">#8157</a>)</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/0f51fca360e052a027c263400d028efc724024ce"><code>0f51fca</code></a>
bindepend: optimize binary-vs-data classification on linux</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/14af1e7143dcc456c363fdfee816560f4b9b553c"><code>14af1e7</code></a>
building: add an INFO message at start of binary-vs-data
reclassification</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/8c4d099e5f647ffb393adea6da227d1f123adf01"><code>8c4d099</code></a>
pre-safe-import-hooks: create six.move runtime package only if six is
available</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/ac91826b1f9fa5ed12763d37eca009ff6ed275ab"><code>ac91826</code></a>
pre-safe-import-hooks: gracefully handle cases when six is
unavailable</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/bb1b306ccaf2274100e8b1eec321b1c7f3352322"><code>bb1b306</code></a>
Tests: Requirements: Scheduled weekly dependency update for week 49
(<a
href="https://redirect.github.com/pyinstaller/pyinstaller/issues/8142">#8142</a>)</li>
<li><a
href="https://github.com/pyinstaller/pyinstaller/commit/ac7f6835c28b01af32c5f0924767556e9c1a16a0"><code>ac7f683</code></a>
building: retry mechanism: enable retry on winerror 110</li>
<li>Additional commits viewable in <a
href="https://github.com/pyinstaller/pyinstaller/compare/v6.2.0...v6.3.0">compare
view</a></li>
</ul>
</details>
<br />
</code></pre>
[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pyinstaller&package-manager=pip&previous-version=6.2.0&new-version=6.3.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 05:38:17 +00:00
|
|
|
"pyinstaller==6.3.0",
|
Update pytest-asyncio requirement from <0.22,>=0.17 to >=0.17,<0.24 (#6574)
Updates the requirements on
[pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) to permit
the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's
releases</a>.</em></p>
<blockquote>
<h2>pytest-asyncio 0.23.3</h2>
<h1>0.23.3 (2024-01-01)</h1>
<ul>
<li>Fixes a bug that caused event loops to be closed prematurely when
using async generator fixtures with class scope or wider in a
function-scoped test <a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/706">#706</a></li>
<li>Fixes various bugs that caused an internal pytest error during test
collection <a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/711">#711</a>
<a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/713">#713</a>
<a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/719">#719</a></li>
</ul>
<h2>Known issues</h2>
<p>As of v0.23, pytest-asyncio attaches an asyncio event loop to each
item of the test suite (i.e. session, packages, modules, classes,
functions) and allows tests to be run in those loops when marked
accordingly. Pytest-asyncio currently assumes that async fixture scope
is correlated with the new event loop scope. This prevents fixtures from
being evaluated independently from the event loop scope and breaks some
existing test suites (see <a
href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/706">#706</a>).
For example, a test suite may require all fixtures and tests to run in
the same event loop, but have async fixtures that are set up and torn
down for each module. If you're affected by this issue, please continue
using the v0.21 release, until it is resolved.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/260b79185b198bad96a8fb2abc607a91ad8a5490"><code>260b791</code></a>
[docs] Prepare release of v0.23.3.</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/6a253e20fb174b6750075a6cfdd9409e4c6221f5"><code>6a253e2</code></a>
[docs] Shorten changelog by combining multiple issues.</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/e2cbb906c5124df131abe39c447c5486aae913be"><code>e2cbb90</code></a>
[docs] Mention correct issue in changelog.</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/0c522bff1525e77ff75691ee7530c71fe63e2775"><code>0c522bf</code></a>
[fix] Fixes a bug that caused an internal pytest error when using
ImportWarni...</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/31c7e6f9acda156a7aabf23d18e88c23f5f897a4"><code>31c7e6f</code></a>
Build(deps): Bump coverage from 7.3.3 to 7.3.4 in
/dependencies/default</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/38d5c7eed0d5193752043631aabde287d0627127"><code>38d5c7e</code></a>
Build(deps): Bump sphinx-rtd-theme in /dependencies/docs</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/650ec5875dcefc4eb4c1b2b0ba792aa643cd0823"><code>650ec58</code></a>
Build(deps): Bump babel from 2.13.1 to 2.14.0 in /dependencies/docs</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/0166a7e55fd5ac31afdaffd7dd54e77003f6cc30"><code>0166a7e</code></a>
Build(deps): Bump typing-extensions in /dependencies/default</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/3a15f3039c2b0101b73af651e8b9c667b1a51434"><code>3a15f30</code></a>
Build(deps): Bump coverage from 7.3.2 to 7.3.3 in
/dependencies/default</li>
<li><a
href="https://github.com/pytest-dev/pytest-asyncio/commit/28e91f00cd59d8aca364e6041f898cde8239b4e6"><code>28e91f0</code></a>
Build(deps): Bump hypothesis in /dependencies/default</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-asyncio/compare/v0.17.0...v0.23.3">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 05:44:17 +00:00
|
|
|
"pytest-asyncio>=0.17,<0.24",
|
2023-06-02 10:06:45 +00:00
|
|
|
"pytest-cov>=2.7.1,<4.2",
|
2023-11-02 09:52:23 +00:00
|
|
|
"pytest-timeout>=1.3.3,<2.3",
|
Update pytest-xdist requirement from <3.4,>=2.1.0 to >=2.1.0,<3.6 (#6517)
Updates the requirements on
[pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the
latest version.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's
changelog</a>.</em></p>
<blockquote>
<h1>pytest-xdist 3.5.0 (2023-11-21)</h1>
<h2>Features</h2>
<ul>
<li><code>[#632](https://github.com/pytest-dev/pytest-xdist/issues/632)
<https://github.com/pytest-dev/pytest-xdist/issues/632></code>_:
<code>--dist=loadscope</code> now sorts scopes by number of tests to
assign largest scopes early -- in many cases this should improve overall
test session running time, as there is less chance of a large scope
being left to be processed near the end of the session, leaving other
workers idle.</li>
</ul>
<h1>pytest-xdist 3.4.0 (2023-11-11)</h1>
<h2>Features</h2>
<ul>
<li>
<p><code>[#963](https://github.com/pytest-dev/pytest-xdist/issues/963)
<https://github.com/pytest-dev/pytest-xdist/issues/963></code>_:
Wait for workers to finish reporting when test run stops early.</p>
<p>This makes sure that the results of in-progress tests are displayed.
Previously these reports were being discarded, losing information about
the
test run.</p>
</li>
<li>
<p><code>[#965](https://github.com/pytest-dev/pytest-xdist/issues/965)
<https://github.com/pytest-dev/pytest-xdist/issues/965></code>_:
Added support for Python 3.12.</p>
</li>
</ul>
<h1>pytest-xdist 3.3.1 (2023-05-19)</h1>
<h2>Bug Fixes</h2>
<ul>
<li>
<p><code>[#907](https://github.com/pytest-dev/pytest-xdist/issues/907)
<https://github.com/pytest-dev/pytest-xdist/issues/907></code>_:
Avoid remote calls during startup as <code>execnet</code> by default
does not ensure remote affinity with the
main thread and might accidentally schedule the pytest worker into a
non-main thread, which breaks numerous frameworks,
for example <code>asyncio</code>, <code>anyio</code>,
<code>PyQt/PySide</code>, etc.</p>
<p>A more safe correction will require thread affinity in
<code>execnet</code> (<code>pytest-dev/execnet#96
<https://github.com/pytest-dev/execnet/issues/96></code>__).</p>
</li>
</ul>
<h1>pytest-xdist 3.3.0 (2023-05-12)</h1>
<h2>Features</h2>
<ul>
<li><code>[#555](https://github.com/pytest-dev/pytest-xdist/issues/555)
<https://github.com/pytest-dev/pytest-xdist/issues/555></code>_:
Improved progress output when collecting nodes to be less verbose.</li>
</ul>
<h1>pytest-xdist 3.2.1 (2023-03-12)</h1>
<p>Bug Fixes</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/95b309e980796a261045d770f69c016ca741473d"><code>95b309e</code></a>
Release 3.5.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/3fe877bc6d7211f31e55d2d561803f76ea95b935"><code>3fe877b</code></a>
LoadScope scheduler: Sort scopes by number of tests to assign biggest
scopes ...</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/f36ea25cb53cb960037f4a8510816b81fa313035"><code>f36ea25</code></a>
Create GitHub release after deploy (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/973">#973</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/d81f57508d064915fc16ace5dea4d43406db2ba0"><code>d81f575</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/969">#969</a>
from pytest-dev/pre-commit-ci-update-config</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/1d2616418c046d0e6f059b8f76e35a0627409616"><code>1d26164</code></a>
[pre-commit.ci] pre-commit autoupdate</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/5f43575b42d6d4c0078de807880b8b0791b75823"><code>5f43575</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/966">#966</a>
from pytest-dev/release-3.4.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/a6b56112f9b686aed7a354e0d50ecc26ad2d9dfe"><code>a6b5611</code></a>
Update CHANGELOG</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/64f9388f4164e9f64d98a7580933e958ea4a09d5"><code>64f9388</code></a>
Add support for Python 3.12</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/230ba6ad1057574c9f3d42a97f890788cd9ec6c3"><code>230ba6a</code></a>
Properly wait for workers when test run terminates early (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/963">#963</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/93ca202b400eecc62919bcd9b0bab001e3f3f7ef"><code>93ca202</code></a>
fix typo index -> instead</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-xdist/compare/v2.1.0...v3.5.0">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-02 00:02:36 +00:00
|
|
|
"pytest-xdist>=2.1.0,<3.6",
|
2023-03-26 17:40:32 +00:00
|
|
|
"pytest>=6.1.0,<8",
|
|
|
|
"requests>=2.9.1,<3",
|
|
|
|
"tox>=3.5,<5",
|
2023-12-02 00:02:54 +00:00
|
|
|
"wheel>=0.36.2,<0.43",
|
2023-03-26 17:40:32 +00:00
|
|
|
"build>=0.10.0",
|
|
|
|
]
|
|
|
|
|
|
|
|
[project.urls]
|
|
|
|
Homepage = "https://mitmproxy.org"
|
|
|
|
Source = "https://github.com/mitmproxy/mitmproxy/"
|
|
|
|
Documentation = "https://docs.mitmproxy.org/stable/"
|
|
|
|
Issues = "https://github.com/mitmproxy/mitmproxy/issues"
|
|
|
|
|
|
|
|
[project.scripts]
|
|
|
|
mitmproxy = "mitmproxy.tools.main:mitmproxy"
|
|
|
|
mitmdump = "mitmproxy.tools.main:mitmdump"
|
|
|
|
mitmweb = "mitmproxy.tools.main:mitmweb"
|
|
|
|
|
|
|
|
[project.entry-points.pyinstaller40]
|
|
|
|
hook-dirs = "mitmproxy.utils.pyinstaller:hook_dirs"
|
|
|
|
|
|
|
|
[build-system]
|
|
|
|
requires = ["setuptools"]
|
|
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
|
|
|
|
[tool.setuptools.dynamic]
|
|
|
|
version = {attr = "mitmproxy.version.VERSION"}
|
|
|
|
|
|
|
|
[tool.setuptools.packages.find]
|
|
|
|
include = ["mitmproxy*"]
|
|
|
|
|
|
|
|
[tool.coverage.run]
|
|
|
|
branch = false
|
|
|
|
omit = [
|
|
|
|
"*contrib*",
|
|
|
|
"*tnetstring*",
|
|
|
|
"*platform*",
|
|
|
|
"*main.py",
|
|
|
|
]
|
|
|
|
|
|
|
|
[tool.coverage.report]
|
|
|
|
show_missing = true
|
|
|
|
exclude_lines = [
|
|
|
|
"pragma: no cover",
|
|
|
|
"raise NotImplementedError",
|
|
|
|
"raise AssertionError",
|
|
|
|
"if typing.TYPE_CHECKING:",
|
|
|
|
"if TYPE_CHECKING:",
|
|
|
|
"@overload",
|
|
|
|
"@abstractmethod",
|
|
|
|
"assert_never",
|
|
|
|
"\\.\\.\\.",
|
|
|
|
]
|
|
|
|
|
|
|
|
[tool.pytest.ini_options]
|
|
|
|
asyncio_mode = "auto"
|
|
|
|
testpaths = "test"
|
|
|
|
addopts = "--capture=no --color=yes"
|
|
|
|
filterwarnings = [
|
|
|
|
"ignore::DeprecationWarning:tornado.*:",
|
2023-12-12 18:15:19 +00:00
|
|
|
"error::RuntimeWarning",
|
|
|
|
"error::pytest.PytestUnraisableExceptionWarning",
|
2023-03-26 17:40:32 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
[tool.mypy]
|
|
|
|
check_untyped_defs = true
|
|
|
|
ignore_missing_imports = true
|
|
|
|
files = [
|
|
|
|
"mitmproxy",
|
|
|
|
"examples/addons",
|
|
|
|
"release/*.py",
|
|
|
|
]
|
|
|
|
exclude = [
|
|
|
|
"^docs/",
|
|
|
|
"^release/build/",
|
|
|
|
"^examples/contrib/",
|
|
|
|
]
|
|
|
|
|
|
|
|
[[tool.mypy.overrides]]
|
|
|
|
module = "mitmproxy.contrib.*"
|
|
|
|
ignore_errors = true
|
|
|
|
|
|
|
|
[[tool.mypy.overrides]]
|
|
|
|
module = "tornado.*"
|
|
|
|
ignore_errors = true
|
|
|
|
|
|
|
|
[[tool.mypy.overrides]]
|
|
|
|
module = "test.*"
|
|
|
|
ignore_errors = true
|
|
|
|
|
2023-10-31 15:03:53 +00:00
|
|
|
[tool.ruff]
|
|
|
|
select = ["E", "F", "I"]
|
|
|
|
extend-exclude = ["mitmproxy/contrib/"]
|
|
|
|
ignore = ["F541", "E501"]
|
|
|
|
|
|
|
|
|
|
|
|
[tool.ruff.isort]
|
|
|
|
# these rules are a bit weird, but they mimic our existing reorder_python_imports style.
|
|
|
|
# if we break compatibility here, consider removing all customization + enforce absolute imports.
|
|
|
|
force-single-line = true
|
|
|
|
order-by-type = false
|
|
|
|
section-order = ["future", "standard-library", "third-party", "local-folder","first-party"]
|
|
|
|
no-lines-before = ["first-party"]
|
|
|
|
known-first-party = ["test", "mitmproxy"]
|
2023-06-25 23:26:21 +00:00
|
|
|
|
2023-03-26 17:40:32 +00:00
|
|
|
[tool.tox]
|
|
|
|
legacy_tox_ini = """
|
|
|
|
[tox]
|
2023-10-31 15:03:53 +00:00
|
|
|
envlist = py, lint, mypy
|
2023-03-26 17:40:32 +00:00
|
|
|
skipsdist = True
|
|
|
|
toxworkdir={env:TOX_WORK_DIR:.tox}
|
|
|
|
|
|
|
|
[testenv]
|
|
|
|
deps =
|
|
|
|
-e .[dev]
|
|
|
|
setenv = HOME = {envtmpdir}
|
|
|
|
commands =
|
|
|
|
mitmdump --version
|
|
|
|
pytest --timeout 60 -vv --cov-report xml \
|
|
|
|
--continue-on-collection-errors \
|
|
|
|
--cov=mitmproxy --cov=release \
|
|
|
|
--full-cov=mitmproxy/ \
|
|
|
|
{posargs}
|
|
|
|
|
2023-10-31 15:03:53 +00:00
|
|
|
[testenv:lint]
|
2023-03-26 17:40:32 +00:00
|
|
|
deps =
|
2023-10-31 15:03:53 +00:00
|
|
|
ruff>=0.1.3,<0.2
|
2023-03-26 17:40:32 +00:00
|
|
|
commands =
|
2023-10-31 15:03:53 +00:00
|
|
|
ruff .
|
2023-03-26 17:40:32 +00:00
|
|
|
|
|
|
|
[testenv:filename_matching]
|
|
|
|
deps =
|
|
|
|
commands =
|
|
|
|
python ./test/filename_matching.py
|
|
|
|
|
|
|
|
[testenv:mypy]
|
|
|
|
deps =
|
2023-10-31 17:57:21 +00:00
|
|
|
mypy==1.6.1
|
2023-03-26 17:40:32 +00:00
|
|
|
types-certifi==2021.10.8.3
|
|
|
|
types-Flask==1.1.6
|
|
|
|
types-Werkzeug==1.0.9
|
2023-10-31 17:57:21 +00:00
|
|
|
types-requests==2.31.0.10
|
2023-03-26 17:40:32 +00:00
|
|
|
types-cryptography==3.3.23.2
|
2023-10-31 17:57:21 +00:00
|
|
|
types-pyOpenSSL==23.3.0.0
|
2023-03-26 17:40:32 +00:00
|
|
|
-e .[dev]
|
|
|
|
|
|
|
|
commands =
|
|
|
|
mypy {posargs}
|
|
|
|
|
|
|
|
[testenv:individual_coverage]
|
|
|
|
commands =
|
|
|
|
python ./test/individual_coverage.py {posargs}
|
|
|
|
|
|
|
|
[testenv:wheeltest]
|
|
|
|
recreate = True
|
|
|
|
deps =
|
|
|
|
commands =
|
|
|
|
pip install {posargs}
|
|
|
|
mitmproxy --version
|
|
|
|
mitmdump --version
|
|
|
|
mitmweb --version
|
|
|
|
"""
|