4 Commits

Author SHA1 Message Date
davidskrundz 508c4ed32f Remove home dependency 2025-10-29 13:19:14 -06:00
davidskrundz dd688fdc83 Update sea-orm rc version 2025-10-28 23:07:32 -06:00
davidskrundz 0d34174a13 Update sea-orm rc version 2025-10-13 23:40:04 -06:00
davidskrundz 8411c75377 Fix critical relation bug 2025-10-02 09:52:25 -07:00
20 changed files with 333 additions and 397 deletions
Generated
+292 -354
View File
File diff suppressed because it is too large Load Diff
+9 -10
View File
@@ -35,17 +35,17 @@ overflow-checks = true
strip = "debuginfo"
[workspace.dependencies]
flix = { path = "crates/flix", version = "=0.0.10", default-features = false }
flix-cli = { path = "crates/cli", version = "=0.0.10", default-features = false }
flix-db = { path = "crates/db", version = "=0.0.10", default-features = false }
flix-fs = { path = "crates/fs", version = "=0.0.10", default-features = false }
flix-model = { path = "crates/model", version = "=0.0.10", default-features = false }
flix-tmdb = { path = "crates/tmdb", version = "=0.0.10", default-features = false }
flix = { path = "crates/flix", version = "=0.0.12", default-features = false }
flix-cli = { path = "crates/cli", version = "=0.0.12", default-features = false }
flix-db = { path = "crates/db", version = "=0.0.12", default-features = false }
flix-fs = { path = "crates/fs", version = "=0.0.12", default-features = false }
flix-model = { path = "crates/model", version = "=0.0.12", default-features = false }
flix-tmdb = { path = "crates/tmdb", version = "=0.0.12", default-features = false }
seamantic = { version = "0.0.6", default-features = false }
seamantic = { version = "0.0.9", default-features = false }
sea-orm = { version = "2.0.0-rc.7", default-features = false }
sea-orm-migration = { version = "2.0.0-rc.7", default-features = false }
sea-orm = { version = "2.0.0-rc.16", default-features = false }
sea-orm-migration = { version = "2.0.0-rc.16", default-features = false }
anyhow = { version = "^1", default-features = false }
async-stream = { version = "^0.3", default-features = false }
@@ -53,7 +53,6 @@ chrono = { version = "^0.4", default-features = false }
clap = { version = "^4", default-features = false, features = ["std"] }
futures = { version = "^0.3", default-features = false }
governor = { version = "^0.10", default-features = false }
home = { version = "^0.5", default-features = false }
nonzero_ext = { version = "^0.3", default-features = false }
regex = { version = "^1", default-features = false }
reqwest = { version = "^0.12", default-features = false }
+1 -2
View File
@@ -1,6 +1,6 @@
[package]
name = "flix-cli"
version = "0.0.10"
version = "0.0.12"
categories = ["command-line-utilities"]
description = "CLI for interacting with a flix database"
@@ -51,7 +51,6 @@ clap = { workspace = true, features = [
"usage",
] }
futures = { workspace = true }
home = { workspace = true }
sea-orm = { workspace = true, features = ["runtime-tokio"] }
serde = { workspace = true, features = ["derive"] }
tokio = { workspace = true, features = ["rt", "fs", "macros"] }
+1 -1
View File
@@ -24,7 +24,7 @@ impl Cli {
pub fn config_path(&self) -> PathBuf {
fn expect_home_dir() -> PathBuf {
#[allow(clippy::expect_used)]
home::home_dir().expect("you do not have a home directory")
std::env::home_dir().expect("you do not have a home directory")
}
match self.config.strip_prefix("~/") {
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "flix-db"
version = "0.0.10"
version = "0.0.12"
categories = []
description = "Types for storing persistent data about media"
+1 -1
View File
@@ -7,7 +7,7 @@ use sea_orm_migration::MigratorTrait as _;
pub struct Connection(DatabaseConnection);
impl Connection {
/// Helper function for apllying database migrations while wrapping a
/// Helper function for applying database migrations while wrapping a
/// [DatabaseConnection] in a newtype
pub async fn try_from(database: DatabaseConnection) -> Result<Self, DbErr> {
crate::migration::Migrator::up(&database, None).await?;
+3 -3
View File
@@ -53,9 +53,9 @@ pub enum Relation {
Library,
/// The media info for this episode
#[sea_orm(
belongs_to = "super::super::info::seasons::Entity",
from = "(Column::Show, Column::Season)",
to = "(super::super::info::seasons::Column::Show, super::super::info::seasons::Column::Season)",
belongs_to = "super::super::info::episodes::Entity",
from = "(Column::Show, Column::Season, Column::Episode)",
to = "(super::super::info::episodes::Column::Show, super::super::info::episodes::Column::Season, super::super::info::episodes::Column::Episode)",
on_update = "Cascade",
on_delete = "Cascade"
)]
+2 -2
View File
@@ -3,8 +3,8 @@
use flix_model::id::CollectionId;
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a flix collection
+2 -2
View File
@@ -4,8 +4,8 @@ use flix_model::id::MovieId;
use chrono::NaiveDate;
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a flix movie
+2 -2
View File
@@ -7,8 +7,8 @@ use seamantic::model::duration::Seconds;
use chrono::NaiveDate;
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a tmdb episode
+2 -2
View File
@@ -3,8 +3,8 @@
use flix_model::id::{CollectionId, RawId};
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a watched movie
+2 -2
View File
@@ -5,8 +5,8 @@ use flix_model::numbers::{EpisodeNumber, SeasonNumber};
use chrono::NaiveDate;
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a watched movie
+2 -2
View File
@@ -4,8 +4,8 @@ use flix_model::id::{MovieId, RawId};
use chrono::NaiveDate;
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a watched movie
+2 -2
View File
@@ -5,8 +5,8 @@ use flix_model::numbers::SeasonNumber;
use chrono::NaiveDate;
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a watched movie
+2 -2
View File
@@ -4,8 +4,8 @@ use flix_model::id::{RawId, ShowId};
use chrono::NaiveDate;
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
/// The database representation of a watched movie
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "flix"
version = "0.0.10"
version = "0.0.12"
categories = []
description = "Mechanisms for interacting with flix media"
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "flix-fs"
version = "0.0.10"
version = "0.0.12"
categories = []
description = "Filesystem scanner for flix media"
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "flix-model"
version = "0.0.10"
version = "0.0.12"
categories = []
description = "Core types for flix data"
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "flix-tmdb"
version = "0.0.10"
version = "0.0.12"
categories = []
description = "Clients and models for fetching data from TMDB"
+5 -5
View File
@@ -150,8 +150,8 @@ mod tests {
#[cfg(feature = "sea-orm")]
fn test_sea_orm() {
use sea_orm::{
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EnumIter,
PrimaryKeyTrait,
ActiveModelBehavior, DeriveEntityModel, DerivePrimaryKey, DeriveRelation, EntityTrait,
EnumIter, PrimaryKeyTrait,
};
use super::Id;
@@ -184,7 +184,7 @@ mod tests {
/// Type alias for the raw ID representation
pub use self::TmdbRepr as RawId;
/// A placeholder type used for CollectionId
#[doc(hidden)]
pub enum Collection {}
/// Type alias for a collection ID
pub type CollectionId = Id<Collection>;
@@ -203,7 +203,7 @@ impl TryFrom<flix_model::id::CollectionId> for CollectionId {
}
}
/// A placeholder type used for MovieId
#[doc(hidden)]
pub enum Movie {}
/// Type alias for a movie ID
pub type MovieId = Id<Movie>;
@@ -222,7 +222,7 @@ impl TryFrom<flix_model::id::MovieId> for MovieId {
}
}
/// A placeholder type used for ShowId
#[doc(hidden)]
pub enum Show {}
/// Type alias for a show ID
pub type ShowId = Id<Show>;