Cargo Features

[dependencies]
mecomp-storage = { version = "0.1.1", default-features = false, features = ["db", "serde", "analysis", "test_utils"] }
default = analysis, db, test_utils

These default features are set whenever mecomp-storage is added without default-features = false somewhere in the dependency tree.

db default = serde

Enables surrealdb, surrealqlx, and tempfile, surrealdb of one-or-many

Affects db::crud, db::health, db::queries, db::set_database_path, db::init_database, schemas::serialize_duration_as_sql_duration, schemas::serialize_duration_option_as_sql_duration, schemas::deserialize_duration_from_sql_duration, test_utils::init_test_database, test_utils::create_song_with_overrides

serde db

Enables serde, serde of one-or-many

analysis default

Enables futures and mecomp-analysis

futures:

dependencies for the analysis feature

Affects crud::analysis, health::count_unanalyzed_songs, queries::analysis, schemas::analysis

test_utils default

Enables anyhow and tempfile

anyhow:

dependencies for the test_utils feature

Affects mecomp-storage::test_utils