-
Notifications
You must be signed in to change notification settings - Fork 18
Comparing changes
Open a pull request
base repository: FunctionStream/function-stream
base: main
head repository: FunctionStream/function-stream
compare: robot
- 16 commits
- 442 files changed
- 2 contributors
Commits on May 16, 2026
-
Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for d018dec - Browse repository at this point
Copy the full SHA d018decView commit details
Commits on May 18, 2026
-
Configuration menu - View commit details
-
Copy full SHA for b2454bd - Browse repository at this point
Copy the full SHA b2454bdView commit details
Commits on May 19, 2026
-
Configuration menu - View commit details
-
Copy full SHA for cee4f80 - Browse repository at this point
Copy the full SHA cee4f80View commit details -
Configuration menu - View commit details
-
Copy full SHA for f6636a2 - Browse repository at this point
Copy the full SHA f6636a2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 72ce3ef - Browse repository at this point
Copy the full SHA 72ce3efView commit details -
Configuration menu - View commit details
-
Copy full SHA for 76d0204 - Browse repository at this point
Copy the full SHA 76d0204View commit details
Commits on May 20, 2026
-
fix(delta): strip system columns and normalize timestamps for writes
Exclude _timestamp/_updating_meta from Delta catalog and Parquet schema, cast user columns to Delta-compatible types, and support multiple timestamp units in watermark max extraction. Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for efa47cf - Browse repository at this point
Copy the full SHA efa47cfView commit details -
fix(watermark): accept expression results in any timestamp unit
Planner may evaluate watermark expressions to millisecond (or other) timestamp arrays after projection; unify max extraction across units instead of requiring TimestampNanosecondArray only. Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for 1bd7ade - Browse repository at this point
Copy the full SHA 1bd7adeView commit details -
Configuration menu - View commit details
-
Copy full SHA for dd4b044 - Browse repository at this point
Copy the full SHA dd4b044View commit details -
fix(delta): enable unsafe rename by default for S3/MinIO commits
deltalake-aws 0.15+ requires either a DynamoDB lock client or AWS_S3_ALLOW_UNSAFE_RENAME=true. Function-Stream sinks are single-writer, so default the flag on; users can opt into ETag conditional puts via the s3.conditional.put option (e.g. MinIO). Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for ce36fc5 - Browse repository at this point
Copy the full SHA ce36fc5View commit details -
feat(delta): model commit coordination strategy for S3-compatible stores
Replace the bare AWS_S3_ALLOW_UNSAFE_RENAME default with an explicit DeltaCommitStrategy abstraction: single-writer (default, leveraging the pipeline scheduler's per-table writer guarantee) or DynamoDB (for multi-process writers). Adds delta.commit.strategy and delta.dynamodb.* sink options for clear cloud/on-prem deployments. Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for 34c7aaa - Browse repository at this point
Copy the full SHA 34c7aaaView commit details -
feat(delta): production-grade S3/MinIO networking and bucket preflight
- AmazonS3Builder now uses an exponential-backoff RetryConfig (100ms..5s, 5 retries, 30s overall) so transient network blips don't fail commits. - Custom S3 endpoints force path-style addressing on both the object_store client and the deltalake storage options (AWS_VIRTUAL_HOSTED_STYLE_REQUEST =false), matching MinIO/Ceph/R2/private gateway deployments. - Preflight bucket check now surfaces InvalidAccessKeyId, SignatureDoes NotMatch and AccessDenied as clear configuration errors. - on_close logs commit failures with error! before bubbling up to make data-loss risk visible in operator dashboards. Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for 54965cd - Browse repository at this point
Copy the full SHA 54965cdView commit details -
refactor(delta): Arroyo-style physical sink separated from commit layer
Introduce physical_sink module with FinishedFile contract, SingleThreadPhysicalSink (S3/MinIO encode+PUT without _delta_log), and LocalPhysicalSink. DeltaSinkOperator buffers batches, delegates early flush to the physical layer, and commits via DeltaTableCommitter only at checkpoint boundaries. Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for c48272b - Browse repository at this point
Copy the full SHA c48272bView commit details -
Configuration menu - View commit details
-
Copy full SHA for e7bc25a - Browse repository at this point
Copy the full SHA e7bc25aView commit details
Commits on May 31, 2026
-
feat(connectors): add robot sources, Kafka group ID defaults, and thr…
…oughput fixes Add MQTT, HTTP, ROS/ROS2, and robot-bag connectors with ROS1 bag and PCL PCD parsing. Persist auto-generated Kafka consumer group IDs at CREATE TABLE. Remove hot-path debug logging from Kafka source and Delta sink, and tune Delta/Kafka batching for higher throughput. Add bilingual source docs. Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for 3cf300d - Browse repository at this point
Copy the full SHA 3cf300dView commit details
Commits on Jun 3, 2026
-
fix(format): decode full Kafka JSON batches beyond Arrow 1024-row limit
Loop Arrow JSON decode/flush and concat batches so source batches up to 4096 rows align with valid_indices, fixing SO101 collector DEGRADED state. Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for 087b9b9 - Browse repository at this point
Copy the full SHA 087b9b9View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff main...robot