3LC Python Package Version 2.11#
2.11.1#
Enhancements and Fixes#
[14317] Disabled default project configuration file loading on
Table
andRun
instantiation because it caused a serious performance issue with the normal indexing. That feature will be revisited to enable it in a way that does not impact performance.
2.11.0#
Features#
[13456] Added support for picking up aliases from 3LC project config files at runtime without requiring a restart of
3lc service
.See details in the configuration documentation
The project config file name is “default_aliases.3lc.yaml” but “config.3lc.yaml” is supported for backwards compatibility
The method
tlc.client.helpers.register_project_url_alias
may be used e.g. from a notebook to both register an alias for the current session and write it to the project’s aliases config file.
[14240] Made it so that project config files are loaded when a
Table
orRun
is instantiated so that their aliases are applied. This makes it possible to loadTables
andRuns
from projects that are not indexed because the indexer has not yet started. This only applies to projects that are otherwise currently configured to be indexed. These config files will only be loaded once and updates to them will not be automatically detected and applied.[13342] Made it possible to overwrite a
Table
orRun
with the same name and have it updated in the Dashboard without restarting the3lc service
.
Enhancements and Fixes#
[13456] Made various improvements to the configuration system
It now keeps track of the configuration source for files and environments and supports applying configuration updates from any source in any order while retaining precedence rules
Add new
detail
option to list source information when used with3lc config --list --detail
or output detail when used with3lc config --to-yaml --detail
Extended support for alias anchoring using the “$.” syntax to all config files
[13457] Ensure bounding-box coordinates have float type in
TableFromCoco
[13965] Added method
add_metrics
toRun
that simplifies writing of the given metrics table and deprecated old methodadd_metrics_data
that had been provided for this purpose[14046] Fixed regression that resulted in tables unintentionally including large bulk data when sent through the object service to the dashboard
[14106] Added method
get_simple_value_map
toTable
[14106] Added method
get_column
toTable
[13855] Made it so we avoid re-writing images when using the
PILImage
SampleType
[14103] Fix joined table bug when reloading with enum override
[14113] Added sanitization of constants added to runs by skipping any that are not valid
[14163] Made it possible to set weight column value when creating a
Table
[13865] Added support for specifying the embedding column when reducing a
Run
[13820] Fixed an oversight where the
collect_aggregates
argument tocollect_metrics
was not handled properly[14151] Updated
pyarrow
dependency to 17.0.0[14215] Optimized method that creates unique URLs
[14210] Made it so that providing an input with inconsistent column lengths to
TableFromPydict
raises an error immediately, rather than causing an unintuitive error later[14210] Made it so that invalid negative row access for
InMemoryColumnTables
raises an error immediately, rather than causing an unintuitive error later[13819] Fixed
BBCropInterface.crop
[12009] Disabled abbreviations for
3lc
command-line interface argument parsing across subcommands to avoid confusion
Known Issues#
The
tlc
Python package does not detect, handle, or support NaN (Not-a-Number) values intlc.Table
, and their presence may lead to unpredictable behavior or inconsistencies within the system.