mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-21 22:58:24 +00:00
480052f58b
* Partial gRPC contentview prototype, not linted, no tests, not as add-on * Linted (flake8) * Save dev state * Rewrote of protobuf parser, use decoding strategy, reduced rendered data. Parser uses generators * minor cleanup * fix: preferred encoding was provided as function instead of value * flake8: line length * Backlinked message tree objects, temporary debug out * Partial implementation of gRPC definitions. Save state to fix a cras (data invalidate in edit mode) * hack: deal with missing exception handling for generator based content views * gRPC/Protoparser descriptions (with test code) * replaced manual gzip decoding with mitmproxy.net.encoding.decode * Refactored typing imports * Reafctoring * distinguish request vs response definitions, separate view config from parser config * Code cleaning, moved customized protobuf definitions to example addon * final cleanup * changelog * Stubs for tests * Fixed render_riority of addon example * Started adding tests * Work on tests * mypy * Added pseudo encoder to tests, to cover special decodings * Example addon test added * finalized tests, no 100 percent coverage possible, see comments un uncovered code * minor adjustments * fixup tests * Typos Co-authored-by: Maximilian Hils <git@maximilianhils.com> |
||
---|---|---|
.. | ||
src | ||
.editorconfig | ||
gulpfile.js | ||
jest.config.js | ||
package-lock.json | ||
package.json | ||
README.md | ||
tsconfig.json |
Quick Start
- Install mitmproxy as described in
../CONTRIBUTING.md
- Run
node --version
to make sure that you have at least Node.js 14 or above. If you are on Ubuntu <= 20.04, you need to upgrade. - Run
npm install
to install dependencies - Run
npm start
to start live-compilation - Run
mitmweb
after activating your Python virtualenv (see../CONTRIBUTING.md
).
Testing
- Run
npm test
to run the test suite.
Architecture
There are two components:
-
Server:
mitmproxy/tools/web
-
Client:
web
Contributing
We very much appreciate any (small) improvements to mitmweb. Please do not include the compiled assets in
mitmproxy/tools/web/static
in your pull request. Refreshing them on every commit would massively increase repository size. We will update these
files before every release.
Developer Tools
npm start
supports live-reloading if you install a matching browser extension.- You can debug application state using the React DevTools and Redux DevTools browser extensions.