* Fix encoding error with non-prettified encoded responses
Removed `--format-option response.as` an promote `--response-as`: using
the format option would be misleading as it is now also used by non-prettified
responses.
* Encoding refactoring
* split --response-as into --response-mime and --response-charset
* add support for Content-Type charset for requests printed to terminal
* add support charset detection for requests printed to terminal without a Content-Type charset
* etc.
* `test_unicode.py` → `test_encoding.py`
* Drop sequence length check
* Clean-up tests
* [skip ci] Tweaks
* Use the compatible release clause for `charset_normalizer` requirement
Cf. https://www.python.org/dev/peps/pep-0440/#version-specifiers
* Clean-up
* Partially revert d52a4833e4
* Changelog
* Tweak tests
* [skip ci] Better test name
* Cleanup tests and add request body charset detection
* More test suite cleanups
* Cleanup
* Fix code style in test
* Improve detect_encoding() docstring
* Uniformize pytest.mark.parametrize() calls
* [skip ci] Comment out TODOs (will be tackled in a specific PR)
Co-authored-by: Jakub Roztocil <jakub@roztocil.co>
* Add install/update instructions database
* Update the database
* Revert README changes
They will be overwritten later.
* Revert
* Tweak
* Tweaks
* Upgrade database
* Complete commands
Still not sure about Spack upgrades.
* Sort
* Doc generation script draft
* Remove OS names from tool names
* Fix Linuxbrew name
* `wheel` already installs `setuptools`
* Gen docs
* Update
* Tweak
* Add a GitHub workflow to check for outdated installation instructions
* Fix return value
* Test
* Delete test
* Rename the script
* Add `make doc-install-inst`
* Add missing dev requirement
* The first tool is the primary we want to display
Then they are simply sorted by `tool.title`.
* Sort OSes by name
* Refactoring, jinja template, etc.
* Add tool title uniqueness `assert`, fix platform list extra `\n`
* Rebuild docs
* Update generate.py
* Update README.md
* Update methods.yml
* Update distros derived, more assertions
* Tweaks
* Add workflow to auto-update the docs
* Do not hide the command
* Tweaks
Co-authored-by: Jakub Roztocil <jakub@roztocil.co>
* Allow to override the response `Content-Type` from options
* Apply suggestions from code review
Co-authored-by: Jakub Roztocil <jakub@roztocil.co>
* Rename the option from `--response.content-type` to `--response-as`
* Update CHANGELOG.md
Co-authored-by: Jakub Roztocil <jakub@roztocil.co>
In some special cases, to prevent against Cross Site Script Inclusion (XSSI)
attacks, the JSON response body starts with a magic prefix line that must be
stripped before feeding the rest of the response body to the JSON parser.
Such prefix is now simply ignored from the parser but still printed in the
terminal.
* Fix Windows tests