2021-09-15 06:07:28 +01:00
|
|
|
[package]
|
|
|
|
|
name = "starmelon"
|
|
|
|
|
version = "0.1.0"
|
|
|
|
|
edition = "2018"
|
|
|
|
|
|
2021-09-20 07:34:43 +01:00
|
|
|
# I decided to use os_pipe becaues I want to pipe stdout of a subprocess into
|
2022-01-11 18:15:16 +00:00
|
|
|
# stderr in real time. I want the output of the process to stderr and stdout
|
2021-09-20 07:34:43 +01:00
|
|
|
# show up in the original order. I looked an os_pipe uses some unsafe code to
|
|
|
|
|
# duplicate file descriptors. I am unfamiliar with the correct way of sharing
|
|
|
|
|
# the fds. Therefore I am going to trust that their unsafe code is necessary.
|
|
|
|
|
# Then it makes sense to use a battle tested unsafe code rather than implement
|
|
|
|
|
# it myself.
|
2021-09-15 06:07:28 +01:00
|
|
|
[dependencies]
|
|
|
|
|
ahash = "0.7"
|
2021-12-29 14:57:35 +00:00
|
|
|
elmi = { path = "../../../infra/rust-elmi", features = [ "genco" ] }
|
2021-09-20 07:34:43 +01:00
|
|
|
naive-wadler-prettier= { path = "../../../infra/redwood-lang/compiler/naive-wadler-prettier" }
|
|
|
|
|
os_pipe = "0.9"
|
2021-09-15 06:07:28 +01:00
|
|
|
serde = { version = "1.0", features = [ "derive" ] }
|
|
|
|
|
serde_json = { version ="1.0", features = [] }
|
2021-09-20 07:34:43 +01:00
|
|
|
structopt = { version = "0.3" }
|
2021-10-12 21:00:25 +01:00
|
|
|
elm-project-utils = { path = "../../../infra/rust-elm-project-utils" }
|
2021-12-10 00:18:01 +00:00
|
|
|
tracing = { version = "0.1", features = [] }
|
|
|
|
|
rustc-hash = "1.1"
|
2021-12-11 18:28:04 +00:00
|
|
|
home = "0.5"
|
2021-12-10 00:18:01 +00:00
|
|
|
|
|
|
|
|
# Required to transpile view functions to Rust
|
|
|
|
|
genco = "0.15"
|
2022-01-12 04:56:15 +00:00
|
|
|
# Required to generate fixture Elm files
|
2022-04-15 04:29:44 +01:00
|
|
|
genco-extra = { path = "../../../infra/genco-extra" }
|
2022-01-12 04:56:15 +00:00
|
|
|
|
2021-09-15 06:07:28 +01:00
|
|
|
|
|
|
|
|
# All of these are required for deno's javascript runtime. We need to keep the
|
|
|
|
|
# same versions as other projects in our cargo workspace. Multiple different
|
|
|
|
|
# versions of rust_v8 seem to break its build script.
|
2022-03-21 20:07:19 +00:00
|
|
|
deno_runtime = "0.50"
|
|
|
|
|
tokio = { version = "1.17", features = ["full"] }
|
|
|
|
|
deno_core = "0.124"
|
|
|
|
|
deno_web = "0.73"
|
|
|
|
|
futures = "0.3"
|
2021-12-29 14:57:35 +00:00
|
|
|
|
2022-01-07 02:27:33 +00:00
|
|
|
# Required to add sql query support to interpreter. Because deno expects sync
|
|
|
|
|
# ops to be synchronous, we have to use a second async executor to run the sqlx
|
|
|
|
|
# functions. I read the code for oneshot
|
|
|
|
|
# (https://github.com/faern/oneshot/commit/9aa237f185e1b65d61bf92c20350cf7bee0aa88b)
|
|
|
|
|
# and it looks reasonable.
|
|
|
|
|
sqlx = { version = "0.5", features = [ "sqlite", "macros", "runtime-tokio-rustls", "chrono", "json", "uuid" ] }
|
|
|
|
|
oneshot = "0.1.3"
|
|
|
|
|
|
2022-03-21 20:07:19 +00:00
|
|
|
# required for livetable derive macro
|
|
|
|
|
livetable-core = { path = "../../../infra/livetable/core" }
|
2022-05-28 18:44:21 +01:00
|
|
|
cargo-workspace-hack = { version = "0.1", path = "../../../infra/cargo-workspace-hack" }
|
2022-03-21 20:07:19 +00:00
|
|
|
|
|
|
|
|
|
2022-01-12 04:56:15 +00:00
|
|
|
[dev-dependencies]
|
|
|
|
|
aho-corasick = "0.7"
|