diff --git a/src/dependency_resolver.rs b/src/dependency_resolver.rs index 383bdac1..24687f09 100644 --- a/src/dependency_resolver.rs +++ b/src/dependency_resolver.rs @@ -8,7 +8,19 @@ use tracing::{info, warn, debug}; use serde::{Serialize, Deserialize}; use crate::error::{AptOstreeError, AptOstreeResult}; -use crate::apt_ostree_integration::DebPackageMetadata; + +/// DEB package metadata for dependency resolution +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct DebPackageMetadata { + pub name: String, + pub version: String, + pub architecture: String, + pub depends: Vec, + pub conflicts: Vec, + pub provides: Vec, + pub breaks: Vec, + pub replaces: Vec, +} /// Dependency relationship types #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)] diff --git a/src/lib.rs b/src/lib.rs index d81e91f5..b4015b28 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -4,6 +4,9 @@ pub mod apt_compat; pub mod error; +pub mod dependency_resolver; +pub mod ostree_integration; pub use apt_compat::AptManager; -pub use error::{AptOstreeError, AptOstreeResult}; \ No newline at end of file +pub use error::{AptOstreeError, AptOstreeResult}; +pub use dependency_resolver::{DependencyResolver, DependencyConstraint, DependencyRelation, DependencyGraph, ResolvedDependencies};