---------------------------
Major Changes
^^^^^^^^^^^^^
- build: update dependencies & add coverage to dev & test installs
- build: add ``hypothesis`` dependency to dev & test installs
- build: bump ``ruff`` version & fix new lint rule changes
- build: add ``build`` dependency to dev installs
- build: update metadata to show Python 3.13 support
- ci: add ``hypothesis`` to GH actions workflow dependencies
Minor Changes
^^^^^^^^^^^^^
- fix: capture ``KeyError`` & raise ``AttributeError`` instead [8]
- fix: use size instead of config_id to determine GUID key_size
- feat: add 48-byte default permutation config objects
- feat: add decisecond & centisecond clock configurations
- ci: add Python '3.13.x' to GH actions
- build: use dynamic table to specify the package readme
- build: specify the coverage htmlcov directory
- build: remove 'command_line' so coverage can run specific files
- build: fix deprecation of unset pytest_asyncio fixture loop scope
- build: add verify package flow to signing ceremony
- docs: fix wrong typing annotation
- docs: fix docstring typo & grammar
- docs: fix grammar of error message
- docs: fix (a)canonical_pack docstring format diagram
- docs(readme): clean-up install & test instructions
- test: prepare fixtures to refactor 'test_PackageSigner.py'
- test: refactor 'test_PackageSigner.py' & cover all branches
- test: cover input combinations for ``(a)test_timestamp``
- test: import ``hypothesis`` in 'conftest.py'
- test: parametrize & fuzz 'test_gentools.py' to cover branches
- test: continue refactor & coverage in 'test_PackageSigner.py'
- test: configure pytest to display or error on warnings
- refactor: remove unnecessary variable alias
- refactor: specify input types as positive integers
- refactor: unify, parametrize, & simplify PackageSigner test values
- refactor: remove redundant step in test initialization
- refactor: terminate 'pyproject.toml' container lines with commas