- import Pydantic v2, not v1
- use pint 0.22
- don't import deprecated "Extra"
- check_sign is field_validator
- save magnitude and unit separately on UnitRange model
- remove IntRange (to avoid SymPy comparisons between int and decimal intervals)
- add MANIFEST.in (to display readme on PyPI)
- replace NumberRange with IntRange and FloatRange
- replace Marshmallow serializers with Pydantic
- Entity and Predicate models don't allow extra fields
- add equal sign as default value for QuantityRange sign
- fix bug: bool(Term) returned False if the Term's "length" was 0
- remove custom reprs that can be replaced by Pydantic BaseModel repr
- internally_consistent raises ValueError identifying contradiction
- change Doctrine class name to Assertion
- change Predicate param name from template to content
- add Marshmallow schemas
- add APISpec for documenting Marshmallow schemas
- Fact constructor accepts truth param
- allow alternate methods to specify context for .implies()
- add string expansion to ContextRegister.from_lists
- all Explanation.from_context calls expand strings
- disallow repeated Terms in TermSequence
- fix bug: _context_registers method yielded same ContextRegister repeatedly
- add DuplicateTermError
- fix bug: FactorGroup.union used duplicative TermSequence
- ContextRegister.from_lists works with unequal length lists
- add contradicts_same_context method
- add repr method for subclasses of Comparable to inherit
- add FactorMatch NamedTuples to be listed in Explanation
- remove FactorGroup.comparison method. Instead use implies, contradicts, etc.
- Factor "explanations" methods yield Explanation, not ContextRegister
- add FactorGroup.explanations_implied_by method
- fix bug: shares_all_factors passed without checking all factors
- fix bug: two empty FactorGroups should have same meaning
- fix: non-generic Entities with different names don't have same meaning
- fix bug: multiple UnitRegistries conflicted
- fix bug: Comparison.implies(Predicate) should be False
- merge "comparable" module into "terms" module
- fix bug: Comparison >= Predicate should be False
- create UnitRange, DateRange, and NumberRange classes
- fix bug: Comparable._context_registers could fail when a Factor's terms could be reordered
- add repr method for TermSequence
- fix scaling of numbers in FiniteSet when comparing with different physical units
- Migrate semantic reasoning features from AuthoritySpoke