Release Notes¶
Check below for new features added in each release. Please note that release notes were not recorded before version 0.5.0.
0.6.x¶
Features in the 0.6.x series of releases are focused on expanding functionality to include expression optimization, satisfiability, and transformations.
0.6.0¶
- Add
is_valid_identifier
helper method for checking if symbol names are valid- Add checking of valid symbol names to
BooleanExpression
andTruthTable
initalization logic, with corresponding new exception typeInvalidIdentifierError
- Add
boolean_variables_factory
helper for generating more intuitive collections of symbol inputs- Update
__iter__
inTruthTable
to yield inputs as anamedtuple
-like object rather than a plaintuple
- Re-organize User Guide into different sections instead of one long page
- Remove PyPy support, due to addition of C-extensions
- Add OS X builds to Travis
- Include both 32-bit and 64-bit builds on AppVeyor
- Add initial wrapper around PicoSAT library for future satisfiability interface; namely, the
sat_one
method- Add automated deployment to PyPI on tagged commits from CI services
0.5.x¶
Features in the 0.5.x series of releases were focused on expanding the top-level interface and improving optimizations under the hood. See below for specific features and fixes.
0.5.1¶
- Add
from_values
option to theTruthTable
initializer, allowing for table creation directly from values- Add ability to store don’t cares in a
TruthTable
- Add
equivalent_to
method toTruthTable
to check for equivalence of sources of truth- Convert
generate_symbols
andinput_combos
to be static methods of theTruthTable
class- Add
is_full
toTruthTable
- Add __iter__ and __getitem__ functionality to
TruthTable
- Add nice-looking __str__ to
BooleanExpression
- Add new exception types:
AlreadyFullTableError
,ConflictingArgumentsError
, andRequiredArgumentError
- Re-organize exception hierarchy so each group of exceptions extends from the same base class
- Re-organize the test file structure into more-focused files
- Add User Guide, acting as tutorial-style documentation
- Remove CLI example from the README
- Update documentation color palette
0.5.0¶
- Added the Release Notes section to the project’s documentation (how fitting for this page)
- Publically exposed the
input_combos
method in theTruthTable
class- Added test coverage for the CPython 3.6, PyPy, and PyPy3 runtimes
- Migrated all documentation to from Napoleon docstrings to standard Sphinx docstrings
- Added doctest tests to the documentation
- Added type-checking to the
BooleanExpression
class’s initialization- Fixed a bug in the handling of empty expressions in the CLI
pre-0.5¶
Unfortunatley, release notes were not kept before the 0.5.0 release.