Repository navigation
Releases
Releases · dominicusin/package-maximizer
v0.21.0
feat: real-world data runner for Debian Sid / Fedora Rawhide
- Parse nixpkgs all-packages.nix for 1045+ package definitions
- Use nix-store --references for real dependency graph
- Debian Sid simulation: apt manager, all 7 solvers
- Fedora Rawhide simulation: same data, different solver path
- Flags: --max-packages, --distro, --compare, --verbose
- 849 tests, 85.09% coverage
v0.20.0
feat: web API history + export endpoints
- GET /api/v1/history — package manager transaction history
- POST /api/v1/export — maximize and export (json/csv/graphml)
- 849 tests, 85.09% coverage
- All solvers verified on real NixOS data
v0.19.0
feat: TUI enhancements + real-world data runner
- Dark mode toggle (Ctrl+D or button)
- Help screen (Ctrl+H)
- Keyboard shortcuts (Ctrl+Q to quit)
- real_world_runner.py: Run maximizer on actual NixOS packages
- 847 tests, 85.10% coverage
v0.18.0
feat: real-world data runner + --parallel flag
- real_world_runner.py: Run maximizer on actual NixOS packages
- Extracts from nix profile list --json (34 packages)
- Dependencies via nix-store --references
- --compare mode for solver comparison
- CLI: --parallel/-p flag for pm-maximize
- 847 tests, 85.51% coverage
- All solvers pass on real NixOS data
v0.17.0
feat: CLI shell + CLI analyze/compare + web API endpoints
- CLI: pm-shell — interactive REPL (maximize/propose/compare/analyze/info/search/manager/solver/json/help)
- CLI: pm-history — package manager transaction history (apt/pacman/dnf/brew)
- CLI: pm-analyze — conflict analysis, dependency tracking, bottleneck detection
- CLI: pm-compare — multi-solver comparison with timing reports
- Web API: POST /api/v1/analyze, POST /api/v1/compare
- 847 tests, 85.51% coverage
v0.16.0
feat: web API analyze + compare endpoints
- POST /api/v1/analyze: conflict analysis, dependency tracking, bottleneck detection
- POST /api/v1/compare: compare all solvers with timing reports
- 812 tests passing
v0.15.0
feat: analyze and compare CLI commands
- pm-analyze: conflict analysis, dependency tracking, bottleneck detection
- pm-compare: multi-solver comparison with timing reports
- 800 tests passing
v0.14.0
feat: BenchmarkRunner web /api/v1/benchmark + CLI benchmark command
v0.7.1
What's Changed
- Metadata adapters (): parsers for APT, pip, pacman metadata
- : parses /
- : parses / METADATA
- : parses /
- E2E tests with real fixtures: nginx, apache2, requests, certifi, vim
- 752 tests passing (from 739 in 0.7.0)
Full Changelog: v0.7.0...v0.7.1
v0.7.0
What's Changed
- Dependency support: field now properly encoded as implications in all solvers.
- →
- Greedy, EnhancedGreedy, Z3, PuLP, OR-Tools, MaxSAT, MiniSAT all respect dependencies
- Model encoder (): intermediate constraint layer shared by all solvers
- CLI flag: specify dependencies via
- CLI flag: shows why packages were excluded (conflicts, missing deps)
- Web API field: POST accepts
- Web API flag: returns exclusion reasons in response
- Golden tests: apt-like and pip-like integration tests
Full Changelog: v0.6.1...v0.7.0