Commit Graph

392 Commits

Author SHA1 Message Date
Jesson Soto Ventura 55719a6942
Updated Setup.py
A comma broke the build
2019-09-24 23:47:14 -04:00
Jesson Soto Ventura b7e2590294
Merge branch 'master' into tabular 2019-09-24 23:40:28 -04:00
Jesson Soto Ventura 94ca23b782 TLD and SLD are now highlighted using publicsuffix
- Added time.time() as the default for the start time on fake requests
2019-09-24 23:12:25 -04:00
Maximilian Hils a08c22dcdd
Merge pull request #3631 from mhils/lint
Fix CI
2019-09-05 23:20:54 +02:00
Maximilian Hils e77f375186 lint 2019-09-05 22:08:21 +02:00
Tero Saaristo dd3589ce34 encoding: add support for zstd (zstandard)
Handles zstandard-compressed bodies labeled as zstd.
2019-09-05 17:52:04 +03:00
Felix Yan 2fef56767b
Use Brotli instead of brotlipy
brotlipy is stuck at brotli 0.6 and upstream is inactive. Let's switch
to the official binding which is up-to-date and has same interfaces.
2019-05-27 16:10:18 +08:00
rpigott 106948d996 update to wsproto 0.13 2019-01-29 12:09:05 -08:00
Thomas Kriechbaumer 2fb2b48a06 bump dependencies 2018-12-02 15:48:20 +01:00
Thomas Kriechbaumer afdcb944e1 bump wsproto 2018-09-23 13:46:45 +02:00
Thomas Kriechbaumer f95784ba9d update readme slogan 2018-09-21 10:38:25 +02:00
Thomas Kriechbaumer 925bba4c3c Python 3.7 is here 2018-09-07 17:48:06 +02:00
Guangchao 3f14a485d3 Lib ruamel.yaml version 0.15.55 will caused typing.Sequence[str] unsupported in option.
Baseed on release note of recent version 0.15.55 ruamel.yaml, it unmade CommentedSeq a subclass of list.
This will cause the sequence parsed from yaml cannot be set to option whose type is typing.Sequence[str].
2018-08-17 15:19:29 +08:00
Thomas Kriechbaumer f3169da3eb bump dependencies 2018-07-27 10:02:52 +02:00
Pietro Francesco Tirenna d5da74645b protobuf: tests implemented, full coverage 2018-07-17 19:23:01 +02:00
madt1m e842aa3798 Added protobuf methods; implemented initial DB logic 2018-06-23 03:02:39 +02:00
Maximilian Hils 09ff5df2fb Such CI, Very Wow. (#3182) 2018-06-02 21:37:44 +02:00
Aldo Cortesi d1e3968fa8 Fix typo in parver version spec 2018-05-27 09:41:30 +12:00
Aldo Cortesi 76c056affd
Merge pull request #3156 from cortesi/cibuild2
More cibuild tweaks
2018-05-25 13:13:10 +12:00
Aldo Cortesi ff92962c51 cibuild: start building version awareness 2018-05-25 10:50:48 +12:00
Maximilian Hils 1da4358706 [requires.io] dependency update on master branch (#3154) 2018-05-24 23:48:45 +02:00
requires.io 710880a652 [requires.io] dependency update 2018-04-26 22:41:36 +02:00
Aldo Cortesi cabb788072
Merge pull request #3057 from mitmproxy/requires-io-master
[requires.io] dependency update on master branch
2018-04-15 10:03:54 +12:00
requires.io 09e125396c [requires.io] dependency update 2018-04-14 19:10:15 +02:00
requires.io 84af021c1b [requires.io] dependency update 2018-04-14 02:56:00 +02:00
Aldo Cortesi 8609de6f31 readfile: add a readfile_filter option
* Add a readfile_filter option that filters flows on read.
* Adjust test suite for asyncio.
* Add asynctest as a dev dependency.
2018-04-14 11:52:02 +12:00
Aldo Cortesi 9dcd15d350 asyncio: ditch the handler context
There are a few reasons for this. First, logs are now async, and can be called
at any time. Second, the event loop is thread local, so there can only ever be
one master per thread. These two things together completely obviate the need
for a handler context.
2018-04-07 09:04:14 +12:00
requires.io c5881c0dc9 [requires.io] dependency update 2018-04-02 20:49:26 +02:00
Thomas Kriechbaumer 46f8901b8c Python 3.5 is dead -- long live Python 3.6!
fixes #2266
2018-03-31 18:46:32 +02:00
Thomas Kriechbaumer eb297d82aa fix Tornado 5.0 event loop
https://github.com/tornadoweb/tornado/issues/2183#issuecomment-371001254
2018-03-24 11:19:04 +01:00
Thomas Kriechbaumer f34932c171
[requires.io] dependency update on master branch (#2992) 2018-03-24 10:42:49 +01:00
requires.io 7e1a6d1427 [requires.io] dependency update 2018-03-02 21:02:21 +01:00
Aldo Cortesi b57f551c0d
Merge pull request #2921 from fristonio/Fix-2899
Remove h11 from dependencies and move requests to dev dependencies
2018-02-26 08:49:19 +13:00
Miroslav 4ae9b065e7 Getting rid of Pillow 2018-02-25 21:26:25 +02:00
Deepesh Pathak a40dbc11b8
Remove h11 from dependencies and move requests to dev dependencies 2018-02-26 00:02:05 +05:30
Chih-Hsuan Yen d1ecf9df94
Explicitly declare pyperclip requirement
pyperclip version 1.6.0 introduces an API change: the class `pyperclip.exceptions.PyperclipException` is moved to `pyperclip.PyperclipException`. As mitmproxy uses the latter, it's better to explicitly declare the requirement.
2018-02-24 00:26:49 +08:00
Aldo Cortesi 982508d30f All new documentation
This patch does a lot.

- Ditch sphinx in favor of hugo. This gives us complete control of the layout
and presentation of our docs. Henceforth, docs will be hosted on our website
rather than ReadTheDocs.
- Create a simple, clean doc layout and theme.
- Remove large parts of the documentaion. I've ditched anything that was a)
woefully out of date, b) too detailed, or c) too hard to maintain in the long
term.
- Huge updates to the docs themselves: completely rewrite addons documentation,
add docs for core concepts like commands and options, and revise and tweak a
lot of the existing docs.

With this patch, we're also changing the way we publish and maintain the docs.
From now on, we don't publish docs for every release. Instead, the website will
contain ONE set of docs for each major release. The online docs will be updated
if needed as minor releases are made. Docs are free to improve during minor
releases, but anything that changes behaviour sufficiently to require a doc
change warrants a new major release. This also leaves us free to progressively
update and improve docs out of step with our release cadence.

With this new scheme, I feel CI over the docs is less important. I've removed
it for now, but won't object if someone wants to add it back in.
2018-02-22 18:07:58 +13:00
requires.io b95319cb66 [requires.io] dependency update 2018-02-12 10:33:06 +01:00
Thomas Kriechbaumer 02d8ed8aeb
[requires.io] dependency update on master branch (#2848) 2018-02-07 13:06:29 +01:00
Thomas Kriechbaumer 7610d78bb6 bump minimum requirements for known bugfix releases 2018-01-27 11:27:37 +01:00
Maximilian Hils bfac5f968e
bump minimum required urwid version, fix #2815 2018-01-26 20:28:11 +01:00
Thomas Kriechbaumer 06da673942 [requires.io] dependency update on master branch (#2799) 2018-01-18 19:25:59 +01:00
Maximilian Hils 1e03a5d31e dependency update 2018-01-04 18:55:07 +01:00
Thomas Kriechbaumer 4495562f86 unvendor wsproto 2018-01-01 13:34:21 +01:00
Maximilian Hils 6245566263 fix #2470 2017-12-30 18:48:51 +01:00
Maximilian Hils 9dc3d16bf2 single-source version processing 2017-12-30 18:48:47 +01:00
Thomas Kriechbaumer 8a38e1ef3a bump cryptography
This includes important security fixes.
2017-12-17 09:44:57 +01:00
requires.io 4e24915c8e [requires.io] dependency update 2017-12-15 23:20:14 +01:00
Thomas Kriechbaumer f5fafbfcb5 vendoring of wsproto
https://github.com/python-hyper/wsproto.git
commit 5ea2da61266796666f5de6461aaae22e6b00deba
2017-12-12 22:09:46 +01:00
Thomas Kriechbaumer b09c28d8a6
[requires.io] dependency update on master branch (#2637) 2017-12-11 17:04:33 +01:00
Thomas Kriechbaumer 59af6af0f7
[requires.io] dependency update on master branch (#2629) 2017-11-15 12:56:38 +01:00
requires.io d00804656d [requires.io] dependency update 2017-11-10 21:44:26 +01:00
Thomas Kriechbaumer 68c259293e
[requires.io] dependency update on master branch (#2623) 2017-11-10 11:14:41 +01:00
Thomas Kriechbaumer 80a8eaa708 bump flake8
closes #2601
2017-10-31 10:58:38 +01:00
Thomas Kriechbaumer 569d275d76 [requires.io] dependency update on master branch (#2586) 2017-10-22 18:06:44 +02:00
Maximilian Hils d5173f3905 allow pyOpenSSL 17.2 2017-10-17 11:41:09 +02:00
requires.io f62e9882cd [requires.io] dependency update 2017-10-06 19:48:36 +03:00
requires.io 579b0863b7 [requires.io] dependency update 2017-10-02 17:48:05 +02:00
Maximilian Hils 289ddfe988 remove html outline contentview, fix #2572 2017-09-14 15:11:24 -07:00
requires.io be1bfbcba4 [requires.io] dependency update 2017-09-14 05:10:47 +02:00
Maximilian Hils f46e5e667f remove jsbeautifier dependency 2017-09-03 21:02:29 +02:00
Maximilian Hils 1000efb671 remove cssutils dependency 2017-08-24 20:39:38 +02:00
Thomas Kriechbaumer 68839077b6 Revert "Fix version conflict" 2017-08-15 16:32:18 +02:00
Ujjwal Verma 35c267b9bf Fix version conflict 2017-08-10 16:50:20 +05:30
requires.io da38e36ea0 [requires.io] dependency update 2017-08-02 20:40:40 +02:00
Thomas Kriechbaumer 8b0a570f4c bump dependency 2017-08-02 19:53:32 +02:00
requires.io 31db24599a [requires.io] dependency update 2017-07-24 21:25:04 +02:00
Thomas Kriechbaumer 28c326031a [requires.io] dependency update on master branch (#2435) 2017-07-24 21:03:14 +02:00
Maximilian Hils 5c4b0d4132 require latest mypy version (refs #2452) 2017-07-24 19:03:01 +02:00
Maximilian Hils 7b0485d6d6 update mypy 2017-07-20 16:27:13 +02:00
Thomas Kriechbaumer b115c25dcc [requires.io] dependency update on master branch (#2426) 2017-07-09 09:44:24 +02:00
Maximilian Hils 55a20b819e update dependencies 2017-07-05 08:39:26 +02:00
Maximilian Hils 387235b580 [requires.io] dependency update on master branch (#2373) 2017-06-05 11:48:28 +02:00
Maximilian Hils acd568c6fa [requires.io] dependency update on master branch (#2360) 2017-05-31 10:18:39 +02:00
Maximilian Hils eb5f37a7d1 fix mypy annotations 2017-05-26 16:14:20 +02:00
Thomas Kriechbaumer 4aeb6c6455 cleanup old tls_parser 2017-05-26 13:59:41 +02:00
Thomas Kriechbaumer 0bd3d0ff4c upgrade pytest and remove our pytest.raises wrapper 2017-05-24 11:35:53 +02:00
Maximilian Hils 4b1cd76f3e [requires.io] dependency update (#2328) 2017-05-18 16:59:08 +08:00
Thomas Kriechbaumer 1c6b33f5af update packages 2017-05-11 10:16:19 +02:00
Charles d'Hondt 154e8ac0fc fixed lint 2017-05-04 13:39:48 +02:00
Charles d'Hondt f67d9adc31 Added ldap mock test 2017-05-04 13:25:15 +02:00
Charles d'Hondt 3f094a54ce added ldap3 to setup.py 2017-05-02 10:18:49 +02:00
Thomas Kriechbaumer 3e82f4d6c4 bump cryptography min-version
This removes OpenSSL v0.9.8 support.
2017-04-27 19:39:56 +02:00
Aldo Cortesi 7aa2081894 Remove watchdog, solidify script testing
- Remove the watchdog dependency. We now just stat the script file every 2
seconds to check for an updated mtime.
- Further solidify our script testing, and in particular make the example tests
nicer. These should exemplify how we want users to test their own addon
scripts. More work on addon testing to follow.
2017-04-26 09:01:40 +12:00
Maximilian Hils 6af72160bf [requires.io] dependency update on master branch (#2252) 2017-04-20 15:29:42 +02:00
Maximilian Hils 3d7cde058b [requires.io] dependency update on master branch (#2241) 2017-04-17 10:49:17 +02:00
Maximilian Hils 3aa7f24992 Update setup.py 2017-04-16 19:44:26 +02:00
requires.io 3afeb7c7e9 [requires.io] dependency update 2017-04-16 19:42:32 +02:00
Thomas Kriechbaumer dadb50946e update kaitai and recompile formats 2017-04-16 15:51:11 +02:00
Thomas Kriechbaumer ef9f0e22ea bump h2 2017-03-24 21:27:14 +01:00
Maximilian Hils 26d0254203 [requires.io] dependency update on master branch (#2193) 2017-03-21 18:43:56 +01:00
Aldo Cortesi 5192810ff6 Make mypy succeed with imports on master.py
We get little benefit from our mypy QA checks at the moment, because we skip
imports. This patch is what's needed to make mypy succeed with imports on a
single file: master.py

It also updates mypy to the current version, and enables a QA check.

Mypy bugs I encountered:

dict.update with kwargs not supported:

https://github.com/python/mypy/issues/1031

property setters and getters must be adjacent:

https://github.com/python/mypy/issues/1465
2017-03-17 08:13:47 +13:00
Thomas Kriechbaumer 2a934ed323 bump h2 and hyperframe 2017-03-16 10:33:36 +01:00
Aldo Cortesi b275257553 Merge pull request #2167 from mhils/update-dependencies
update mypy
2017-03-16 18:05:35 +13:00
Maximilian Hils 112233891d update mypy 2017-03-15 23:10:21 +01:00
Thomas Kriechbaumer bbf4629906 bump sphinx 2017-03-15 23:05:06 +01:00
Thomas Kriechbaumer ec5d9cbd2b Merge pull request #2159 from Kriechi/bump-pyparsing
bump pyparsing
2017-03-15 11:45:47 +01:00
Thomas Kriechbaumer aa4ab88459 bump pyparsing 2017-03-15 10:14:16 +01:00
Thomas Kriechbaumer 0316a13f7e bump cryptography 2017-03-15 10:03:18 +01:00
Ujjwal Verma e723a58af5 Remove pytz in hardump 2017-02-25 23:07:47 +05:30
Thomas Kriechbaumer 36352c9539 protobuf: coverage++ 2017-02-19 14:29:09 +01:00
Thomas Kriechbaumer 8a6f8bd461 nuke Pillow 2017-02-15 00:54:14 +01:00
Thomas Kriechbaumer 63cfb4e480 nuke pypy 2017-02-12 12:32:30 +01:00
Maximilian Hils 3067a971f9 Merge pull request #2000 from s4chin/add-jpeg-parser
Add jpeg parser
2017-02-11 23:00:14 +01:00
Maximilian Hils 705ffd6d06 update mypy
The pypi package name has changed.
2017-02-11 00:14:49 +01:00
Maximilian Hils 1c8836a8d6 update dependencies 2017-02-10 14:38:05 +01:00
Sachin Kelkar 5dd54ef012 Update kaitaistruct version to 0.6 2017-02-08 21:16:17 +05:30
Sachin Kelkar 15548ff433 Feedback 2017-02-03 18:40:50 +05:30
Sachin Kelkar abef020e07 Fix as per feedback and add more tests 2017-02-03 14:12:54 +05:30
Thomas Kriechbaumer 127c69c3ac nuke mock dependency
This is already included in Python 3.3+ as unittest.mock
2017-01-22 14:11:28 +01:00
Maximilian Hils 1e89a93801 update dependencies 2017-01-07 23:07:50 +01:00
Thomas Kriechbaumer 0bde932b78 run tests on Python 3.6 2016-12-27 16:28:12 +01:00
Thomas Kriechbaumer c50feb6a40 bump h2
This takes care of https://github.com/python-hyper/hyper-h2/issues/422
2016-12-17 18:12:16 +01:00
Maximilian Hils 1d846709c6 update dependencies 2016-12-14 18:19:49 +01:00
Maximilian Hils a7d7ad2880 Merge pull request #1837 from mhils/1809
Fix #1809
2016-12-11 21:13:20 +01:00
Maximilian Hils 00ae4d3f6e fix version sourcing in setup.py 2016-12-11 17:50:46 +01:00
Maximilian Hils 21eeaebc6b pin docutils version to fix docs tests 2016-12-11 14:54:12 +01:00
Thomas Kriechbaumer 036130868d bump dependencies 2016-12-10 19:37:06 +01:00
Aldo Cortesi 8112bce424 Merge pull request #1831 from mhils/contentviews
Split contentviews.py into mitmproxy.contentviews
2016-12-11 07:33:27 +13:00
Maximilian Hils 8df61c927e Merge pull request #1834 from Kriechi/remove_ssl_match_hostname
remove backport.ssl_match_hostname
2016-12-10 17:03:18 +01:00
Thomas Kriechbaumer 7bae941ecc remove backport.ssl_match_hostname
This is already included in Python 3.5+
2016-12-10 14:29:51 +01:00
Maximilian Hils 293b79af91 remove lxml-dependent code 2016-12-10 10:19:05 +01:00
Aldo Cortesi d742d4fb8c Replace configargparse with argparse, enable new options loading
This commit ditches configargparse and enables the new config file format. The
default location is ~/.mitmproxy/config.yaml. Unifying all of the various
Options objects will follow in the next patch.
2016-12-08 10:21:06 +13:00
Aldo Cortesi d74cac265a Add YAML serialization of options
This uses ruamel.yaml. The library seems well-supported, and can do in-place
modification of config files that retains user comments and file structure.
2016-12-08 10:21:06 +13:00
Thomas Kriechbaumer 33689c6b2d upgrade to construct 2.8 and new API 2016-12-04 16:15:28 +01:00
Maximilian Hils 3154dc87fd fix pyinstaller
amongst other things, fix #1746
2016-11-28 00:51:52 +01:00
Maximilian Hils de9e724a66 update dependencies (#1789) 2016-11-25 16:46:00 +01:00
Thomas Kriechbaumer 48d54e2d4a bump cryptography dependency 2016-11-23 11:55:11 +01:00
Maximilian Hils f644665cd9 update pydivert, fix #1749 2016-11-21 14:14:52 +01:00
Maximilian Hils e8067a2474 update dependencies 2016-11-18 12:59:59 +01:00
Doug Freed 6b6e64e09e setup.py: adjust mypy-lang dependency for semver
Looks like the previous form was a typo.
2016-11-16 13:54:10 +00:00
Aldo Cortesi 69bacee1d8 Sketch out addons.View
The first iteration of a replacement for addons.State
2016-10-29 08:25:19 +13:00
Thomas Kriechbaumer 44ac370f08 upgrade h2 to >=2.5.0 2016-10-27 15:10:53 -07:00
Maximilian Hils 33bc526b70 bump h2 version 2016-10-27 12:48:10 -07:00
Aldo Cortesi d6bdb28865 Add mypy to lint
An extremely modest beginning, but we'll roll this out over the whole codebase
in time.

Also move flake8 and mypy dependencies into setup[dev].
2016-10-27 09:40:27 +13:00
Maximilian Hils b1bdae3d1c typecheck options, fix current inconsistencies 2016-10-25 20:45:48 -07:00
Aldo Cortesi 8430f857b5 The final piece: netlib -> mitproxy.net 2016-10-20 11:56:38 +13:00
Aldo Cortesi 7440232f60 netlib.version -> mitmproxy.version 2016-10-20 09:20:44 +13:00
Aldo Cortesi 24cf8da27e Move all tools into mitmproxy.tools, move models/* to top level
The primary motivation here (and for all the other moving around) is to present
a clean "front of house" to library users, and to migrate primary objects to
the top of the module hierarchy.
2016-10-19 20:26:05 +13:00
Aldo Cortesi 43a83c89e7 python3: update README and setup.py trove classifiers 2016-10-17 18:42:48 +13:00
Maximilian Hils 209c73336c update protobuf, reenable for py3 (#1618) 2016-10-16 22:22:12 -07:00
Aldo Cortesi ae3ff8ee1e Merge pull request #1615 from cortesi/python3a
exterminate six
2016-10-17 17:03:02 +13:00
Aldo Cortesi ce98a9219e test & examples: zap six 2016-10-17 16:45:45 +13:00
Maximilian Hils 3fbce7e981 update pydivert dependency (#1614) 2016-10-16 20:30:28 -07:00
Aldo Cortesi 8360f70024 First-order conversion to Python3-only
- Zap various occurrences of Python2 in docs and scripts
- Remove six from netlib, and some other places where obvious project-wide
search and replace works.
2016-10-17 15:18:47 +13:00
Maximilian Hils 13fb384c19 update dependencies 2016-10-03 13:39:30 -07:00
Maximilian Hils eeec17902f update dependencies, minor fixes (#1577) 2016-09-24 21:01:48 -07:00
Thomas Kriechbaumer 0166f90cbe bump brotlipy 2016-09-11 16:28:07 +02:00
Thomas Kriechbaumer 09d60b2fa3 bump brotli dependency 2016-09-04 09:31:44 +02:00
Thomas Kriechbaumer d895d6caf0 improve CI 2016-09-03 13:48:28 +02:00