From 500c8d905c66ce1a36f13a42643aa57d2efc3839 Mon Sep 17 00:00:00 2001 From: "Adam H. Leventhal" Date: Wed, 18 May 2022 22:02:42 -0700 Subject: [PATCH 1/3] WIP to get to uuid v1.0.0 --- Cargo.lock | 120 ++++++++++++++++++-------------- common/Cargo.toml | 6 +- gateway-client/Cargo.toml | 2 +- gateway-sp-comms/Cargo.toml | 2 +- gateway/Cargo.toml | 2 +- internal-dns/Cargo.toml | 2 +- nexus-client/Cargo.toml | 2 +- nexus/Cargo.toml | 8 +-- nexus/test-utils/Cargo.toml | 2 +- oximeter-client/Cargo.toml | 2 +- oximeter/collector/Cargo.toml | 2 +- oximeter/db/Cargo.toml | 4 +- oximeter/instruments/Cargo.toml | 2 +- oximeter/oximeter/Cargo.toml | 4 +- oximeter/producer/Cargo.toml | 4 +- sled-agent-client/Cargo.toml | 2 +- sled-agent/Cargo.toml | 4 +- test-utils/Cargo.toml | 2 +- 18 files changed, 93 insertions(+), 79 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 61074e154c0..6b70560aaa2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -759,7 +759,7 @@ dependencies = [ "toml", "tracing", "usdt", - "uuid", + "uuid 0.8.2", "version_check", ] @@ -793,7 +793,7 @@ dependencies = [ "tokio-rustls", "toml", "twox-hash", - "uuid", + "uuid 0.8.2", ] [[package]] @@ -807,7 +807,7 @@ dependencies = [ "crucible-common", "serde", "tokio-util 0.7.2", - "uuid", + "uuid 0.8.2", ] [[package]] @@ -999,7 +999,7 @@ dependencies = [ "pq-sys", "r2d2", "serde_json", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -1011,7 +1011,7 @@ dependencies = [ "lock_api", "serde", "usdt", - "uuid", + "uuid 0.8.2", ] [[package]] @@ -1123,8 +1123,8 @@ checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" [[package]] name = "dropshot" -version = "0.6.1-dev" -source = "git+https://github.com/oxidecomputer/dropshot?branch=main#016c8b929453a77c3dcb119a199abe9cf5c5d296" +version = "0.7.1-dev" +source = "git+https://github.com/oxidecomputer/dropshot?branch=main#53106a852b4936e3a4b5d54e9801f3dc58ba9238" dependencies = [ "async-stream", "async-trait", @@ -1156,14 +1156,14 @@ dependencies = [ "tokio-rustls", "toml", "usdt", - "uuid", + "uuid 1.0.0", "version_check", ] [[package]] name = "dropshot_endpoint" -version = "0.6.1-dev" -source = "git+https://github.com/oxidecomputer/dropshot?branch=main#016c8b929453a77c3dcb119a199abe9cf5c5d296" +version = "0.7.1-dev" +source = "git+https://github.com/oxidecomputer/dropshot?branch=main#53106a852b4936e3a4b5d54e9801f3dc58ba9238" dependencies = [ "proc-macro2", "quote", @@ -1607,7 +1607,7 @@ dependencies = [ "serde", "serde_json", "slog", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -1640,7 +1640,7 @@ dependencies = [ "tokio-stream", "tokio-tungstenite", "usdt", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -2495,7 +2495,7 @@ dependencies = [ "serde", "serde_json", "slog", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -2522,7 +2522,7 @@ dependencies = [ "serde_json", "slog", "tokio", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -2681,7 +2681,7 @@ dependencies = [ "thiserror", "tokio", "tokio-postgres", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -2728,7 +2728,7 @@ dependencies = [ "tokio", "tokio-tungstenite", "toml", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -2805,7 +2805,7 @@ dependencies = [ "toml", "tough", "usdt", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -2890,7 +2890,7 @@ dependencies = [ "tokio", "tokio-util 0.7.2", "toml", - "uuid", + "uuid 1.0.0", "vsss-rs", "zone", ] @@ -3088,7 +3088,7 @@ dependencies = [ "serde", "thiserror", "trybuild", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -3101,7 +3101,7 @@ dependencies = [ "reqwest", "serde", "slog", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -3127,7 +3127,7 @@ dependencies = [ "thiserror", "tokio", "toml", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -3154,7 +3154,7 @@ dependencies = [ "structopt", "thiserror", "tokio", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -3166,7 +3166,7 @@ dependencies = [ "futures", "http", "oximeter", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -3195,7 +3195,7 @@ dependencies = [ "slog-dtrace", "thiserror", "tokio", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -3543,7 +3543,7 @@ dependencies = [ "postgres-protocol", "serde", "serde_json", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -3659,8 +3659,8 @@ dependencies = [ [[package]] name = "progenitor" -version = "0.0.0" -source = "git+https://github.com/oxidecomputer/progenitor#1af79ebec75f0c8ad3c0c5561783e3e9db03077a" +version = "0.1.2-dev" +source = "git+https://github.com/oxidecomputer/progenitor#0f48c29935eec11aefbc74ae2d9c99fda5e99b72" dependencies = [ "anyhow", "getopts", @@ -3674,8 +3674,8 @@ dependencies = [ [[package]] name = "progenitor-client" -version = "0.0.0" -source = "git+https://github.com/oxidecomputer/progenitor#1af79ebec75f0c8ad3c0c5561783e3e9db03077a" +version = "0.1.2-dev" +source = "git+https://github.com/oxidecomputer/progenitor#0f48c29935eec11aefbc74ae2d9c99fda5e99b72" dependencies = [ "bytes", "futures-core", @@ -3687,8 +3687,8 @@ dependencies = [ [[package]] name = "progenitor-impl" -version = "0.0.0" -source = "git+https://github.com/oxidecomputer/progenitor#1af79ebec75f0c8ad3c0c5561783e3e9db03077a" +version = "0.1.2-dev" +source = "git+https://github.com/oxidecomputer/progenitor#0f48c29935eec11aefbc74ae2d9c99fda5e99b72" dependencies = [ "getopts", "heck 0.4.0", @@ -3709,8 +3709,8 @@ dependencies = [ [[package]] name = "progenitor-macro" -version = "0.0.0" -source = "git+https://github.com/oxidecomputer/progenitor#1af79ebec75f0c8ad3c0c5561783e3e9db03077a" +version = "0.1.2-dev" +source = "git+https://github.com/oxidecomputer/progenitor#0f48c29935eec11aefbc74ae2d9c99fda5e99b72" dependencies = [ "openapiv3", "proc-macro2", @@ -3736,7 +3736,7 @@ dependencies = [ "slog", "structopt", "thiserror", - "uuid", + "uuid 0.8.2", ] [[package]] @@ -4096,9 +4096,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.20.4" +version = "0.20.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fbfeb8d0ddb84706bc597a5574ab8912817c52a397f819e5b614e2265206921" +checksum = "5aab8ee6c7097ed6057f43c187a62418d0c05a4bd5f18b3571db50ee0f9ce033" dependencies = [ "log", "ring", @@ -4184,9 +4184,9 @@ dependencies = [ [[package]] name = "schemars" -version = "0.8.8" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b5a3c80cea1ab61f4260238409510e814e38b4b563c06044edf91e7dc070e3" +checksum = "1847b767a3d62d95cbf3d8a9f0e421cf57a0d8aa4f411d4b16525afb0284d4ed" dependencies = [ "bytes", "chrono", @@ -4194,14 +4194,15 @@ dependencies = [ "schemars_derive", "serde", "serde_json", - "uuid", + "uuid 0.8.2", + "uuid 1.0.0", ] [[package]] name = "schemars_derive" -version = "0.8.8" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ae4dce13e8614c46ac3c38ef1c0d668b101df6ac39817aebdaa26642ddae9b" +checksum = "af4d7e1b012cb3d9129567661a63755ea4b8a7386d339dc945ae187e403c6743" dependencies = [ "proc-macro2", "quote", @@ -4334,9 +4335,9 @@ dependencies = [ [[package]] name = "serde_derive_internals" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dbab34ca63057a1f15280bdf3c39f2b1eb1b54c17e98360e511637aef7418c6" +checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c" dependencies = [ "proc-macro2", "quote", @@ -4586,7 +4587,7 @@ dependencies = [ "reqwest", "serde", "slog", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -4823,7 +4824,7 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] name = "steno" version = "0.1.0" -source = "git+https://github.com/oxidecomputer/steno?branch=main#578498bbb43f9061c636b938dff98e7ece0b0efc" +source = "git+https://github.com/oxidecomputer/steno?branch=main#703cad54fdd70815ac84dcf08a439b54077e9600" dependencies = [ "anyhow", "async-trait", @@ -4837,7 +4838,7 @@ dependencies = [ "slog", "thiserror", "tokio", - "uuid", + "uuid 1.0.0", ] [[package]] @@ -5535,7 +5536,7 @@ version = "1.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 0.1.10", "rand 0.8.5", "static_assertions", ] @@ -5548,8 +5549,9 @@ checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987" [[package]] name = "typify" -version = "0.0.6-dev" -source = "git+https://github.com/oxidecomputer/typify#90894d81e303cd56056b179f31b60401efa3462d" +version = "0.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fcda9918fb3098219b36e3deca897c3be450dd9bfdb8e7a43e12380e0054f6c" dependencies = [ "typify-impl", "typify-macro", @@ -5557,8 +5559,9 @@ dependencies = [ [[package]] name = "typify-impl" -version = "0.0.6-dev" -source = "git+https://github.com/oxidecomputer/typify#90894d81e303cd56056b179f31b60401efa3462d" +version = "0.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8011d3c44c06af5930d7c9b0fbdc74a8ed4c4b5d35be07adc910a2679a4b9748" dependencies = [ "heck 0.4.0", "log", @@ -5574,8 +5577,9 @@ dependencies = [ [[package]] name = "typify-macro" -version = "0.0.6-dev" -source = "git+https://github.com/oxidecomputer/typify#90894d81e303cd56056b179f31b60401efa3462d" +version = "0.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6804c9de8bccf2e4be79d54442b165d0134766d99529712e139460fdc3a9db66" dependencies = [ "proc-macro2", "quote", @@ -5753,6 +5757,16 @@ dependencies = [ "serde", ] +[[package]] +name = "uuid" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cfcd319456c4d6ea10087ed423473267e1a071f3bc0aa89f80d60997843c6f0" +dependencies = [ + "getrandom", + "serde", +] + [[package]] name = "valuable" version = "0.1.0" diff --git a/common/Cargo.toml b/common/Cargo.toml index 5bd21038db1..1d5b98014dd 100644 --- a/common/Cargo.toml +++ b/common/Cargo.toml @@ -18,7 +18,7 @@ macaddr = { version = "1.0.1", features = [ "serde_std" ] } rand = "0.8.4" reqwest = { version = "0.11", default-features = false, features = ["rustls-tls", "stream"] } ring = "0.16" -schemars = { version = "0.8", features = [ "chrono", "uuid" ] } +schemars = { version = "0.8.10", features = [ "chrono", "uuid1" ] } serde = { version = "1.0", features = [ "derive" ] } serde_derive = "1.0" serde_json = "1.0" @@ -29,8 +29,8 @@ steno = { git = "https://github.com/oxidecomputer/steno", branch = "main" } structopt = "0.3" thiserror = "1.0" tokio = { version = "1.18", features = [ "full" ] } -tokio-postgres = { version = "0.7", features = [ "with-chrono-0_4", "with-uuid-0_8" ] } -uuid = { version = "0.8", features = [ "serde", "v4" ] } +tokio-postgres = { version = "0.7", features = [ "with-chrono-0_4", "with-uuid-1" ] } +uuid = { version = "1.0.0", features = [ "serde", "v4" ] } parse-display = "0.5.4" progenitor = { git = "https://github.com/oxidecomputer/progenitor" } diff --git a/gateway-client/Cargo.toml b/gateway-client/Cargo.toml index aab02f31110..451e03e5278 100644 --- a/gateway-client/Cargo.toml +++ b/gateway-client/Cargo.toml @@ -26,5 +26,5 @@ version = "2.5" features = [ "max_level_trace", "release_max_level_debug" ] [dependencies.uuid] -version = "0.8" +version = "1.0.0" features = [ "serde", "v4" ] diff --git a/gateway-sp-comms/Cargo.toml b/gateway-sp-comms/Cargo.toml index 9ce621fad31..4a5d999521e 100644 --- a/gateway-sp-comms/Cargo.toml +++ b/gateway-sp-comms/Cargo.toml @@ -15,7 +15,7 @@ thiserror = "1.0.31" tokio-tungstenite = "0.17" tokio-stream = "0.1.8" usdt = "0.3.1" -uuid = "0.8" +uuid = "1.0.0" gateway-messages = { path = "../gateway-messages", features = ["std"] } omicron-common = { path = "../common" } diff --git a/gateway/Cargo.toml b/gateway/Cargo.toml index e7dd48cb919..f6a6ffc12ab 100644 --- a/gateway/Cargo.toml +++ b/gateway/Cargo.toml @@ -18,7 +18,7 @@ slog-dtrace = "0.2" structopt = "0.3" thiserror = "1.0.31" toml = "0.5.9" -uuid = "0.8" +uuid = "1.0.0" gateway-messages = { path = "../gateway-messages", features = ["std"] } gateway-sp-comms = { path = "../gateway-sp-comms" } diff --git a/internal-dns/Cargo.toml b/internal-dns/Cargo.toml index 3f9bd86fa7c..6219976060d 100644 --- a/internal-dns/Cargo.toml +++ b/internal-dns/Cargo.toml @@ -10,7 +10,7 @@ clap = { version = "3.1", features = [ "derive" ] } internal-dns-client = { path = "../internal-dns-client" } dropshot = { git = "https://github.com/oxidecomputer/dropshot", branch = "main", features = [ "usdt-probes" ] } pretty-hex = "0.3.0" -schemars = "0.8" +schemars = "0.8.10" serde = { version = "1.0", features = [ "derive" ] } serde_json = "1.0" sled = "0.34" diff --git a/nexus-client/Cargo.toml b/nexus-client/Cargo.toml index 1b19b564bcc..33840965be8 100644 --- a/nexus-client/Cargo.toml +++ b/nexus-client/Cargo.toml @@ -25,5 +25,5 @@ version = "2.5" features = [ "max_level_trace", "release_max_level_debug" ] [dependencies.uuid] -version = "0.8" +version = "1.0.0" features = [ "serde", "v4" ] diff --git a/nexus/Cargo.toml b/nexus/Cargo.toml index 109bc05893d..4b6b41b9753 100644 --- a/nexus/Cargo.toml +++ b/nexus/Cargo.toml @@ -89,8 +89,8 @@ version = "0.1.0" path = "../oximeter/producer" [dependencies.schemars] -version = "0.8" -features = [ "chrono", "uuid" ] +version = "0.8.10" +features = [ "chrono", "uuid1" ] [dependencies.serde] version = "1.0" @@ -110,10 +110,10 @@ features = [ "full" ] [dependencies.tokio-postgres] version = "0.7" -features = [ "with-chrono-0_4", "with-serde_json-1", "with-uuid-0_8" ] +features = [ "with-chrono-0_4", "with-serde_json-1", "with-uuid-1" ] [dependencies.uuid] -version = "0.8" +version = "1.0.0" features = [ "serde", "v4" ] [dev-dependencies] diff --git a/nexus/test-utils/Cargo.toml b/nexus/test-utils/Cargo.toml index 7b00088615a..8376c3fd31e 100644 --- a/nexus/test-utils/Cargo.toml +++ b/nexus/test-utils/Cargo.toml @@ -24,7 +24,7 @@ parse-display = "0.5.4" serde = { version = "1.0", features = [ "derive" ] } serde_json = "1.0" slog = { version = "2.7", features = [ "max_level_trace", "release_max_level_debug" ] } -uuid = { version = "0.8", features = [ "serde", "v4" ] } +uuid = { version = "1.0.0", features = [ "serde", "v4" ] } [build-dependencies] dropshot = { git = "https://github.com/oxidecomputer/dropshot", branch = "main", features = [ "usdt-probes" ] } diff --git a/oximeter-client/Cargo.toml b/oximeter-client/Cargo.toml index 0a7dfd23a42..ae5e67e6baa 100644 --- a/oximeter-client/Cargo.toml +++ b/oximeter-client/Cargo.toml @@ -24,5 +24,5 @@ version = "2.5" features = [ "max_level_trace", "release_max_level_debug" ] [dependencies.uuid] -version = "0.8" +version = "1.0.0" features = [ "serde", "v4" ] diff --git a/oximeter/collector/Cargo.toml b/oximeter/collector/Cargo.toml index 2c6d616da96..1dc1379b9e1 100644 --- a/oximeter/collector/Cargo.toml +++ b/oximeter/collector/Cargo.toml @@ -19,7 +19,7 @@ structopt = "0.3" thiserror = "1.0.31" tokio = "1.18" toml = "0.5.9" -uuid = { version = "0.8.2", features = [ "v4", "serde" ] } +uuid = { version = "1.0.0", features = [ "v4", "serde" ] } [dev-dependencies] expectorate = "1.0.5" diff --git a/oximeter/db/Cargo.toml b/oximeter/db/Cargo.toml index 6cf2bc67143..ebadd0de2a3 100644 --- a/oximeter/db/Cargo.toml +++ b/oximeter/db/Cargo.toml @@ -14,7 +14,7 @@ dropshot = { git = "https://github.com/oxidecomputer/dropshot", branch = "main", oximeter = { path = "../oximeter" } regex = "1.5.5" reqwest = { version = "0.11.8", features = [ "json" ] } -schemars = { version = "0.8.8", features = [ "uuid", "bytes", "chrono" ] } +schemars = { version = "0.8.10", features = [ "uuid1", "bytes", "chrono" ] } serde = { version = "1", features = [ "derive" ] } serde_json = "1.0.79" slog = { version = "2.5", features = [ "max_level_trace", "release_max_level_debug" ] } @@ -23,7 +23,7 @@ slog-term = "2.9" structopt = "0.3" thiserror = "1.0.31" tokio = { version = "1.18", features = [ "rt-multi-thread", "macros" ] } -uuid = { version = "0.8.2", features = [ "v4", "serde" ] } +uuid = { version = "1.0.0", features = [ "v4", "serde" ] } [dev-dependencies] itertools = "0.10.1" diff --git a/oximeter/instruments/Cargo.toml b/oximeter/instruments/Cargo.toml index ed172aa4385..3446cdd723f 100644 --- a/oximeter/instruments/Cargo.toml +++ b/oximeter/instruments/Cargo.toml @@ -10,7 +10,7 @@ dropshot = { git = "https://github.com/oxidecomputer/dropshot", branch = "main", futures = "0.3.21" oximeter = { path = "../oximeter" } http = { version = "0.2.7", optional = true } -uuid = { version = "0.8.2", features = [ "v4", "serde" ] } +uuid = { version = "1.0.0", features = [ "v4", "serde" ] } [features] default = ["http-instruments"] diff --git a/oximeter/oximeter/Cargo.toml b/oximeter/oximeter/Cargo.toml index 07b48e7aa88..c4d62add9f6 100644 --- a/oximeter/oximeter/Cargo.toml +++ b/oximeter/oximeter/Cargo.toml @@ -10,10 +10,10 @@ bytes = { version = "1.0.1", features = [ "serde" ] } chrono = { version = "0.4.19", features = [ "serde" ] } num-traits = "0.2.15" oximeter-macro-impl = { path = "../oximeter-macro-impl" } -schemars = { version = "0.8.8", features = [ "uuid", "bytes", "chrono" ] } +schemars = { version = "0.8.10", features = [ "uuid1", "bytes", "chrono" ] } serde = { version = "1", features = [ "derive" ] } thiserror = "1.0.31" -uuid = { version = "0.8.2", features = [ "v4", "serde" ] } +uuid = { version = "1.0.0", features = [ "v4", "serde" ] } [dev-dependencies] trybuild = "1.0.61" diff --git a/oximeter/producer/Cargo.toml b/oximeter/producer/Cargo.toml index 7fd036113c5..f1153a1946c 100644 --- a/oximeter/producer/Cargo.toml +++ b/oximeter/producer/Cargo.toml @@ -12,10 +12,10 @@ nexus-client = { path = "../../nexus-client" } omicron-common = { path = "../../common" } oximeter = { path = "../oximeter" } reqwest = { version = "0.11.8", features = [ "json" ] } -schemars = { version = "0.8.8", features = [ "uuid", "bytes", "chrono" ] } +schemars = { version = "0.8.10", features = [ "uuid1", "bytes", "chrono" ] } serde = { version = "1", features = [ "derive" ] } slog = { version = "2.5", features = [ "max_level_trace", "release_max_level_debug" ] } slog-dtrace = "0.2" tokio = "1.18" thiserror = "1.0.31" -uuid = { version = "0.8.2", features = [ "v4", "serde" ] } +uuid = { version = "1.0.0", features = [ "v4", "serde" ] } diff --git a/sled-agent-client/Cargo.toml b/sled-agent-client/Cargo.toml index da6a8bc9103..a1c3f62499a 100644 --- a/sled-agent-client/Cargo.toml +++ b/sled-agent-client/Cargo.toml @@ -25,5 +25,5 @@ version = "2.5" features = [ "max_level_trace", "release_max_level_debug" ] [dependencies.uuid] -version = "0.8" +version = "1.0.0" features = [ "serde", "v4" ] diff --git a/sled-agent/Cargo.toml b/sled-agent/Cargo.toml index b097c4e304d..779e53068a9 100644 --- a/sled-agent/Cargo.toml +++ b/sled-agent/Cargo.toml @@ -27,7 +27,7 @@ progenitor = { git = "https://github.com/oxidecomputer/progenitor" } propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "845c9cffc482739d417761aa1c668895f24b776d" } rand = { version = "0.8.5", features = ["getrandom"] } reqwest = { version = "0.11.8", default-features = false, features = ["rustls-tls", "stream"] } -schemars = { version = "0.8", features = [ "chrono", "uuid" ] } +schemars = { version = "0.8.10", features = [ "chrono", "uuid1" ] } serde = { version = "1.0", features = [ "derive" ] } serde_json = "1.0" sled-agent-client = { path = "../sled-agent-client" } @@ -43,7 +43,7 @@ thiserror = "1.0" tokio = { version = "1.18", features = [ "full" ] } tokio-util = { version = "0.7", features = ["codec"] } toml = "0.5.9" -uuid = { version = "0.8", features = [ "serde", "v4" ] } +uuid = { version = "1.0.0", features = [ "serde", "v4" ] } vsss-rs = { version = "2.0.0-pre2", default-features = false, features = ["std"] } zone = "0.1" diff --git a/test-utils/Cargo.toml b/test-utils/Cargo.toml index 98bf5559e95..d8979d5ebcd 100644 --- a/test-utils/Cargo.toml +++ b/test-utils/Cargo.toml @@ -34,7 +34,7 @@ features = [ "full" ] [dependencies.tokio-postgres] version = "0.7" -features = [ "with-chrono-0_4", "with-uuid-0_8" ] +features = [ "with-chrono-0_4", "with-uuid-1" ] [dev-dependencies] expectorate = "1.0.5" From e29226db782ce0adaef6b2b428599b097d3fd8d8 Mon Sep 17 00:00:00 2001 From: "Adam H. Leventhal" Date: Thu, 19 May 2022 10:02:25 -0700 Subject: [PATCH 2/3] use propolis and crucible branches --- Cargo.lock | 75 +++++++++++++++------------------- nexus/Cargo.toml | 7 +--- nexus/src/db/fixed_data/mod.rs | 2 +- sled-agent/Cargo.toml | 4 +- 4 files changed, 37 insertions(+), 51 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6b70560aaa2..9914d951768 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -733,7 +733,7 @@ dependencies = [ [[package]] name = "crucible" version = "0.0.1" -source = "git+https://github.com/oxidecomputer/crucible?rev=8ea317a9dfee65d7c018a1fda89fdec63a560ef3#8ea317a9dfee65d7c018a1fda89fdec63a560ef3" +source = "git+https://github.com/oxidecomputer/crucible?rev=57f0951793a74b31afd824bc3a0e5d89a41a540b#57f0951793a74b31afd824bc3a0e5d89a41a540b" dependencies = [ "aes-gcm-siv", "anyhow", @@ -759,14 +759,14 @@ dependencies = [ "toml", "tracing", "usdt", - "uuid 0.8.2", + "uuid", "version_check", ] [[package]] name = "crucible-agent-client" version = "0.0.1" -source = "git+https://github.com/oxidecomputer/crucible?rev=8ea317a9dfee65d7c018a1fda89fdec63a560ef3#8ea317a9dfee65d7c018a1fda89fdec63a560ef3" +source = "git+https://github.com/oxidecomputer/crucible?rev=57f0951793a74b31afd824bc3a0e5d89a41a540b#57f0951793a74b31afd824bc3a0e5d89a41a540b" dependencies = [ "anyhow", "chrono", @@ -781,7 +781,7 @@ dependencies = [ [[package]] name = "crucible-common" version = "0.0.0" -source = "git+https://github.com/oxidecomputer/crucible?rev=8ea317a9dfee65d7c018a1fda89fdec63a560ef3#8ea317a9dfee65d7c018a1fda89fdec63a560ef3" +source = "git+https://github.com/oxidecomputer/crucible?rev=57f0951793a74b31afd824bc3a0e5d89a41a540b#57f0951793a74b31afd824bc3a0e5d89a41a540b" dependencies = [ "anyhow", "rusqlite", @@ -793,13 +793,13 @@ dependencies = [ "tokio-rustls", "toml", "twox-hash", - "uuid 0.8.2", + "uuid", ] [[package]] name = "crucible-protocol" version = "0.0.0" -source = "git+https://github.com/oxidecomputer/crucible?rev=8ea317a9dfee65d7c018a1fda89fdec63a560ef3#8ea317a9dfee65d7c018a1fda89fdec63a560ef3" +source = "git+https://github.com/oxidecomputer/crucible?rev=57f0951793a74b31afd824bc3a0e5d89a41a540b#57f0951793a74b31afd824bc3a0e5d89a41a540b" dependencies = [ "anyhow", "bincode", @@ -807,13 +807,13 @@ dependencies = [ "crucible-common", "serde", "tokio-util 0.7.2", - "uuid 0.8.2", + "uuid", ] [[package]] name = "crucible-scope" version = "0.0.0" -source = "git+https://github.com/oxidecomputer/crucible?rev=8ea317a9dfee65d7c018a1fda89fdec63a560ef3#8ea317a9dfee65d7c018a1fda89fdec63a560ef3" +source = "git+https://github.com/oxidecomputer/crucible?rev=57f0951793a74b31afd824bc3a0e5d89a41a540b#57f0951793a74b31afd824bc3a0e5d89a41a540b" dependencies = [ "anyhow", "futures", @@ -999,19 +999,19 @@ dependencies = [ "pq-sys", "r2d2", "serde_json", - "uuid 1.0.0", + "uuid", ] [[package]] name = "diesel-dtrace" version = "0.1.0" -source = "git+https://github.com/oxidecomputer/diesel-dtrace?rev=bec89c2f2b01a79ae99b4db667bfcea5fb2fef04#bec89c2f2b01a79ae99b4db667bfcea5fb2fef04" +source = "git+https://github.com/oxidecomputer/diesel-dtrace#ce623dd6a2d59024a9330bc37e54426c4ccf9167" dependencies = [ "diesel", "lock_api", "serde", "usdt", - "uuid 0.8.2", + "uuid", ] [[package]] @@ -1156,7 +1156,7 @@ dependencies = [ "tokio-rustls", "toml", "usdt", - "uuid 1.0.0", + "uuid", "version_check", ] @@ -1607,7 +1607,7 @@ dependencies = [ "serde", "serde_json", "slog", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -1640,7 +1640,7 @@ dependencies = [ "tokio-stream", "tokio-tungstenite", "usdt", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -2495,7 +2495,7 @@ dependencies = [ "serde", "serde_json", "slog", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -2522,7 +2522,7 @@ dependencies = [ "serde_json", "slog", "tokio", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -2681,7 +2681,7 @@ dependencies = [ "thiserror", "tokio", "tokio-postgres", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -2728,7 +2728,7 @@ dependencies = [ "tokio", "tokio-tungstenite", "toml", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -2805,7 +2805,7 @@ dependencies = [ "toml", "tough", "usdt", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -2890,7 +2890,7 @@ dependencies = [ "tokio", "tokio-util 0.7.2", "toml", - "uuid 1.0.0", + "uuid", "vsss-rs", "zone", ] @@ -3088,7 +3088,7 @@ dependencies = [ "serde", "thiserror", "trybuild", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -3101,7 +3101,7 @@ dependencies = [ "reqwest", "serde", "slog", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -3127,7 +3127,7 @@ dependencies = [ "thiserror", "tokio", "toml", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -3154,7 +3154,7 @@ dependencies = [ "structopt", "thiserror", "tokio", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -3166,7 +3166,7 @@ dependencies = [ "futures", "http", "oximeter", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -3195,7 +3195,7 @@ dependencies = [ "slog-dtrace", "thiserror", "tokio", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -3543,7 +3543,7 @@ dependencies = [ "postgres-protocol", "serde", "serde_json", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -3725,7 +3725,7 @@ dependencies = [ [[package]] name = "propolis-client" version = "0.1.0" -source = "git+https://github.com/oxidecomputer/propolis?rev=845c9cffc482739d417761aa1c668895f24b776d#845c9cffc482739d417761aa1c668895f24b776d" +source = "git+https://github.com/oxidecomputer/propolis?rev=b75a0a60d8928632c158e6d433b586d55774c59a#b75a0a60d8928632c158e6d433b586d55774c59a" dependencies = [ "crucible", "reqwest", @@ -3736,7 +3736,7 @@ dependencies = [ "slog", "structopt", "thiserror", - "uuid 0.8.2", + "uuid", ] [[package]] @@ -4194,8 +4194,7 @@ dependencies = [ "schemars_derive", "serde", "serde_json", - "uuid 0.8.2", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -4587,7 +4586,7 @@ dependencies = [ "reqwest", "serde", "slog", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -4838,7 +4837,7 @@ dependencies = [ "slog", "thiserror", "tokio", - "uuid 1.0.0", + "uuid", ] [[package]] @@ -5747,16 +5746,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" -[[package]] -name = "uuid" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" -dependencies = [ - "getrandom", - "serde", -] - [[package]] name = "uuid" version = "1.0.0" diff --git a/nexus/Cargo.toml b/nexus/Cargo.toml index 4b6b41b9753..b6851fee617 100644 --- a/nexus/Cargo.toml +++ b/nexus/Cargo.toml @@ -15,8 +15,9 @@ authz-macros = { path = "src/authz/authz-macros" } base64 = "0.13.0" bb8 = "0.8.0" cookie = "0.16" -crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "8ea317a9dfee65d7c018a1fda89fdec63a560ef3" } +crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "57f0951793a74b31afd824bc3a0e5d89a41a540b" } diesel = { version = "2.0.0-rc.0", features = ["postgres", "r2d2", "chrono", "serde_json", "network-address", "uuid"] } +diesel-dtrace = { git = "https://github.com/oxidecomputer/diesel-dtrace" } fatfs = "0.3.5" futures = "0.3.21" headers = "0.3.7" @@ -60,10 +61,6 @@ path = "../api_identity" version = "0.4" features = [ "serde" ] -[dependencies.diesel-dtrace] -git = "https://github.com/oxidecomputer/diesel-dtrace" -rev = "bec89c2f2b01a79ae99b4db667bfcea5fb2fef04" - [dependencies.dropshot] git = "https://github.com/oxidecomputer/dropshot" branch = "main" diff --git a/nexus/src/db/fixed_data/mod.rs b/nexus/src/db/fixed_data/mod.rs index ce145e6e116..5d01dbe481e 100644 --- a/nexus/src/db/fixed_data/mod.rs +++ b/nexus/src/db/fixed_data/mod.rs @@ -51,7 +51,7 @@ fn assert_valid_uuid(id: &uuid::Uuid) { }; match id.get_variant() { - Some(uuid::Variant::RFC4122) => (), + uuid::Variant::RFC4122 => (), _ => panic!("unexpected variant in uuid: {:?}", id), }; } diff --git a/sled-agent/Cargo.toml b/sled-agent/Cargo.toml index 779e53068a9..dd8495bcb6a 100644 --- a/sled-agent/Cargo.toml +++ b/sled-agent/Cargo.toml @@ -13,7 +13,7 @@ bytes = "1.1" cfg-if = "1.0" chrono = { version = "0.4", features = [ "serde" ] } # Only used by the simulated sled agent. -crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "8ea317a9dfee65d7c018a1fda89fdec63a560ef3" } +crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "57f0951793a74b31afd824bc3a0e5d89a41a540b" } dropshot = { git = "https://github.com/oxidecomputer/dropshot", branch = "main", features = [ "usdt-probes" ] } futures = "0.3.21" ipnetwork = "0.18" @@ -24,7 +24,7 @@ omicron-common = { path = "../common" } p256 = "0.9.0" percent-encoding = "2.1.0" progenitor = { git = "https://github.com/oxidecomputer/progenitor" } -propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "845c9cffc482739d417761aa1c668895f24b776d" } +propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "b75a0a60d8928632c158e6d433b586d55774c59a" } rand = { version = "0.8.5", features = ["getrandom"] } reqwest = { version = "0.11.8", default-features = false, features = ["rustls-tls", "stream"] } schemars = { version = "0.8.10", features = [ "chrono", "uuid1" ] } From 307bbe66398fcc5a87639bfef76e46cf1b0043cc Mon Sep 17 00:00:00 2001 From: "Adam H. Leventhal" Date: Thu, 19 May 2022 11:10:09 -0700 Subject: [PATCH 3/3] update openapi documents for default handling changes --- openapi/nexus.json | 5 +++++ openapi/sled-agent.json | 1 + 2 files changed, 6 insertions(+) diff --git a/openapi/nexus.json b/openapi/nexus.json index 3aa0f2b3025..ce865b0946f 100644 --- a/openapi/nexus.json +++ b/openapi/nexus.json @@ -6136,6 +6136,7 @@ }, "disks": { "description": "The disks to be created or attached for this instance.", + "default": [], "type": "array", "items": { "$ref": "#/components/schemas/InstanceDiskAttachment" @@ -6155,6 +6156,9 @@ }, "network_interfaces": { "description": "The network interfaces to be created for this instance.", + "default": { + "type": "default" + }, "allOf": [ { "$ref": "#/components/schemas/InstanceNetworkInterfaceAttachment" @@ -6163,6 +6167,7 @@ }, "user_data": { "description": "User data for instance initialization systems (such as cloud-init). Must be a Base64-encoded string, as specified in RFC 4648 ยง 4 (+ and / characters with padding). Maximum 32 KiB unencoded data.", + "default": "", "type": "string" } }, diff --git a/openapi/sled-agent.json b/openapi/sled-agent.json index da8cf5769f8..7cb0eb5dd3b 100644 --- a/openapi/sled-agent.json +++ b/openapi/sled-agent.json @@ -969,6 +969,7 @@ } }, "gz_addresses": { + "default": [], "type": "array", "items": { "type": "string",