aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2017-04-25 19:06:24 +1200
committerAldo Cortesi <aldo@nullcube.com>2017-04-25 22:13:44 +1200
commite6eeab60946e61047ed858422badbda189a6f9e8 (patch)
treec0bc4775cd24824a3c2ff7df73c3b6078874eb70 /docs
parent90c425bd14087a984afd92eec2c18e63707e4ffa (diff)
downloadmitmproxy-e6eeab60946e61047ed858422badbda189a6f9e8.tar.gz
mitmproxy-e6eeab60946e61047ed858422badbda189a6f9e8.tar.bz2
mitmproxy-e6eeab60946e61047ed858422badbda189a6f9e8.zip
Revamp how addons work
- Addons now nest, which means that addons can manage addons. This has a number of salutary effects - the scripts addon no longer has to poke into the global addons list, we no longer have to replace/remove/boot-outof parent addons when we load scripts, and this paves the way for making our top-level tools into addons themselves. - All addon calls are now wrapped in a safe execution environment where exceptions are caught, and output to stdout/stderr are intercepted and turned into logs. - We no longer support script arguments in sys.argv - creating an option properly is the only way to pass arguments. This means that all scripts are always directly controllable from interctive tooling, and that arguments are type-checked. For now, I've disabled testing of the har dump example - it needs to be moved to the new argument handling, and become a class addon. I'll address that in a separate patch.
Diffstat (limited to 'docs')
-rw-r--r--docs/install.rst6
-rw-r--r--docs/scripting/overview.rst18
2 files changed, 4 insertions, 20 deletions
diff --git a/docs/install.rst b/docs/install.rst
index b37d9c91..7753dc44 100644
--- a/docs/install.rst
+++ b/docs/install.rst
@@ -123,12 +123,12 @@ You can check you Python version by running ``python3 --version``.
sudo zypper install python3-pip python3-devel libffi-devel openssl-devel gcc-c++
sudo pip3 install mitmproxy
-
+
.. _install-source-windows:
-🐱💻 Installation from Source on Windows
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+Installation from Source on Windows
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. note::
Mitmproxy's console interface is not supported on Windows, but you can use
diff --git a/docs/scripting/overview.rst b/docs/scripting/overview.rst
index 6ec0caaa..c333a98b 100644
--- a/docs/scripting/overview.rst
+++ b/docs/scripting/overview.rst
@@ -54,24 +54,8 @@ and is replaced by the class instance.
Handling arguments
------------------
-Scripts can handle their own command-line arguments, just like any other Python
-program. Let's build on the example above to do something slightly more
-sophisticated - replace one value with another in all responses. Mitmproxy's
-`HTTPRequest <api.html#mitmproxy.models.http.HTTPRequest>`_ and `HTTPResponse
-<api.html#mitmproxy.models.http.HTTPResponse>`_ objects have a handy `replace
-<api.html#mitmproxy.models.http.HTTPResponse.replace>`_ method that takes care
-of all the details for us.
-
-.. literalinclude:: ../../examples/simple/script_arguments.py
- :caption: :src:`examples/simple/script_arguments.py`
- :language: python
-
-We can now call this script on the command-line like this:
-
->>> mitmdump -dd -s "./script_arguments.py html faketml"
-Whenever a handler is called, mitpmroxy rewrites the script environment so that
-it sees its own arguments as if it was invoked from the command-line.
+FIXME
Logging and the context