calc-flow-python 2026.9.25__tar.gz → 2026.10.12__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/Cargo.lock +30 -3
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/Cargo.toml +3 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/PKG-INFO +9 -6
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/README.md +8 -4
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/Cargo.toml +29 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/benches/m4_state_window.rs +97 -2
- calc_flow_python-2026.10.12/crates/calc-flow/benches/stream_asof_e2e.rs +375 -0
- calc_flow_python-2026.10.12/crates/calc-flow/benches/stream_asof_eviction.rs +500 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/benches/stream_asof_perf.rs +60 -18
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/benches/stream_join_perf.rs +355 -31
- calc_flow_python-2026.10.12/crates/calc-flow/benches/stream_sql_aggregate.rs +723 -0
- calc_flow_python-2026.10.12/crates/calc-flow/benches/stream_union.rs +57 -0
- calc_flow_python-2026.10.12/crates/calc-flow/benches/stream_window_groups.rs +535 -0
- calc_flow_python-2026.10.12/crates/calc-flow/benches/support/native_join_components.rs +495 -0
- calc_flow_python-2026.10.12/crates/calc-flow/benches/support/streaming_soak/contracts.rs +1853 -0
- calc_flow_python-2026.10.12/crates/calc-flow/benches/support/streaming_soak/reporting.rs +620 -0
- calc_flow_python-2026.9.25/crates/calc-flow/src/runtime/streaming/soak.rs → calc_flow_python-2026.10.12/crates/calc-flow/benches/support/streaming_soak.rs +390 -3628
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/rolling-kernels.json +32 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/batch.rs +110 -207
- calc_flow_python-2026.10.12/crates/calc-flow/src/benchmark_internals/dispatch_trace.rs +288 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/benchmark_internals.rs +880 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/config.rs +80 -7
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/connector/capability.rs +0 -54
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/connector/secret.rs +12 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/continuous/benchmark_trace.rs +68 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/continuous/checkpointing_tests.rs +114 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/continuous.rs +150 -322
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/datafusion.rs +673 -124
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_compact.rs +372 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_compact_planner.rs +932 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_eager_input.rs +87 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_global_float_plan_tests.rs +283 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_global_record.rs +108 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_grouped_float.rs +244 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_grouped_float_continuation_tests.rs +324 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_grouped_float_diagnostics.rs +288 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_grouped_float_seed_tests.rs +132 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_owned.rs +550 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/datafusion_template.rs +254 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/expression.rs +217 -19
- calc_flow_python-2026.10.12/crates/calc-flow/src/json/owned_size.rs +44 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/json.rs +3 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/lib.rs +12 -6
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/direct/tests.rs +101 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/direct.rs +297 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/identity_tests/columnar/descriptors.rs +182 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/identity_tests/columnar/direct/lifecycle.rs +250 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/identity_tests/columnar/direct.rs +477 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/identity_tests/columnar/right_keys.rs +205 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/identity_tests/columnar.rs +1120 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/identity_tests/cpu.rs +248 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/identity_tests/parallel_cpu.rs +591 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission/parallel.rs +321 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/admission.rs +2157 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/cost.rs +42 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/cpu.rs +154 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/current_format_tests.rs +207 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/incremental.rs +1597 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/log/chain.rs +299 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/log/journal.rs +227 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/log/model.rs +828 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/log/read.rs +611 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/log/tests.rs +295 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/log/write.rs +514 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/log.rs +163 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/owned.rs +446 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3/owners.rs +528 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/index_v3.rs +2080 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/payload_segments.rs +5 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint/prepared.rs +23 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/checkpoint/validation.rs +7 -5
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/checkpoint.rs +1317 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/codec/framing.rs +65 -13
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/codec.rs +68 -26
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/copy.rs +651 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/cpu.rs +64 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/duplicate_fallback.rs +13 -3
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/finalize/output_ranges.rs +498 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/finalize/owner_runs.rs +435 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/finalize/prefix/tests/cpu.rs +388 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/finalize/prefix.rs +234 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/finalize/probe/tests.rs +591 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/finalize/probe.rs +171 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/finalize.rs +1294 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/metadata.rs +1 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/mod.rs +287 -104
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output/gather_lifecycle_bridge/multi.rs +242 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output/gather_lifecycle_bridge.rs +383 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output/tests/all_shared.rs +336 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output/tests.rs +1012 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output.rs +567 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output_plan/backing.rs +57 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output_plan/tests/backing_allocation.rs +165 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output_plan/tests.rs +114 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/output_plan.rs +441 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/payload_projection.rs +278 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/replay/anchor/tests.rs +149 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/replay/anchor.rs +336 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/replay/capture.rs +159 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/replay/codec.rs +312 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/replay/restore.rs +466 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/replay/tests.rs +183 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/replay.rs +332 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/retirement.rs +76 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/schema.rs +1 -1
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/capacity.rs +288 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/expiration_cost_tests.rs +154 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/key_dictionary/compaction.rs +132 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/key_dictionary/entries.rs +261 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/key_dictionary/expiration.rs +209 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/key_dictionary/funding.rs +183 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/key_dictionary.rs +825 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/key_shards.rs +13 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/left.rs +2053 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/ownership.rs +218 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/payload.rs +863 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/right/merge_tests.rs +100 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/right.rs +1193 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/sequences.rs +518 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state/string_keys.rs +86 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/state.rs +2573 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/checkpoint_delta.rs +525 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/dominated_payloads.rs +294 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/expiration_index.rs +305 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/expiration_output_integration.rs +732 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v3/empty.json +75 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v3/general-spare-shared.json +84 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v3/populated.json +88 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v3/terminal.json +75 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v3/tight-state-cap.json +88 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v4/dominated-retained.json +82 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v5/.gitattributes +1 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/fixtures/legacy-v5/retained-projection.json +86 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/gather_admission.rs +184 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/restored_workspace.rs +591 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/retained_projection.rs +404 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/retained_projection_contracts.rs +933 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests/source_replay.rs +179 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/tests.rs +2135 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/asof/workspace.rs +1228 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/cross_section/late.rs +2 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/cross_section/tests/late.rs +33 -4
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/cross_section.rs +1524 -172
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/expression/projection.rs +2 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/expression.rs +185 -36
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/admission_masks.rs +310 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/benchmark_checkpoint.rs +1102 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/benchmark_checkpoint_full_tests.rs +480 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/benchmark_checkpoint_tests.rs +532 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/borrowed_key.rs +253 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_compaction.rs +372 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/budget.rs +145 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/candidate/test_controls.rs +104 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/candidate.rs +444 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/construction.rs +217 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/frame.rs +288 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/frame_tests.rs +249 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/geometry.rs +178 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/history/merge.rs +161 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/history.rs +178 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/inventory.rs +367 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/accounting.rs +382 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/concat/bulk/flat.rs +118 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/concat/bulk.rs +192 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/concat/snapshot.rs +130 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/concat.rs +390 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/framing.rs +149 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/nodes.rs +407 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/reader.rs +185 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc/schema.rs +401 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/ipc.rs +134 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/loans.rs +74 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/managed.rs +89 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/metadata.rs +162 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/payload.rs +204 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/restore.rs +69 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/row.rs +444 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/work.rs +101 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/budget.rs +517 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/buffer.rs +120 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/buffer_tests.rs +73 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/compact.rs +193 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/compact_tests.rs +686 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/cut.rs +55 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/digest_tests.rs +116 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/delta.rs +326 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/rebase/funding.rs +56 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/rebase/input.rs +353 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/rebase/merge.rs +273 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/rebase/pending.rs +179 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/rebase.rs +190 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/restored.rs +204 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode/retarget.rs +57 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/encode.rs +514 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/funding_tests.rs +527 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/metadata.rs +215 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/pending_capture_tests.rs +351 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/pending_rebase_tests.rs +438 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/pending_tests.rs +324 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/prepared_tests.rs +302 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/rebase_admission_tests.rs +111 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/rebase_edge_tests.rs +465 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/rebase_owner_tests.rs +156 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/rebase_tests.rs +202 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/rebase_trust_capture_tests.rs +73 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/rebase_trust_tests.rs +174 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/row.rs +63 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer/wire_tests.rs +720 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2/writer.rs +896 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/checkpoint_v2.rs +26 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar/metadata.rs +96 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar/owned_copy.rs +949 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar/restored/utf8.rs +153 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar/restored/validity.rs +53 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar/restored.rs +230 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar/sparse/tests.rs +262 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar/sparse.rs +279 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/columnar.rs +297 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/data_work/control.rs +82 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/data_work/inputs.rs +71 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/data_work/pairs.rs +74 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/data_work/partition.rs +54 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/data_work/process.rs +283 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/data_work/worker.rs +96 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/data_work.rs +81 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/expiration.rs +301 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/fixtures/README.md +13 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/fixtures/checkpoint-v1.json +309 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/key_arena.rs +441 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/join/materialization.rs +28 -18
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/inventory.rs +131 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/profile.rs +274 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/inventory.rs +89 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/plan.rs +100 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases/boolean_tests.rs +610 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases/float_tests.rs +210 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases/input.rs +98 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases/inspector.rs +407 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases/inventory.rs +320 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases/nullable_float_tests.rs +237 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases/tests.rs +757 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_bases.rs +534 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_segments/frame.rs +305 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_segments/input.rs +63 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_segments/inventory.rs +161 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_segments/tests.rs +754 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_segments.rs +579 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_utf8/input.rs +63 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_utf8/inspector.rs +251 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_utf8/inventory.rs +199 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_utf8/nullable_tests.rs +470 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_utf8/tests.rs +818 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/restore_utf8.rs +642 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema/tests.rs +728 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/schema.rs +332 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation/tests.rs +639 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/metadata_validation.rs +332 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/native_dictionary.rs +536 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/native_lookup.rs +609 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/output_gather/owned/funding.rs +33 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/output_gather/owned/side.rs +198 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/output_gather/owned/side_tests.rs +297 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/output_gather/owned.rs +218 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/output_gather/test_support.rs +53 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/output_gather.rs +137 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/row_ipc.rs +216 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/sql_key_scratch.rs +313 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_compaction_tests.rs +1002 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_behavior_tests.rs +558 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_bounded_history_tests.rs +194 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_bounded_restore_tests.rs +184 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_capture_tests.rs +78 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_history_tests.rs +165 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_loan_tests.rs +313 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_map_behavior_tests.rs +237 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_overlap_tests.rs +31 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_restore_admission_tests.rs +184 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_tests.rs +390 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_v1_reuse_tests.rs +113 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_writer_cancel_tests.rs +355 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_writer_cut_tests.rs +135 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_writer_lifecycle_tests.rs +208 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_writer_migration_tests.rs +393 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_writer_restore_tests.rs +149 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/checkpoint_v2_writer_tests.rs +441 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/column_gather_admission_tests.rs +84 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/column_gather_budget_tests.rs +164 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/column_gather_emit_tests.rs +105 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/column_gather_lifecycle_tests.rs +92 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/column_gather_output_tests.rs +193 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/column_gather_tests.rs +156 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/columnar_state_tests.rs +2451 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/complete_expiry_boundary_tests.rs +254 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/complete_expiry_tests.rs +70 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/empty_checkpoint_tests.rs +76 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/expiration_admission_tests.rs +209 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/expiration_heap_tests.rs +232 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/hash_stream_tests.rs +34 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/j2a_dictionary_tests.rs +485 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/native_index_allocation_tests.rs +450 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/native_lookup_tests.rs +1042 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/optimization_tests.rs +449 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/ordered_probe_tests.rs +273 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/output_gather_tests.rs +731 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/owned_probe_tests.rs +313 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/join/tests/sql_key_scratch_tests.rs +1414 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/join.rs +2999 -963
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/mod.rs +35 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/retained_columns.rs +95 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/rolling/budget.rs +275 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/rolling/compile.rs +966 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/generated_kernel_manifest.rs +33 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/kernel/entity_parallel.rs +16 -6
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/kernel/entity_parallel_tests.rs +27 -22
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/rolling/kernel/mean.rs +497 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/kernel.rs +1190 -231
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/late.rs +12 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/ordered_stream.rs +432 -36
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/rolling/state_codec.rs +1441 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/state_v3.rs +3 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/tests/late.rs +5 -4
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/rolling/tests.rs +4540 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/rolling.rs +4362 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/checkpoint_test_hooks.rs +191 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/capture/current_safety_tests.rs +517 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/capture.rs +489 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/computed_filter_tests.rs +331 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/constant_group_tests.rs +246 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/control.rs +223 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/control_tests.rs +231 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/cte_eager_tests.rs +269 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/cte_input_tests.rs +220 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/cte_tests.rs +188 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/delta_float_tests.rs +130 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/delta_tests.rs +578 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/direct_async_tests.rs +497 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/empty_prefix_tests.rs +174 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/float_count_tests.rs +361 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/float_extrema_tests.rs +466 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/global_float_filter_tests.rs +282 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/global_float_sum_avg_tests.rs +434 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/global_float_where_tests.rs +478 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/global_integer_avg_tests.rs +273 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/global_predicate_tests.rs +252 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/global_record_controls.rs +250 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/group_key_tests.rs +242 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_checkpoint_reuse_tests.rs +136 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_composite_safety_tests.rs +110 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_composite_tests.rs +261 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_filter_tests.rs +287 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_float_safety_tests.rs +109 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_float_sum_avg_tests.rs +406 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_float_tests.rs +464 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_integer_avg_tests.rs +386 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_string_safety_tests.rs +106 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_string_tests.rs +282 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_sum_tests.rs +251 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/grouped_where_tests.rs +186 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/identity.rs +262 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/input_arithmetic_tests.rs +266 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/input_float_cast_tests.rs +349 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/log.rs +236 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/post_arithmetic_tests.rs +200 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/post_case_tests.rs +293 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/post_having_tests.rs +295 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/post_order_tests.rs +277 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/post_projection_tests.rs +272 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/restore.rs +347 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/state_fixture_tests.rs +950 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/storage.rs +270 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/storage_tests.rs +372 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact/string_extrema_tests.rs +399 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact.rs +152 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact_checkpoint_tests.rs +663 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact_plan_tests.rs +850 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact_state/export.rs +521 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact_state.rs +1101 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/compact_state_tests.rs +819 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/current_checkpoint_tests.rs +347 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/current_retained.rs +662 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/decimal_avg_tests.rs +384 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/decimal_tests.rs +414 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/dirty.rs +138 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/global_record/coalescer/checkpoint.rs +456 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/global_record/coalescer.rs +331 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/global_record.rs +621 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/group_key.rs +50 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/grouped_float.rs +253 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/grouped_float_proof_tests.rs +166 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/grouped_seed_tests.rs +231 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/grouped_sum.rs +99 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/incremental.rs +3916 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/incremental_tests.rs +1595 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/input_checks.rs +41 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/ipc.rs +186 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/metadata.rs +127 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/native_expression.rs +522 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/normalize_groups.rs +293 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/output_order.rs +313 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/predicate.rs +172 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/recovery_test_hooks.rs +171 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/restore.rs +172 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/restore_tests.rs +349 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/retained_contract_tests.rs +637 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/retained_planning_tests.rs +167 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/retained_tests.rs +274 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/retention.rs +342 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql/variable_extrema.rs +170 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/sql.rs +2289 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/state_budget.rs +84 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/stream.rs +95 -5
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/window/group_tests.rs +289 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/window/kernel_tests.rs +329 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/window/kernels.rs +144 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/window/key_tests.rs +261 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/operator/window/keys.rs +55 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/window.rs +1763 -471
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/pipeline/batch.rs +44 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/pipeline/mod.rs +11 -4
- calc_flow_python-2026.10.12/crates/calc-flow/src/pipeline/stream/projection.rs +419 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/pipeline/stream.rs +164 -64
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/channel/fusion_observer.rs +62 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/channel.rs +43 -244
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/checkpoint/coordinator.rs +68 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/checkpoint_runtime.rs +26 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/context.rs +42 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/edge_queue.rs +250 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/admission_probe.rs +86 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/cleanup.rs +385 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/columns.rs +196 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/parallel.rs +167 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/process.rs +737 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/row_gather.rs +83 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/tests/cleanup.rs +495 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/tests/parallel.rs +188 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/tests.rs +1311 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work/worker.rs +341 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/gather_work.rs +1265 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/job.rs +10 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/local_edge.rs +245 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/metrics.rs +11 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/mod.rs +7 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/operator_task/benchmark_replay/dispatch.rs +322 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/operator_task/benchmark_replay.rs +1199 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/operator_task/cooperation_tests.rs +4 -3
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/operator_task/join_checkpoint_credit.rs +317 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/operator_task/late_control_tests.rs +10 -8
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/operator_task/performance_evidence.rs +2 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/operator_task/tests/asof_tests.rs +81 -2
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/operator_task/tests/dispatch_trace_tests.rs +55 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/operator_task/tests/error_propagation_tests.rs +2 -1
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/operator_task/tests/join_checkpoint_owner_tests.rs +197 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/operator_task/tests/segment_publication_tests.rs +305 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/operator_task.rs +1149 -133
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/aggregate.rs +13 -10
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/driver.rs +182 -14
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/durable.rs +2 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/projection.rs +96 -3
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/asof/join_preload/inventory.rs +142 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/asof/join_preload/ownership_tests.rs +187 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/asof/join_preload.rs +143 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/asof/join_preload_tests.rs +521 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/asof/load_work.rs +164 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/asof/preload_tests.rs +338 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/asof.rs +306 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/checkpoint_task/tests.rs +187 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/checkpoint_task.rs +1310 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/join_terminal.rs +112 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/operator_fusion/allocation_evidence.rs +9 -2
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/operator_fusion/asof_chain_entry_tests.rs +188 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/operator_fusion/asof_chain_tests/emission_controls.rs +195 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/operator_fusion/asof_chain_tests.rs +580 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/operator_fusion.rs +151 -11
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/source_history/projection.rs +73 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/source_history.rs +185 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/sql_recovery.rs +193 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/supervision.rs +48 -4
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/supervision_loan_tests.rs +332 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/asof_tests/fusion_controls.rs +511 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/tests/asof_tests.rs +2 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_bases_tests.rs +355 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_boolean_tests.rs +379 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_float_tests.rs +394 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_nullable_float_tests.rs +409 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_segments_tests.rs +299 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_terminal_join_tests.rs +490 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_utf8_tests.rs +409 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_v2_tests/terminal_tests.rs +333 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_v2_tests.rs +409 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/restore_writer_v2_tests.rs +417 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/sql_recovery_tests/managed_capture.rs +537 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/sql_recovery_tests/queued_stop.rs +472 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/sql_recovery_tests.rs +1618 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/terminal_join_control_tests.rs +418 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests/terminal_join_launch_cancel_tests.rs +525 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner/tests.rs +11496 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/runner.rs +4342 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/sink_task.rs +980 -100
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/source_task.rs +314 -38
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/sql_recovery_work.rs +923 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/supervisor/preparation_rollback_tests.rs +109 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/supervisor/ready_group/tests.rs +182 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/runtime/streaming/supervisor/ready_group.rs +163 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/supervisor/ready_pair/native_tests.rs +9 -3
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/supervisor.rs +192 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/state/backend.rs +160 -1
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/local/preload.rs +236 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/local/publication.rs +145 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/local/publication_tests.rs +441 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/local/staging.rs +117 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/state/local.rs +249 -194
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/manifest/source_entries.rs +90 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/state/manifest.rs +140 -201
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/state/mod.rs +8 -2
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/source_history/budget.rs +145 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/source_history/files.rs +63 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/source_history/tests.rs +222 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/source_history/work.rs +99 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/source_history.rs +417 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/transaction/tests/publication.rs +580 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/transaction/tests/source_history.rs +258 -0
- calc_flow_python-2026.10.12/crates/calc-flow/src/state/transaction/working.rs +52 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/state/transaction.rs +358 -66
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/static_input.rs +0 -22
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/Cargo.toml +4 -3
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/arrow_schema.rs +1 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/clickhouse_sink.rs +22 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/evidence.rs +60 -7
- calc_flow_python-2026.10.12/crates/calc-flow-connectors/src/file/frozen.rs +226 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/file.rs +117 -52
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/file_sink.rs +120 -18
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/kafka.rs +984 -79
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/lib.rs +1 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/mysql/sink.rs +9 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/options.rs +7 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/postgresql.rs +95 -10
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/postgresql_cdc.rs +90 -7
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/file_connector.rs +1 -0
- calc_flow_python-2026.10.12/crates/calc-flow-connectors/tests/file_cursor.rs +189 -0
- calc_flow_python-2026.10.12/crates/calc-flow-connectors/tests/frozen_file_replay/window.rs +265 -0
- calc_flow_python-2026.10.12/crates/calc-flow-connectors/tests/frozen_file_replay.rs +822 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/kafka_connector.rs +46 -5
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/late_output_file.rs +172 -16
- calc_flow_python-2026.10.12/crates/calc-flow-connectors/tests/postgresql_cdc.rs +317 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/postgresql_connector.rs +87 -2
- calc_flow_python-2026.10.12/crates/calc-flow-connectors/tests/utc_asof_codec.rs +115 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/Cargo.toml +3 -2
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/config.rs +30 -20
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/continuous.rs +254 -13
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/provider.rs +86 -21
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/pyproject.toml +1 -2
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/__init__.py +3 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/_native.pyi +2 -2
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/capabilities.py +10 -14
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/compute.py +79 -10
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/runtime.py +55 -8
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/stream.py +12 -6
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/_generated_rolling_kernels.py +4 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/analyzer.py +111 -16
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/asof_analysis.py +19 -4
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/expr.py +2 -2
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/asof.py +2 -2
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/event_windows.py +2 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/late_output.py +1 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/planners.py +44 -10
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/schema.py +1 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/segments.py +109 -36
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/sql.py +1 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/nodes.py +41 -1
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/ops.py +471 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/optimizer.py +73 -22
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/program.py +139 -11
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/sql.py +2 -1
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/admission.rs +0 -328
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/checkpoint/encoding.rs +0 -296
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/checkpoint.rs +0 -508
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/finalize/prefix.rs +0 -98
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/finalize.rs +0 -277
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/output/tests.rs +0 -108
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/output.rs +0 -229
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/state.rs +0 -401
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/tests.rs +0 -489
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/asof/workspace.rs +0 -459
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/rolling.rs +0 -10743
- calc_flow_python-2026.9.25/crates/calc-flow/src/operator/sql.rs +0 -321
- calc_flow_python-2026.9.25/crates/calc-flow/src/runtime/streaming/runner/asof.rs +0 -82
- calc_flow_python-2026.9.25/crates/calc-flow/src/runtime/streaming/runner/supervision_loan_tests.rs +0 -69
- calc_flow_python-2026.9.25/crates/calc-flow/src/runtime/streaming/runner.rs +0 -16153
- calc_flow_python-2026.9.25/crates/calc-flow-connectors/tests/postgresql_cdc.rs +0 -160
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/LICENSE +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/LICENSE +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/benches/allocation_regression.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/benches/core.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/benches/sql_datafusion_performance.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/benches/stream_join_materialization.rs +0 -0
- {calc_flow_python-2026.9.25/crates/calc-flow/src/runtime/streaming/soak → calc_flow_python-2026.10.12/crates/calc-flow/benches/support}/diagnostics.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/examples/README.md +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/examples/continuous_runtime.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/examples/export_schema.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/examples/expression_pipeline.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/examples/gen_v3_schema.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/examples/sql_join.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/examples/windowed_streaming.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/config/asof.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/config/late_output.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/connector/format.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/connector/mod.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/connector/registry.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/context.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/datafusion_predicate.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/datafusion_rolling/sql_aggregate.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/datafusion_rolling.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/error.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/identity.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/identity_compare.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/spec.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/asof/status.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/batch.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/checkpoint.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/late_output/identity.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/late_output/plan.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/late_output/tests/ownership.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/late_output/tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/late_output.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/output_chunk.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling/kernel/sorted.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling_metrics/lease_tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/rolling_metrics.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/row_cost.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/operator/union.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/pipeline/compile.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/project_store/asof.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/project_store.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/mod.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/checkpoint/mod.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/checkpoint/storage.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/checkpoint_status.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/entity_work/tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/entity_work.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/failure.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/job/asof.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/message.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/generated.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/mod.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/prepare.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/snapshot.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/status.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/trace.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/progress/types.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/registry.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/entity_work_tests/lifecycle_tests/checkpoint_tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/entity_work_tests/lifecycle_tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/entity_work_tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/runner/operator_fusion/allocation_evidence_guards.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/supervisor/ready_pair/tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/supervisor/ready_pair.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/supervisor/terminal.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/runtime/streaming/test_seams.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/state/segment.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/time/event_time.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/time/mod.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow/src/udf.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/README.md +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/examples/kafka_custom_decoder.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/examples/kafka_protobuf_source.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/examples/late_output_recovery.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/clickhouse.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/csv.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/database_types.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/http.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/json_lines.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/mysql/config.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/mysql/mod.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/mysql/source.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/mysql/types.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/parquet.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/protobuf.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/src/websocket.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/clickhouse_connector.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/http_websocket_connectors.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/mysql_connector/checkpoint.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-connectors/tests/mysql_connector.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/build.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/batch.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/config/kafka_tests.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/connector.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/decoder.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/error.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/execution_options.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/lib.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/pipeline.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/runtime/dispatch.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/runtime/profile.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/runtime.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/store.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/crates/calc-flow-python/src/udf.rs +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/_compat.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/_stream_inputs.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/array.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/asof_join_spec.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/config.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/errors.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/join_spec.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/pipeline.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/py.typed +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/store.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/__init__.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/asof.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/domains.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/errors.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/late_output.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/__init__.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/bindings.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/program.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/lower/strategies.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/types.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/symbolic/windows.py +0 -0
- {calc_flow_python-2026.9.25 → calc_flow_python-2026.10.12}/python/calc_flow/udf.py +0 -0
|
@@ -553,16 +553,20 @@ checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"
|
|
|
553
553
|
|
|
554
554
|
[[package]]
|
|
555
555
|
name = "calc-flow"
|
|
556
|
-
version = "2026.
|
|
556
|
+
version = "2026.10.12"
|
|
557
557
|
dependencies = [
|
|
558
|
+
"ahash 0.8.12",
|
|
558
559
|
"allocation-counter",
|
|
560
|
+
"arrow-data",
|
|
559
561
|
"async-trait",
|
|
560
562
|
"chrono",
|
|
561
563
|
"command-group",
|
|
562
564
|
"criterion",
|
|
563
565
|
"datafusion",
|
|
566
|
+
"flatbuffers",
|
|
564
567
|
"fs2",
|
|
565
568
|
"futures",
|
|
569
|
+
"hashbrown 0.17.1",
|
|
566
570
|
"hex",
|
|
567
571
|
"parking_lot",
|
|
568
572
|
"proptest",
|
|
@@ -582,7 +586,7 @@ dependencies = [
|
|
|
582
586
|
|
|
583
587
|
[[package]]
|
|
584
588
|
name = "calc-flow-connectors"
|
|
585
|
-
version = "2026.
|
|
589
|
+
version = "2026.10.12"
|
|
586
590
|
dependencies = [
|
|
587
591
|
"allocation-counter",
|
|
588
592
|
"arrow",
|
|
@@ -622,7 +626,7 @@ dependencies = [
|
|
|
622
626
|
|
|
623
627
|
[[package]]
|
|
624
628
|
name = "calc-flow-python"
|
|
625
|
-
version = "2026.
|
|
629
|
+
version = "2026.10.12"
|
|
626
630
|
dependencies = [
|
|
627
631
|
"async-trait",
|
|
628
632
|
"calc-flow",
|
|
@@ -2848,6 +2852,28 @@ version = "0.2.1"
|
|
|
2848
2852
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2849
2853
|
checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe"
|
|
2850
2854
|
|
|
2855
|
+
[[package]]
|
|
2856
|
+
name = "openssl-src"
|
|
2857
|
+
version = "300.6.1+3.6.3"
|
|
2858
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2859
|
+
checksum = "46eb8fb9fb3b61ce1c0f8a026c4c1a0714d3a9e138e7fbde78753ce2babc3846"
|
|
2860
|
+
dependencies = [
|
|
2861
|
+
"cc",
|
|
2862
|
+
]
|
|
2863
|
+
|
|
2864
|
+
[[package]]
|
|
2865
|
+
name = "openssl-sys"
|
|
2866
|
+
version = "0.9.117"
|
|
2867
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2868
|
+
checksum = "b47e7e6bb2c38cd930d25a23b40fa52e068c10e85f3e03a7f5ba5aaca5713695"
|
|
2869
|
+
dependencies = [
|
|
2870
|
+
"cc",
|
|
2871
|
+
"libc",
|
|
2872
|
+
"openssl-src",
|
|
2873
|
+
"pkg-config",
|
|
2874
|
+
"vcpkg",
|
|
2875
|
+
]
|
|
2876
|
+
|
|
2851
2877
|
[[package]]
|
|
2852
2878
|
name = "ordered-float"
|
|
2853
2879
|
version = "2.10.1"
|
|
@@ -3560,6 +3586,7 @@ dependencies = [
|
|
|
3560
3586
|
"libc",
|
|
3561
3587
|
"libz-sys",
|
|
3562
3588
|
"num_enum",
|
|
3589
|
+
"openssl-sys",
|
|
3563
3590
|
"pkg-config",
|
|
3564
3591
|
]
|
|
3565
3592
|
|
|
@@ -3,13 +3,14 @@ members = ["crates/calc-flow", "crates/calc-flow-connectors", "crates/calc-flow-
|
|
|
3
3
|
resolver = "3"
|
|
4
4
|
|
|
5
5
|
[workspace.package]
|
|
6
|
-
version = "2026.
|
|
6
|
+
version = "2026.10.12"
|
|
7
7
|
edition = "2024"
|
|
8
8
|
rust-version = "1.88.0"
|
|
9
9
|
license = "Apache-2.0"
|
|
10
10
|
repository = "https://github.com/wegamekinglc/calc-flow"
|
|
11
11
|
|
|
12
12
|
[workspace.dependencies]
|
|
13
|
+
ahash = "0.8.12"
|
|
13
14
|
async-trait = "0.1.89"
|
|
14
15
|
chrono = { version = "0.4.44", features = ["serde"] }
|
|
15
16
|
command-group = "5.0.1"
|
|
@@ -19,6 +20,7 @@ futures = "0.3.31"
|
|
|
19
20
|
futures-util = "0.3.31"
|
|
20
21
|
fs2 = "0.4.3"
|
|
21
22
|
hex = "0.4.3"
|
|
23
|
+
hashbrown = "=0.17.1"
|
|
22
24
|
parking_lot = "0.12.5"
|
|
23
25
|
proptest = "1.7.0"
|
|
24
26
|
regex = "1.12.2"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: calc-flow-python
|
|
3
|
-
Version: 2026.
|
|
3
|
+
Version: 2026.10.12
|
|
4
4
|
Requires-Dist: pydantic>=2.12.0,<3
|
|
5
5
|
Requires-Dist: pyarrow>=21.0.0,<22 ; python_full_version < '3.10'
|
|
6
6
|
Requires-Dist: pyarrow>=24.0.0,<25 ; python_full_version >= '3.10'
|
|
@@ -17,7 +17,6 @@ Requires-Dist: psutil>=6.1 ; extra == 'benchmark'
|
|
|
17
17
|
Requires-Dist: py-cpuinfo>=9 ; extra == 'benchmark'
|
|
18
18
|
Requires-Dist: pytest>=8 ; extra == 'benchmark'
|
|
19
19
|
Requires-Dist: pytest-benchmark>=5.2 ; extra == 'benchmark'
|
|
20
|
-
Requires-Dist: hypothesis>=6.100 ; extra == 'dev'
|
|
21
20
|
Requires-Dist: jax>=0.4 ; extra == 'dev'
|
|
22
21
|
Requires-Dist: maturin>=1.14.1,<2.0 ; extra == 'dev'
|
|
23
22
|
Requires-Dist: numpy>=2.0.0 ; extra == 'dev'
|
|
@@ -169,8 +168,12 @@ Python package is not a second engine.
|
|
|
169
168
|
deep-copied strict-JSON settings and a cooperative, timezone-aware deadline
|
|
170
169
|
normalized to UTC.
|
|
171
170
|
- `TableExpr.stream` and `Program.stream` own a single native job with bounded
|
|
172
|
-
backpressure. SQL accepts one alias in a stream
|
|
173
|
-
|
|
171
|
+
backpressure. SQL accepts one alias in a stream. Ordinary aggregates and
|
|
172
|
+
`GROUP BY` emit full cumulative snapshots; other SQL runs per batch.
|
|
173
|
+
- `Program(name, engine="sql")` or `Program(name, engine="streaming")` fixes
|
|
174
|
+
the engine when the immutable program is created. `Program.execute` returns
|
|
175
|
+
finite named tables or owned streaming results, respectively. Calls for the
|
|
176
|
+
other engine fail.
|
|
174
177
|
- The source-driven `StreamingRunner` consumes a `StreamExecutionPlan`, owns
|
|
175
178
|
async source/sink bindings, and returns a one-owner `StreamingJob`.
|
|
176
179
|
- Managed epoch checkpoints use `LocalStateBackend` segments and strict v3
|
|
@@ -248,12 +251,12 @@ Large Cargo and Maturin outputs should use the repository `target/` tree.
|
|
|
248
251
|
The complete CI/full-verification command reference is below. Local changes use
|
|
249
252
|
the smallest affected checks under [AGENTS.md Verification](AGENTS.md#verification);
|
|
250
253
|
full regression, Rust 90% coverage, and Studio backend 85% coverage belong to
|
|
251
|
-
CI; routine
|
|
254
|
+
CI; routine benchmark measurements run on their own schedule:
|
|
252
255
|
|
|
253
256
|
```bash
|
|
254
257
|
uv sync --extra dev
|
|
255
258
|
cargo fmt --all --check
|
|
256
|
-
cargo clippy --workspace --
|
|
259
|
+
cargo clippy --workspace --lib --bins --tests --examples --all-features -- -D warnings
|
|
257
260
|
uv run python scripts/run_rust_tests.py
|
|
258
261
|
CALC_FLOW_CONNECTOR_CONTAINERS=1 \
|
|
259
262
|
CALC_FLOW_KAFKA_BOOTSTRAP=localhost:9092 \
|
|
@@ -125,8 +125,12 @@ Python package is not a second engine.
|
|
|
125
125
|
deep-copied strict-JSON settings and a cooperative, timezone-aware deadline
|
|
126
126
|
normalized to UTC.
|
|
127
127
|
- `TableExpr.stream` and `Program.stream` own a single native job with bounded
|
|
128
|
-
backpressure. SQL accepts one alias in a stream
|
|
129
|
-
|
|
128
|
+
backpressure. SQL accepts one alias in a stream. Ordinary aggregates and
|
|
129
|
+
`GROUP BY` emit full cumulative snapshots; other SQL runs per batch.
|
|
130
|
+
- `Program(name, engine="sql")` or `Program(name, engine="streaming")` fixes
|
|
131
|
+
the engine when the immutable program is created. `Program.execute` returns
|
|
132
|
+
finite named tables or owned streaming results, respectively. Calls for the
|
|
133
|
+
other engine fail.
|
|
130
134
|
- The source-driven `StreamingRunner` consumes a `StreamExecutionPlan`, owns
|
|
131
135
|
async source/sink bindings, and returns a one-owner `StreamingJob`.
|
|
132
136
|
- Managed epoch checkpoints use `LocalStateBackend` segments and strict v3
|
|
@@ -204,12 +208,12 @@ Large Cargo and Maturin outputs should use the repository `target/` tree.
|
|
|
204
208
|
The complete CI/full-verification command reference is below. Local changes use
|
|
205
209
|
the smallest affected checks under [AGENTS.md Verification](AGENTS.md#verification);
|
|
206
210
|
full regression, Rust 90% coverage, and Studio backend 85% coverage belong to
|
|
207
|
-
CI; routine
|
|
211
|
+
CI; routine benchmark measurements run on their own schedule:
|
|
208
212
|
|
|
209
213
|
```bash
|
|
210
214
|
uv sync --extra dev
|
|
211
215
|
cargo fmt --all --check
|
|
212
|
-
cargo clippy --workspace --
|
|
216
|
+
cargo clippy --workspace --lib --bins --tests --examples --all-features -- -D warnings
|
|
213
217
|
uv run python scripts/run_rust_tests.py
|
|
214
218
|
CALC_FLOW_CONNECTOR_CONTAINERS=1 \
|
|
215
219
|
CALC_FLOW_KAFKA_BOOTSTRAP=localhost:9092 \
|
|
@@ -8,13 +8,22 @@ repository.workspace = true
|
|
|
8
8
|
description = "Rust core for stateful DataFusion calculation pipelines"
|
|
9
9
|
exclude = ["tests/**"]
|
|
10
10
|
|
|
11
|
+
[features]
|
|
12
|
+
benchmark-internals = []
|
|
13
|
+
benchmark-checkpoint-off = ["benchmark-internals"]
|
|
14
|
+
benchmark-checkpoint-diagnostic = ["benchmark-internals"]
|
|
15
|
+
|
|
11
16
|
[dependencies]
|
|
17
|
+
ahash.workspace = true
|
|
18
|
+
arrow-data = "=58.3.0"
|
|
12
19
|
async-trait.workspace = true
|
|
13
20
|
chrono.workspace = true
|
|
14
21
|
datafusion.workspace = true
|
|
15
22
|
futures.workspace = true
|
|
16
23
|
fs2.workspace = true
|
|
24
|
+
flatbuffers = "=25.12.19"
|
|
17
25
|
hex.workspace = true
|
|
26
|
+
hashbrown.workspace = true
|
|
18
27
|
parking_lot.workspace = true
|
|
19
28
|
regex.workspace = true
|
|
20
29
|
schemars.workspace = true
|
|
@@ -40,6 +49,10 @@ tokio = { workspace = true, features = ["test-util"] }
|
|
|
40
49
|
name = "core"
|
|
41
50
|
harness = false
|
|
42
51
|
|
|
52
|
+
[[bench]]
|
|
53
|
+
name = "stream_union"
|
|
54
|
+
harness = false
|
|
55
|
+
|
|
43
56
|
[[bench]]
|
|
44
57
|
name = "allocation_regression"
|
|
45
58
|
harness = false
|
|
@@ -66,3 +79,19 @@ workspace = true
|
|
|
66
79
|
[[bench]]
|
|
67
80
|
name = "stream_asof_perf"
|
|
68
81
|
harness = false
|
|
82
|
+
|
|
83
|
+
[[bench]]
|
|
84
|
+
name = "stream_asof_e2e"
|
|
85
|
+
harness = false
|
|
86
|
+
|
|
87
|
+
[[bench]]
|
|
88
|
+
name = "stream_sql_aggregate"
|
|
89
|
+
harness = false
|
|
90
|
+
|
|
91
|
+
[[bench]]
|
|
92
|
+
name = "stream_asof_eviction"
|
|
93
|
+
harness = false
|
|
94
|
+
|
|
95
|
+
[[bench]]
|
|
96
|
+
name = "stream_window_groups"
|
|
97
|
+
harness = false
|
|
@@ -206,7 +206,10 @@ fn window_execution_and_restore(c: &mut Criterion) {
|
|
|
206
206
|
.process_data("input", input.clone(), &context, collector)
|
|
207
207
|
.await
|
|
208
208
|
.unwrap();
|
|
209
|
-
|
|
209
|
+
// Drain every port so each iteration measures one fresh batch.
|
|
210
|
+
for port in operator.output_ports() {
|
|
211
|
+
black_box(collector.drain(port.name()));
|
|
212
|
+
}
|
|
210
213
|
});
|
|
211
214
|
});
|
|
212
215
|
}
|
|
@@ -230,9 +233,101 @@ fn window_execution_and_restore(c: &mut Criterion) {
|
|
|
230
233
|
});
|
|
231
234
|
}
|
|
232
235
|
|
|
236
|
+
fn dense_schema() -> Arc<Schema> {
|
|
237
|
+
Arc::new(Schema::new(vec![
|
|
238
|
+
Field::new(
|
|
239
|
+
"event_time",
|
|
240
|
+
DataType::Timestamp(TimeUnit::Microsecond, None),
|
|
241
|
+
false,
|
|
242
|
+
),
|
|
243
|
+
Field::new("group", DataType::Int64, false),
|
|
244
|
+
Field::new("value", DataType::Float64, true),
|
|
245
|
+
Field::new("ivalue", DataType::Int64, false),
|
|
246
|
+
]))
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
fn dense_input(rows: usize) -> Batch {
|
|
250
|
+
let n = i64::try_from(rows).unwrap();
|
|
251
|
+
let record = RecordBatch::try_new(
|
|
252
|
+
dense_schema(),
|
|
253
|
+
vec![
|
|
254
|
+
Arc::new(TimestampMicrosecondArray::from_iter_values(0..n)) as ArrayRef,
|
|
255
|
+
Arc::new(Int64Array::from_iter_values((0..n).map(|i| i % 16))),
|
|
256
|
+
Arc::new(
|
|
257
|
+
(0..n)
|
|
258
|
+
.map(|i| (i % 7 != 0).then_some(f64::from(i32::try_from(i).unwrap()) * 0.5))
|
|
259
|
+
.collect::<datafusion::arrow::array::Float64Array>(),
|
|
260
|
+
),
|
|
261
|
+
Arc::new(Int64Array::from_iter_values((0..n).map(|i| i * 3 - 7))),
|
|
262
|
+
],
|
|
263
|
+
)
|
|
264
|
+
.unwrap();
|
|
265
|
+
Batch::table(vec![record], BatchMetadata::default()).unwrap()
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
fn dense_operator(hopping: bool) -> WindowAggregateOperator {
|
|
269
|
+
let spec = if hopping {
|
|
270
|
+
WindowSpec::hopping(
|
|
271
|
+
"event_time",
|
|
272
|
+
Duration::from_micros(1_000),
|
|
273
|
+
Duration::from_micros(100),
|
|
274
|
+
)
|
|
275
|
+
.unwrap()
|
|
276
|
+
} else {
|
|
277
|
+
WindowSpec::tumbling("event_time", Duration::from_micros(1_000)).unwrap()
|
|
278
|
+
}
|
|
279
|
+
.group_by(["group"])
|
|
280
|
+
.unwrap()
|
|
281
|
+
.aggregate(AggregateFunction::Sum, "value", "s")
|
|
282
|
+
.unwrap()
|
|
283
|
+
.aggregate(AggregateFunction::Count, "value", "c")
|
|
284
|
+
.unwrap()
|
|
285
|
+
.aggregate(AggregateFunction::Min, "ivalue", "mn")
|
|
286
|
+
.unwrap()
|
|
287
|
+
.aggregate(AggregateFunction::Max, "value", "mx")
|
|
288
|
+
.unwrap()
|
|
289
|
+
.aggregate(AggregateFunction::Avg, "ivalue", "a")
|
|
290
|
+
.unwrap();
|
|
291
|
+
WindowAggregateOperator::new("window", dense_schema(), spec).unwrap()
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
fn dense_window(c: &mut Criterion) {
|
|
295
|
+
let runtime = tokio::runtime::Runtime::new().unwrap();
|
|
296
|
+
let job = StreamJobContext::new(
|
|
297
|
+
1,
|
|
298
|
+
STATE_PIPELINE_FINGERPRINT,
|
|
299
|
+
JsonMap::new(),
|
|
300
|
+
None,
|
|
301
|
+
CancellationToken::new(),
|
|
302
|
+
);
|
|
303
|
+
let input = dense_input(65_536);
|
|
304
|
+
for (name, hopping) in [("tumbling", false), ("hopping", true)] {
|
|
305
|
+
let operator = dense_operator(hopping);
|
|
306
|
+
let collector = EdgeCollector::new(operator.output_ports().to_vec());
|
|
307
|
+
let state = tokio::sync::Mutex::new((operator, collector));
|
|
308
|
+
c.bench_function(&format!("dense/{name}_65536_rows_16_groups"), |b| {
|
|
309
|
+
b.to_async(&runtime).iter(|| async {
|
|
310
|
+
let context = StreamOperatorContext::new(&job, "window", None);
|
|
311
|
+
let mut state = state.lock().await;
|
|
312
|
+
let (operator, collector) = &mut *state;
|
|
313
|
+
operator.reset().unwrap();
|
|
314
|
+
operator
|
|
315
|
+
.process_data("input", input.clone(), &context, collector)
|
|
316
|
+
.await
|
|
317
|
+
.unwrap();
|
|
318
|
+
// Drain every port so each iteration measures one fresh batch.
|
|
319
|
+
for port in operator.output_ports() {
|
|
320
|
+
black_box(collector.drain(port.name()));
|
|
321
|
+
}
|
|
322
|
+
});
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
|
|
233
327
|
criterion_group!(
|
|
234
328
|
m4_state_window,
|
|
235
329
|
state_backend_io,
|
|
236
|
-
window_execution_and_restore
|
|
330
|
+
window_execution_and_restore,
|
|
331
|
+
dense_window
|
|
237
332
|
);
|
|
238
333
|
criterion_main!(m4_state_window);
|