| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| [package] |
| name = "arrow-flight" |
| description = "Apache Arrow Flight" |
| version = { workspace = true } |
| edition = { workspace = true } |
| rust-version = "1.70.0" |
| authors = { workspace = true } |
| homepage = { workspace = true } |
| repository = { workspace = true } |
| license = { workspace = true } |
| |
| [dependencies] |
| arrow-arith = { workspace = true, optional = true } |
| arrow-array = { workspace = true } |
| arrow-buffer = { workspace = true } |
| # Cast is needed to work around https://github.com/apache/arrow-rs/issues/3389 |
| arrow-cast = { workspace = true } |
| arrow-data = { workspace = true, optional = true } |
| arrow-ipc = { workspace = true } |
| arrow-ord = { workspace = true, optional = true } |
| arrow-row = { workspace = true, optional = true } |
| arrow-select = { workspace = true, optional = true } |
| arrow-schema = { workspace = true } |
| arrow-string = { workspace = true, optional = true } |
| base64 = { version = "0.21", default-features = false, features = ["std"] } |
| bytes = { version = "1", default-features = false } |
| futures = { version = "0.3", default-features = false, features = ["alloc"] } |
| once_cell = { version = "1", optional = true } |
| paste = { version = "1.0" } |
| prost = { version = "0.12.1", default-features = false, features = ["prost-derive"] } |
| tokio = { version = "1.0", default-features = false, features = ["macros", "rt", "rt-multi-thread"] } |
| tonic = { version = "0.10.0", default-features = false, features = ["transport", "codegen", "prost"] } |
| |
| # CLI-related dependencies |
| anyhow = { version = "1.0", optional = true } |
| clap = { version = "4.4.6", default-features = false, features = ["std", "derive", "env", "help", "error-context", "usage", "wrap_help", "color", "suggestions"], optional = true } |
| tracing-log = { version = "0.2", optional = true } |
| tracing-subscriber = { version = "0.3.1", default-features = false, features = ["ansi", "env-filter", "fmt"], optional = true } |
| |
| [package.metadata.docs.rs] |
| all-features = true |
| |
| [features] |
| default = [] |
| flight-sql-experimental = ["arrow-arith", "arrow-data", "arrow-ord", "arrow-row", "arrow-select", "arrow-string", "once_cell"] |
| tls = ["tonic/tls"] |
| |
| # Enable CLI tools |
| cli = ["anyhow", "arrow-cast/prettyprint", "clap", "tracing-log", "tracing-subscriber", "tonic/tls-webpki-roots"] |
| |
| [dev-dependencies] |
| arrow-cast = { workspace = true, features = ["prettyprint"] } |
| assert_cmd = "2.0.8" |
| http = "0.2.9" |
| http-body = "0.4.5" |
| pin-project-lite = "0.2" |
| tempfile = "3.3" |
| tokio-stream = { version = "0.1", features = ["net"] } |
| tower = "0.4.13" |
| |
| [[example]] |
| name = "flight_sql_server" |
| required-features = ["flight-sql-experimental", "tls"] |
| |
| [[bin]] |
| name = "flight_sql_client" |
| required-features = ["cli", "flight-sql-experimental", "tls"] |
| |
| [[test]] |
| name = "flight_sql_client_cli" |
| path = "tests/flight_sql_client_cli.rs" |
| required-features = ["cli", "flight-sql-experimental", "tls"] |