Skip to content

2.0.0

Compare
Choose a tag to compare
@bbassett-tibco bbassett-tibco released this 08 May 15:53

Performance Improvements

  • The spotfire.sbdf module has been rewritten as a native C extension using Cython, which allows using the C Library for TIBCO Spotfire Binary Data Format (vendored into the vendor/sbdf-c directory) instead of the original pure-Python implementation. This change improves performance and allows the reading and writing of SBDF files that are written using RLE encoding (which was not implemented for the pure-Python implementation). (#36)
  • With the introduction of Cython support in setup.py, the spotfire.codesign module has been rewritten using Cython.
  • To work around the deprecation of msilib in Python 3.11, the spotfire.cabfile module has been rewritten using Cython to directly call the Windows API to create cabinet files. Non-Windows platforms will raise OSError exceptions on object creation instead of the current behavior of conditionally defining the class. (#29)

As a result of these architectural changes, the version number of this package has been incremented to 2.0.0.

Creating SPK Packages

  • User installed packages (installed with pip install --user) could override the spotfire package that is deployed via the Spotfire server, potentially installing an older version that does not contain support for required features. Now, when you build an interpreter SPK package (using python -m spotfire.spk python ...), the spotfire package is installed into a separate directory, which is then automatically inserted into the Python sys.path, before any "site-packages" directory, on interpreter startup. (#39)
  • When you build a packages SPK package (using the command python -m spotfire.spk packages ...), wheels with data directories (such as xgboost 1.7.5 on Windows) no longer result in SPK packages missing Python files from the wheel. (#40)