Releases: TI-Toolkit/tivars_lib_py
v0.9.1
Newest stable release for tivars_lib_py
. Install from this tag or from PyPI.
Full Changelog: https://github.com/TI-Toolkit/tivars_lib_py/commits/v0.9.1
New features
- Smart tokenization mode — token munching better reflects program context
- New
tokenizer.normalize
function to normalize certain Unicode chars for tokenization - New
Self
type annotations for 3.11+ to help static type analyzers - All
typing
type aliases (to-be deprecated in a future version of Python) have been removed - More warnings about invalid files and entry names
Bug fixes
- Fixed
ListEntry.load_list
andTIMatrix.load_matrix
not working - Entry name tokenization is now more consistent
Breaking changes
- Smart tokenization mode is now the default; use
mode=max
to enable previous behavior - Some functions in
tokenizer
now use keyword-only arguments
Contributions
- @adriweb - Set the spec for smart tokenization, reflecting much of the TI Connect CE program editor's behavior
v0.9.0
Newest stable release for tivars_lib_py
. Install from this tag or from PyPI.
Full Changelog: https://github.com/TI-Toolkit/tivars_lib_py/commits/v0.9.0
New features
- Support for flash files — check out
TIFlashHeader
and its subclasses - DoorsCSE tokenized assembly programs are now (somewhat crudely) detected on load
- All
ByteString
usages (to-be deprecated in Python 3.14) have been removed - Enhanced
TIFeature
docs - More frequent and verbose warnings
Newly-supported types (#5)
TIOperatingSystem
TIApp
TICertificate
TILicense
Bug fixes
- Fixed a bug when initializing a
ComplexEntry
- Fixed a type mismatch in
TIGroup.group
- Removed a crash when detokenizing null bytes
- Typing issues
Breaking changes
Flags
values are nowint
instead ofbytes
- The default model is now
TI_84PCE
instead ofTI_83P
Contributions
- @LogicalJoe - Knows everything there is to know about flash files
- @Zaalan3 - Reported a few bugs and insufficient warnings in
TIGroup
v0.8.2
v0.8.1
Newest stable release for tivars_lib_py
. Install from this tag or from PyPI.
Full Changelog: https://github.com/TI-Toolkit/tivars_lib_py/commits/v0.8.1
New features
- New program subtypes:
TIAsmProgram
andTIProtectedAsmProgram
- Crosslinks to PIL docs
- Module and package docstrings
v0.8.0
Newest stable release for tivars_lib_py
. Install from this tag or from PyPI.
Full Changelog: https://github.com/TI-Toolkit/tivars_lib_py/commits/v0.8.0
New features
- PIL plugins — import
tivars.PIL
to register the TI image types with PIL - Enhanced API docs and docstrings with
pydoctor
- Types which are normally archived on-calc are archived by default
- List loaders now accept any
Sequence
type - New methods for GDBs:
get_equations
andget_color_data
- New methods for programs:
protect
andunprotect
- New attribute for pictures:
np_shape
Newly-supported types (#5)
TIGroup
Bug fixes
get_version
andget_min_os
now accept arbitrary data for all entry types- Fixed a crash in
TIComplexList.get_version
andTIComplexList.get_min_os
- Fixed lingering
bytes != int
comparisons - Typing issues
Breaking changes
open
is now a classmethod for all types to permit shorter initialization calls- The
data_length
property has been renamedcalc_data_length
to avoid confusion for sized entries
Contributions
- @LogicalJoe - Provided functional references for the layout of group objects
v0.7.3
Newest stable release for tivars_lib_py
and the first on PyPI.
Full Changelog: https://github.com/TI-Toolkit/tivars_lib_py/commits/v0.7.3
New features
- More metadata is automatically set for entries
- All 82/83/84 series models are available in
models
- Models store more information
- Version byte and minimum OS/model compatibility calculation
- Docstrings for (almost) every class and method
Newly-supported types (#5)
TIRealFraction
,TIComplexFraction
TIRealRadical
,TIComplexRadical
TIRealPi
,TIComplexPi
TIRealPiFraction
,TIComplexPiFraction
TIAppVar
Bug fixes
- Static files now use correct relative pathing
- Var extensions are correctly handled in more cases
- Name handlers for several entry types have been fixed
- Default entry names are now per-type
- Typing issues
Breaking changes
- Single byte data sections (e.g.
type_id
,version
) are now integer-valued - The
data
section has been renamed tocalc_data
, withdata
being a subsection derive_version
has been renamed toget_version
flags
is no longer imported intotivars
at the top level
Contributions
- @LogicalJoe - RE'd lots of versioning information
- @rpitasky - Helped set up automatic wiki building
v0.6.0
First packaged pre-release for tivars_lib_py
, containing all cumulative progress in the last five months.
Full Changelog: https://github.com/TI-Toolkit/tivars_lib_py/commits/v0.6.0
New features
- All of them
Newly-supported types (#5)
TIReal
,TIComplex
TIRealList
,TIComplexList
TIMatrix
TIEquation
TIString
TIProgram
,TIProtectedProgram
TIPicture
,TIMonoPicture
,TIImage
TIGDB
,TIMonoGDB
TIWindowSetttings
,TIRecallWindow
,TITableSettings
Bug fixes
- Yes
Breaking changes
- Nonexistent by definition
Contributions
- @adriweb - Maintains
tivars_lib_cpp
, which this lib is an intentional replicate of - @LogicalJoe - Knows all the ancient secrets of TI var files for the rest of us to copy
- @rpitasky - Helped write the first version of the tokenizer