Aldo Cortesi
e6fd98bb72
Start rolling out leak detection in netlib
2016-06-14 14:32:18 +12:00
Aldo Cortesi
e58a2bf095
Merge branch 'master' into appveyor
2016-06-12 11:27:16 +12:00
Aldo Cortesi
dc545ca0f6
Make the tcp connection closer cancellable
...
And use this to make pathoc error handling more sophisticated
2016-06-12 11:17:05 +12:00
Aldo Cortesi
728d5caa22
Fold mitmproxy.version and pathod.version into netlib.version
2016-06-12 10:29:12 +12:00
Aldo Cortesi
09edbd9492
Improve debugging of thread and other leaks
...
- Add basethread.BaseThread that all threads outside of test suites should use
- Add a signal handler to mitmproxy, mitmdump and mitmweb that dumps resource
information to screen when SIGUSR1 is received.
- Improve thread naming throughout to make thread dumps understandable
2016-06-11 19:52:24 +12:00
Aldo Cortesi
11fb217191
Fix a crash when pathoc connections fail
...
Use the new handler to tidy this up.
2016-06-10 11:14:23 +12:00
Aldo Cortesi
2cf79b7912
Remove timestamps from pathoc output
...
Pathoc is an interactive tool, no need for a long leading timestamp. More
generally, make timestamps optional in the logging mechanism so we can
configure this with command-line flags or something down the track.
2016-06-10 10:47:28 +12:00
Shadab Zafar
7d62121b85
Py3: encode() the spec before appending to path
2016-06-08 16:29:21 +05:30
Shadab Zafar
70216673a1
Py3: Find content-length header by bytes
2016-06-08 16:28:39 +05:30
Shadab Zafar
e187358e97
Py3: Pass bytes to http Request and Response
2016-06-08 16:17:00 +05:30
Shadab Zafar
4f97216501
Py3: Properly encode() access to user_agents
2016-06-08 16:15:54 +05:30
Aldo Cortesi
1ffc273c94
Utils cleanups
...
- Move more stuff that belongs in netlib.human
- Move some stuff to near the only use
- Zap mitmproxy.utils.timestamp(). I see the rationale, but we used it
interchangeably with time.time() throughout the project. Since time.time()
dominates in the codebase and timestamp() is such low utility, away it goes.
2016-06-07 17:12:52 +12:00
Aldo Cortesi
75ebd638eb
Merge remote-tracking branch 'upstream/master'
2016-06-07 12:56:51 +12:00
Aldo Cortesi
e037fe05ff
Migrate pathod docs to Sphinx
...
All the content of the pathod docs are moved into Sphinx. The interactive
format has not translated well to static docs, and there's still a lot of
rewriting, format fixing, structuring, etc to be done.
2016-06-07 12:55:32 +12:00
Maximilian Hils
2ee5e8ef0e
fix NestedMessage encoding
2016-06-06 13:39:38 -07:00
Maximilian Hils
6447c8ae22
fix .freeze(), improve tests
2016-06-06 13:31:44 -07:00
Shadab Zafar
afa2ad81df
Py3: encode() status code responses
2016-06-06 11:52:45 -07:00
Shadab Zafar
b03a98f9fc
Py3: Exception doesn't have to be bytes
2016-06-06 11:52:45 -07:00
Shadab Zafar
5a2932adc1
Py3: Fix corresponding base.Integer test in test_language_base
2016-06-06 11:52:45 -07:00
Shadab Zafar
daba944151
Py3: Store base.Integer value as bytes
2016-06-06 11:52:45 -07:00
Shadab Zafar
78b2fa3a13
Py3: UASTRINGS should be indexed by and return bytes
2016-06-06 11:52:45 -07:00
Shadab Zafar
da38ce2e6e
Py3: decode() input before creating new Header token
2016-06-06 11:52:45 -07:00
Shadab Zafar
c4ac19be9f
Py3: Use bytes_to_escaped_str for escaping message
2016-06-06 11:52:45 -07:00
Shadab Zafar
4813f9c69e
Py3: More byte literals
2016-06-06 11:52:45 -07:00
Shadab Zafar
bafce6cfe9
Py3: Use byte string literals
2016-06-06 11:51:36 -07:00
Shadab Zafar
07a0d6dcc2
Py3: Return bytes from _Component class
2016-06-06 11:51:36 -07:00
Maximilian Hils
1214085f67
fix pathod test on Windows
2016-06-06 11:37:49 -07:00
Aldo Cortesi
210c376901
Fix sequencing in Pathoc websocket termination test
2016-06-06 18:17:22 +12:00
Aldo Cortesi
21c7218ee3
Close when Pathoc.connect raises an exception
2016-06-06 16:52:51 +12:00
Aldo Cortesi
c31b9c461d
Merge pull request #1211 from cortesi/pathod
...
WIP: Radical webectomy of pathod
2016-06-06 08:40:20 +12:00
Shadab Zafar
cff54edf6b
Py3: Use functools.total_ordering for better rich comparison
2016-06-06 00:07:44 +05:30
Shadab Zafar
bda30efb35
Py3: Use rich comparison methods (__eq__, __lt__) instead of __cmp__
2016-06-06 00:07:44 +05:30
Aldo Cortesi
a31c183a0f
Ditch pathod static assets
2016-06-05 13:28:57 +12:00
Aldo Cortesi
375d7c9741
Remove last vestiges of noapi and noweb from pathod
...
Also hide HTTP2 freeze bug by making explain configurable in the tests
2016-06-05 13:24:46 +12:00
Aldo Cortesi
48da24ae7e
First-order removal of pathod API and app
2016-06-05 13:04:13 +12:00
Shadab Zafar
2dec2db756
Py3: Return path unescaped
...
[skip appveyor]
2016-06-04 18:31:31 +05:30
Shadab Zafar
1c82231129
Use encode to detect if string is valid ASCII
2016-06-04 12:49:11 +02:00
Shadab Zafar
ae553ef472
Fix Docstring: "inject" can be an action too
2016-06-04 15:23:09 +05:30
Aldo Cortesi
6943d7e397
More explicit name for the tcp.Server handler counter
2016-06-03 13:57:12 +12:00
Aldo Cortesi
e60860e65d
Make tcp.Client.connect return a context manager that closes the connection
2016-06-03 12:06:36 +12:00
Aldo Cortesi
36383a6146
Pathod websocket service threads should not be immortal
2016-06-03 11:58:05 +12:00
Aldo Cortesi
c5076f5e01
Implement a service connection handler counter, use it in Pathod test suite
...
Lots of failures, but that's a good thing.
2016-06-03 11:47:07 +12:00
Aldo Cortesi
c6d15904f3
Merge remote-tracking branch 'upstream/master' into testsuite
2016-06-03 10:19:22 +12:00
Shadab Zafar
8e60a9bca9
Handle the slice object case in TransformGenerator.__getitem__
2016-06-03 02:00:58 +05:30
Maximilian Hils
5e385405ca
please flake8
2016-06-02 09:54:19 -07:00
Maximilian Hils
29c52d98dc
Merge remote-tracking branch 'duffer/pathod-lang-generators'
2016-06-02 09:53:22 -07:00
Shadab Zafar
75ce2498e8
Simplify rand_byte by creating a special case for Python 2
2016-06-02 13:34:18 +05:30
Aldo Cortesi
69de78515d
Make last_log actually return last log
2016-06-02 19:45:18 +12:00
Shadab Zafar
ec5d931ee3
Remove redundant __getslice__ from TransformGenerator
2016-06-02 13:02:17 +05:30
Shadab Zafar
b510616c69
Py3: Return bytes from FileGenerator
...
and use __getitem__ instead of __getslice__
2016-06-02 13:00:44 +05:30