This PR was created by Knope. Merging it will create a new release
### Breaking Changes
#### Switch from Black to Ruff for formatting
`black` is no longer a runtime dependency, so if you have them set in
custom `post_hooks` in a config file, you'll need to make sure they're
being installed manually. [`ruff`](https://docs.astral.sh/ruff) is now
installed and used by default instead.
#### Use Ruff instead of isort + autoflake at runtime
`isort` and `autoflake` are no longer runtime dependencies, so if you
have them set in custom `post_hooks` in a config file, you'll need to
make sure they're being installed manually.
[`ruff`](https://docs.astral.sh/ruff) is now installed and used by
default instead.
### Features
#### Support all `text/*` content types in responses
Within an API response, any content type which starts with `text/` will
now be treated the same as `text/html` already was—they will return the
`response.text` attribute from the [httpx
Response](https://www.python-httpx.org/api/#response).
Thanks to @fdintino for the initial implementation, and thanks for the
discussions from @kairntech, @rubenfiszel, and @antoneladestito.
Closes #797 and #821.
#### Support `application/octet-stream` request bodies
Endpoints that accept `application/octet-stream` request bodies are now
supported using the same `File` type as octet-stream responses.
Thanks to @kgutwin for the implementation and @rtaycher for the
discussion!
PR #899 closes #588
### Fixes
#### Remove useless `pass` statements from generated code
Co-authored-by: GitHub <[email protected]>