Features
- feat(stats): per-cell summary-stat cache keyed by data identity and stat hashes (ADR-001) (#1042)
- feat(stats): per-cell summary-stat cache keyed by data identity and stat hashes (ADR-001) (#1040)
- feat(client): merge stats_update into all_stats and advertise the capability (rows-first c2) (#1025)
- feat(server): stats_request, stats_update and df_meta.stats on deferred sessions (rows-first s3) (#1024)
- feat(xorq): stats tier machinery and the xorq schema tier (rows-first s1) (#1021)
- feat(server): /load and /load_compare take telemetry_url via shared helpers (#996) (#1004)
Bug Fixes
- fix(histogram): a float column holding an infinity keeps a numeric histogram in pandas and polars (#1072)
- fix(js): the Jupyter widget renders only the newest decoded df_data_dict (#1046) (#1070)
- fix(histogram): a float column holding an infinity keeps a numeric histogram in xorq, pandas and polars (#1055) (#1069)
- fix(pandera): importing buckaroo_pandera no longer leaves PYARROW_IGNORE_TIMEZONE set (#1058) (#1068)
- fix(server): release xorq load state when a session drops its expression (#896) (#1066)
- fix(stats): bisect a failing stat's cells instead of scanning each one (#1065)
- fix(stats): a compaction failure after the part is written isn't a failed write (#1064)
- fix(stats): XorqDfStatsV2.add_analysis reruns with the constructor's skip_columns and scope_id (#1063)
- fix(client): harden the client for a two-message protocol (rows-first c0a) (#1020)
- fix(server): make_app() doesn't open browser windows unless asked (#1018)
- fix(server): sequence token on buckaroo_state_change so a stale initial_state is dropped (#998) (#1014)
- fix(styling): display columns in the dataframe's order, not sd-layer order (#988) (#989)
Other
- test(server): Playwright end-to-end tests for POST /load_expr (#1071)
- docs(adr): ADR-002 rows-first delivery with server-pushed summary stats (#1043)
Install
pip install buckaroo==0.15.10