Add enhanced rollback functionality and comprehensive documentation

- Implement two-phase rollback system inspired by apt-tx project
- Add package state tracking (newly_installed, upgraded, previously_installed)
- Enhance both core and advanced transaction APIs with rollback methods
- Add comprehensive rollback documentation in docs/rollback.md
- Create rollback_demo.rs example demonstrating functionality
- Update README with detailed crate usage instructions
- Add rollback features to feature flags documentation
- Fix import issues in advanced crate modules
- Add get_installed_packages method to AptCommands
- Include both crates.io and git installation options in README
This commit is contained in:
robojerk 2025-09-13 21:02:29 -07:00
parent 06cafa0366
commit 88d57cd3a1
15 changed files with 945 additions and 47 deletions

View file

@ -12,6 +12,7 @@ categories.workspace = true
apt-dnf-bridge-core = { path = "../apt-dnf-bridge-core" }
apt-dnf-bridge-advanced = { path = "../apt-dnf-bridge-advanced", optional = true }
tokio = { workspace = true, features = ["macros", "rt-multi-thread"] }
anyhow = { workspace = true }
[features]
default = [] # Core-only by default
@ -35,3 +36,7 @@ path = "../examples/atomicity_notes.rs"
[[example]]
name = "backend_selection"
path = "../examples/backend_selection.rs"
[[example]]
name = "rollback_demo"
path = "../examples/rollback_demo.rs"

View file

@ -45,3 +45,4 @@ pub use apt_dnf_bridge_core::*;
// Conditionally expose advanced features
#[cfg(feature = "advanced")]
pub use apt_dnf_bridge_advanced::*;