learn
changelog
You can subscribe to this changelog through the RSS feed.
What's new
1.18.2
Wed May 13 09:10:40 PDT 2026
- Lint mode now prints out validation errors if the configuration can't be recognized.
1.18.1
Thu May 7 08:05:28 PDT 2026
- Mitigates CVE-2026-42583.
- Mitigates CVE-2026-42579.
- Mitigates CVE-2026-42584.
- Mitigates CVE-2026-42587.
- Mitigates CVE-2026-41417.
- Mitigates CVE-2026-42580.
- Mitigates CVE-2026-42581.
- Mitigates CVE-2026-42585.
- Mitigates CVE-2026-42582.
- Mitigates CVE-2026-44248.
- Mitigates CVE-2026-42586.
- Mitigates CVE-2026-42578.
- Mitigates CVE-2026-42577.
1.18.0
Wed May 6 09:48:36 PDT 2026
- Adds Google Vertex as a model provider for the
aifunction.
1.17.11
Wed Apr 29 12:40:54 PDT 2026
- Improves Iceberg writing performance.
1.17.10
Mon Apr 27 21:16:53 PDT 2026
- Fixes bug that causes Iceberg files to split too quickly when using forks.
1.17.9
Mon Apr 27 09:10:21 PDT 2026
- Makes ShadowTraffic's Iceberg writer resilient to AWS Glue throttling.
1.17.8
Mon Apr 27 06:57:44 PDT 2026
- Enhances the Iceberg writer to break apart batched rows that cross partition boundaries.
1.17.7
Tue Apr 21 15:58:24 PDT 2026
- Fixes file size chunking when writing files to Iceberg.
- Fixes pathalogical case that may deplete cache of the
stringfunction.
1.17.6
Mon Apr 20 13:11:55 PDT 2026
- Fixes issues where Iceberg S3 files are written with a superfluous leading slash.
1.17.5
Fri Apr 17 13:38:17 PDT 2026
- Enables Iceberg formatted tables to work with AWS Glue.
1.17.4
Fri Apr 17 08:46:38 PDT 2026
- Mitigates CVE-2026-34477.
- Mitigates CVE-2026-34478.
- Mitigates CVE-2026-34480.
1.17.3
Fri Apr 17 08:17:25 PDT 2026
- Fixes Redis's
unlinkstartup policy for multi node clusters.
1.17.2
Wed Apr 15 10:02:23 PDT 2026
- Adds new
startupPolicyparameter for the Redis connection to clear the key space before running.
1.17.1
Tue Apr 14 08:48:01 PDT 2026
- Adds OS wallclock time to debugging mode.
1.17.0
Wed Apr 8 13:09:08 PDT 2026
- Adds new Databricks connection.
1.16.2
Thu Apr 2 15:54:19 PDT 2026
- Mitigates CVE-2026-33870.
- Mitigates CVE-2026-33871.
1.16.1
Fri Mar 27 08:03:10 PDT 2026
- Mitigates CVE-2025-67721.
1.16.0
Wed Mar 25 15:16:01 PDT 2026
- Adds new Redis connection.
1.15.7
Fri Mar 20 14:51:04 PDT 2026
- Fixes linter false positive on
stateMachine'sexposeVarsparameter.
1.15.6
Wed Mar 11 09:18:29 PDT 2026
- Fixes peformance regression in
histogram.
1.15.5
Thu Mar 5 10:51:50 PST 2026
- Mitigates GHSA-72hv-8253-57qq.
1.15.4
Mon Mar 2 15:50:00 PST 2026
- Improves error messages from illegal Avro schema characters.
1.15.3
Wed Feb 25 11:53:22 PST 2026
- Adds new
sqlHintDdlconfiguration to specify SQL DDL statements directly.
1.15.2
Mon Feb 23 12:53:40 PST 2026
- Fixes false positive from linter on
avroHint
1.15.1
Fri Feb 20 09:26:12 PST 2026
- Upgrades the SQL Server connection driver.
1.15.0
Thu Feb 19 08:10:18 PST 2026
- Adds new
profilefunction for generating realistic data about people.
1.14.6
Wed Feb 18 08:46:13 PST 2026
- Mitigates CVE-2025-33042.
1.14.5
Thu Feb 12 10:23:00 PST 2026
- Tightens schemas for
string,heading, andloadJsonFile.
1.14.4
Tue Feb 10 11:02:15 PST 2026
- Upates Docker base image to Wolfi-base, bringing its OS CVE count to near zero.
1.14.3
Mon Feb 9 13:34:40 PST 2026
- Upgrades Docker base image to use a hardened version of Debian Bookworm, further reducing CVE surface area.
1.14.2
Tue Jan 27 13:25:07 PST 2026
- Fixes Kafka tombstone validation when using Schema Registry serializers. ShadowTraffic previously inappropriately applied schema checks on null value payloads.
1.14.1
Thu Jan 22 08:44:58 PST 2026
- Postgres, MotherDuck, MySQL, SQL Server, and Oracle connections now log their DDL statements when they create tables for you.
- Fixes spurious linter warning about
customFunctionargument maps.
1.14.0
Tue Jan 20 10:19:14 PST 2026
- Switches Docker base image from Oracle Linux 9 to Debian Bookworm Slim. Debian's base image has a smaller footprint and reduced CVE surface. Unnecessary OS packages have been removed to further harden the image while retaining debugging utilities (
ping,curl,top,ps,netstat). - Fixes spurious linter warning about
geolocationconfiguration.
1.13.7
Fri Jan 16 08:43:42 PST 2026
- Mitigates CVE-2025-68973.
1.13.6
Thu Jan 15 10:39:15 PST 2026
- Fixes bug in
repeatedlythat prevented stateful functions from advancing in certain cases.
1.13.5
Thu Jan 15 09:33:43 PST 2026
- MotherDuck connections can now write to multiple tables and multiple rows per generation iteration.
1.13.4
Fri Jan 9 14:34:33 PST 2026
- Fixes issue where Kafka Data Quality rules may not fire for Avro serialized data.
1.13.3
Fri Jan 9 08:44:38 PST 2026
- Mitigates CVE-2025-68161.
1.13.2
Wed Jan 7 13:01:17 PST 2026
- Fixes
histograminlookupcalls with multiple depending generators.
1.13.1
Tue Jan 6 10:25:45 PST 2026
- Adds new
--reloadCLI flag to control when--watchinterrupts existing runs. - Updates the MotherDuck connection to permit arbitrary query parameters on the backing URL.
1.13.0
Mon Jan 5 12:02:05 PST 2026
- Adds new Google PubSub connection.
1.12.7
Mon Dec 29 14:34:22 PST 2025
formatDateTimecan now supply a timezone.
1.12.6
Mon Dec 22 10:58:08 PST 2025
- Kafka topics can now be created with custom configuration.
1.12.5
Fri Dec 19 09:56:55 PST 2025
- Mitigates CVE-2025-67735.
1.12.4
Wed Dec 17 11:57:02 PST 2025
- MotherDuck connection can now supply table/column comments.
1.12.3
Mon Dec 15 13:59:44 PST 2025
weightedOneOfcan now take dynamic weights.
1.12.2
Thu Dec 11 15:33:33 PST 2025
- Echos the version of ShadowTraffic you're running on startup.
- Fixes spurious linter warnings on the
easingandeasingChainfunctions.
1.12.1
Wed Dec 10 13:31:31 PST 2025
- Fixes bug that prevented manual table policies from working with backticks in MySQL.
1.12.0
Mon Dec 8 14:14:26 PST 2025
- Fixes a deadlock bug that prevents shutdown when using the MotherDuck connection with a > 1 pool size.
- Adds logging to show MotherDuck connection acquisition timing.
1.11.14
Fri Dec 5 08:29:37 PST 2025
- Fixes OS CVEs in the ShadowTraffic Oracle Linux base image.
1.11.13
Wed Dec 3 14:50:26 PST 2025
- Fixes collision when the built-in linter doesn't correctly run preprocessing functions (like
loadJsonFile) ahead of time.
1.11.12
Tue Dec 2 10:06:28 PST 2025
- Fixes
repeatedlyto correctly track stateful, nested function calls.
1.11.11
Mon Nov 17 15:19:44 PST 2025
- Fixes linter bug misapplied to reader generators.
1.11.10
Mon Nov 17 10:45:58 PST 2025
- Fixes spurious linter warnings on startup for some functions.
1.11.9
Fri Nov 14 18:10:46 PST 2025
- Fixes a regression in the MotherDuck connection, introduced in 1.11.5, that can prevent ShadowTraffic from writing greater than 100K rows to MotherDuck.
1.11.8
Thu Nov 13 10:05:33 PST 2025
- Automatically includes lint output when generating data, too.
1.11.7
Wed Nov 12 15:05:45 PST 2025
- Adds new built-in linter to detect unrecognized ShadowTraffic parameters.
1.11.6
Wed Nov 5 13:45:28 PST 2025
- S3, Google Cloud Storage, Azure Blob Storage, and file system connectors can now specify
customSuffixto override their file output extensions.
1.11.5
Wed Nov 5 10:49:29 PST 2025
- Adds support for connection pooling in a single MotherDuck connection.
1.11.4
Tue Nov 4 13:08:26 PST 2025
- Fixes bug where MotherDuck tables were always created in the default schema. Tables can now be fully qualified with
db.schema.tablesyntax.
1.11.3
Mon Nov 3 09:51:08 PST 2025
- Fixes reader generator metrics on the MotherDuck connection.
1.11.2
Mon Oct 27 18:55:55 CDT 2025
stateMachinecan now take functional arguments for both itsinitialandtransitionsparameter, making it more customizable.
1.11.1
Fri Oct 24 13:12:02 PDT 2025
- Fixes spurious stacktrace during shutdown of a long running MotherDuck connection.
1.11.0
Thu Oct 23 18:54:19 PDT 2025
- Adds new
interpolatefunction. - Adds the ability to issue reader traffic to MotherDuck connections.
1.10.1
Tue Oct 21 19:18:14 PDT 2025
- Dramatically improves MotherDuck insertion performance.
- Fixes Postgres table creation bug introduced in previous release.
1.10.0
Mon Oct 20 15:26:16 PDT 2025
- Adds new connection for MotherDuck.
1.9.3
Thu Oct 16 13:39:15 PDT 2025
- Fixes a bug that caused
maxEventsto prematurely terminate a generator under certain conditions, like forks with high number of contending keys.
1.9.2
Thu Oct 16 10:25:52 PDT 2025
- Kafka connections will now log how their schemas were selected from Schema registry.
- Fixes vars not correctly getting passed to
customFunctioncalls.
1.9.1
Wed Oct 15 12:08:08 PDT 2025
- Introduces batching to the KurrentDB connection.
1.9.0
Tue Oct 14 15:03:55 PDT 2025
- Upgrades the dependencies underpinning Kafka to Confluent 8.0.
- Upgrades the EventStore connection to the latest, newly branded KurrentDB.
1.8.9
Wed Oct 8 11:56:03 PDT 2025
- Fixes bug where
timewasn't respected as a global configuration parameter.
1.8.8
Mon Oct 6 19:31:13 PDT 2025
- Fixes bug where Avro schemas would be incorrectly constructed on dynamically nested arrays.
1.8.7
Fri Oct 3 09:51:23 PDT 2025
- Extends
serializeto handle SQL Server native datetime columns.
1.8.6
Fri Oct 3 09:16:45 PDT 2025
- Removes hanging debug statement from previous release.
1.8.5
Fri Oct 3 08:58:27 PDT 2025
- The metrics port can now be set with
--metrics-port, and set to0to randomize its value.
1.8.4
Wed Oct 1 13:21:30 PDT 2025
- Fixes ShadowTraffic Studio's display when multiple generators share the same output target.
- Fixes SQL Server connection always writing to the default
dboschema.
1.8.3
Mon Sep 29 10:22:12 PDT 2025
- Adds support for v7 UUIDs.
1.8.2
Thu Sep 25 14:12:03 PDT 2025
- Permits dynamic values in
easing'sdurationandeventsparameters.
1.8.1
Wed Sep 24 13:44:26 PDT 2025
- Performs a deep merge when
loadJsonFileis used with an array of files, making it easier to specify nested overrides.
1.8.0
Mon Sep 22 09:52:42 PDT 2025
- Adds support for direct Iceberg writes to S3, GCS, Azure, and file system connections.
1.7.1
Mon Sep 15 11:13:32 PDT 2025
easingandeasingChaincan now iterate along a number of events, not just a timed duration.
1.7.0
Tue Sep 9 09:10:11 PDT 2025
- Adds new
durationfunction for expressing wallclock values. - Fixes
multiBlobParquet serialization with the file system connection. - Adds launch-time validation to catch illegal
lookupfunction calls to future schedulestagesthat haven't yet run.
1.6.3
Mon Sep 8 10:26:38 PDT 2025
- Fixes Parquet serialization when
multiBlobis used with S3 and other object stores. It previously applied an incorrect schema per blob.
1.6.2
Fri Sep 5 07:44:22 PDT 2025
- Mitigates CVE-2025-58056.
- Mitigates CVE-2025-58057.
1.6.1
Thu Sep 4 08:05:56 PDT 2025
- Fixes bug in
maththat would throw a stacktrace whenexpris missing instead of a helpful error message.
1.6.0
Wed Sep 3 12:11:32 PDT 2025
- Adds new AI function that can generate free text from AWS Bedrock and Ollama.
1.5.8
Tue Sep 2 09:00:14 PDT 2025
multiBlobS3 support now raises launch-time error when there are missing keys.
1.5.7
Thu Aug 21 10:53:55 PDT 2025
easingcan now take dynamictoandfromparameters.
1.5.6
Mon Aug 18 15:12:51 PDT 2025
- Adds new
samplefunction modifier.
1.5.5
Thu Aug 14 14:05:32 PDT 2025
- Adds the ability to write multiple files per iteration to the S3 connection.
1.5.4
Thu Aug 14 08:26:52 PDT 2025
- Fixes a bug in Kafka schema inference that creates single-type unions.
1.5.3
Thu Aug 14 07:57:45 PDT 2025
- Fixes an issue where
byteswould emit too many bytes when serialized with Avro through Kafka. - Fixes poor Avro validation error messages when serializing incorrect deeply nested, unionized data.
- Mitigates CVE-2024-57699.
1.5.2
Wed Aug 13 11:25:42 PDT 2025
- Fixes a bug where Avro serialization errors would falsely claim valid data is the problem. In particular, it would incorrectly target records with an implicit parent namespace.
1.5.1
Tue Aug 12 12:06:41 PDT 2025
1.5.0
Tue Aug 12 10:49:08 PDT 2025
- Adds new functions
easingandeasingChainto transition numeric values over time. - Allows
throughputto be set by a variable.
1.4.3
Fri Aug 8 07:37:24 PDT 2025
- Allows
throughputto take dynamic values. The docs previously erroneously specified it could do this.
1.4.2
Wed Aug 6 14:03:03 PDT 2025
- Fixes authentication forwarding for auto-schema downloading with Kafka connections.
1.4.1
Wed Aug 6 13:37:52 PDT 2025
- Fixes a spurious authentication issue with Kafka Schema Registry when using SR-enabled serializers.
1.4.0
Wed Aug 6 10:54:16 PDT 2025
- Fixes a performance regression when using
lookupwithhistogram. Large lookup targets > 10K elements would dramatically reduce output speed. This is now fixed.
1.3.0
Mon Aug 4 12:09:11 PDT 2025
- Adds the ability for Kafka generators to automatically download schemas out of Schema Registry.
1.2.0
Thu Jul 31 09:48:08 PDT 2025
- Adds support for Kafka/Confluent client-side field level encryption (AWS, Azure, GCP, Vault, and local). Follow Confluent's docs to enable it.
1.1.11
Mon Jul 28 11:49:18 PDT 2025
- Adds new function
cacheto create dynamic, immutable relationships. - Mitigates CVE-2025-53864.
- Mitigates CVE-2025-48924.
1.1.10
Wed Jul 23 15:27:52 PDT 2025
intervalsno longer requires a fallback value or index.
1.1.9
Wed Jul 23 10:10:21 PDT 2025
- Adds new function
cycleto emit looping sequences of elements.
1.1.8
Mon Jul 14 10:58:08 PDT 2025
- Loosens the schema for
waypointsso thatcoordinatescan be an array of function calls.
1.1.7
Fri Jul 11 08:09:41 PDT 2025
- Mitigates CVE-2025-5702.
- Mitigates CVE-2025-49794.
- Mitigates CVE-2025-6021.
1.1.6
Wed Jul 9 10:34:30 PDT 2025
- Adds the ability to nest identifiers in the
stringfunction.
1.1.5
Wed Jul 2 11:56:11 PDT 2025
- Permits
startingFrominsequentialStringto be a function call. - Fixes a bug related to
customFunctionthat would incorrectly advance other fields state.
1.1.4
Tue Jul 1 12:03:42 PDT 2025
- Fixes a bug in ShadowTraffic Studio that crashes the UI when state machine delays are used.
1.1.3
Tue Jul 1 11:20:59 PDT 2025
- Adds the ability for state machines to delay arbitrary states.
1.1.2
Fri Jun 27 11:55:57 PDT 2025
- Mitigates CVE-2025-6020.
- Mitigates CVE-2025-48976.
- Mitigates CVE-2025-25724.
- Mitigates CVE-2025-3576.
1.1.1
Mon Jun 23 08:55:28 PDT 2025
- Improves error messages from AWS KMS while creating leases.
1.1.0
Wed Jun 18 10:44:20 PDT 2025
- Adds new MySQL connection.
1.0.10
Fri Jun 13 08:42:19 PDT 2025
- Mitigates CVE-2025-4802.
1.0.9
Tue Jun 10 09:35:00 PDT 2025
- Adds new
avroHintfunction modifier to override automatic schema inference guesses.
1.0.8
Wed Jun 4 15:25:44 PDT 2025
- Fixes bug where named
lookupcalls against the same collection would collide results.
1.0.7
Wed Jun 4 09:02:21 PDT 2025
- Improves error output when ShadowTraffic is fed an invalid license.
1.0.6
Tue Jun 3 11:33:45 PDT 2025
- Fixes Avro schema inference bug on array types.
1.0.5
Mon Jun 2 11:34:14 PDT 2025
- Mitigates CVE-2025-30065.
- Mitigates CVE-2025-48734.
- Mitigates CVE-2025-46762.
- Mitigates CVE-2022-49043.
- Mitigates CVE-2024-56171.
- Mitigates CVE-2025-24928.
- Mitigates CVE-2024-12797.
- Mitigates CVE-2025-4598.
- Mitigates CVE-2020-11023.
- Mitigates CVE-2025-0395.
- Mitigates CVE-2019-12900.
- Mitigates CVE-2025-24528.
- Mitigates CVE-2024-8176.
- Mitigates CVE-2024-12243.
- Mitigates CVE-2024-12133.
1.0.4
Wed May 28 10:53:32 PDT 2025
- Defaults ShadowTraffic to use 65% of available container memory, increased from 25%.
- Adds concurrency and buffer depth parameters for S3.
- Fixes an issue with the S3 connection where large objects could deplete memory.
1.0.3
Thu May 15 14:36:00 PDT 2025
- Fixes Unicode rendering issues related to GraalVM that would emit
?characters in some log lines.
1.0.2
Thu May 15 11:14:49 PDT 2025
- Narrows the scope of state that
customFunctioncalls carry to minimize type conversion errors.
1.0.1
Wed May 14 09:57:35 PDT 2025
- Fixes
customFunctioncomposite types caused by some JavaScript return values.
1.0.0
Tue May 13 14:22:41 PDT 2025
- Introduces
customFunctionthat lets you extend ShadowTraffic with Python, Ruby, and JavaScript. - Changes the default JVM to use GraalVM 23.0.2, mainly in support of custom functions.
0.19.4
Mon Apr 28 10:51:34 PDT 2025
- Deprecates
toInstantand instead adds a newserializetarget for Postgres timestamps. This makes it easier decouple type-system specifics from the data you're generating.
0.19.3
Mon Apr 28 09:20:53 PDT 2025
- Expands
waypointsso that itscoordinatesparameter can be resolved through lookups.
0.19.2
Fri Apr 25 12:36:01 PDT 2025
- Adds new function modifier
serializeto control last mile byte arrangement.
0.19.1
Mon Apr 21 09:31:42 PDT 2025
- Fixes a bug where stateful functions would fail if nested under
mapcalls.
0.19.0
Tue Apr 15 15:40:33 PDT 2025
- Adds new leasing capability for Enterprise users. Leasing allows central teams to issue scoped, short-term access to subteams.
0.18.9
Mon Apr 14 12:27:27 PDT 2025
- Fixes further edge cases continuing through Kafka data quality rules errors.
0.18.8
Wed Apr 9 13:28:28 PDT 2025
- Dramatically improves the helpfulness of error messages related to Kafka Avro serialization.
0.18.7
Mon Apr 7 08:44:20 PDT 2025
- Fixes issues related to Kafka data quality rules suppressing errors.
- Relaxes schema of
lookupto no longer requirepath.
0.18.6
Fri Apr 4 14:10:15 PDT 2025
- Adds new parameter to continue generating data to Kafka when data quality rules are violated.
0.18.5
Wed Apr 2 14:47:15 PDT 2025
- Fixes
--bootstrap-from-avro-schemato correctly handle union types by specifying type hints in generated output.
0.18.4
Wed Apr 2 13:06:08 PDT 2025
- Expands
elide'swhenAbsentcheck to trigger onfalsetoo, not justnull. --bootstrapwill now bundle the original schema as a hint with Kafka targeted generators.- Swaps the order the
decimalsandclampmodifiers run.decimalsnow runs afterward since clamp may introduce more floating point places.
0.18.3
Tue Apr 1 11:24:56 PDT 2025
- Fixes a bug where reusing a generator across
stagescould throw an exception.
0.18.2
Mon Mar 31 10:49:40 PDT 2025
- Upgrades the set of available Kafka serializers and permits use of
kafka-schema-rules.
0.18.1
Mon Mar 31 08:15:38 PDT 2025
- Fixes a bug where
schedulemay throw an exception when used with--stdout. - Fixes
--bootstrap-*commands for Kafka to now output the right corresponding serializers for the requested format.
0.18.0
Tue Mar 25 10:05:42 PDT 2025
- Breaking change: all events are now instantaneously available through the
lookupfunction. The previous behavior, which prevented events from being looked up until they were acknowledged by the target backend systems, consistently caused confusion. This change now unifies how data is generated with and without the--stdoutflag. See below to restore the old behavior. - Adds new
lookupScopeconfiguration. Set this value tocommittedto restore the old behavior. - Drops the
--allow-unsafe-lookupsCLI flag. UselookupScopeinstead.
0.17.16
Mon Mar 24 13:23:10 PDT 2025
- Allows concurrency tuning for the Azure Blob Storage connector.
0.17.15
Tue Mar 18 12:42:38 PDT 2025
- Allows
defaultValueparameter forpreviousEventto be a function.
0.17.14
Mon Mar 17 09:43:26 PDT 2025
- Adds support for YAML configuration files through the
--config-formatcommand line switch. - Adds new
defaultValueparameter forpreviousEvent.
0.17.13
Thu Mar 13 15:25:01 PDT 2025
- Fixes
geolocationsupport, which recently broke through the underlying Docker image dependencies.
0.17.12
Tue Mar 11 12:01:43 PDT 2025
- Improves the performance of the Azure Blob Storage connector for large events.
0.17.11
Thu Mar 6 13:05:51 PST 2025
- Fixes
toInstant's schema not requiring themsparameter.
0.17.10
Wed Mar 5 11:28:08 PST 2025
- Fixes a bug where UUIDs weren't casting correctly to Postgres.
- Fixes Postgres
dropAndCreateso that drops cascading, avoiding throwing errors on dependent object chains.
0.17.9
Wed Mar 5 09:25:47 PST 2025
- Fixes bug where top-level
mathvariables that refer to other variables could evaluate in the wrong order.
0.17.8
Tue Mar 4 11:24:53 PST 2025
- Adds new
logLevelparameter for S3 to more easily debug unexpected authentication issues.
0.17.7
Tue Mar 4 09:45:32 PST 2025
- Adds new
logformat for file system, S3, GCS, and Azure Blob Storage. The same parameter works across all 4 connectors.
0.17.6
Mon Mar 3 10:46:58 PST 2025
- Adds new debugging mode, activated by the
SHADOWTRAFFIC_DEBUGenvironment variable.
0.17.5
Mon Mar 3 09:38:14 PST 2025
- Adds new
sendSynchronousparameter for the Kafka connection.