3LC Python Package Version 2.9#

2.9.0#

Features#

  • [13119] Changed Table data storage to be column-wise for access efficiency and type control, resulting in drastic speedups for loading tables and generating binary data.

  • [13478] Added parameters to BBCropInterface.crop to allow for applying random offset and scaling, which can be useful for augmentation when training

  • [13676] Transcode numpy .npy files to images when requested through the object service from the Dashboard

  • [13680] Added Table.join_tables helper method

Enhancements and Fixes#

  • [13517] Made several fixes to handle malformed config file content

  • [13567] Allow relative root in Table.from_image_folder()

  • [13510] Made several fixes to better handle read-only file systems e.g. when running inside a Docker container

    • Failing to read from the default root directory is no longer a critical error

    • Failing to create the default log file is no longer a critical error

    • Turning off logging to file may be done by setting TLC_LOGFILE to the empty string

  • [13521] Made it so file created when using a license file is created under the 3LC configuration root directory

  • [13598] Made it so the default config is written out primarily as comments except where non-default values are used. This will make it easier for users to pick up changes to the default configuration in new versions of 3lc.

  • [13595] Fixed a bug that made it impossible to rename a Run from the Dashboard

  • [12296] Made some improvements to file indexing to allow for stopping on events without needing to complete a scan

  • [13565] Made SampleWeightSchema default visible, addressing a regression where the Weight column was no longer visible in the Dashboard by default

  • [13721] Improved handling of nested pyarrow schemas and tables

  • [13737] Added root_url argument to TableWriter to allow for writing to a different root than the default

  • [13732] Made it so reduced tables use shorter names for their 3LC object files; previously the names could get quite long and cause issues on Windows in particular

Known Issues#

  • The tlc Python package does not detect, handle, or support NaN (Not-a-Number) values in tlc.Table, and their presence may lead to unpredictable behavior or inconsistencies within the system.