[package]
edition = "2024"
name = "helios-sof"
version = "0.1.41"
authors = ["Helios Software"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "This crate provides a complete implementation of the SQL-on-FHIR specification for Rust, enabling the transformation of FHIR resources into tabular data using declarative ViewDefinitions. It supports all major FHIR versions (R4, R4B, R5, R6) through a version-agnostic abstraction layer."
homepage = "https://github.com/HeliosSoftware/hfs/tree/main/crates/sof"
readme = "README.md"
keywords = [
"helios-software",
"hl7",
"fhir",
"helios-fhir-server",
"sql-on-fhir",
]
license = "MIT"
repository = "https://github.com/HeliosSoftware/hfs"
resolver = "2"
[package.metadata.docs.rs]
features = ["R4"]
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
R4 = [
"helios-fhir/R4",
"helios-fhirpath/R4",
]
R4B = [
"helios-fhir/R4B",
"helios-fhirpath/R4B",
]
R5 = [
"helios-fhir/R5",
"helios-fhirpath/R5",
]
R6 = [
"helios-fhir/R6",
"helios-fhirpath/R6",
]
default = ["R4"]
[lib]
name = "helios_sof"
path = "src/lib.rs"
[[bin]]
name = "sof-cli"
path = "src/cli.rs"
[[bin]]
name = "sof-server"
path = "src/server.rs"
[[test]]
name = "debug_boolean_test"
path = "tests/debug_boolean_test.rs"
[[test]]
name = "debug_column_ordering"
path = "tests/debug_column_ordering.rs"
[[test]]
name = "debug_datetime_instant_constants"
path = "tests/debug_datetime_instant_constants.rs"
[[test]]
name = "debug_datetime_type_info"
path = "tests/debug_datetime_type_info.rs"
[[test]]
name = "debug_enum_conversion"
path = "tests/debug_enum_conversion.rs"
[[test]]
name = "debug_evaluation_result_conversion"
path = "tests/debug_evaluation_result_conversion.rs"
[[test]]
name = "debug_extension_function"
path = "tests/debug_extension_function.rs"
[[test]]
name = "debug_extension_macro_fix"
path = "tests/debug_extension_macro_fix.rs"
[[test]]
name = "debug_extension_simple"
path = "tests/debug_extension_simple.rs"
[[test]]
name = "debug_fhir_resource_structure"
path = "tests/debug_fhir_resource_structure.rs"
[[test]]
name = "debug_foreach_combinations"
path = "tests/debug_foreach_combinations.rs"
[[test]]
name = "debug_inequality"
path = "tests/debug_inequality.rs"
[[test]]
name = "debug_instant_constant"
path = "tests/debug_instant_constant.rs"
[[test]]
name = "debug_instant_type_info"
path = "tests/debug_instant_type_info.rs"
[[test]]
name = "debug_raw_resource"
path = "tests/debug_raw_resource.rs"
[[test]]
name = "debug_reference_key_types"
path = "tests/debug_reference_key_types.rs"
[[test]]
name = "extension_debug_test"
path = "tests/extension_debug_test.rs"
[[test]]
name = "foreach_test"
path = "tests/foreach_test.rs"
[[test]]
name = "multiselect_test"
path = "tests/multiselect_test.rs"
[[test]]
name = "run_foreach_tests"
path = "tests/run_foreach_tests.rs"
[[test]]
name = "server_tests"
path = "tests/server_tests.rs"
[[test]]
name = "sql_on_fhir_tests"
path = "tests/sql_on_fhir_tests.rs"
[[test]]
name = "test_base64_binary_constant"
path = "tests/test_base64_binary_constant.rs"
[[test]]
name = "test_boolean_constant_debug"
path = "tests/test_boolean_constant_debug.rs"
[[test]]
name = "test_boolean_constant_debug2"
path = "tests/test_boolean_constant_debug2.rs"
[[test]]
name = "test_boolean_constant_debug3"
path = "tests/test_boolean_constant_debug3.rs"
[[test]]
name = "test_boolean_validation"
path = "tests/test_boolean_validation.rs"
[[test]]
name = "test_chunked_processing"
path = "tests/test_chunked_processing.rs"
[[test]]
name = "test_cli_file_source"
path = "tests/test_cli_file_source.rs"
[[test]]
name = "test_csv_quote_handling"
path = "tests/test_csv_quote_handling.rs"
[[test]]
name = "test_extension_fix_verification"
path = "tests/test_extension_fix_verification.rs"
[[test]]
name = "test_extension_value_access"
path = "tests/test_extension_value_access.rs"
[[test]]
name = "test_format_parameter_body"
path = "tests/test_format_parameter_body.rs"
[[test]]
name = "test_header_parameter_body"
path = "tests/test_header_parameter_body.rs"
[[test]]
name = "test_limit_parameter_body"
path = "tests/test_limit_parameter_body.rs"
[[test]]
name = "test_ndjson_input"
path = "tests/test_ndjson_input.rs"
[[test]]
name = "test_parallel_working"
path = "tests/test_parallel_working.rs"
[[test]]
name = "test_parameter_validation"
path = "tests/test_parameter_validation.rs"
[[test]]
name = "test_parquet_export"
path = "tests/test_parquet_export.rs"
[[test]]
name = "test_parquet_large_dataset"
path = "tests/test_parquet_large_dataset.rs"
[[test]]
name = "test_parquet_server_options"
path = "tests/test_parquet_server_options.rs"
[[test]]
name = "test_patient_reference_formats"
path = "tests/test_patient_reference_formats.rs"
[[test]]
name = "test_query_parameter_combinations"
path = "tests/test_query_parameter_combinations.rs"
[[test]]
name = "test_run_operation_parameters"
path = "tests/test_run_operation_parameters.rs"
[[test]]
name = "test_runner_integration"
path = "tests/test_runner_integration.rs"
[[test]]
name = "test_shortened_format_names"
path = "tests/test_shortened_format_names.rs"
[[test]]
name = "test_where_clause_validation"
path = "tests/test_where_clause_validation.rs"
[[test]]
name = "test_x_ndjson_support"
path = "tests/test_x_ndjson_support.rs"
[[bench]]
name = "parallel_processing_bench"
path = "benches/parallel_processing_bench.rs"
harness = false
[dependencies.anyhow]
version = "1.0"
[dependencies.arc-swap]
version = "1.6"
[dependencies.arrow]
version = "54.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.8"
features = [
"json",
"query",
]
[dependencies.bytes]
version = "1.5"
[dependencies.chrono]
version = "0.4"
features = [
"serde",
"serde",
]
[dependencies.clap]
version = "4.0"
features = [
"derive",
"env",
]
[dependencies.csv]
version = "1.3"
[dependencies.futures]
version = "0.3"
[dependencies.helios-fhir]
version = "0.1.41"
[dependencies.helios-fhirpath]
version = "0.1.41"
[dependencies.helios-fhirpath-support]
version = "0.1.41"
[dependencies.http]
version = "1.0"
[dependencies.mime]
version = "0.3"
[dependencies.object_store]
version = "0.11"
features = [
"aws",
"gcp",
"azure",
]
[dependencies.parking_lot]
version = "0.12"
[dependencies.parquet]
version = "54.0"
[dependencies.rayon]
version = "1.8"
[dependencies.reqwest]
version = "0.12"
features = ["json"]
[dependencies.serde]
version = "=1.0.220"
features = ["derive"]
[dependencies.serde_json]
version = "=1.0.143"
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1.0"
features = ["full"]
[dependencies.tokio-stream]
version = "0.1"
[dependencies.tower]
version = "0.5"
features = ["full"]
[dependencies.tower-http]
version = "0.6"
features = [
"cors",
"trace",
"timeout",
]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.url]
version = "2.5"
[dependencies.zip]
version = "2.2"
[dev-dependencies.axum-test]
version = "18.0"
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.tempfile]
version = "3.8"