Expand description
SQLite database for caching scan and build results.
This module provides optimized database access with:
- Lazy loading to minimize memory usage
- Indexed reverse dependency lookups for fast failure cascades
- Normalized dependency tables for efficient queries
- Hybrid storage: columns for hot fields, JSON for cold data
§Schema
packages- Core package identity and statusdepends- Raw dependency patterns from scansresolved_depends- Resolved dependencies after pattern matchingbuilds- Build results with indexed outcomemetadata- Key-value store for flags and cached data
Structs§
- Build
Diff - Categorised differences between two builds.
- Build
List Entry - Summary of a build session from history.
- Database
- SQLite database for scan, build, and history data.
- Diff
Entry - A single entry in a build diff.
- Package
Row - Lightweight package row without full scan data.
- Package
Status Row - Package data combined with build status.
- PkgBuild
History - Summary of a package’s most recent build from history.
- Transaction
Guard - RAII transaction guard that rolls back on drop unless committed.
Type Aliases§
- Report
Row - Row type for
Database::get_report_data: (pkgname, pkgpath, scan_data_json, outcome_id, outcome_detail).