summary refs log tree commit diff
diff options
context:
space:
mode:
authorfigsoda <figsoda@pm.me>2021-10-07 19:14:24 -0400
committerfigsoda <figsoda@pm.me>2021-10-07 21:36:05 -0400
commit02dcd88d27d747703d4ca3e3f8d105611d55b362 (patch)
tree71249a8c746e9c8a817dea6972a93b024d0c8f48
parent82b780a5b6024279a2a503994fb453c8da8b33b4 (diff)
downloadnixpkgs-02dcd88d27d747703d4ca3e3f8d105611d55b362.tar
nixpkgs-02dcd88d27d747703d4ca3e3f8d105611d55b362.tar.gz
nixpkgs-02dcd88d27d747703d4ca3e3f8d105611d55b362.tar.bz2
nixpkgs-02dcd88d27d747703d4ca3e3f8d105611d55b362.tar.lz
nixpkgs-02dcd88d27d747703d4ca3e3f8d105611d55b362.tar.xz
nixpkgs-02dcd88d27d747703d4ca3e3f8d105611d55b362.tar.zst
nixpkgs-02dcd88d27d747703d4ca3e3f8d105611d55b362.zip
diesel-cli: clean up
-rw-r--r--pkgs/development/tools/diesel-cli/cargo-lock.patch1497
-rw-r--r--pkgs/development/tools/diesel-cli/default.nix76
-rw-r--r--pkgs/development/tools/diesel-cli/fix-deprecated.patch10
-rwxr-xr-xpkgs/development/tools/diesel-cli/update-cargo-lock.sh19
4 files changed, 38 insertions, 1564 deletions
diff --git a/pkgs/development/tools/diesel-cli/cargo-lock.patch b/pkgs/development/tools/diesel-cli/cargo-lock.patch
deleted file mode 100644
index aefc40c8493..00000000000
--- a/pkgs/development/tools/diesel-cli/cargo-lock.patch
+++ /dev/null
@@ -1,1497 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-new file mode 100644
-index 0000000..c4a129e
---- /dev/null
-+++ b/Cargo.lock
-@@ -0,0 +1,1491 @@
-+# This file is automatically @generated by Cargo.
-+# It is not intended for manual editing.
-+version = 3
-+
-+[[package]]
-+name = "addr2line"
-+version = "0.14.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a55f82cfe485775d02112886f4169bde0c5894d75e79ead7eafe7e40a25e45f7"
-+dependencies = [
-+ "gimli",
-+]
-+
-+[[package]]
-+name = "adler"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-+
-+[[package]]
-+name = "advanced-blog-cli"
-+version = "0.1.0"
-+dependencies = [
-+ "assert_matches",
-+ "bcrypt",
-+ "chrono",
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+ "lazy_static",
-+ "structopt",
-+ "structopt-derive",
-+ "tempfile 2.2.0",
-+]
-+
-+[[package]]
-+name = "aho-corasick"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ca972c2ea5f742bfce5687b9aef75506a764f61d37f8f649047846a9686ddb66"
-+dependencies = [
-+ "memchr 0.1.11",
-+]
-+
-+[[package]]
-+name = "aho-corasick"
-+version = "0.6.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5"
-+dependencies = [
-+ "memchr 2.3.4",
-+]
-+
-+[[package]]
-+name = "all_about_inserts"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+]
-+
-+[[package]]
-+name = "all_about_inserts_mysql"
-+version = "0.1.0"
-+dependencies = [
-+ "chrono",
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+]
-+
-+[[package]]
-+name = "all_about_inserts_sqlite"
-+version = "0.1.0"
-+dependencies = [
-+ "chrono",
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "serde",
-+ "serde_derive",
-+ "serde_json",
-+]
-+
-+[[package]]
-+name = "all_about_updates"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ansi_term"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-+dependencies = [
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "assert_matches"
-+version = "1.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9"
-+
-+[[package]]
-+name = "atty"
-+version = "0.2.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-+dependencies = [
-+ "hermit-abi",
-+ "libc",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "autocfg"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
-+
-+[[package]]
-+name = "autocfg"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
-+
-+[[package]]
-+name = "backtrace"
-+version = "0.3.56"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9d117600f438b1707d4e4ae15d3595657288f8235a0eb593e80ecc98ab34e1bc"
-+dependencies = [
-+ "addr2line",
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "miniz_oxide",
-+ "object",
-+ "rustc-demangle",
-+]
-+
-+[[package]]
-+name = "barrel"
-+version = "0.6.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9d67c978b1322c8031145b1f6c236fc371292f52c565bc96018b2971afcbffe1"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempfile 3.2.0",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
-+dependencies = [
-+ "byteorder",
-+]
-+
-+[[package]]
-+name = "bcrypt"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d27c1ac8b4a79e27fc37d00060f152ebc59c95a7cfc946943d177d6799c19184"
-+dependencies = [
-+ "base64",
-+ "blowfish",
-+ "byteorder",
-+ "lazy_static",
-+ "rand 0.6.5",
-+]
-+
-+[[package]]
-+name = "bigdecimal"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1374191e2dd25f9ae02e3aa95041ed5d747fc77b3c102b49fe2dd9a8117a6244"
-+dependencies = [
-+ "num-bigint",
-+ "num-integer",
-+ "num-traits",
-+]
-+
-+[[package]]
-+name = "bitflags"
-+version = "1.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-+
-+[[package]]
-+name = "block-cipher-trait"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774"
-+dependencies = [
-+ "generic-array",
-+]
-+
-+[[package]]
-+name = "blowfish"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6aeb80d00f2688459b8542068abd974cfb101e7a82182414a99b5026c0d85cc3"
-+dependencies = [
-+ "block-cipher-trait",
-+ "byteorder",
-+ "opaque-debug",
-+]
-+
-+[[package]]
-+name = "byteorder"
-+version = "1.4.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-+
-+[[package]]
-+name = "cc"
-+version = "1.0.67"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e3c69b077ad434294d3ce9f1f6143a2a4b89a8a2d54ef813d85003a4fd1137fd"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "0.1.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-+
-+[[package]]
-+name = "chrono"
-+version = "0.4.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
-+dependencies = [
-+ "libc",
-+ "num-integer",
-+ "num-traits",
-+ "time",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "clap"
-+version = "2.33.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
-+dependencies = [
-+ "ansi_term",
-+ "atty",
-+ "bitflags",
-+ "strsim",
-+ "textwrap",
-+ "unicode-width",
-+ "vec_map",
-+]
-+
-+[[package]]
-+name = "cloudabi"
-+version = "0.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
-+dependencies = [
-+ "bitflags",
-+]
-+
-+[[package]]
-+name = "derive-error-chain"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3c9ca9ade651388daad7c993f005d0d20c4f6fe78c1cdc93e95f161c6f5ede4a"
-+dependencies = [
-+ "quote 0.3.15",
-+ "syn 0.11.11",
-+]
-+
-+[[package]]
-+name = "diesel"
-+version = "1.4.6"
-+dependencies = [
-+ "bigdecimal",
-+ "bitflags",
-+ "byteorder",
-+ "cfg-if 0.1.10",
-+ "chrono",
-+ "diesel_derives 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+ "ipnetwork",
-+ "libc",
-+ "libsqlite3-sys",
-+ "mysqlclient-sys",
-+ "num-bigint",
-+ "num-integer",
-+ "num-traits",
-+ "pq-sys",
-+ "quickcheck",
-+ "r2d2",
-+ "serde_json",
-+ "tempdir",
-+ "time",
-+ "url",
-+ "uuid 0.6.5",
-+ "uuid 0.8.2",
-+]
-+
-+[[package]]
-+name = "diesel"
-+version = "1.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "047bfc4d5c3bd2ef6ca6f981941046113524b9a9f9a7cbdfdd7ff40f58e6f542"
-+replace = "diesel 1.4.6"
-+
-+[[package]]
-+name = "diesel_cli"
-+version = "1.4.1"
-+dependencies = [
-+ "barrel",
-+ "chrono",
-+ "clap",
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "difference",
-+ "dotenv",
-+ "libsqlite3-sys",
-+ "migrations_internals 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex 0.2.11",
-+ "serde",
-+ "tempdir",
-+ "tempfile 3.2.0",
-+ "toml",
-+ "url",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_1_mysql"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_1_pg"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_1_sqlite"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_2_mysql"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_2_pg"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_2_sqlite"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_3_mysql"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_3_pg"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_demo_step_3_sqlite"
-+version = "0.1.0"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+]
-+
-+[[package]]
-+name = "diesel_derives"
-+version = "1.4.1"
-+dependencies = [
-+ "cfg-if 0.1.10",
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+ "proc-macro2",
-+ "quote 1.0.9",
-+ "syn 1.0.67",
-+]
-+
-+[[package]]
-+name = "diesel_derives"
-+version = "1.4.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3"
-+replace = "diesel_derives 1.4.1"
-+
-+[[package]]
-+name = "diesel_infer_schema"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7bea70d0798a3d8489e1d5493bb2111a1ab2da434191b9e9605f167c01a20680"
-+dependencies = [
-+ "infer_schema_macros",
-+]
-+
-+[[package]]
-+name = "diesel_migrations"
-+version = "1.4.0"
-+dependencies = [
-+ "cfg-if 0.1.10",
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+ "migrations_internals 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "migrations_macros 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "diesel_migrations"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c"
-+replace = "diesel_migrations 1.4.0"
-+
-+[[package]]
-+name = "diesel_tests"
-+version = "0.1.0"
-+dependencies = [
-+ "assert_matches",
-+ "bigdecimal",
-+ "chrono",
-+ "diesel 1.4.6",
-+ "diesel_infer_schema",
-+ "diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dotenv",
-+ "ipnetwork",
-+ "quickcheck",
-+ "serde_json",
-+ "uuid 0.8.2",
-+]
-+
-+[[package]]
-+name = "difference"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b3304d19798a8e067e48d8e69b2c37f0b5e9b4e462504ad9e27e9f3fce02bba8"
-+
-+[[package]]
-+name = "dotenv"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d6f0e2bb24d163428d8031d3ebd2d2bd903ad933205a97d0f18c7c1aade380f3"
-+dependencies = [
-+ "derive-error-chain",
-+ "error-chain",
-+ "regex 0.2.11",
-+]
-+
-+[[package]]
-+name = "env_logger"
-+version = "0.3.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "15abd780e45b3ea4f76b4e9a26ff4843258dd8a3eed2775a0e7368c2e7936c2f"
-+dependencies = [
-+ "log 0.3.9",
-+ "regex 0.1.80",
-+]
-+
-+[[package]]
-+name = "error-chain"
-+version = "0.10.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8"
-+dependencies = [
-+ "backtrace",
-+]
-+
-+[[package]]
-+name = "fuchsia-cprng"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-+
-+[[package]]
-+name = "generic-array"
-+version = "0.12.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd"
-+dependencies = [
-+ "typenum",
-+]
-+
-+[[package]]
-+name = "getrandom"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "wasi",
-+]
-+
-+[[package]]
-+name = "gimli"
-+version = "0.23.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f6503fe142514ca4799d4c26297c4248239fe8838d827db6bd6065c6ed29a6ce"
-+
-+[[package]]
-+name = "hermit-abi"
-+version = "0.1.18"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "idna"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
-+dependencies = [
-+ "matches",
-+ "unicode-bidi",
-+ "unicode-normalization",
-+]
-+
-+[[package]]
-+name = "infer_schema_internals"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "90e390df38a4e5cb4337a76db5b736f239e08f3ab7e8e42a34548617f0113f64"
-+dependencies = [
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "infer_schema_macros"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "07b667b471ef99645989ceea451be288b6e669eeb8951d3f0fbd310677588ac6"
-+dependencies = [
-+ "dotenv",
-+ "infer_schema_internals",
-+ "quote 0.3.15",
-+ "syn 0.11.11",
-+]
-+
-+[[package]]
-+name = "instant"
-+version = "0.1.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+]
-+
-+[[package]]
-+name = "ipnetwork"
-+version = "0.17.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "02c3eaab3ac0ede60ffa41add21970a7df7d91772c03383aac6c2c3d53cc716b"
-+dependencies = [
-+ "serde",
-+]
-+
-+[[package]]
-+name = "itoa"
-+version = "0.4.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736"
-+
-+[[package]]
-+name = "kernel32-sys"
-+version = "0.2.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
-+dependencies = [
-+ "winapi 0.2.8",
-+ "winapi-build",
-+]
-+
-+[[package]]
-+name = "lazy_static"
-+version = "1.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-+
-+[[package]]
-+name = "libc"
-+version = "0.2.91"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8916b1f6ca17130ec6568feccee27c156ad12037880833a3b842a823236502e7"
-+
-+[[package]]
-+name = "libsqlite3-sys"
-+version = "0.20.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "64d31059f22935e6c31830db5249ba2b7ecd54fd73a9909286f0a67aa55c2fbd"
-+dependencies = [
-+ "cc",
-+ "pkg-config",
-+ "vcpkg",
-+]
-+
-+[[package]]
-+name = "lock_api"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dd96ffd135b2fd7b973ac026d28085defbe8983df057ced3eb4f2130b0831312"
-+dependencies = [
-+ "scopeguard",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
-+dependencies = [
-+ "log 0.4.14",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.4.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+]
-+
-+[[package]]
-+name = "matches"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
-+
-+[[package]]
-+name = "memchr"
-+version = "0.1.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d8b629fb514376c675b98c1421e80b151d3817ac42d7c667717d282761418d20"
-+dependencies = [
-+ "libc",
-+]
-+
-+[[package]]
-+name = "memchr"
-+version = "2.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
-+
-+[[package]]
-+name = "migrations_internals"
-+version = "1.4.1"
-+dependencies = [
-+ "barrel",
-+ "diesel 1.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempdir",
-+]
-+
-+[[package]]
-+name = "migrations_internals"
-+version = "1.4.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2b4fc84e4af020b837029e017966f86a1c2d5e83e64b589963d5047525995860"
-+replace = "migrations_internals 1.4.1"
-+
-+[[package]]
-+name = "migrations_macros"
-+version = "1.4.2"
-+dependencies = [
-+ "migrations_internals 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2",
-+ "quote 1.0.9",
-+ "syn 1.0.67",
-+ "tempdir",
-+]
-+
-+[[package]]
-+name = "migrations_macros"
-+version = "1.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9753f12909fd8d923f75ae5c3258cae1ed3c8ec052e1b38c93c21a6d157f789c"
-+replace = "migrations_macros 1.4.2"
-+
-+[[package]]
-+name = "miniz_oxide"
-+version = "0.4.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
-+dependencies = [
-+ "adler",
-+ "autocfg 1.0.1",
-+]
-+
-+[[package]]
-+name = "mysqlclient-sys"
-+version = "0.2.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7e9637d93448044078aaafea7419aed69d301b4a12bcc4aa0ae856eb169bef85"
-+dependencies = [
-+ "pkg-config",
-+ "vcpkg",
-+]
-+
-+[[package]]
-+name = "num-bigint"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304"
-+dependencies = [
-+ "autocfg 1.0.1",
-+ "num-integer",
-+ "num-traits",
-+]
-+
-+[[package]]
-+name = "num-integer"
-+version = "0.1.44"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
-+dependencies = [
-+ "autocfg 1.0.1",
-+ "num-traits",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.2.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
-+dependencies = [
-+ "autocfg 1.0.1",
-+]
-+
-+[[package]]
-+name = "object"
-+version = "0.23.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a9a7ab5d64814df0fe4a4b5ead45ed6c5f181ee3ff04ba344313a6c80446c5d4"
-+
-+[[package]]
-+name = "opaque-debug"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
-+
-+[[package]]
-+name = "parking_lot"
-+version = "0.11.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
-+dependencies = [
-+ "instant",
-+ "lock_api",
-+ "parking_lot_core",
-+]
-+
-+[[package]]
-+name = "parking_lot_core"
-+version = "0.8.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "instant",
-+ "libc",
-+ "redox_syscall 0.2.5",
-+ "smallvec",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "percent-encoding"
-+version = "1.0.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
-+
-+[[package]]
-+name = "pkg-config"
-+version = "0.3.19"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
-+
-+[[package]]
-+name = "ppv-lite86"
-+version = "0.2.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"
-+
-+[[package]]
-+name = "pq-sys"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6ac25eee5a0582f45a67e837e350d784e7003bd29a5f460796772061ca49ffda"
-+dependencies = [
-+ "vcpkg",
-+]
-+
-+[[package]]
-+name = "proc-macro2"
-+version = "1.0.24"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71"
-+dependencies = [
-+ "unicode-xid 0.2.1",
-+]
-+
-+[[package]]
-+name = "quickcheck"
-+version = "0.4.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "02c2411d418cea2364325b18a205664f9ef8252e06b2e911db97c0b0d98b1406"
-+dependencies = [
-+ "env_logger",
-+ "log 0.3.9",
-+ "rand 0.3.23",
-+]
-+
-+[[package]]
-+name = "quote"
-+version = "0.3.15"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
-+
-+[[package]]
-+name = "quote"
-+version = "1.0.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
-+dependencies = [
-+ "proc-macro2",
-+]
-+
-+[[package]]
-+name = "r2d2"
-+version = "0.8.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "545c5bc2b880973c9c10e4067418407a0ccaa3091781d1671d46eb35107cb26f"
-+dependencies = [
-+ "log 0.4.14",
-+ "parking_lot",
-+ "scheduled-thread-pool",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.3.23"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c"
-+dependencies = [
-+ "libc",
-+ "rand 0.4.6",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
-+dependencies = [
-+ "fuchsia-cprng",
-+ "libc",
-+ "rand_core 0.3.1",
-+ "rdrand",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.6.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "libc",
-+ "rand_chacha 0.1.1",
-+ "rand_core 0.4.2",
-+ "rand_hc 0.1.0",
-+ "rand_isaac",
-+ "rand_jitter",
-+ "rand_os",
-+ "rand_pcg",
-+ "rand_xorshift",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.8.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e"
-+dependencies = [
-+ "libc",
-+ "rand_chacha 0.3.0",
-+ "rand_core 0.6.2",
-+ "rand_hc 0.3.0",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
-+dependencies = [
-+ "ppv-lite86",
-+ "rand_core 0.6.2",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-+dependencies = [
-+ "rand_core 0.4.2",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.4.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.6.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7"
-+dependencies = [
-+ "getrandom",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
-+dependencies = [
-+ "rand_core 0.6.2",
-+]
-+
-+[[package]]
-+name = "rand_isaac"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rand_jitter"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
-+dependencies = [
-+ "libc",
-+ "rand_core 0.4.2",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "rand_os"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
-+dependencies = [
-+ "cloudabi",
-+ "fuchsia-cprng",
-+ "libc",
-+ "rand_core 0.4.2",
-+ "rdrand",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "rand_pcg"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
-+dependencies = [
-+ "autocfg 0.1.7",
-+ "rand_core 0.4.2",
-+]
-+
-+[[package]]
-+name = "rand_xorshift"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "rdrand"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
-+dependencies = [
-+ "rand_core 0.3.1",
-+]
-+
-+[[package]]
-+name = "redox_syscall"
-+version = "0.1.57"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
-+
-+[[package]]
-+name = "redox_syscall"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9"
-+dependencies = [
-+ "bitflags",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "0.1.80"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4fd4ace6a8cf7860714a2c2280d6c1f7e6a413486c13298bbc86fd3da019402f"
-+dependencies = [
-+ "aho-corasick 0.5.3",
-+ "memchr 0.1.11",
-+ "regex-syntax 0.3.9",
-+ "thread_local 0.2.7",
-+ "utf8-ranges 0.1.3",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "0.2.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384"
-+dependencies = [
-+ "aho-corasick 0.6.10",
-+ "memchr 2.3.4",
-+ "regex-syntax 0.5.6",
-+ "thread_local 0.3.6",
-+ "utf8-ranges 1.0.4",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f9ec002c35e86791825ed294b50008eea9ddfc8def4420124fbc6b08db834957"
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.5.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7"
-+dependencies = [
-+ "ucd-util",
-+]
-+
-+[[package]]
-+name = "remove_dir_all"
-+version = "0.5.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
-+dependencies = [
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "rustc-demangle"
-+version = "0.1.18"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6e3bad0ee36814ca07d7968269dd4b7ec89ec2da10c4bb613928d3077083c232"
-+
-+[[package]]
-+name = "ryu"
-+version = "1.0.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
-+
-+[[package]]
-+name = "scheduled-thread-pool"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dc6f74fd1204073fa02d5d5d68bec8021be4c38690b61264b2fdb48083d0e7d7"
-+dependencies = [
-+ "parking_lot",
-+]
-+
-+[[package]]
-+name = "scopeguard"
-+version = "1.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-+
-+[[package]]
-+name = "serde"
-+version = "1.0.125"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "558dc50e1a5a5fa7112ca2ce4effcb321b0300c0d4ccf0776a9f60cd89031171"
-+dependencies = [
-+ "serde_derive",
-+]
-+
-+[[package]]
-+name = "serde_derive"
-+version = "1.0.125"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b093b7a2bb58203b5da3056c05b4ec1fed827dcfdb37347a8841695263b3d06d"
-+dependencies = [
-+ "proc-macro2",
-+ "quote 1.0.9",
-+ "syn 1.0.67",
-+]
-+
-+[[package]]
-+name = "serde_json"
-+version = "1.0.64"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79"
-+dependencies = [
-+ "itoa",
-+ "ryu",
-+ "serde",
-+]
-+
-+[[package]]
-+name = "smallvec"
-+version = "1.6.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e"
-+
-+[[package]]
-+name = "strsim"
-+version = "0.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-+
-+[[package]]
-+name = "structopt"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "783cb22d520b177a3772e520d04a3c7970d51c3b647ba80739f99be01131b54f"
-+dependencies = [
-+ "clap",
-+]
-+
-+[[package]]
-+name = "structopt-derive"
-+version = "0.1.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "4da119c9a7a1eccb7c6de0c1eb3f7ed1c11138624d092b3687222aeed8f1375c"
-+dependencies = [
-+ "quote 0.3.15",
-+ "syn 0.11.11",
-+]
-+
-+[[package]]
-+name = "syn"
-+version = "0.11.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
-+dependencies = [
-+ "quote 0.3.15",
-+ "synom",
-+ "unicode-xid 0.0.4",
-+]
-+
-+[[package]]
-+name = "syn"
-+version = "1.0.67"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "6498a9efc342871f91cc2d0d694c674368b4ceb40f62b65a7a08c3792935e702"
-+dependencies = [
-+ "proc-macro2",
-+ "quote 1.0.9",
-+ "unicode-xid 0.2.1",
-+]
-+
-+[[package]]
-+name = "synom"
-+version = "0.11.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
-+dependencies = [
-+ "unicode-xid 0.0.4",
-+]
-+
-+[[package]]
-+name = "tempdir"
-+version = "0.3.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
-+dependencies = [
-+ "rand 0.4.6",
-+ "remove_dir_all",
-+]
-+
-+[[package]]
-+name = "tempfile"
-+version = "2.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "11ce2fe9db64b842314052e2421ac61a73ce41b898dc8e3750398b219c5fc1e0"
-+dependencies = [
-+ "kernel32-sys",
-+ "libc",
-+ "rand 0.3.23",
-+ "redox_syscall 0.1.57",
-+ "winapi 0.2.8",
-+]
-+
-+[[package]]
-+name = "tempfile"
-+version = "3.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
-+dependencies = [
-+ "cfg-if 1.0.0",
-+ "libc",
-+ "rand 0.8.3",
-+ "redox_syscall 0.2.5",
-+ "remove_dir_all",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "textwrap"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-+dependencies = [
-+ "unicode-width",
-+]
-+
-+[[package]]
-+name = "thread-id"
-+version = "2.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a9539db560102d1cef46b8b78ce737ff0bb64e7e18d35b2a5688f7d097d0ff03"
-+dependencies = [
-+ "kernel32-sys",
-+ "libc",
-+]
-+
-+[[package]]
-+name = "thread_local"
-+version = "0.2.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8576dbbfcaef9641452d5cf0df9b0e7eeab7694956dd33bb61515fb8f18cfdd5"
-+dependencies = [
-+ "thread-id",
-+]
-+
-+[[package]]
-+name = "thread_local"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
-+dependencies = [
-+ "lazy_static",
-+]
-+
-+[[package]]
-+name = "time"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
-+dependencies = [
-+ "libc",
-+ "winapi 0.3.9",
-+]
-+
-+[[package]]
-+name = "tinyvec"
-+version = "1.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "317cca572a0e89c3ce0ca1f1bdc9369547fe318a683418e42ac8f59d14701023"
-+dependencies = [
-+ "tinyvec_macros",
-+]
-+
-+[[package]]
-+name = "tinyvec_macros"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
-+
-+[[package]]
-+name = "toml"
-+version = "0.4.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f"
-+dependencies = [
-+ "serde",
-+]
-+
-+[[package]]
-+name = "typenum"
-+version = "1.13.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "879f6906492a7cd215bfa4cf595b600146ccfac0c79bcbd1f3000162af5e8b06"
-+
-+[[package]]
-+name = "ucd-util"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c85f514e095d348c279b1e5cd76795082cf15bd59b93207832abe0b1d8fed236"
-+
-+[[package]]
-+name = "unicode-bidi"
-+version = "0.3.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
-+dependencies = [
-+ "matches",
-+]
-+
-+[[package]]
-+name = "unicode-normalization"
-+version = "0.1.17"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "07fbfce1c8a97d547e8b5334978438d9d6ec8c20e38f56d4a4374d181493eaef"
-+dependencies = [
-+ "tinyvec",
-+]
-+
-+[[package]]
-+name = "unicode-width"
-+version = "0.1.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
-+
-+[[package]]
-+name = "url"
-+version = "1.7.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
-+dependencies = [
-+ "idna",
-+ "matches",
-+ "percent-encoding",
-+]
-+
-+[[package]]
-+name = "utf8-ranges"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "a1ca13c08c41c9c3e04224ed9ff80461d97e121589ff27c753a16cb10830ae0f"
-+
-+[[package]]
-+name = "utf8-ranges"
-+version = "1.0.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b4ae116fef2b7fea257ed6440d3cfcff7f190865f170cdad00bb6465bf18ecba"
-+
-+[[package]]
-+name = "uuid"
-+version = "0.6.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e1436e58182935dcd9ce0add9ea0b558e8a87befe01c1a301e6020aeb0876363"
-+dependencies = [
-+ "cfg-if 0.1.10",
-+]
-+
-+[[package]]
-+name = "uuid"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
-+
-+[[package]]
-+name = "vcpkg"
-+version = "0.2.11"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "b00bca6106a5e23f3eee943593759b7fcddb00554332e856d990c893966879fb"
-+
-+[[package]]
-+name = "vec_map"
-+version = "0.8.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-+
-+[[package]]
-+name = "wasi"
-+version = "0.10.2+wasi-snapshot-preview1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
-+
-+[[package]]
-+name = "winapi"
-+version = "0.2.8"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
-+
-+[[package]]
-+name = "winapi"
-+version = "0.3.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-+dependencies = [
-+ "winapi-i686-pc-windows-gnu",
-+ "winapi-x86_64-pc-windows-gnu",
-+]
-+
-+[[package]]
-+name = "winapi-build"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
-+
-+[[package]]
-+name = "winapi-i686-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-+
-+[[package]]
-+name = "winapi-x86_64-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
diff --git a/pkgs/development/tools/diesel-cli/default.nix b/pkgs/development/tools/diesel-cli/default.nix
index a2c1af2607d..211993d2d7e 100644
--- a/pkgs/development/tools/diesel-cli/default.nix
+++ b/pkgs/development/tools/diesel-cli/default.nix
@@ -1,7 +1,19 @@
-{ stdenv, lib, rustPlatform, fetchFromGitHub, openssl, pkg-config, Security
-, sqliteSupport ? true, sqlite
-, postgresqlSupport ? true, postgresql
-, mysqlSupport ? true, mariadb, zlib, libiconv
+{ lib
+, sqliteSupport ? true
+, postgresqlSupport ? true
+, mysqlSupport ? true
+, rustPlatform
+, fetchCrate
+, installShellFiles
+, pkg-config
+, openssl
+, stdenv
+, Security
+, libiconv
+, sqlite
+, postgresql
+, mariadb
+, zlib
 }:
 
 assert lib.assertMsg (sqliteSupport == true || postgresqlSupport == true || mysqlSupport == true)
@@ -18,37 +30,16 @@ rustPlatform.buildRustPackage rec {
   pname = "diesel-cli";
   version = "1.4.1";
 
-  src = fetchFromGitHub {
-    owner = "diesel-rs";
-    repo = "diesel";
-    # diesel and diesel_cli are independently versioned. diesel_cli
-    # 1.4.1 first became available in diesel 1.4.5, but we can use
-    # a newer diesel tag.
-    rev = "v1.4.6";
-    sha256 = "0c8a2f250mllzpr20j7j0msbf2csjf9dj8g7j6cl04ifdg7gwb9z";
+  src = fetchCrate {
+    inherit version;
+    crateName = "diesel_cli";
+    sha256 = "sha256-mRdDc4fHMkwkszY+2l8z1RSNMEQnrWI5/Y0Y2W+guQE=";
   };
 
-  patches = [
-    # Fixes:
-    #    Compiling diesel v1.4.6 (/build/source/diesel)
-    # error: this `#[deprecated]` annotation has no effect
-    #    --> diesel/src/query_builder/insert_statement/mod.rs:205:1
-    #     |
-    # 205 | / #[deprecated(
-    # 206 | |     since = "1.2.0",
-    # 207 | |     note = "Use `<&'a [U] as Insertable<T>>::Values` instead"
-    # 208 | | )]
-    #     | |__^ help: remove the unnecessary deprecation attribute
-    #     |
-    #     = note: `#[deny(useless_deprecated)]` on by default
-    ./fix-deprecated.patch
-  ];
-
   cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
-  cargoPatches = [ ./cargo-lock.patch ];
-  cargoSha256 = "060r90dvdi0s5v3kjagsrrdb4arzzbkin8v5563rdpv0sq1pi3bm";
+  cargoSha256 = "sha256-sQ762Ss31sA5qALHzwkvwbfRXo00cCtqzQyoz3/zf6I=";
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ installShellFiles pkg-config ];
 
   buildInputs = [ openssl ]
     ++ optional stdenv.isDarwin Security
@@ -57,15 +48,23 @@ rustPlatform.buildRustPackage rec {
     ++ optional postgresqlSupport postgresql
     ++ optionals mysqlSupport [ mariadb zlib ];
 
-  buildAndTestSubdir = "diesel_cli";
-
-  checkPhase = optionalString sqliteSupport ''
-    (cd diesel_cli && cargo check --features sqlite)
+  checkPhase = ''
+    runHook preCheck
+  '' + optionalString sqliteSupport ''
+    cargo check --features sqlite
+  '' + optionalString postgresqlSupport ''
+    cargo check --features postgres
+  '' + optionalString mysqlSupport ''
+    cargo check --features mysql
+  '' + ''
+    runHook postCheck
   '';
 
-  doInstallCheck = true;
-  installCheckPhase = ''
-    $out/bin/diesel --version
+  postInstall = ''
+    installShellCompletion --cmd diesel \
+      --bash <($out/bin/diesel completions bash) \
+      --fish <($out/bin/diesel completions fish) \
+      --zsh <($out/bin/diesel completions zsh)
   '';
 
   # Fix the build with mariadb, which otherwise shows "error adding symbols:
@@ -77,5 +76,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/diesel-rs/diesel/tree/master/diesel_cli";
     license = with licenses; [ mit asl20 ];
     maintainers = with maintainers; [ ];
+    mainProgram = "diesel";
   };
 }
diff --git a/pkgs/development/tools/diesel-cli/fix-deprecated.patch b/pkgs/development/tools/diesel-cli/fix-deprecated.patch
deleted file mode 100644
index 3f50990979f..00000000000
--- a/pkgs/development/tools/diesel-cli/fix-deprecated.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff --git a/diesel/src/query_builder/insert_statement/mod.rs b/diesel/src/query_builder/insert_statement/mod.rs
-index b6bb34df9d..7486eb7a59 100644
---- a/diesel/src/query_builder/insert_statement/mod.rs
-+++ b/diesel/src/query_builder/insert_statement/mod.rs
-@@ -1,3 +1,5 @@
-+#![allow(useless_deprecated)]
-+
- mod column_list;
- mod insert_from_select;
- 
diff --git a/pkgs/development/tools/diesel-cli/update-cargo-lock.sh b/pkgs/development/tools/diesel-cli/update-cargo-lock.sh
deleted file mode 100755
index bd2e033e687..00000000000
--- a/pkgs/development/tools/diesel-cli/update-cargo-lock.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/sh
-
-# This updates cargo-lock.patch for the diesel version listed in default.nix.
-
-set -eu -o verbose
-
-here=$PWD
-version=$(cat default.nix | grep '^  version = "' | cut -d '"' -f 2)
-checkout=$(mktemp -d)
-git clone -b "v$version" --depth=1 https://github.com/diesel-rs/diesel "$checkout"
-cd "$checkout"
-
-rm -f rust-toolchain
-cargo generate-lockfile
-git add -f Cargo.lock
-git diff HEAD -- Cargo.lock > "$here"/cargo-lock.patch
-
-cd "$here"
-rm -rf "$checkout"