Avatar for the Eventual-Inc user
Eventual-Inc
Daft
BlogDocsChangelog

Performance History

Latest Results

docs(lerobot): drop dataset-specific names from comments and docs Keep v2/v3 layout docs general instead of calling out particular Hub datasets.
XuQianJin-Stars:feat/lerobot-v2
18 hours ago
feat(utf8): add split_part string function (#7371) ## Changes Made Daft has a split function that returns a list of parts, but no direct way to split a string on a delimiter and select the nth part. This PR adds split_part, which does exactly that with the same name and behavior as the function in PostgreSQL, DuckDB, Snowflake and Spark: split_part(input, delim, part) returns the requested part, 1-based. Negative parts count from the end, out of range parts return an empty string, part 0 raises an error, and an empty delimiter means the string is not split. The implementation follows the same structure as substring_index and translate from #7070: - `src/daft-functions-utf8/src/split_part.rs`: Rust kernel with unit tests - `src/daft-functions-utf8/src/lib.rs`: registration, which also enables the SQL function - `daft/functions/str.py`: Python API function with doctests - `daft/functions/__init__.py`: export - `daft/expressions/expressions.py`: Expression method - `tests/expressions/test_utf8.py`: tests covering the DataFrame, SQL, RecordBatch and Series paths Naming: #7350 has an open discussion on whether a different name or an argument on split would be clearer. I kept split_part since it is the common name across engines, and I am happy to rename or adjust. Test evidence: ``` cargo test -p daft-functions-utf8 split_part test result: ok. 11 passed; 0 failed; 0 ignored DAFT_RUNNER=native pytest tests/expressions/test_utf8.py 21 passed pytest --doctest-modules daft/functions/str.py::daft.functions.str.split_part 1 passed ``` All pre-commit hooks pass, including mypy, ruff, rustfmt and clippy. AI usage: I used Claude while working on this, mostly to help me follow the existing patterns and keep the code consistent with the other string functions. I read and tested everything myself before opening this PR. ## Related Issues Fixes #7350
main
23 hours ago
feat: add read_blob function for reading files as raw bytes (#7318) Adds `daft.read_blob()` which reads files matching a glob pattern into a DataFrame with `path`, `size`, and `content` (binary) columns, similar to [DuckDB's `read_blob`](https://duckdb.org/docs/guides/file_formats/read_file.html). Useful for loading non-tabular files (images, audio, PDFs, arbitrary binaries) into a DataFrame for multimodal / ML pipelines. ## Changes Made - Added `daft.read_blob(path, *, max_connections, on_error, io_config)` in `daft/io/_blob.py` - Returns one row per matched file with columns: `path` (String), `size` (Int64), `content` (Binary) - Supports wildcards (`*`, `?`, `[...]`, `**`) and remote object stores (`s3://`, `gs://`, etc.), consistent with other readers - Implemented in pure Python as a composition of the existing `from_glob_path` scan and the `url_download` expression, so no Rust changes are needed and it inherits their parallel IO behavior - `max_connections` / `on_error` are passed through to `url_download`, matching the semantics of `Expression.url.download()` - Exported `read_blob` from `daft` and `daft.io` - Added tests in `tests/io/test_read_blob.py` covering: empty path list error, single file (schema + content), glob patterns, multiple explicit paths, and empty files - Added API docs entry (`docs/api/io.md`) and connectors index entry (`docs/connectors/index.md`) Tested locally with `DAFT_RUNNER=native pytest tests/io/test_read_blob.py` (5 passed). ## Related Issues Closes #2859 Note: the `read_text` half of #2859 is already implemented (`daft.read_text`), so this PR completes the remaining `read_blob` portion. --------- Co-authored-by: hello-tang-rui <hello-tang-rui@users.noreply.github.com> Co-authored-by: peter <132056702+hello-tang-rui@users.noreply.github.com>
main
23 hours ago
test(lerobot): hoist v2.1 helper imports to module level
XuQianJin-Stars:feat/lerobot-v2
2 days ago
fix(distributed): satisfy clippy pedantic/nursery in downscale tests
hello-peter-tang:fix/downscale-reaper-hardening
3 days ago

Latest Branches

CodSpeed Performance Gauge
0%
feat(lerobot): support v2.0/v2.1 dataset layouts#7381
19 hours ago
e78dd6a
XuQianJin-Stars:feat/lerobot-v2
CodSpeed Performance Gauge
-1%
2 days ago
618c1aa
ARDA7787:main
CodSpeed Performance Gauge
0%
3 days ago
d9fb0db
hello-peter-tang:fix/downscale-reaper-hardening
© 2026 CodSpeed Technology
Home Terms Privacy Docs