Repository navigation
DATAMIMIC CE v3.0.0 #140
ake2l
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Time-series generation is now a first-class DSL primitive. Define
start,end, andintervalon<generate>, and the engine produces the temporal sequence directly. No external orchestration, no Python wrapper, no count math.This release also closes the remaining gaps in seeded coverage (null injection, pattern, weighted distribution, nested cardinality, source shuffling) and contains one breaking change in
DateFormatConverter. Read the Migration Notes.✨ Time-Series Generation
Generate temporal sequences from the DSL. Count is derived from the window and interval. Three names are available in the script namespace:
ts.now(current datetime),ts.step(0-based index),ts.series(full series list). Do not name a keyts— it shadows the namespace.Stock ticks at 1-minute resolution:
Daily sensor readings with a seasonal curve:
Sub-second log stream:
What you can build with this: IoT telemetry, log replay, market-tick streams, scheduled-event histories, time-bucketed audit data. Combined with a seed, the entire temporal sequence is reproducible.
✨ Model-Wide Seed Control
Set
rngSeedon<setup>to lock an entire model. Same seed, same output. Omit it and behaviour is unchanged.A per-variable
rngSeedforks an independent stream without affecting siblings:Improvements
Seeded coverage extended to the remaining DSL constructs.
nullQuota,values,pattern,nestedKeycardinality, weighted.wgt.csvsampling, and shuffled source reads (CSV,.ent.csv, JSON, SQLite, cascading nested<generate>) now derive from the same<setup rngSeed>. No DSL changes required. Existing seeded projects gain reproducibility on these constructs with no change to record streams that were already deterministic.Example — seeded
nullQuota,values,pattern, andnestedKey:Migration Notes
DateFormatConverternow returnsstr. Previously it returned adatetime. If you chainDateFormatConverterinto a converter that expectsdatetime, update the chain to consumestr. This change also fixes the Feb 29 crash that occurred when format strings without%Ydefaulted to year 1900.generate_random_value_based_on_typerequiresrngas a keyword argument. Direct Python call sites must passrng=. DSL users are not affected.DSL backward compatibility. New attributes (
rngSeed,start,end,interval) are additive. Existing 2.x XML models parse and run unchanged.Fixes
test_medical_procedure_flagsflake. 30% surgical probability over 10 records produced a ~2.8% per-run failure rate. Now seeded.PoliceOfficer.birthdatereturn type annotation corrected fromstrtodatetime.This discussion was created from the release DATAMIMIC CE v3.0.0.
All reactions