3LC Python Package Version 3.4¶
3.4.0¶
System Requirements¶
[18489] Support for Python 3.14 has been added.
[18489] The minimum supported macOS version is now macOS Sonoma (version 14). The
3lcwheels for macOS are built for macOS 14 and newer, and can no longer be installed on macOS Ventura (version 13).The minimum supported Ubuntu version is now Ubuntu 22.04 (x86-64 and ARM64), matching the versions 3LC is tested on.
Features¶
[18255] A location declared as static is now also read-only. Declaring
static: trueon ascan-urlsentry, or in aconfig.3lc.yamlbeside the data, previously only meant the location was scanned once. 3LC now also refuses to write to the location. Direct writes raise aPermissionError, and writes whose destination 3LC chooses, such as the new table written when you commit edits in the Dashboard, are redirected under the project root instead. A project root inside a static location is refused, andstatic: falsedeeper in the tree makes an exception. See static scopes for details.[18263] The Object Service now reports how many log messages it has recorded at each level in its
/statusresponse, so the Dashboard can notify you of new Object Service info, warning and error messages.
Enhancements and Fixes¶
[18621] Edits to the user configuration file and the project root’s configuration file, such as added or changed aliases, are now correctly picked up by a running Object Service without a restart.
[18255] Fixed tables and runs sometimes disappearing from the Dashboard when a scan hit a temporary storage error.
[18594] Fixed intermittent “403 Unauthenticated” errors from the Object Service, typically shortly after the Dashboard renewed its login.
[18369] Data inside a project folder that matches a registered alias is now stored using the alias instead of as a path relative to the table, so moving the data only requires updating the alias. Tables written by earlier versions keep their relative paths.
[18263] Fixed error messages in the Dashboard’s Object Service log view being shown with the level “Not set”.
[18240] PaCMAP embedding reduction now works on macOS. PaCMAP has been upgraded to 0.9, which uses faiss instead of annoy for its nearest-neighbor search. Existing PaCMAP tables that stored an annoy index and have no row cache reuse it when
annoyis installed, and otherwise rebuild the index with a warning.[18317]
3lcnow depends onopencv-python-headlessinstead ofopencv-python. This removes the need for GUI system libraries such aslibGLon Linux servers and containers, and makes the install smaller. The headless package does not include OpenCV’s GUI functions, such ascv2.imshow, so code that relied on them through3lc’s previous dependency needs to installopencv-pythonitself.[18218] Raised the minimum
typing-extensionsversion to 4.15, for compatibility with Pixeltable 0.7.[18329] Stopped logging a traceback at DEBUG level on every
import tlcwhen the project root has no configuration file.