v0.1.0 - Initial Release
PubGrub-Go v0.1.0
Initial Release
A comprehensive Go implementation of the PubGrub version solving algorithm.
Features
- CDCL Solver: Full Conflict-Driven Clause Learning implementation with unit propagation
- Semantic Versioning: Complete semver support with prerelease/build metadata
- Version Ranges: Complex constraints (>=, >, <=, <, ==, !=, AND/OR logic)
- Enhanced Error Messages: Human-readable derivation trees explaining resolution failures
- CachedSource: Optional caching wrapper for expensive I/O sources
- Production Ready: Microsecond-level performance for complex dependency graphs
Requirements
- Go 1.25 or later
Installation
go get github.com/contriboss/pubgrub-go@v0.1.0Credits
Derived from tinyrange/pubgrub v0.2.6 with significant enhancements.
Based on the PubGrub algorithm by Natalie Weizenbaum.