Skip to content

Commit

Permalink
treewide: Upgrade dependencies
Browse files Browse the repository at this point in the history
This commit upgrades many of our dependencies to newer versions. Note
that this was not just the result of a `cargo update` invocation; I used
the `cargo-edit` tool to automate the process of upgrading crate
versions in our Cargo.toml (I also ran `cargo update` afterwards for
good measure). The code changes in this commit reflect breaking API
changes in the new package versions.

Change-Id: Ib15333b66c6bba2e3eb4a302ea85c3a03ab0acf5
  • Loading branch information
ethowitz committed May 4, 2024
1 parent 37470e5 commit 1ec7d26
Show file tree
Hide file tree
Showing 12 changed files with 1,203 additions and 1,113 deletions.
2,059 changes: 1,064 additions & 995 deletions Cargo.lock

Large diffs are not rendered by default.

166 changes: 83 additions & 83 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ members = [
resolver = "2"

[workspace.dependencies]
clap = "4.3"
clap = "4.5"
consulrs = { git = "https://github.com/readysettech/consulrs.git", branch = "allow-disabling-rustls-tls-2" }
criterion = "0.5"
eui48 = { git = "https://github.com/readysettech/eui48.git", branch = "master", default-features = false }
Expand All @@ -74,18 +74,18 @@ postgres-native-tls = { git = "https://github.com/readysettech/rust-postgres.gi
postgres-protocol = { git = "https://github.com/readysettech/rust-postgres.git"}
postgres-types = { git = "https://github.com/readysettech/rust-postgres.git"}
tokio-postgres = { git = "https://github.com/readysettech/rust-postgres.git"}
tokio = { version = "1.32", features = ["full"] }
tokio-test = { version = "0.4.3" }
tokio = { version = "1.37", features = ["full"] }
tokio-test = { version = "0.4.4" }
rocksdb = { git = "https://github.com/readysettech/rust-rocksdb.git", default-features = false, features = ["lz4", "jemalloc"] }
metrics-exporter-prometheus = { git = "https://github.com/readysettech/metrics.git" }
metrics = { git = "https://github.com/readysettech/metrics.git" }
metrics-util = { git = "https://github.com/readysettech/metrics.git" }
ahash = "0.7"
anyhow = "1.0.42"
ahash = "0.8"
anyhow = "1.0.82"
assert_approx_eq = "1.1.0"
assert_unordered = "0.3"
async-bincode = "0.6.1"
async-stream = "0.3.2"
async-bincode = "0.6.2"
async-stream = "0.3.5"
async-trait = "0.1"
atomic-counter = "1.0.1"
backoff = "0.4.0"
Expand All @@ -94,156 +94,156 @@ bimap = "0.6.3"
bincode = "1.3.3"
bit-vec = "0.6"
blake2 = "0.10"
bufstream = "0.1.3"
byteorder = "1.0.0"
bytes = "1.0.1"
chashmap = "2.1.0"
chrono = "0.4.19"
bufstream = "0.1.4"
byteorder = "1.5.0"
bytes = "1.6.0"
chashmap = "2.2.2"
chrono = "0.4.38"
chrono-tz = "0.8.6"
cidr = "0.2.1"
cloudflare-zlib = "0.2.9"
console = "0.15.5"
cidr = "0.2.2"
cloudflare-zlib = "0.2.10"
console = "0.15.8"
const-str = "0.5"
crossbeam-skiplist = "0.1.1"
csv = "1.2"
crossbeam-skiplist = "0.1.3"
csv = "1.3"
dashmap = "4.0.2"
deadpool-postgres = "0.10.3"
deadpool-postgres = "0.10.5"
derive_builder = "0.11.2"
derive_more = "0.99.17"
diff = "0.1.10"
diff = "0.1.13"
enum-display-derive = "0.1.1"
enum-kinds = "0.5.1"
enum_dispatch = "0.3.13"
envy = "0.4"
fail = "0.5.0"
fail = "0.5.1"
fallible-iterator = "0.2.0"
fixedbitset = { version = "0.2.0", default-features = false }
futures = "0.3.21"
futures-core = "0.3.14"
futures-executor = "0.3.14"
futures-sink = "0.3.14"
futures-util = "0.3.14"
futures = "0.3.30"
futures-core = "0.3.30"
futures-executor = "0.3.30"
futures-sink = "0.3.30"
futures-util = "0.3.30"
fxhash = "0.2.1"
getrandom = "0.2.2"
growable-bloom-filter = "2.0.1"
hashbag = "0.1.2"
hdrhistogram = "7.4"
getrandom = "0.2.14"
growable-bloom-filter = "2.1.0"
hashbag = "0.1.12"
hdrhistogram = "7.5"
hex = "0.4.3"
hmac = "0.12.1"
humantime = "2.1"
hyper = "0.14.10"
hyper = "0.14.28"
include_dir = "0.6.2"
indexmap = { version = "1.9.2", default-features = false }
indexmap = { version = "1.9.3", default-features = false }
indicatif = "0.17"
indoc = "1.0.3"
iter-enum = "1.1.1"
itertools = "0.10.4"
indoc = "1.0.9"
iter-enum = "1.1.3"
itertools = "0.10.5"
lazy_static = "1.4.0"
left-right = "0.11"
libc = "0.2"
lru = "0.12.0"
lru = "0.12.3"
machine-uid = "0.2"
md5 = "0.7.0"
mysql = "25"
mysql_common = "0.32"
native-tls = "0.2.8"
ndarray = "0.15.4"
nom = "7.1.1"
nom_locate = "4.0.0"
native-tls = "0.2.11"
ndarray = "0.15.6"
nom = "7.1.3"
nom_locate = "4.2.0"
notify = "6.1.1"
num-integer = "0.1.44"
num-integer = "0.1.46"
num_cpus = "1.16.0"
opentelemetry = "0.21.0"
opentelemetry-otlp = "0.14.0"
opentelemetry-semantic-conventions = "0.13"
opentelemetry_sdk = "0.21.2"
parking_lot = "0.12.0"
paste = "1.0.5"
parking_lot = "0.12.1"
paste = "1.0.14"
petgraph = "0.5"
pin-project = "1.0"
pin-project = "1.1"
pprof = "0.13"
pratt = "0.3.0"
pretty_assertions = "1.4.0"
prettytable = "0.10.0"
proc-macro2 = "1"
prometheus-parse = "0.2.2"
proptest = "1.0.0"
prometheus-parse = "0.2.5"
proptest = "1.4.0"
quanta = { version = "0.11", default-features = false }
querystring = "1.1.0"
quote = "1.0.8"
quote = "1.0.36"
rand = "0.8.5"
rand_distr = "0.4"
rand_regex = "0.15.1"
redis = "0.23.3"
regex = "1.8.4"
reqwest = "0.11.20"
regex = "1.10.4"
reqwest = "0.11.27"
rlimit = "0.10.1"
rmp-serde = "1.1.2"
rmp-serde = "1.2.0"
rust_decimal = "1.26"
rusty-fork = "0.3.0"
rustyline = "11.0"
rustyline-derive = "0.6.0"
scopeguard = "1.1.0"
serde = "1.0.137"
scopeguard = "1.2.0"
serde = "1.0.198"
serde_bytes = "0.11"
serde_derive = "1.0.8"
serde_json = "1.0.89"
serde_stacker = "0.1.7"
serde_with = "1.12"
serde_with_macros = "2.0.0"
serde_derive = "1.0.198"
serde_json = "1.0.116"
serde_stacker = "0.1.11"
serde_with = "1.14"
serde_with_macros = "2.3.3"
serde_yaml = "0.8"
serial_test = "0.5.1"
sha-1 = "0.10.0"
sha-1 = "0.10.1"
sha1 = "0.10"
sha2 = "0.10.6"
slab = "0.4.2"
slotmap = "1.0.6"
smallvec = { version = "1.9.0", default-features = false }
sha2 = "0.10.8"
slab = "0.4.9"
slotmap = "1.0.7"
smallvec = { version = "1.13.2", default-features = false }
socket2 = "0.4"
sqlformat = "0.2.1"
sqlformat = "0.2.3"
sqlparser = "0.41.0"
strawpoll = "0.2.2"
strawpoll = "0.2.3"
streaming-iterator = "0.1"
stringprep = "0.1.2"
stringprep = "0.1.4"
structopt = "0.2"
strum = "0.23"
strum_macros = "0.23"
syn = { version = "1.0.57", default-features = false }
syn = { version = "1.0.109", default-features = false }
temp-dir = "0.1"
tempfile = "3.8.1"
test-strategy = "0.2.0"
tempfile = "3.10.1"
test-strategy = "0.2.1"
textwrap = "0.14"
thiserror = "1.0.31"
tikv-jemalloc-ctl = "0.5.0"
tikv-jemalloc-sys = "0.5.0"
tikv-jemallocator = "0.5.0"
thiserror = "1.0.59"
tikv-jemalloc-ctl = "0.5.4"
tikv-jemalloc-sys = "0.5.4"
tikv-jemallocator = "0.5.4"
time = "0.3"
timekeeper = { version = "0.3.2", default-features = false }
tokio-native-tls = "0.3.1"
tokio-retry = "0.3"
tokio-scoped = "0.2.0"
tokio-stream = "0.1.5"
tokio-stream = "0.1.15"
tokio-tower = "0.5.1"
tokio-util = "0.6.6"
tokio-util = "0.6.10"
toml = "0.5"
tower = "0.4.6"
tower-layer = "0.3.1"
tower-service = "0.3.1"
tower = "0.4.13"
tower-layer = "0.3.2"
tower-service = "0.3.2"
tracing = "0.1.40"
tracing-appender = "0.2.3"
tracing-attributes = "0.1.27"
tracing-futures = "0.2.5"
tracing-opentelemetry = "0.22.0"
tracing-subscriber = "0.3.9"
tracing-subscriber = "0.3.18"
triomphe = "0.1"
tuple = "0.5.1"
url = "2.2.2"
tuple = "0.5.2"
url = "2.5.0"
uuid = "0.8"
vec1 = "1.8.0"
vec_map = "0.8.0"
vec1 = "1.12.0"
vec_map = "0.8.2"
vmemcached = "0.5.0"
walkdir = "2.3.2"
zipf = "7.0.0"
walkdir = "2.5.0"
zipf = "7.0.1"

[profile.release]
debug=true
Expand Down
4 changes: 2 additions & 2 deletions proptest-stateful/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ edition = "2021"
# versions here to ensure that the crate is usable outside of the context of
# our repo.
async-trait = "0.1"
proptest = "1.0.0"
proptest = "1.4.0"
rand = "0.8.5"
tokio = { version = "1.32", features = ["full"] }
tokio = { version = "1.37", features = ["full"] }

4 changes: 3 additions & 1 deletion psql-srv/src/codec/decoder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1183,7 +1183,9 @@ mod tests {

#[test]
fn test_decode_binary_timestamp() {
let dt = NaiveDateTime::from_timestamp_opt(1_000_000_000, 42_000_000).unwrap();
let dt = DateTime::from_timestamp(1_000_000_000, 42_000_000)
.unwrap()
.naive_utc();
let mut buf = BytesMut::new();
buf.put_i32(8); // size
dt.to_sql(&Type::TIMESTAMP, &mut buf).unwrap(); // value
Expand Down
6 changes: 4 additions & 2 deletions psql-srv/src/codec/encoder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -701,7 +701,7 @@ mod tests {

use bit_vec::BitVec;
use bytes::{BufMut, BytesMut};
use chrono::{FixedOffset, NaiveDate, NaiveDateTime, NaiveTime, TimeZone};
use chrono::{DateTime, FixedOffset, NaiveDate, NaiveDateTime, NaiveTime, TimeZone};
use eui48::MacAddress;
use postgres::SimpleQueryRow;
use postgres_protocol::message::backend::DataRowBody;
Expand Down Expand Up @@ -1403,7 +1403,9 @@ mod tests {

#[test]
fn test_encode_binary_timestamp() {
let dt = NaiveDateTime::from_timestamp_opt(1_000_000_000, 42_000_000).unwrap();
let dt = DateTime::from_timestamp(1_000_000_000, 42_000_000)
.unwrap()
.naive_utc();
let mut buf = BytesMut::new();
put_binary_value(PsqlValue::Timestamp(dt), &mut buf).unwrap();
let mut exp = BytesMut::new();
Expand Down
13 changes: 7 additions & 6 deletions readyset-client/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,8 @@ pub const CONNECTION_FROM_BASE: u8 = 1;
/// connection is *not* originating from a base table domain.
pub const CONNECTION_FROM_DOMAIN: u8 = 2;

use std::hash::{BuildHasher, Hash, Hasher};

use nom_sql::Relation;
use readyset_tracing::propagation::Instrumented;
use replication_offset::ReplicationOffset;
Expand Down Expand Up @@ -435,8 +437,8 @@ pub fn shard_by(dt: &DfValue, shards: usize) -> usize {
DfValue::Int(n) => n as usize % shards,
DfValue::UnsignedInt(n) => n as usize % shards,
DfValue::Text(..) | DfValue::TinyText(..) | DfValue::TimestampTz(_) => {
use std::hash::Hasher;
let mut hasher = ahash::AHasher::new_with_keys(0x3306, 0x6033);
let mut hasher =
ahash::RandomState::with_seeds(0x3306, 0x6033, 0x5432, 0x6034).build_hasher();
// this unwrap should be safe because there are no error paths with a Text, TinyText,
// nor Timestamp converting to Text
#[allow(clippy::unwrap_used)]
Expand All @@ -459,10 +461,9 @@ pub fn shard_by(dt: &DfValue, shards: usize) -> usize {
| DfValue::BitVector(_)
| DfValue::Array(_)
| DfValue::PassThrough(_) => {
use std::hash::{Hash, Hasher};
let mut hasher = ahash::AHasher::new_with_keys(0x3306, 0x6033);
dt.hash(&mut hasher);
hasher.finish() as usize % shards
let hash = ahash::RandomState::with_seeds(0x3306, 0x6033, 0x5432, 0x6034).hash_one(dt);

hash as usize % shards
}
}
}
5 changes: 3 additions & 2 deletions readyset-common/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -117,14 +117,15 @@ mod tests {
fn data_type_mem_size() {
use std::mem::{size_of, size_of_val};

use chrono::NaiveDateTime;
use chrono::DateTime;

let s = "this needs to be longer than 14 chars to make it be a Text";
let txt: DfValue = DfValue::from(s);
let shrt = DfValue::Int(5);
let time = DfValue::TimestampTz(
NaiveDateTime::from_timestamp_opt(0, 42_000_000)
DateTime::from_timestamp(0, 42_000_000)
.unwrap()
.naive_utc()
.into(),
);

Expand Down
11 changes: 8 additions & 3 deletions readyset-data/benches/serde.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,15 @@ fn serde(c: &mut Criterion) {

let timestamp_tz = DfValue::from(chrono::TimeZone::from_utc_datetime(
&chrono::FixedOffset::west_opt(18_000).unwrap(),
&chrono::NaiveDateTime::from_timestamp_opt(0, 42_000_000).unwrap(),
&chrono::DateTime::from_timestamp(0, 42_000_000)
.unwrap()
.naive_utc(),
));
let timestamp =
DfValue::from(chrono::NaiveDateTime::from_timestamp_opt(0, 42_000_000).unwrap());
let timestamp = DfValue::from(
chrono::DateTime::from_timestamp(0, 42_000_000)
.unwrap()
.naive_utc(),
);

let time: DfValue = MySqlTime::from_hmsus(false, 10, 30, 24, 100).into();

Expand Down
Loading

0 comments on commit 1ec7d26

Please sign in to comment.