Sling v1.6.4 (2026-09-28T00:43:13Z)
New Features
- New database connectors: Firebolt, OpenSearch, DynamoDB (scan, batch write and
delete_missing), LanceDB (with the DuckDBlanceextension) and dBase.dbffiles (read-only). - Databricks targets: New
databricks-volumefile connection for Unity Catalog Volumes. Newcopy_method: zerobusondatabricksconnections for direct Delta ingestion through Arrow Flight. - ADBC for ClickHouse: ClickHouse now supports ADBC ingest over HTTP. The MySQL source and the ClickHouse target can use the Arrow Lane.
- DuckDB
copy_format:copy_format(arrow|csv) replacescopy_method/DUCKDB_USE_ARROW. Arrow is now the default, and Sling falls back to CSV when the arrow extension does not load. - Iceberg merge strategies: Iceberg targets now support
insert,update,update_insertanddelete_insert. Cloudflare R2 is now a supported Iceberg storage. - StarRocks schema migration: StarRocks targets now support schema migration, with dialect-specific DDL (quoted defaults, inline comments, FK table property).
- Connection tests: API spec tests are now cancellable and isolated per run. They report the request index, the iteration state and the final record shape per request.
- Idle connection reaper: Long-running
sling servesessions close cached connections after 10 minutes of inactivity, so expired credentials get refreshed. env.yamlediting:sling conns set/unsetnow editenv.yamlline by line and keep comments, formatting and key order. Literal secret values are allowed. Writes stop whenenv.yamldoes not fully parse.
Bug Fixes
- GCS / BigQuery
gc_bucket: Fixed themultiple credential options providederror with Application Default Credentials. - MongoDB filters: Incremental and backfill filters now parse mongosh syntax (
ISODate,ObjectId) and Extended JSON ($date,$oid,$numberLong, etc.). - SQL Server BCP: Fixed 3-part table names with the
-doption. An interrupt during a BCP load no longer drops the_tmptable underbcp. - DuckDB sidecar: Sling now retries once when the DuckDB process stops during Parquet writes. Ctrl-C now cancels the query cleanly. Arrow output now goes through the same session, so temp tables and attached databases stay visible.
- DuckDB type fidelity:
hugeint/ubigintmap to decimal,timestamp_s/ms/nsare recognized and±infinityvalues decode correctly.checksum_decimalnow truncates in DuckDB, DuckLake, LanceDB and MotherDuck. - Cloudflare D1: Query results are paged to survive memory-limit resets, and the
limitoption is respected. - MySQL ADBC URI: Special characters in credentials now decode correctly.
- ClickHouse native connection: Fixed a hang caused by
http_portin the native connection string. - Snowflake / S3 on EC2: Upgraded
gosnowflaketo v1.19.1. Sling no longer disables AWS IMDS, so EC2 instance-profile credentials work. - Connection URL passwords: Spaces are now encoded as
%20instead of+. - Environment loading: Existing process environment variables are no longer overwritten. Tab and non-breaking-space indentation in env files is repaired with a warning.
- Incremental state: String update keys now save the correct maximum value.
- Delete missing: Target table columns are refreshed before the delete runs.
- Hooks: File-locked embedded databases now close correctly.
sling setup/assist: Fixed terminal detection when stdin is/dev/null. The error now points to--non-interactive.