Files
greptimedb/tests-integration/Cargo.toml
T
Ning Sun af52dfafd8 chore(deps): upgrade sqlx to 0.9 to pick up webpki-roots 1.0.10 (#9862)
sqlx 0.8 pins the unmaintained webpki-roots 0.26 line for its rustls
trust store, which still contains the recently compromised e-Tugra CA
root. Upgrading sqlx to 0.9 switches its dependency to webpki-roots
1.x, and the lockfile now resolves to 1.0.10 where the distrusted
root has been removed from the compiled-in Mozilla trust store.

sqlx 0.9 requires dynamic SQL strings to be explicitly audited via
the new SqlSafeStr trait: only &'static str literals are accepted
as-is. All affected call sites (MySQL KV backend, MySQL election,
integration tests and fuzz targets) now wrap their internally
generated SQL templates in AssertSqlSafe; the wrapped SQL is built
from operator config or test-local identifiers only, and dynamic
data keeps flowing through bind parameters.

The mysql-rsa feature is enabled alongside mysql to preserve 0.8
authentication behavior: sqlx 0.9 gates non-TLS RSA password auth
(caching_sha2_password / sha256_password) behind it.

Signed-off-by: Ning Sun <sunning@greptime.com>
2026-10-22 07:27:19 +00:00

135 lines
3.6 KiB
TOML

[package]
name = "tests-integration"
version.workspace = true
edition.workspace = true
license.workspace = true
autotests = false
[[test]]
name = "main"
path = "tests/main.rs"
[features]
dashboard = ["servers/dashboard"]
enterprise = ["frontend/enterprise", "meta-srv/enterprise", "common-meta/enterprise"]
[lints]
workspace = true
[dependencies]
api.workspace = true
arrow-flight.workspace = true
async-trait.workspace = true
auth.workspace = true
axum.workspace = true
cache.workspace = true
catalog.workspace = true
client.workspace = true
cmd.workspace = true
common-base.workspace = true
common-catalog.workspace = true
common-config.workspace = true
common-datasource.workspace = true
common-error.workspace = true
common-event-recorder.workspace = true
common-grpc.workspace = true
common-meta.workspace = true
common-procedure.workspace = true
common-query.workspace = true
common-recordbatch.workspace = true
common-runtime.workspace = true
common-telemetry.workspace = true
common-test-util.workspace = true
common-time.workspace = true
common-wal.workspace = true
datanode = { workspace = true }
datatypes.workspace = true
dotenv.workspace = true
flow.workspace = true
frontend.workspace = true
futures.workspace = true
futures-util.workspace = true
http.workspace = true
hyper-util = { workspace = true, features = ["tokio"] }
meta-client.workspace = true
meta-srv = { workspace = true, features = ["mock"] }
mito2.workspace = true
object-store.workspace = true
operator.workspace = true
pipeline.workspace = true
prost.workspace = true
query.workspace = true
rand.workspace = true
serde_json.workspace = true
servers.workspace = true
session.workspace = true
sql.workspace = true
standalone.workspace = true
store-api.workspace = true
substrait.workspace = true
table.workspace = true
tempfile.workspace = true
tokio.workspace = true
tokio-stream = { workspace = true, features = ["net"] }
tonic.workspace = true
tower.workspace = true
uuid.workspace = true
[dev-dependencies]
base64.workspace = true
catalog = { workspace = true, features = ["testing"] }
chrono.workspace = true
clap.workspace = true
cli.workspace = true
client = { workspace = true, features = ["testing"] }
common-frontend.workspace = true
common-memory-manager.workspace = true
common-meta = { workspace = true, features = ["testing"] }
common-options.workspace = true
common-procedure-test.workspace = true
common-wal = { workspace = true, features = ["testing"] }
datafusion.workspace = true
datafusion-expr.workspace = true
either.workspace = true
flate2 = "1.0"
frontend = { workspace = true, features = ["testing"] }
hex.workspace = true
http.workspace = true
itertools.workspace = true
jsonb.workspace = true
log-query.workspace = true
loki-proto.workspace = true
mito2 = { workspace = true, features = ["test", "test-shared-fs-region-migration"] }
mysql_async = { version = "0.37", default-features = false, features = [
"time",
"default-rustls-ring",
] }
opentelemetry-proto.workspace = true
operator = { workspace = true, features = ["testing"] }
otel-arrow-rust.workspace = true
paste.workspace = true
plugins.workspace = true
prost.workspace = true
rand.workspace = true
rskafka.workspace = true
rstest.workspace = true
rstest_reuse.workspace = true
sea-query.workspace = true
servers = { workspace = true, features = ["testing"] }
similar-asserts.workspace = true
sqlx = { workspace = true, features = [
"mysql",
"mysql-rsa",
"postgres",
"chrono",
] }
store-api.workspace = true
temp-env.workspace = true
time = "0.3"
tokio-postgres = { workspace = true }
tokio-util.workspace = true
url = "2.3"
urlencoding = "2.1"
yaml-rust = "0.4"
zstd.workspace = true