| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
Implements the remaining part of #879: DataFrame outputs are serialized as Parquet files on disk (with cloudpickle fallback), and parameters annotated as pl.LazyFrame receive lazy frames - a true pl.scan_parquet when the upstream output is stored as Parquet, otherwise .lazy().
|
|
||
| import numpy as np | ||
|
|
||
| from pipefunc._utils import is_imported |
Codecov Report✅ All modified and coverable lines are covered by tests.
... and 1 file with indirect coverage changes 🚀 New features to boost your workflow:
|
Sorry, something went wrong.
Avoids iterating all parameter annotations per map element in _convert_lazyframe_kwargs; the no-polars-params fast path is now a single cached attribute lookup (~46 ns/call).
Merging this PR will not alter performance✅ 6 untouched benchmarks Comparing polars (7abd39f) with main (2eae216) |
Sorry, something went wrong.
…conversion onto PipeFunc - load() previously opened every file twice (magic-byte sniff + read); now peeks and rewinds a single handle. This path is hot for all users. - _convert_lazyframe_kwargs is now a PipeFunc method, living next to the _lazyframe_parameters cache it uses, so _pipeline/_base.py no longer imports a private helper from map/_run.py. - Use bytes.startswith for the magic check in _load_all.
The all-deps CI session imports polars at collection time, so the
is_imported('polars') early returns never executed there (codecov/patch
flagged them). Simulate via monkeypatch.delitem(sys.modules, 'polars').
…itive CodeQL mis-resolves the stdlib 'typing' import inside _utils.py as pipefunc.typing (the package has a module of that name), so importing is_imported from _utils here looked like a cyclic import. Use the sys.modules check directly, as cache.py already does.
…alse positive" This reverts commit ce7db6b.
✅ PR Title Formatted CorrectlyThe title of this PR has been updated to match the correct format. Thank you! |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Summary
Implements the remaining part of #879 (see this comment): Parquet on-disk serialization for polars.DataFrame outputs and lazy (pl.LazyFrame) loading in downstream functions.
Deliberately out of scope: sinking pl.LazyFrame outputs to Parquet (load() couldn't distinguish them from DataFrame outputs), lazy scanning of individual mapspec elements, and zarr storage (keeps its pickle codec).
Testing
Closes #879