chore: rust setup

This commit is contained in:
əlemi 2024-02-28 17:09:17 +01:00
parent e99e05617f
commit f8113e0a27
Signed by: alemi
GPG key ID: A4895B84D311642C
4 changed files with 68 additions and 0 deletions

17
.editorconfig Normal file
View file

@ -0,0 +1,17 @@
# Default to Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true
charset = utf-8
indent_style = tab
indent_size = 4
[*.rs]
indent_size = 2
[*.js]
indent_size = 2
[*.{yml,yaml}]
indent_style = space
indent_size = 2

8
.gitignore vendored Normal file
View file

@ -0,0 +1,8 @@
/target
# Added by cargo
#
# already existing elements were commented out
#/target

1
.rustfmt.toml Normal file
View file

@ -0,0 +1 @@
hard_tabs = true

42
Cargo.toml Normal file
View file

@ -0,0 +1,42 @@
[package]
name = "fedimut"
version = "0.1.0"
edition = "2021"
authors = [ "alemi <me@alemi.dev>" ]
readme = "README.md"
#description = ""
#keywords = []
#documentation = ""
#repository = "https://git.alemi.dev/fedimut.git"
#license = "LICENSE"
[dependencies]
chrono = { version = "0.4.34", features = ["serde"] }
clap = { version = "4.5.1", features = ["derive"] }
reqwest = { version = "0.11.24", features = ["json"] }
serde = { version = "1.0.197", features = ["derive"] }
serde_json = "1.0.114"
tokio = { version = "1.36.0", features = ["rt-multi-thread", "macros"] }
tracing = "0.1.40"
tracing-subscriber = "0.3.18"
[dev-dependencies]
[features]
default = []
#[lints.rust]
#unsafe_code = "forbid"
[lints.clippy]
pedantic = "warn" # extra lints, maybe obnoxious, just warn
nursery = "warn" # experimental lints, may include false positives, just warn
unwrap_used = "warn" # warn for every unwrap used
#cargo = "warn" # warn about cargo manifest lints, this is annoying at the beginning
#[profile.release] # make small binaries! will take quite longer, from https://github.com/johnthagen/min-sized-rust
#opt-level = 'z' # optimize for size
#lto = true # enable Link Time Optimisation: don't link unused stuff
#codegen-units = 1 # reducing codegen units slows it down but allows for better optimization
#panic = 'abort' # abort on panic: don't include code to show what went wrong in release
#strip = "symbols" # strip symbols from binary: have fun debugging on prod! :)