spawnflake 0.2.5

Generate pattern based random data for mysql
Documentation

🐙❄️ Spawnflake Rust

Spawnflake generates random data and/or based on patterns for relational databases.

what's new

See CHANGELOG

known limitations

  • In the cases of handling cyclic dependencies I am not currently updating the keys retrospectively. This is planned for a future version
  • If a foreign key is unique, less records will be inserted on that table (I do not support unique foreign key values yet)
  • In certain cases number validation in the configuration is not performed, so the db can throw errors for out of range values.

support

  • db support
    • mysql
  • supports the following types and generators:
Datastore Data type Random Pattern
Mysql varchar ✔️ ✔️
Mysql int ✔️ ✔️
Mysql unsigned int ✔️ ✔️
Mysql smallint ✔️ ✔️
Mysql unsigned smallint ✔️ ✔️
Mysql tinyint/unsigned tinyint ✔️ ✔️
Mysql mediumint ✔️ ✔️
Mysql bigint ✔️ ✔️
Mysql unsigned bigint ✔️ ✔️
Mysql decimal ✔️ ✔️
Mysql float ✔️ ✔️
Mysql double ✔️ ✔️
Mysql bit ✔️
Mysql time ✔️
Mysql timestamp ✔️
Mysql date ✔️
Mysql year ✔️
Mysql char ✔️
Mysql binary ✔️
Mysql text ✔️
Mysql longtext ✔️
Mysql blob/longblob ✔️
Mysql enum ✔️

(+) works but not necessary with expected outcome

cli

a pre release version is available/ check cli/readme.md for usage

Running the example

Running the example requires to run docker-compose inside the test folder. Obviously you need

  • docker
  • an sql client/ or a way to access the mysql cli (so as to see the generated records)
  • cargo run --example generate_mysql

Contributing

You are more than welcome. All you need to do is a pull request