Crates.io | fastapi-config |
lib.rs | fastapi-config |
version | 0.1.1 |
source | src |
created_at | 2024-12-03 17:25:13.400082 |
updated_at | 2024-12-03 17:25:13.400082 |
description | Config for controlling fastapi's various aspects |
homepage | |
repository | https://github.com/nxpkg/fastapi |
max_upload_size | |
id | 1470348 |
size | 24,504 |
This crate provides global configuration capabilities for fastapi
.
fastapi
with .alias_for(...)
method.fastapi
with .schema_collect(...)
method.
SchemaCollect:All
will collect all schemas from usages including inlined with inline(T)
SchemaCollect::NonInlined
will only collect non inlined schemas from usages.[!WARNING] The build config will be stored to projects
OUTPUT
directory. It is then read from there viaOUTPUT
environment variable which will return any instance rust compiler might find at that time (Whatever theOUTPUT
environment variable points to). Be aware that sometimes you might face a situation where the config is not aligned with your Rust aliases. This might need you to change something on your code before changed config might apply.
Add dependency declaration to Cargo.toml
.
[build-dependencies]
fastapi-config = "0.1"
Create build.rs
file with following content, then in your code you can just use MyType
as
alternative for i32
.
use fastapi_config::Config;
fn main() {
Config::new()
.alias_for("MyType", "i32")
.write_to_file();
}
See full example for fastapi-config.
Licensed under either of Apache 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, shall be dual licensed, without any additional terms or conditions.