thanix 1.1.0

A yaml-to-rust code generator for generating Rust code from yaml config files e.g. as found in openAPI.
# CLI Arguments

```
Usage: thanix [OPTIONS] [INPUT]

Arguments:
  [INPUT]  Path to a YAML schema file

Options:
  -o, --output <OUTPUT>      Output directory [default: output]
  -w, --workaround           Enable workaround mode (makes all response
                             struct fields optional)
      --patch-prefix <PREFIX> Prefix for PATCH request schema names [default: Patched]
  -h, --help                 Print help
  -V, --version              Print version
```

## `INPUT`

The path to an OpenAPI v3 YAML schema file. This is the only positional argument and is required.

## `--output` / `-o`

The directory where the generated Rust crate will be placed. Defaults to `./output`.

```admonish note
If the output directory already exists, its contents will be overwritten.
```

## `--workaround` / `-w`

Enables a mode where all response struct fields are made `Option<T>`, regardless of what the schema says. This is useful when the API sometimes returns `null` for fields marked as non-nullable in the schema.

```admonish warning
This weakens type safety. Only enable if you encounter deserialization errors due to unexpected null values in API responses.
```

## `--patch-prefix`

Specifies the prefix used to identify PATCH request schemas. Schemas with this prefix will have all their fields wrapped in `Option<T>` with `#[serde(skip_serializing_if = "Option::is_none")]`, allowing partial updates.

**Default:** `Patched` (the NetBox convention: `PatchedDeviceRequest`, `PatchedSiteRequest`, etc.)

Set to an empty string (`""`) to disable this behavior entirely.