Commit Graph

1928 Commits

Author SHA1 Message Date
Miroslav a69eea67fb Going into mergeable state.
Some typing fixes since typing module doesn't fully support recursive types.
a few typos were fixed
test coverage, new tests for the new code
new syntax feature - assignment for 'set' command.
2018-08-12 16:00:39 +03:00
Miroslav 8d0f4009c3 Commands rework. Asyncio support for commands 2018-07-31 18:21:51 +03:00
Miroslav 76581708d8 Pipes bug was fixed. Some minor code reorganization.
New style annotation.
New test case.
2018-07-30 03:05:49 +03:00
Miroslav a547a7e96a Coverage for types.py was fixed 2018-07-28 18:51:42 +03:00
Miroslav ae4e26037b Bug with pipe usage was fixed. Coverage was expanded 2018-07-28 17:47:58 +03:00
Miroslav 2386ba6238 Minor fixes. Array handler. Coverage fixed. 2018-07-24 01:46:19 +03:00
Aldo Cortesi f0bafbf4f9
Merge pull request #3183 from kajojify/language
Porting the current command language on PLY
2018-06-21 09:10:50 +12:00
Miroslav 1794401e1f new names 2018-06-18 17:20:58 +03:00
Miroslav 7d9d37d01b Linter fix 2018-06-18 16:29:02 +03:00
Miroslav c187fcc5c2 Coverage 2018-06-16 21:25:06 +03:00
Miroslav 6c0e816df0 Additional tests. Deleting excess code. Minor fixes 2018-06-16 21:15:25 +03:00
Aldo Cortesi 9463fee764 cibuild: permit non-dev versions on maintenance branches
Cater for the corner case where commits are incorporated on a maintenance
branch. We should be able to test these without adding a dev suffix to the tool
versions.
2018-06-16 15:09:34 +12:00
Aldo Cortesi 85526e5370 cibuild: Match Travis env variable behaviour
Whenever TRAVIS_TAG is non-empty, TRAVIS_BRANCH is over-ridden to match the
TRAVIS_TAG value. Adjust our tests to reflect this, and add a sanity check that
fails hard if this constraint is ever not met.

See https://github.com/travis-ci/travis-ci/issues/4745
2018-06-16 10:23:33 +12:00
Aldo Cortesi bf791ba1d5 cibuild: refactor to handle v prefix for release tag names 2018-06-16 09:48:21 +12:00
Thomas Kriechbaumer be26958ea8 improve websocket frame masking api 2018-06-11 13:28:28 +02:00
Miroslav 397fb8ece5 Various fixes. Tests 2018-06-09 15:51:17 +03:00
Miroslav 4074a62c6c Various fixes for lexer and parser
ARRAY token is removed;
Tests are fixed;
2018-06-05 14:49:13 +03:00
Maximilian Hils 09ff5df2fb Such CI, Very Wow. (#3182) 2018-06-02 21:37:44 +02:00
Miroslav 0639d888b8 Some minor changes. Test was changed a little. 2018-06-01 23:16:06 +03:00
Maximilian Hils aa0cb2ba2f add missing await 2018-05-28 22:27:27 +02:00
Aldo Cortesi a38d2d7b0e addons/block: teach block about IPv6 scope suffixes
Fixes #3160
2018-05-27 10:48:23 +12:00
Aldo Cortesi ec2ae19e22 optmanager: tweaks and cleanups 2018-05-27 10:43:14 +12:00
Aldo Cortesi e59ba13417 Use deferral mechanism for cfg file options
Fixes #3162
2018-05-27 10:12:24 +12:00
Aldo Cortesi b6e1c4bb9d cibuild: tweak docker tag, only upload prod builds to pypi 2018-05-25 12:46:56 +12:00
Aldo Cortesi ff92962c51 cibuild: start building version awareness 2018-05-25 10:50:48 +12:00
Aldo Cortesi fdf0d9974e cibuild: more accurate PR test, better dump output 2018-05-24 22:58:33 +12:00
Aldo Cortesi e9b19dba8a cibuild: fix docker upload condition, expand tests 2018-05-24 22:32:31 +12:00
Aldo Cortesi c91b511bc7 cibuild: extract upload conditions 2018-05-24 22:18:01 +12:00
Aldo Cortesi 0afff3a952 cibuild: add docker tag calculation to environ 2018-05-24 21:59:45 +12:00
Aldo Cortesi bae4a3393f release: include release directory in coverage
With lots of exclusions for now
2018-05-24 19:03:15 +12:00
Aldo Cortesi 8fceaca6b8 cibuild: Consolidate build environment and add tests 2018-05-24 11:06:43 +12:00
Aldo Cortesi 064929b559 clientreplay: fix racy tests harder 2018-05-18 09:51:56 +12:00
Thomas Kriechbaumer 976ab0c466 websocket: inject messages via flow 2018-05-16 21:50:15 +02:00
Thomas Kriechbaumer 9979be6487 fix py36/37 escaping issues
closes #3122

https://bugs.python.org/issue16285
https://bugs.python.org/issue12910
21024f0662
2018-05-14 10:41:46 +02:00
Aldo Cortesi 58ff51da10 command: handle string without terminal escaped char
Fixes #2810
2018-05-12 14:02:20 +12:00
Aldo Cortesi 88fe26997c script: revamp ephemeral script running
Fixes 2838
2018-05-12 12:35:24 +12:00
Aldo Cortesi 482043cdcf commands: handle type errors on startup
fixes #3088
fixes #2787
2018-05-12 11:10:14 +12:00
Aldo Cortesi 6dff8c58ad commands: if no explicit return type is specified, assume None
This is going to be a super common error for addon authors, so we might as well
handle it.
2018-05-12 10:15:08 +12:00
Aldo Cortesi 8c63a8818d keymap: read keys from CONFDIR/keys.yaml by default 2018-05-10 16:06:52 +12:00
Aldo Cortesi 9830e5b597 cadir -> confdir
We store a lot more than just the CAs in our configuration directory. Clarify
the option name.
2018-05-10 11:40:33 +12:00
Aldo Cortesi 3438912236 console keybindings: define YAML-based format for console key binding persistence 2018-05-10 11:30:51 +12:00
Aldo Cortesi 7d9b626d2e clientplayback: try to fix flaky replay test 2018-05-08 16:33:41 +12:00
Aldo Cortesi af1a4ffdcd Ditch the addon stdout wrapper
This results in a 30% improvement in our core request throughput.

Fixes #3102
2018-05-08 14:26:41 +12:00
Aldo Cortesi 717fbaa990 optmanager: refactor for coverage and clarity 2018-05-08 14:24:41 +12:00
Aldo Cortesi 1b0eed19d1 benchmarks: quick-run scripts for mitmproxy and mitmdump 2018-05-08 11:08:37 +12:00
Aldo Cortesi 9b51393b6d benchmark: keep track of requests/responses seen by proxy 2018-05-08 11:00:20 +12:00
Aldo Cortesi f7d7e31f06 options: add the concept of deferred settings
We've had a perpetual sequencing problem with addon startup. Users need to be
able to specify options to addons on the command-line, before addons are
actually loaded. This is only exacerbated with the new async core, where load
order can't be relied on.

This patch introduces deferred options. Options passed with "--set" on the
command line are deferred if they are unknown, and are automatically applied by
the addon manager once matching addons are registered and their options are defined.
2018-05-08 10:56:00 +12:00
Maximilian Hils 752a367436 remove leftover processing_complete 2018-05-06 15:47:12 +02:00
Aldo Cortesi 60acbd79b9 Remove allowremote addon, add an improved take called block
We now have two options: block_global blocks global networks, block_private
blocks private networks. The block_global option is true by default, and
block_private is false by default. The addon name is "block" so the options are
correctly prefixed.

Also make option documentation precise, reduce verbosity of logs.
2018-05-06 12:43:25 +12:00
Aldo Cortesi c53bc39c95
Merge pull request #3099 from Kriechi/fix-3024
fix #3024
2018-05-06 11:27:14 +12:00