chiark / gitweb /
break out otter-daemon into own crate
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 28 Nov 2020 00:14:32 +0000 (00:14 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 30 Dec 2020 10:30:45 +0000 (10:30 +0000)
Re-apply 1d4f8f10aaeb9f613688285cd8600646b19d2faf

This time we are going to try just moving bits that use Rocket.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Cargo.lock.example
Cargo.toml
Makefile
daemon/Cargo.toml [new file with mode: 0644]
daemon/main.rs [moved from src/bin/daemon-otter.rs with 100% similarity]

index 765eaa91a3f10a381e441861c6b2c23b25c06d27..0b99c5e7cdd597ce407a2782d7d000b1d2a63c5c 100644 (file)
@@ -390,6 +390,17 @@ dependencies = [
  "syn 1.0.56",
 ]
 
+[[package]]
+name = "delegate"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12e531288b600a8bea48baff926d2f16a3f68fda1cd2d59240279907ba727332"
+dependencies = [
+ "proc-macro2 1.0.24",
+ "quote 1.0.8",
+ "syn 1.0.56",
+]
+
 [[package]]
 name = "delegate"
 version = "0.5.0"
@@ -1511,7 +1522,7 @@ dependencies = [
  "boolinator",
  "chrono",
  "chrono-tz",
- "delegate",
+ "delegate 0.5.0",
  "derive_more",
  "either",
  "failure",
@@ -1539,7 +1550,7 @@ dependencies = [
  "rand 0.8.0",
  "regex",
  "rmp",
- "rmp-serde",
+ "rmp-serde 0.15.0",
  "rocket",
  "rocket_contrib",
  "rocket_cors",
@@ -1557,6 +1568,61 @@ dependencies = [
  "vecdeque-stableix",
 ]
 
+[[package]]
+name = "otter-daemon"
+version = "0.0.1"
+dependencies = [
+ "anyhow",
+ "argparse",
+ "arrayvec",
+ "boolinator",
+ "chrono",
+ "chrono-tz",
+ "delegate 0.4.3",
+ "derive_more",
+ "either",
+ "failure",
+ "fehler",
+ "flexi_logger",
+ "fs2",
+ "glob 0.3.0",
+ "htmlescape",
+ "if_chain",
+ "index_vec",
+ "inventory",
+ "itertools",
+ "lazy-init",
+ "lazy_static",
+ "libc",
+ "log 0.4.11",
+ "nix 0.18.0",
+ "num-derive",
+ "num-traits",
+ "ordered-float",
+ "otter",
+ "otter-zcoord",
+ "parking_lot",
+ "percent-encoding 2.1.0",
+ "pwd",
+ "rand 0.8.0",
+ "regex",
+ "rmp",
+ "rmp-serde 0.14.4",
+ "rocket",
+ "rocket_contrib",
+ "rocket_cors",
+ "serde",
+ "serde_json",
+ "serde_with",
+ "slotmap",
+ "strum",
+ "thiserror",
+ "toml 0.5.8",
+ "typetag",
+ "uds",
+ "vecdeque-stableix",
+]
+
 [[package]]
 name = "otter-wasm"
 version = "0.0.1"
@@ -2043,6 +2109,17 @@ dependencies = [
  "num-traits",
 ]
 
+[[package]]
+name = "rmp-serde"
+version = "0.14.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ce7d70c926fe472aed493b902010bccc17fa9f7284145cb8772fd22fdb052d8"
+dependencies = [
+ "byteorder",
+ "rmp",
+ "serde",
+]
+
 [[package]]
 name = "rmp-serde"
 version = "0.15.0"
index c6c5025eb907fa5c78865bf92418c3c92a486098..d4c49dc14705220bc7fd5e0c009997530dab143a 100644 (file)
@@ -11,7 +11,7 @@ version = "0.0.1"
 edition = "2018"
 
 [workspace]
-members = ["wasm", "wdriver"]
+members = ["wasm", "daemon", "wdriver"]
 
 [dependencies]
 
index 53a75bf48dc6f0933c70b554d4cca32897112517..b5dbd65386c6cab703edc60079bab3e4612f0f03 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -144,7 +144,7 @@ CARGOES=$(foreach t, wasm-,$(addprefix $t,check $(DR)))
 
 $(addprefix stamp/cargo.,$(DR)):: \
 stamp/cargo.%: $(call rsrcs,. ! -path './wasm/*')
-       $(CARGO) build $(call cr,$*)
+       $(CARGO) build $(call cr,$*) -p otter -p otter-daemon
        $(stamp)
 
 stamp/cargo.check: $(call rsrcs,.)
@@ -161,7 +161,7 @@ stamp/cargo.wasm-%: $(call rsrcs, zcoord wasm Cargo.*)
        $(stamp)
 
 stamp/cargo.deploy-build: $(call rsrcs,.)
-       $(CARGO) -T$(DEPLOY_ARCH) build $(call cr,$(DEPLOY_RELEASE))
+       $(CARGO) -T$(DEPLOY_ARCH) build $(call cr,$(DEPLOY_RELEASE)) -p otter -p otter-daemon
        $(stamp)
 
 #---------- wasm ----------
diff --git a/daemon/Cargo.toml b/daemon/Cargo.toml
new file mode 100644 (file)
index 0000000..b6418cf
--- /dev/null
@@ -0,0 +1,72 @@
+# Copyright 2020 Ian Jackson
+# SPDX-License-Identifier: AGPL-3.0-or-later
+# There is NO WARRANTY.
+
+[package]
+name = "otter-daemon"
+authors = ["Ian Jackson <ijackson@chiark.greenend.org.uk>"]
+license = "AGPL-3.0-or-later"
+
+version = "0.0.1"
+edition = "2018"
+
+[[bin]]
+name = "daemon-otter"
+path = "main.rs"
+
+[dependencies]
+otter = { path = ".." }
+otter-zcoord = { path = "../zcoord" }
+
+anyhow = "1"
+argparse = "0.2"
+arrayvec = "0"
+boolinator = "2"
+chrono = "0.4"
+chrono-tz = "0.5"
+delegate = "0.4"
+derive_more = "0.99"
+either = "1"
+failure = "0.1.8" # for pwd
+fehler = "1"
+flexi_logger = { version = "0.16", features = [ "specfile" ] }
+fs2 = "0.4"
+glob = "0.3"
+htmlescape = "0.3"
+if_chain = "1"
+index_vec = { version = "0.1.1", features = ['serde'] }
+inventory = "0.1"
+itertools = "0.9"
+lazy_static = "1"
+libc = "0.2"
+lazy-init = "0.4"
+log = "0.4"
+nix = "0.18"
+num-derive = "0.3"
+num-traits = "0.2"
+ordered-float = "2"
+parking_lot = "0.11"
+percent-encoding = "2"
+pwd = "1"
+rand = "0"
+regex = "1"
+rmp = "0.8"
+rmp-serde = "0.14"
+serde = { version = "1", features = ["derive","rc"] }
+serde_json = "1"
+serde_with = "1"
+slotmap = { version = "0.4", features = ['serde'] }
+strum = { version = "0.20", features = ['derive'] }
+thiserror = "1"
+toml = "0.5"
+typetag = "0.1.6"
+uds = "0"
+vecdeque-stableix = "1"
+
+rocket = { version = "^0.4.6", features=["sse"] }
+rocket_cors = "0.5"
+
+[dependencies.rocket_contrib]
+version = "0.4"
+default-features = false
+features = ["tera_templates","helmet","json","serve"]
similarity index 100%
rename from src/bin/daemon-otter.rs
rename to daemon/main.rs