1#![doc(html_root_url = "https://docs.rs/rbt-datalake/0.7.0")]
37
38pub mod core;
39pub mod engine;
40pub mod json;
41pub mod materializer;
42pub mod measure;
43pub mod scan;
44pub mod testing;
45
46pub use core::{
49 apply_scope_to_frontmatter, bronze_fingerprint, effective_contract_version, expand_braced_vars,
50 model_has_test_contract, parse_logical_dtype, parse_select_spec, resolve_scan_path,
51 scan_path_exists, BronzeCheckMode, BronzeDiagnostic, BronzeValidationReport, ColumnMeta,
52 DependencyRef, DiagnosticSeverity, IcebergConfig, IcebergWriteMode, Materialization,
53 MaterializeConfig, MaterializeMode, ModelDag, ModelLayer, ModelNode, ModelRunResult,
54 ModelTests, OnMissing, OutputFormat, PathGlobSet, RbtProjectConfig, RbtTemplateEngine,
55 RefBackend, RefStrategy, RelationshipTest, RunReceipt, RunScope, RunStatus, ScanConfig,
56 SelectMode, SelectToken, SourceFormat, SqlModelParser, StagingFrontmatter,
57 DEFAULT_MAX_ROW_GROUP_BYTES,
58 DEFAULT_MAX_ROW_GROUP_ROWS, DEFAULT_MEMTABLE_MAX_ROWS, DEFAULT_PROTOBUF_MAX_PAYLOAD_BYTES,
59};
60
61pub use engine::{
62 register_bronze_for_model, register_bronze_for_model_scoped, register_bronze_sources_for_dag,
63 register_bronze_sources_for_dag_scoped, BronzeRegistrationMode, BronzeSourceMeta,
64 BronzeTableProvider, DagExecutionSummary, PreviewResult, RbtEngineBuilder,
65 TransformationEngine,
66};
67pub use engine::udf::{register_builtin_udfs, register_scalar_udf, BUILTIN_UDF_NAMES};
68
69pub use materializer::{
70 clear_incremental_parts, incremental_ref_path, materialize_incremental_append_stream,
71 materialize_stream, new_wap_run_id, sibling_iceberg_dir, stamp_batch, verify_iceberg_catalog_table,
72 wap_publish, write_iceberg_catalog_batches, write_iceberg_fs_table, write_parquet_stream,
73 IcebergCatalogOptions, IcebergCatalogWriteStats, LineageStamp, MaterializeWriteOptions,
74 MultiFormatWriter, StreamWriteStats, WapAuditLog, WapMaterializer, WapModelPaths, WapPhase,
75 WapStatus,
76};
77pub use scan::parts::{is_parts_directory, list_part_files, PartsManifest};
78pub use measure::{
79 default_report_path, list_scenarios, run_measure_scenario, write_measure_report, MeasureReport,
80 ModeCompare, SCENARIO_COMPLEX_BRONZE, SCENARIO_INCREMENTAL_APPEND, SCENARIO_SMOKE_PIPELINE,
81 SCENARIO_STREAM_VS_COLLECT, SCENARIO_VALIDATE_DX, SCENARIO_WHALE_SYNTHETIC, DEFAULT_WHALE_PARTS,
82 DEFAULT_WHALE_ROWS,
83};
84
85pub use json::{JShiftExtractor, JsonExtractSpec};
86pub use scan::{parse_hive_partitions, LakeScanner, ScanRequest};
87pub use testing::{
90 assertions_from_model_tests, Assertion, RecordBatchValidator, StreamingAssertionRunner,
91 UniqueKeyTracker, ValidationResult,
92};
93
94pub const VERSION: &str = env!("CARGO_PKG_VERSION");