I am pleased to announce the latest release of Schemathesis :tada:
**Release Highlights**:
- Enhanced data generation control with the ability to set encoding for all generated strings.
- Improved GraphQL support with out-of-the-box compatibility for 9 popular scalar types.
- Updated Docker images featuring Python 3.12, `arm64` builds, and a new `bookworm`-based image.
:rocket: Added
- Support for `hypothesis-jsonschema==0.23`.
- A way to control what characters are used for string generation. 1142, 1286, 1562, 1668
- Display the total number of collected links in the CLI output. 1383
- `arm64` Docker builds. 1740
- Use Python 3.12 in Docker images.
- Store Docker image name in `Metadata`.
- GraphQL scalar strategies for `Date`, `Time`, `DateTime`, `IP`, `IPv4`, `IPv6`, `Long`, `BigInt` and `UUID`. 1690
:wrench: Changed
- Bump the minimum supported Hypothesis version to `6.84.3`.
- Bump the minimum supported `jsonschema` version to `4.18.0`.
- Bump the minimum supported `hypothesis_graphql` version to `0.11.0`.
- Use the same random seed for all tests in CLI. 1384
- Improve serialization error messages in CLI.
- Store skip reason in the runner events.
- Build `bookworm`-based Debian Docker images instead of `buster`-based.
- Improve error message on unknown scalar types in GraphQL.
- Better auto-detection of GraphQL schemas.
- Display parsing errors for schemas that are expected to be JSON or YAML.
:wastebasket: Deprecated
- Using the `--show-errors-tracebacks` CLI option. Use `--show-trace` instead.
:bug: Fixed
- Internal error when a non-existing schema file is passed together with `--base-url`. 1912
- Internal error during schema loading from invalid URLs.
- Ignore incompatible GraphQL checks in CLI rather than fail the whole test run. 1918
:fire: Removed
- Support for Python 3.7.
- Unnecessary dependencies on `typing-extensions` and `importlib-metadata`.