Skip to content

Commit 358bc5b

Browse files
dodomorandipaolobarbolini
authored andcommitted
feat: implement typed uuids
This introduces a new macro that can be used to create typed UUID. The macro automatically implements many traits, including the one needed by diesel.
1 parent 184e83e commit 358bc5b

File tree

4 files changed

+331
-1
lines changed

4 files changed

+331
-1
lines changed

Cargo.lock

Lines changed: 111 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

benzina/Cargo.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,17 @@ diesel = { version = "2.2", default-features = false, optional = true }
1717
serde = { version = "1", optional = true }
1818
utoipa = { version = "5", optional = true }
1919
benzina-derive = { path = "../benzina-derive", version = "=0.3.1", optional = true }
20+
uuid = { version = ">=0.7.0, <2.0.0", default-features = false, optional = true }
2021

2122
[features]
2223
default = ["derive"]
2324
derive = ["dep:benzina-derive"]
2425

2526
postgres = ["benzina-derive?/postgres", "diesel", "diesel/postgres_backend"]
27+
typed-uuid = ["postgres", "diesel/uuid", "dep:uuid"]
2628
mysql = ["benzina-derive?/mysql"]
2729

28-
serde = ["dep:serde"]
30+
serde = ["dep:serde", "uuid?/serde"]
2931
utoipa = ["dep:utoipa"]
3032

3133
[lints]

benzina/src/lib.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,7 @@ pub mod error;
99
mod int;
1010
#[cfg(all(feature = "serde", feature = "postgres"))]
1111
mod serde;
12+
#[cfg(feature = "typed-uuid")]
13+
mod typed_uuid;
1214
#[cfg(all(feature = "utoipa", feature = "postgres"))]
1315
mod utoipa;

0 commit comments

Comments
 (0)