Releases: TI-Toolkit/tivars_lib_py
v0.9.2
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.2
New features
- Several new and improved f-string formatting options for various entries (check the README for specs)
TokenizedEntry.load_stringnow supports tokenizationmodeas a keyword argument- Byte literal
\xXXXXsupport in tokenization TIEntry.type_idcan be accessed as a class attribute to return the entry type's ID- New methods for
TIRealRadical:signed_left_scalarandsigned_right_scalar - More examples
- More warnings about invalid data and unrecognized arguments
Bug fixes
- Fixed
TIRealRadical.sign_type - Meta bytes are now correctly ignored when exporting flashless vars
Breaking changes
- The
jformat spec for numbers has been removed - The
tformat spec for token-representable entries now always uses accessible names; usedto force display names
Contributions
- @rpitasky - Contributed to and compartmentalized the examples
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.normalizefunction to normalize certain Unicode chars for tokenization - New
Selftype annotations for 3.11+ to help static type analyzers - All
typingtype 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_listandTIMatrix.load_matrixnot working - Entry name tokenization is now more consistent
Breaking changes
- Smart tokenization mode is now the default; use
mode=maxto enable previous behavior - Some functions in
tokenizernow 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
TIFlashHeaderand its subclasses - DoorsCSE tokenized assembly programs are now (somewhat crudely) detected on load
- All
ByteStringusages (to-be deprecated in Python 3.14) have been removed - Enhanced
TIFeaturedocs - More frequent and verbose warnings
Newly-supported types (#5)
TIOperatingSystemTIAppTICertificateTILicense
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
Flagsvalues are nowintinstead ofbytes- The default model is now
TI_84PCEinstead 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:
TIAsmProgramandTIProtectedAsmProgram - 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.PILto 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
Sequencetype - New methods for GDBs:
get_equationsandget_color_data - New methods for programs:
protectandunprotect - New attribute for pictures:
np_shape
Newly-supported types (#5)
TIGroup
Bug fixes
get_versionandget_min_osnow accept arbitrary data for all entry types- Fixed a crash in
TIComplexList.get_versionandTIComplexList.get_min_os - Fixed lingering
bytes != intcomparisons - Typing issues
Breaking changes
openis now a classmethod for all types to permit shorter initialization calls- The
data_lengthproperty has been renamedcalc_data_lengthto 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,TIComplexFractionTIRealRadical,TIComplexRadicalTIRealPi,TIComplexPiTIRealPiFraction,TIComplexPiFractionTIAppVar
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
datasection has been renamed tocalc_data, withdatabeing a subsection derive_versionhas been renamed toget_versionflagsis no longer imported intotivarsat 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,TIComplexTIRealList,TIComplexListTIMatrixTIEquationTIStringTIProgram,TIProtectedProgramTIPicture,TIMonoPicture,TIImageTIGDB,TIMonoGDBTIWindowSetttings,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