[package]
name = "hamsando"
version = "0.2.0"
edition = "2024"
description = "A simple and type-safe client for the Porkbun API."
license = "MIT OR Apache-2.0"
repository = "https://codeberg.org/FintasticMan/hamsando"
keywords = ["api", "dns","porkbun"]
categories = ["api-bindings", "web-programming::http-client"]

[dependencies]
psl = "2.1"
reqwest = { version = "0.13.4", features = ["blocking", "json"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
simple-dst = "0.2.0"
strum = { version = "0.28.0", features = ["derive"] }
thiserror = "2.0"
url = { version = "2.5", features = ["serde"] }

[lints.rust]
deprecated-safe = "warn"
keyword-idents = "warn"
let-underscore = "warn"
rust-2018-idioms = "warn"
unused = "warn"

[lints.clippy]
pedantic = { level = "warn", priority = -1 }
cargo = { level = "warn", priority = -1 }
allow_attributes_without_reason = "warn"
assertions_on_result_states = "warn"
dbg_macro = "warn"
default_union_representation = "warn"
doc_paragraphs_missing_punctuation = "warn"
empty_drop = "warn"
empty_enum_variants_with_brackets = "warn"
empty_structs_with_brackets = "warn"
exit = "warn"
expect_used = "warn"
field_scoped_visibility_modifiers = "warn"
float_cmp_const = "warn"
if_then_some_else_none = "warn"
impl_trait_in_params = "warn"
indexing_slicing = "warn"
infinite_loop = "warn"
lossy_float_literal = "warn"
map_err_ignore = "warn"
map_with_unused_argument_over_ranges = "warn"
missing_assert_message = "warn"
mixed_read_write_in_expression = "warn"
# module_name_repetitions = "warn"
multiple_unsafe_ops_per_block = "warn"
non_zero_suggestions = "warn"
partial_pub_fields = "warn"
print_stderr = "warn"
rc_buffer = "warn"
rc_mutex = "warn"
redundant_test_prefix = "warn"
redundant_type_annotations = "warn"
ref_patterns = "warn"
renamed_function_params = "warn"
rest_pat_in_fully_bound_structs = "warn"
return_and_then = "warn"
str_to_string = "warn"
tests_outside_test_module = "warn"
try_err = "warn"
undocumented_unsafe_blocks = "warn"
unnecessary_safety_comment = "warn"
unnecessary_self_imports = "warn"
unused_result_ok = "warn"
unused_trait_names = "warn"
unwrap_used = "warn"
verbose_file_reads = "warn"

multiple_crate_versions = "allow"
