* Add hover menu to FlowRow
* fix linting issue
* fix linting issue
* apply suggested changes
* add dropdown submenu
* apply requested change
* replace dropdown with popper.js-based implementation
* implement actions to the menu
* clean FlowRow arguments
* web: major upgrades
This commit brings a bunch of under-the-hood mitmweb improvements:
- migrate large parts of the codebase to typescript
- introduce modern react testing conventions
- vendor react-codemirror to silence warnings
- use esbuild for both bundles and tests
- move from yarn to npm
- various fixes across the board
* web: fix options ducks
* add command bar to mitmweb
* fix app.py
* fix web test failure
* include command.js to commit
* fix optionsSpec.js
* transfer the argument suggestion into popup, show available commands, highlight currently typing argument
* fix lintings issue and test
* include package-lock.json
* add response to fetchMock
* update test
* update obsolete snapshot
* display help, description and add tab autocompletion
* change command history into mitmproxy's one
* move available commands popover to command help
* fix bug related to tab completion
* change CommandBar component into typescript, autoscroll overflowed result to bottom
* convert components in common and ContentView folder into typescript, and modified test
* fix bug of not dispatching when type in the field in FilterInput component
* make formatTimeStamp function return UTC time when updating snapshot in jest
* bind "this" to functions in CodeMirror
* convert components in FlowView, Header, Modal, ValueEditor into typescript
* applied requested changes
* [web] update fontawesome
* view: add id-based flow selection
* add raw `export` command
* contentviews: ignore empty data
* console: fix cert validity order
* major mitmweb upgrades
* fix tests
* fix web tests
* minor fixes
* please the coverage gods
* web: test coverage++, adjust commandbar
* web: update dependencies
* fix tests
* web: add backend tests
* web: convert everything to TypeScript
* web: fix HTTP trailer update
* tests++
Co-authored-by: zokutyou2@gmail.com <zokutyou2@gmail.com>
* Allow no-op assignments to Server.address when connection open
* add explanatory comment in source
Co-authored-by: Salad Dais <SaladDais@users.noreply.github.com>
Co-authored-by: Maximilian Hils <github@maximilianhils.com>
instead of accepting quotation marks in strings, we now just accept \x22,
which is then unescaped by the str type. This greatly simplifies
the lexing and is more consistent from a user perspective.
Technically there is no websocket error but different close codes. Similar to how an internal server error is not an error in HTTP, but just a different status code.
* Make it possible to set sequence options
Attempts to fix#3015 through looking at whether or not the option is
of the type Sequence[str].
Treat all deferred options as potentially Sequence options, by making the
deferred dict values a list.
* Add full test coverage to optmanager again
* Document how to set sequence options
* minor improvements
* update changelog
Co-authored-by: Maximilian Hils <git@maximilianhils.com>
This commit brings a bunch of under-the-hood mitmweb improvements:
- migrate large parts of the codebase to typescript
- introduce modern react testing conventions
- vendor react-codemirror to silence warnings
- use esbuild for both bundles and tests
- move from yarn to npm
- various fixes across the board
* Add `json()` method for HTTP Request and Response classes.
* Raise errors when fetching content to decode as json.
* Update http.py
Co-authored-by: Maximilian Hils <github@maximilianhils.com>
* Fix for issue #4613
* Adding tests
* Updated CHANGELOG.md
* Restoring contentviews
* Reverting contentview tests
* Adding boundary generation and tests
* Extra newline for flake8
* Janky byte fix
* Revert "Extra newline for flake8"
This reverts commit 683ba167de2264d29f318e2bab83e13cbfb8812d.
* Reverting a commit that was supposed to go to dev branch
* Update CHANGELOG.md
* Update test_http.py
Co-authored-by: Maximilian Hils <github@maximilianhils.com>
* Add `flow.comment` command and keybinding to add a comment to a flow.
* Store comment in Flow().comment. Add ~comment flowfilter syntax.
* resolve: Pythonic flow.comment
* Be consistent and use comment variable.
* keyinfo typing
* Fix parsing of certificate issuer/subject with escaped special characters
* tests
* rfc4514_attribute_name and multi value test
* pyca version + mypy happy dance
* aT lEaSt tTO sPAceS BeFOre iNLinE cOMment
* fix coverage
Co-authored-by: Maximilian Hils <github@maximilianhils.com>
* Add block_list Option which returns a set HTTP status for a blocked flow filter:URL
* Add changelog entry
* Add blocklist to default AddOns
* Add Nginx 444 status code to list, so it is available for validation
* Add overview of blocklists
* Add allow-only, and more tests
* Fix mypy tox issue
* Finish test coverage with test for invalid filter
* Add PR feedback
* Fix type/scope error
* Fix stray blank line
* Delete concepts-blocklist.md
* Feature in overview
* Add flag to metadata for blocklisted flows.
* minor improvements
Co-authored-by: Maximilian Hils <git@maximilianhils.com>