dvt-core 1.11.0b4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of dvt-core might be problematic. Click here for more details.
- dvt/__init__.py +7 -0
- dvt/_pydantic_shim.py +26 -0
- dvt/adapters/__init__.py +16 -0
- dvt/adapters/multi_adapter_manager.py +268 -0
- dvt/artifacts/__init__.py +0 -0
- dvt/artifacts/exceptions/__init__.py +1 -0
- dvt/artifacts/exceptions/schemas.py +31 -0
- dvt/artifacts/resources/__init__.py +116 -0
- dvt/artifacts/resources/base.py +68 -0
- dvt/artifacts/resources/types.py +93 -0
- dvt/artifacts/resources/v1/analysis.py +10 -0
- dvt/artifacts/resources/v1/catalog.py +23 -0
- dvt/artifacts/resources/v1/components.py +275 -0
- dvt/artifacts/resources/v1/config.py +282 -0
- dvt/artifacts/resources/v1/documentation.py +11 -0
- dvt/artifacts/resources/v1/exposure.py +52 -0
- dvt/artifacts/resources/v1/function.py +53 -0
- dvt/artifacts/resources/v1/generic_test.py +32 -0
- dvt/artifacts/resources/v1/group.py +22 -0
- dvt/artifacts/resources/v1/hook.py +11 -0
- dvt/artifacts/resources/v1/macro.py +30 -0
- dvt/artifacts/resources/v1/metric.py +173 -0
- dvt/artifacts/resources/v1/model.py +146 -0
- dvt/artifacts/resources/v1/owner.py +10 -0
- dvt/artifacts/resources/v1/saved_query.py +112 -0
- dvt/artifacts/resources/v1/seed.py +42 -0
- dvt/artifacts/resources/v1/semantic_layer_components.py +72 -0
- dvt/artifacts/resources/v1/semantic_model.py +315 -0
- dvt/artifacts/resources/v1/singular_test.py +14 -0
- dvt/artifacts/resources/v1/snapshot.py +92 -0
- dvt/artifacts/resources/v1/source_definition.py +85 -0
- dvt/artifacts/resources/v1/sql_operation.py +10 -0
- dvt/artifacts/resources/v1/unit_test_definition.py +78 -0
- dvt/artifacts/schemas/__init__.py +0 -0
- dvt/artifacts/schemas/base.py +191 -0
- dvt/artifacts/schemas/batch_results.py +24 -0
- dvt/artifacts/schemas/catalog/__init__.py +12 -0
- dvt/artifacts/schemas/catalog/v1/__init__.py +0 -0
- dvt/artifacts/schemas/catalog/v1/catalog.py +60 -0
- dvt/artifacts/schemas/freshness/__init__.py +1 -0
- dvt/artifacts/schemas/freshness/v3/__init__.py +0 -0
- dvt/artifacts/schemas/freshness/v3/freshness.py +159 -0
- dvt/artifacts/schemas/manifest/__init__.py +2 -0
- dvt/artifacts/schemas/manifest/v12/__init__.py +0 -0
- dvt/artifacts/schemas/manifest/v12/manifest.py +212 -0
- dvt/artifacts/schemas/results.py +148 -0
- dvt/artifacts/schemas/run/__init__.py +2 -0
- dvt/artifacts/schemas/run/v5/__init__.py +0 -0
- dvt/artifacts/schemas/run/v5/run.py +184 -0
- dvt/artifacts/schemas/upgrades/__init__.py +4 -0
- dvt/artifacts/schemas/upgrades/upgrade_manifest.py +174 -0
- dvt/artifacts/schemas/upgrades/upgrade_manifest_dbt_version.py +2 -0
- dvt/artifacts/utils/validation.py +153 -0
- dvt/cli/__init__.py +1 -0
- dvt/cli/context.py +16 -0
- dvt/cli/exceptions.py +56 -0
- dvt/cli/flags.py +558 -0
- dvt/cli/main.py +971 -0
- dvt/cli/option_types.py +121 -0
- dvt/cli/options.py +79 -0
- dvt/cli/params.py +803 -0
- dvt/cli/requires.py +478 -0
- dvt/cli/resolvers.py +32 -0
- dvt/cli/types.py +40 -0
- dvt/clients/__init__.py +0 -0
- dvt/clients/checked_load.py +82 -0
- dvt/clients/git.py +164 -0
- dvt/clients/jinja.py +206 -0
- dvt/clients/jinja_static.py +245 -0
- dvt/clients/registry.py +192 -0
- dvt/clients/yaml_helper.py +68 -0
- dvt/compilation.py +833 -0
- dvt/compute/__init__.py +26 -0
- dvt/compute/base.py +288 -0
- dvt/compute/engines/__init__.py +13 -0
- dvt/compute/engines/duckdb_engine.py +368 -0
- dvt/compute/engines/spark_engine.py +273 -0
- dvt/compute/query_analyzer.py +212 -0
- dvt/compute/router.py +483 -0
- dvt/config/__init__.py +4 -0
- dvt/config/catalogs.py +95 -0
- dvt/config/compute_config.py +406 -0
- dvt/config/profile.py +411 -0
- dvt/config/profiles_v2.py +464 -0
- dvt/config/project.py +893 -0
- dvt/config/renderer.py +232 -0
- dvt/config/runtime.py +491 -0
- dvt/config/selectors.py +209 -0
- dvt/config/utils.py +78 -0
- dvt/connectors/.gitignore +6 -0
- dvt/connectors/README.md +306 -0
- dvt/connectors/catalog.yml +217 -0
- dvt/connectors/download_connectors.py +300 -0
- dvt/constants.py +29 -0
- dvt/context/__init__.py +0 -0
- dvt/context/base.py +746 -0
- dvt/context/configured.py +136 -0
- dvt/context/context_config.py +350 -0
- dvt/context/docs.py +82 -0
- dvt/context/exceptions_jinja.py +179 -0
- dvt/context/macro_resolver.py +195 -0
- dvt/context/macros.py +171 -0
- dvt/context/manifest.py +73 -0
- dvt/context/providers.py +2198 -0
- dvt/context/query_header.py +14 -0
- dvt/context/secret.py +59 -0
- dvt/context/target.py +74 -0
- dvt/contracts/__init__.py +0 -0
- dvt/contracts/files.py +413 -0
- dvt/contracts/graph/__init__.py +0 -0
- dvt/contracts/graph/manifest.py +1904 -0
- dvt/contracts/graph/metrics.py +98 -0
- dvt/contracts/graph/model_config.py +71 -0
- dvt/contracts/graph/node_args.py +42 -0
- dvt/contracts/graph/nodes.py +1806 -0
- dvt/contracts/graph/semantic_manifest.py +233 -0
- dvt/contracts/graph/unparsed.py +812 -0
- dvt/contracts/project.py +417 -0
- dvt/contracts/results.py +53 -0
- dvt/contracts/selection.py +23 -0
- dvt/contracts/sql.py +86 -0
- dvt/contracts/state.py +69 -0
- dvt/contracts/util.py +46 -0
- dvt/deprecations.py +347 -0
- dvt/deps/__init__.py +0 -0
- dvt/deps/base.py +153 -0
- dvt/deps/git.py +196 -0
- dvt/deps/local.py +80 -0
- dvt/deps/registry.py +131 -0
- dvt/deps/resolver.py +149 -0
- dvt/deps/tarball.py +121 -0
- dvt/docs/source/_ext/dbt_click.py +118 -0
- dvt/docs/source/conf.py +32 -0
- dvt/env_vars.py +64 -0
- dvt/event_time/event_time.py +40 -0
- dvt/event_time/sample_window.py +60 -0
- dvt/events/__init__.py +16 -0
- dvt/events/base_types.py +37 -0
- dvt/events/core_types_pb2.py +2 -0
- dvt/events/logging.py +109 -0
- dvt/events/types.py +2534 -0
- dvt/exceptions.py +1487 -0
- dvt/flags.py +89 -0
- dvt/graph/__init__.py +11 -0
- dvt/graph/cli.py +248 -0
- dvt/graph/graph.py +172 -0
- dvt/graph/queue.py +213 -0
- dvt/graph/selector.py +375 -0
- dvt/graph/selector_methods.py +976 -0
- dvt/graph/selector_spec.py +223 -0
- dvt/graph/thread_pool.py +18 -0
- dvt/hooks.py +21 -0
- dvt/include/README.md +49 -0
- dvt/include/__init__.py +3 -0
- dvt/include/global_project.py +4 -0
- dvt/include/starter_project/.gitignore +4 -0
- dvt/include/starter_project/README.md +15 -0
- dvt/include/starter_project/__init__.py +3 -0
- dvt/include/starter_project/analyses/.gitkeep +0 -0
- dvt/include/starter_project/dvt_project.yml +36 -0
- dvt/include/starter_project/macros/.gitkeep +0 -0
- dvt/include/starter_project/models/example/my_first_dbt_model.sql +27 -0
- dvt/include/starter_project/models/example/my_second_dbt_model.sql +6 -0
- dvt/include/starter_project/models/example/schema.yml +21 -0
- dvt/include/starter_project/seeds/.gitkeep +0 -0
- dvt/include/starter_project/snapshots/.gitkeep +0 -0
- dvt/include/starter_project/tests/.gitkeep +0 -0
- dvt/internal_deprecations.py +27 -0
- dvt/jsonschemas/__init__.py +3 -0
- dvt/jsonschemas/jsonschemas.py +309 -0
- dvt/jsonschemas/project/0.0.110.json +4717 -0
- dvt/jsonschemas/project/0.0.85.json +2015 -0
- dvt/jsonschemas/resources/0.0.110.json +2636 -0
- dvt/jsonschemas/resources/0.0.85.json +2536 -0
- dvt/jsonschemas/resources/latest.json +6773 -0
- dvt/links.py +4 -0
- dvt/materializations/__init__.py +0 -0
- dvt/materializations/incremental/__init__.py +0 -0
- dvt/materializations/incremental/microbatch.py +235 -0
- dvt/mp_context.py +8 -0
- dvt/node_types.py +37 -0
- dvt/parser/__init__.py +23 -0
- dvt/parser/analysis.py +21 -0
- dvt/parser/base.py +549 -0
- dvt/parser/common.py +267 -0
- dvt/parser/docs.py +52 -0
- dvt/parser/fixtures.py +51 -0
- dvt/parser/functions.py +30 -0
- dvt/parser/generic_test.py +100 -0
- dvt/parser/generic_test_builders.py +334 -0
- dvt/parser/hooks.py +119 -0
- dvt/parser/macros.py +137 -0
- dvt/parser/manifest.py +2204 -0
- dvt/parser/models.py +574 -0
- dvt/parser/partial.py +1179 -0
- dvt/parser/read_files.py +445 -0
- dvt/parser/schema_generic_tests.py +423 -0
- dvt/parser/schema_renderer.py +111 -0
- dvt/parser/schema_yaml_readers.py +936 -0
- dvt/parser/schemas.py +1467 -0
- dvt/parser/search.py +149 -0
- dvt/parser/seeds.py +28 -0
- dvt/parser/singular_test.py +20 -0
- dvt/parser/snapshots.py +44 -0
- dvt/parser/sources.py +557 -0
- dvt/parser/sql.py +63 -0
- dvt/parser/unit_tests.py +622 -0
- dvt/plugins/__init__.py +20 -0
- dvt/plugins/contracts.py +10 -0
- dvt/plugins/exceptions.py +2 -0
- dvt/plugins/manager.py +164 -0
- dvt/plugins/manifest.py +21 -0
- dvt/profiler.py +20 -0
- dvt/py.typed +1 -0
- dvt/runners/__init__.py +2 -0
- dvt/runners/exposure_runner.py +7 -0
- dvt/runners/no_op_runner.py +46 -0
- dvt/runners/saved_query_runner.py +7 -0
- dvt/selected_resources.py +8 -0
- dvt/task/__init__.py +0 -0
- dvt/task/base.py +504 -0
- dvt/task/build.py +197 -0
- dvt/task/clean.py +57 -0
- dvt/task/clone.py +162 -0
- dvt/task/compile.py +151 -0
- dvt/task/compute.py +366 -0
- dvt/task/debug.py +650 -0
- dvt/task/deps.py +280 -0
- dvt/task/docs/__init__.py +3 -0
- dvt/task/docs/generate.py +408 -0
- dvt/task/docs/index.html +250 -0
- dvt/task/docs/serve.py +28 -0
- dvt/task/freshness.py +323 -0
- dvt/task/function.py +122 -0
- dvt/task/group_lookup.py +46 -0
- dvt/task/init.py +374 -0
- dvt/task/list.py +237 -0
- dvt/task/printer.py +176 -0
- dvt/task/profiles.py +256 -0
- dvt/task/retry.py +175 -0
- dvt/task/run.py +1146 -0
- dvt/task/run_operation.py +142 -0
- dvt/task/runnable.py +802 -0
- dvt/task/seed.py +104 -0
- dvt/task/show.py +150 -0
- dvt/task/snapshot.py +57 -0
- dvt/task/sql.py +111 -0
- dvt/task/test.py +464 -0
- dvt/tests/fixtures/__init__.py +1 -0
- dvt/tests/fixtures/project.py +620 -0
- dvt/tests/util.py +651 -0
- dvt/tracking.py +529 -0
- dvt/utils/__init__.py +3 -0
- dvt/utils/artifact_upload.py +151 -0
- dvt/utils/utils.py +408 -0
- dvt/version.py +249 -0
- dvt_core-1.11.0b4.dist-info/METADATA +252 -0
- dvt_core-1.11.0b4.dist-info/RECORD +261 -0
- dvt_core-1.11.0b4.dist-info/WHEEL +5 -0
- dvt_core-1.11.0b4.dist-info/entry_points.txt +2 -0
- dvt_core-1.11.0b4.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: dvt-core
|
|
3
|
+
Version: 1.11.0b4
|
|
4
|
+
Summary: DVT (Data Virtualization Tool) - An all-in-one ELT solution for data transformation and virtualization, built on dbt-core foundations.
|
|
5
|
+
Author: DVT Core Contributors
|
|
6
|
+
Maintainer: DVT Core Contributors
|
|
7
|
+
License-Expression: Apache-2.0
|
|
8
|
+
Project-URL: Homepage, https://github.com/hex/dvt-core
|
|
9
|
+
Project-URL: Repository, https://github.com/hex/dvt-core.git
|
|
10
|
+
Project-URL: Issues, https://github.com/hex/dvt-core/issues
|
|
11
|
+
Project-URL: Changelog, https://github.com/hex/dvt-core/blob/main/CHANGELOG.md
|
|
12
|
+
Keywords: data,virtualization,ELT,transformation,analytics
|
|
13
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
14
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
15
|
+
Classifier: Operating System :: MacOS :: MacOS X
|
|
16
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
17
|
+
Classifier: Programming Language :: Python
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
22
|
+
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
23
|
+
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
24
|
+
Requires-Python: >=3.10
|
|
25
|
+
Description-Content-Type: text/markdown
|
|
26
|
+
Requires-Dist: agate<1.10,>=1.7.0
|
|
27
|
+
Requires-Dist: Jinja2<4,>=3.1.3
|
|
28
|
+
Requires-Dist: mashumaro[msgpack]<3.15,>=3.9
|
|
29
|
+
Requires-Dist: click<9.0,>=8.0.2
|
|
30
|
+
Requires-Dist: jsonschema<5.0,>=4.19.1
|
|
31
|
+
Requires-Dist: networkx<4.0,>=2.3
|
|
32
|
+
Requires-Dist: protobuf<7.0,>=6.0
|
|
33
|
+
Requires-Dist: requests<3.0.0
|
|
34
|
+
Requires-Dist: snowplow-tracker<2.0,>=1.0.2
|
|
35
|
+
Requires-Dist: pathspec<0.13,>=0.9
|
|
36
|
+
Requires-Dist: sqlparse<0.6.0,>=0.5.0
|
|
37
|
+
Requires-Dist: dbt-extractor<=0.6,>=0.5.0
|
|
38
|
+
Requires-Dist: dbt-semantic-interfaces<0.10,>=0.9.0
|
|
39
|
+
Requires-Dist: dbt-common<2.0,>=1.27.0
|
|
40
|
+
Requires-Dist: dbt-adapters<2.0,>=1.15.5
|
|
41
|
+
Requires-Dist: dbt-protos<2.0,>=1.0.375
|
|
42
|
+
Requires-Dist: pydantic<3
|
|
43
|
+
Requires-Dist: duckdb<2.0,>=0.9.0
|
|
44
|
+
Requires-Dist: pyspark<4.0,>=3.4.0
|
|
45
|
+
Requires-Dist: pyarrow>=14.0.0
|
|
46
|
+
Requires-Dist: packaging>20.9
|
|
47
|
+
Requires-Dist: pytz>=2015.7
|
|
48
|
+
Requires-Dist: pyyaml>=6.0
|
|
49
|
+
Requires-Dist: daff>=1.3.46
|
|
50
|
+
Requires-Dist: typing-extensions>=4.4
|
|
51
|
+
|
|
52
|
+
# DVT (Data Virtualization Tool)
|
|
53
|
+
|
|
54
|
+
**DVT** is an all-in-one ELT solution that adds comprehensive data virtualization capabilities to dbt-core foundations.
|
|
55
|
+
|
|
56
|
+
## Quick Start
|
|
57
|
+
|
|
58
|
+
### Installation
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Install DVT with all features (includes PySpark, DuckDB, and 20 JDBC connectors)
|
|
62
|
+
pip install dvt-core
|
|
63
|
+
|
|
64
|
+
# Verify installation
|
|
65
|
+
dvt --version
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**What's included:**
|
|
69
|
+
- ✅ Core DVT + all dbt functionality
|
|
70
|
+
- ✅ DuckDB compute engine (~10MB)
|
|
71
|
+
- ✅ PySpark compute engine (~250MB)
|
|
72
|
+
- ✅ 20 JDBC connectors (~200MB) for Spark cross-database queries
|
|
73
|
+
- ✅ Complete documentation and examples
|
|
74
|
+
|
|
75
|
+
**Total install size:** ~450-500MB
|
|
76
|
+
|
|
77
|
+
### Create Your First Project
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
# Initialize new project
|
|
81
|
+
dvt init my_analytics_project
|
|
82
|
+
cd my_analytics_project
|
|
83
|
+
|
|
84
|
+
# Configure profiles in ~/.dvt/profiles.yml
|
|
85
|
+
# Add multiple database connections
|
|
86
|
+
|
|
87
|
+
# Test connections
|
|
88
|
+
dvt profiles test --all
|
|
89
|
+
|
|
90
|
+
# Run your models
|
|
91
|
+
dvt run
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## What is DVT?
|
|
95
|
+
|
|
96
|
+
DVT enables you to:
|
|
97
|
+
|
|
98
|
+
- **Query across databases**: Join PostgreSQL, MySQL, Snowflake, and 20+ other databases in a single SQL query
|
|
99
|
+
- **Maintain dbt compatibility**: 100% backwards compatible with existing dbt projects
|
|
100
|
+
- **Use intelligent query routing**: Automatic optimization between pushdown and compute layer execution
|
|
101
|
+
- **Manage multiple connections**: Support multiple database profiles in a single project
|
|
102
|
+
- **Choose your compute engine**: Use DuckDB for fast analytics or Spark for distributed processing
|
|
103
|
+
|
|
104
|
+
## Key Features
|
|
105
|
+
|
|
106
|
+
### Cross-Database Queries
|
|
107
|
+
|
|
108
|
+
```sql
|
|
109
|
+
-- Join PostgreSQL customers with MySQL orders
|
|
110
|
+
select
|
|
111
|
+
c.customer_id,
|
|
112
|
+
c.name,
|
|
113
|
+
count(o.order_id) as order_count
|
|
114
|
+
from {{ source('postgres_prod', 'customers') }} c
|
|
115
|
+
left join {{ source('mysql_legacy', 'orders') }} o
|
|
116
|
+
on c.customer_id = o.customer_id
|
|
117
|
+
group by c.customer_id, c.name
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
DVT automatically detects heterogeneous sources and routes execution to the appropriate compute engine.
|
|
121
|
+
|
|
122
|
+
### Multi-Profile Support
|
|
123
|
+
|
|
124
|
+
Configure multiple database connections:
|
|
125
|
+
|
|
126
|
+
```yaml
|
|
127
|
+
# profiles.yml
|
|
128
|
+
postgres_prod:
|
|
129
|
+
adapter: postgres
|
|
130
|
+
host: prod-db.example.com
|
|
131
|
+
# ...
|
|
132
|
+
|
|
133
|
+
mysql_legacy:
|
|
134
|
+
adapter: mysql
|
|
135
|
+
host: legacy-db.example.com
|
|
136
|
+
# ...
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
Reference profiles in source definitions:
|
|
140
|
+
|
|
141
|
+
```yaml
|
|
142
|
+
# sources.yml
|
|
143
|
+
sources:
|
|
144
|
+
- name: postgres_prod
|
|
145
|
+
profile: postgres_prod
|
|
146
|
+
tables:
|
|
147
|
+
- name: customers
|
|
148
|
+
|
|
149
|
+
- name: mysql_legacy
|
|
150
|
+
profile: mysql_legacy
|
|
151
|
+
tables:
|
|
152
|
+
- name: orders
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Included JDBC Connectors
|
|
156
|
+
|
|
157
|
+
DVT bundles 20 JDBC connectors (~200MB) for Spark:
|
|
158
|
+
|
|
159
|
+
**Relational Databases:**
|
|
160
|
+
- PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, DB2
|
|
161
|
+
|
|
162
|
+
**Cloud Data Warehouses:**
|
|
163
|
+
- Snowflake, BigQuery, Redshift, Athena
|
|
164
|
+
|
|
165
|
+
**Analytics & MPP:**
|
|
166
|
+
- ClickHouse, Vertica, Presto, Trino
|
|
167
|
+
|
|
168
|
+
**Other:**
|
|
169
|
+
- H2, SQLite, Derby, Hive, InfluxDB, TimescaleDB
|
|
170
|
+
|
|
171
|
+
**Note:** Phoenix connector (149MB) exceeds PyPI limits and can be downloaded separately:
|
|
172
|
+
```bash
|
|
173
|
+
dvt connectors download --connector=phoenix
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## DVT Commands
|
|
177
|
+
|
|
178
|
+
### Standard dbt Commands (100% Compatible)
|
|
179
|
+
|
|
180
|
+
All dbt commands work identically:
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
dvt run # Run models
|
|
184
|
+
dvt test # Run tests
|
|
185
|
+
dvt build # Run + test models
|
|
186
|
+
dvt compile # Compile SQL
|
|
187
|
+
dvt docs generate # Generate documentation
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### DVT Extensions
|
|
191
|
+
|
|
192
|
+
**Profile Management:**
|
|
193
|
+
```bash
|
|
194
|
+
dvt profiles list # List all configured profiles
|
|
195
|
+
dvt profiles show postgres_prod
|
|
196
|
+
dvt profiles test --all # Test all profile connections
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
**Compute Layer:**
|
|
200
|
+
```bash
|
|
201
|
+
dvt compute show # Show compute configuration
|
|
202
|
+
dvt compute engines # List available engines
|
|
203
|
+
dvt compute test --all # Test compute engines
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
**Enhanced Debug:**
|
|
207
|
+
```bash
|
|
208
|
+
dvt debug --all-profiles # Test all profiles (not just target)
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
## Documentation
|
|
212
|
+
|
|
213
|
+
For complete documentation, see:
|
|
214
|
+
|
|
215
|
+
- **[Sample Project Guide](../docs/sample-project-guide.md)** - Complete walkthrough building a real DVT project
|
|
216
|
+
- **[DVT Architecture](../docs/DVT_ARCHITECTURE.md)** - Detailed architecture overview
|
|
217
|
+
- **[Migration Guide](../docs/migration-guide.md)** - Migrate from dbt to DVT
|
|
218
|
+
- **[CLI Reference](../docs/cli-reference.md)** - Complete command reference
|
|
219
|
+
- **[Connector Catalog](connectors/README.md)** - JDBC connector documentation
|
|
220
|
+
|
|
221
|
+
## Migration from dbt
|
|
222
|
+
|
|
223
|
+
DVT is 100% backwards compatible with dbt:
|
|
224
|
+
|
|
225
|
+
```bash
|
|
226
|
+
# Install DVT
|
|
227
|
+
pip install dvt-core
|
|
228
|
+
|
|
229
|
+
# Replace dbt commands with dvt
|
|
230
|
+
dvt run # instead of: dbt run
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
That's it! Your existing dbt project works as-is.
|
|
234
|
+
|
|
235
|
+
## Requirements
|
|
236
|
+
|
|
237
|
+
- Python 3.10, 3.11, 3.12, or 3.13
|
|
238
|
+
- Database adapters for your databases (e.g., `dbt-postgres`, `dbt-snowflake`)
|
|
239
|
+
|
|
240
|
+
## License
|
|
241
|
+
|
|
242
|
+
Apache License 2.0 - Same as dbt-core
|
|
243
|
+
|
|
244
|
+
## Support
|
|
245
|
+
|
|
246
|
+
- **Repository**: https://github.com/hex/dvt-core
|
|
247
|
+
- **Issues**: https://github.com/hex/dvt-core/issues
|
|
248
|
+
- **Documentation**: See `/docs` directory in repository
|
|
249
|
+
|
|
250
|
+
## Acknowledgments
|
|
251
|
+
|
|
252
|
+
DVT is built on top of [dbt-core](https://github.com/dbt-labs/dbt-core) and maintains deep compatibility with the dbt ecosystem.
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
dvt/__init__.py,sha256=xsNUR1xrLJWx-H14vxcqbWwqxNoG9M1OTur6B0M7two,341
|
|
2
|
+
dvt/_pydantic_shim.py,sha256=hjw-7Y5Z7wACmhau9HwVWOkOdsLwtNKGw1IV5Wshpxw,1183
|
|
3
|
+
dvt/compilation.py,sha256=n7i8udCrEzX_-ymKE0OtiJRQ_UNQYLMsSdj8I5i6G-A,34675
|
|
4
|
+
dvt/constants.py,sha256=qm9Dp3VI2IxbPYCvl27TludLu7kRpnRa3qATV_2oUIg,1117
|
|
5
|
+
dvt/deprecations.py,sha256=L5fW8Z4jwo6sDeQlwPqyOlPjzBlcfmEusWvKLub4RJY,10957
|
|
6
|
+
dvt/env_vars.py,sha256=Q75UJmBgggiQfsxxpp-QEF6iIww89ziA5PO7tqG7mGY,2769
|
|
7
|
+
dvt/exceptions.py,sha256=pRDydKr46P_vcMzANlQY4lJOkDeMlSP6ragCZr0fH7s,49643
|
|
8
|
+
dvt/flags.py,sha256=cR-dZ73w-lhfRaYF-lUOlb43z-Fa05vsYEkL_MdmIrg,3136
|
|
9
|
+
dvt/hooks.py,sha256=b0h4XB-nt3POKZ5kuxg4qgSCBzUZIC8YrkChL9iPQiM,511
|
|
10
|
+
dvt/internal_deprecations.py,sha256=a0EAE3t20cDhkY1NDjJSFNdA14-GLFHcWLoTY45u7B4,713
|
|
11
|
+
dvt/links.py,sha256=2XEBnp3xmwFGXekghYc8UYkwuYvWy5-08-IidWn2ixE,310
|
|
12
|
+
dvt/mp_context.py,sha256=I1pYjBRzdFZSo8a37C_bDyVEmD9X82GundZlQGIB5H0,188
|
|
13
|
+
dvt/node_types.py,sha256=0cZLUcvWtt6rgttbMXK5mSNPsnIGhjP2dkWfDtlR2EM,726
|
|
14
|
+
dvt/profiler.py,sha256=-j4LMp380hoKMn9w_s4JUfQBDXt-lF2oXKuA7rMmBls,504
|
|
15
|
+
dvt/py.typed,sha256=jv5Zi3m-MvcyYNALpgzImJuqEUjJY44xp5uMsU7V2Rg,43
|
|
16
|
+
dvt/selected_resources.py,sha256=ax8Qrpr4QI7y1DnJ2rhnSeevFZZ-GSSYeYZywtzUVxk,201
|
|
17
|
+
dvt/tracking.py,sha256=54UPF9gV-eGN7c4Rl92cFIsvDTlLqxtT2hPn9ElTXsQ,15925
|
|
18
|
+
dvt/version.py,sha256=yqWL0EQqZCSC0vpcJOdzQoByHCtEgE-KaxSpYa_ck28,7919
|
|
19
|
+
dvt/adapters/__init__.py,sha256=eijL1jFM2QHVDznXNnXNesrQB5M4FOyoURnRV-WPR80,349
|
|
20
|
+
dvt/adapters/multi_adapter_manager.py,sha256=-h3Y2rz5xIpCgiwU-OiULv7hyfDgXpgIDqMVmAspCRY,9634
|
|
21
|
+
dvt/artifacts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
|
+
dvt/artifacts/exceptions/__init__.py,sha256=rpJ7N8GK4yMWcj9shlG4o2kYVT5F6a-633sN8jxIiDc,69
|
|
23
|
+
dvt/artifacts/exceptions/schemas.py,sha256=noiBunDvppQxMsTBn9nR4un9v4EoXINBaR4w8QeABDE,895
|
|
24
|
+
dvt/artifacts/resources/__init__.py,sha256=C8J5BDajy1yf-xbymn_NLQoI-iLA8DVaya56h7VIJ2c,3116
|
|
25
|
+
dvt/artifacts/resources/base.py,sha256=eL4R9YN_U4_M1UfRxjTi5VpS9rVVWIT4DZSWoCziybc,1780
|
|
26
|
+
dvt/artifacts/resources/types.py,sha256=aGowyB7UpWESCd3_Xk75f8YWE65mjTB-h2fj8MzPlBQ,1924
|
|
27
|
+
dvt/artifacts/resources/v1/analysis.py,sha256=pzwFySCYiWRh-RRRnw42drioBMcTJm_8VpFXA8d0qZc,273
|
|
28
|
+
dvt/artifacts/resources/v1/catalog.py,sha256=t7z6Fca2Yy2ZFOP9bkMNc4S5vDI2Xfw1W3JNn7fwkMA,737
|
|
29
|
+
dvt/artifacts/resources/v1/components.py,sha256=KpzMqgBh7kvPGxJwUpmIuqu1QcEQq92fbVwqLyeTgE4,9160
|
|
30
|
+
dvt/artifacts/resources/v1/config.py,sha256=MfSqs4t0pyFHVPuJAkg9Gz1XpEGU-xR196OQsQbVxRE,10418
|
|
31
|
+
dvt/artifacts/resources/v1/documentation.py,sha256=Li1QKMI7ObsrmweKbLl8GZKYBwLh04nEkGBdYJ6qVHE,290
|
|
32
|
+
dvt/artifacts/resources/v1/exposure.py,sha256=BIsOT-toRWIx7oHhBOj0xe50ajad4s4R-IGDMxC66-U,1662
|
|
33
|
+
dvt/artifacts/resources/v1/function.py,sha256=QYr7ZCDUv8nI8tRQHZACXijc9y8Si-OwUDer-WP-pE8,1436
|
|
34
|
+
dvt/artifacts/resources/v1/generic_test.py,sha256=wpQxjoNP5AomQdNLmy3h0U0gsOwCdafW4cXUuU6tZ7k,1211
|
|
35
|
+
dvt/artifacts/resources/v1/group.py,sha256=izZyz-JlW1bWsBoS0gSdZZEugxpiPgU4RyQe7KOiiko,668
|
|
36
|
+
dvt/artifacts/resources/v1/hook.py,sha256=6gEW-e51zASuCJ2nJYfJjJrJ4_nXx0XBZ7JhMPR0WWo,316
|
|
37
|
+
dvt/artifacts/resources/v1/macro.py,sha256=xdCThVylHlRfW_J_n_Vvl62kLLGGHfCy-YnoongDnJE,1004
|
|
38
|
+
dvt/artifacts/resources/v1/metric.py,sha256=dqWrKOY4dJLXGnId_aSxoSKd9cemsYze1bnduC6fbS4,5895
|
|
39
|
+
dvt/artifacts/resources/v1/model.py,sha256=RRYJ_AuZLA2JRatgbRgLEuAgO_Xz7wWvrlcTsfwLzGo,5047
|
|
40
|
+
dvt/artifacts/resources/v1/owner.py,sha256=5moDoBzTmU7-Mr8e_Om0UojGRSxYeckjTNRICcbdgdk,287
|
|
41
|
+
dvt/artifacts/resources/v1/saved_query.py,sha256=SLhyzhvJWb2geqeUfde_5gjjMRYtJxZN2qvhSNTV7vA,3437
|
|
42
|
+
dvt/artifacts/resources/v1/seed.py,sha256=5TANAA9Ipl03TMspiUCHYSapn-0MueoR6_L4oAtBVfE,1459
|
|
43
|
+
dvt/artifacts/resources/v1/semantic_layer_components.py,sha256=fHF1Qb6ScZvHpjSQWcipnyQXa-NftOm7Sj6H6uqNvQk,1989
|
|
44
|
+
dvt/artifacts/resources/v1/semantic_model.py,sha256=_xlNSGv3I37_zbpXfJFJeIaAVEWzwMiQp2ovZyUr2V0,11133
|
|
45
|
+
dvt/artifacts/resources/v1/singular_test.py,sha256=AY0bR58L_otyvMExasMo9fjf-apl52aeL-P0YOiaTX8,524
|
|
46
|
+
dvt/artifacts/resources/v1/snapshot.py,sha256=e0YCYs2dwonMN8d6iEUSbJUoN6e9G85nFnVTuP2NSH0,3859
|
|
47
|
+
dvt/artifacts/resources/v1/source_definition.py,sha256=D8d1oS58z1S_uxJvVKWmk-OubhgilZdl_-t8VSq_4oI,3028
|
|
48
|
+
dvt/artifacts/resources/v1/sql_operation.py,sha256=lPXSa5wgwmh488x-KmlTCpufka8loLOR7EyGHXYY8K0,281
|
|
49
|
+
dvt/artifacts/resources/v1/unit_test_definition.py,sha256=6T-Ns3Wid7UBWMQ2nq1TGW4FblpG2QNdCjwghi2T2QY,2393
|
|
50
|
+
dvt/artifacts/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
51
|
+
dvt/artifacts/schemas/base.py,sha256=3ztJIcdRP23vV9EUlnYAm5exx3faeyATZ9cA8Uouxj8,6963
|
|
52
|
+
dvt/artifacts/schemas/batch_results.py,sha256=gFI_CxqOAH1awki4jAAt2dRjlkul1lDQyaiUKQvNwZ8,685
|
|
53
|
+
dvt/artifacts/schemas/results.py,sha256=y9B34BBl7HSmVmImn_o-7IKO7UFZCUkynopOlcWM9Ik,3950
|
|
54
|
+
dvt/artifacts/schemas/catalog/__init__.py,sha256=RAWZEbh1jshRmWQMRNZNoSonlumyxAQ_LhdqqfJp5Mk,246
|
|
55
|
+
dvt/artifacts/schemas/catalog/v1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
56
|
+
dvt/artifacts/schemas/catalog/v1/catalog.py,sha256=lR2WkpLSpTiymzI1OkuN7hhkZjgd4bZ-JZ0AEwRssmw,1670
|
|
57
|
+
dvt/artifacts/schemas/freshness/__init__.py,sha256=JLK5X36FyNS-yARcAtoxk4teV1Hbl6kX8VnTwEjpRcs,67
|
|
58
|
+
dvt/artifacts/schemas/freshness/v3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
59
|
+
dvt/artifacts/schemas/freshness/v3/freshness.py,sha256=2nJYrHHABbPIgoANYuncJqk-ZiLTkBZ3Cp_LpTZ4Qfg,4377
|
|
60
|
+
dvt/artifacts/schemas/manifest/__init__.py,sha256=1MsUGryHUG791dbPDiUUfgzUSIeBEPL-qw-QnYRGf6Y,84
|
|
61
|
+
dvt/artifacts/schemas/manifest/v12/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
62
|
+
dvt/artifacts/schemas/manifest/v12/manifest.py,sha256=iOrnprm0JZONUzVvs5qRfTr9klWbvDfhu6QlRSfc_As,7118
|
|
63
|
+
dvt/artifacts/schemas/run/__init__.py,sha256=VAK72wkT3EcEXpc84YCFLgnUp-SGgz5MRigF8kvgvdA,73
|
|
64
|
+
dvt/artifacts/schemas/run/v5/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
65
|
+
dvt/artifacts/schemas/run/v5/run.py,sha256=ZaY5v1rAJxMtzdoW4kVBwnTx6ZWmnsu8TjqFI4fSrCI,5832
|
|
66
|
+
dvt/artifacts/schemas/upgrades/__init__.py,sha256=_b7LKQp0cZBMOa79vc_WbC9XaJS75jj72C7-yABf9V0,197
|
|
67
|
+
dvt/artifacts/schemas/upgrades/upgrade_manifest.py,sha256=4n86d1QSayLChKP8vzrpCp0Vl22A4UDGjRX7dH6ueEs,6898
|
|
68
|
+
dvt/artifacts/schemas/upgrades/upgrade_manifest_dbt_version.py,sha256=7z0X_NzIuzNklw8nkt-fS1axF5VwrrUAsT84MgFAk8w,83
|
|
69
|
+
dvt/artifacts/utils/validation.py,sha256=jpaK5KM1_huYnqGEE1R0qTFk7-1wGvmv9BMpaojBfzk,2677
|
|
70
|
+
dvt/cli/__init__.py,sha256=P6Lklk5Uobsf7BLo1LtQfTL2uElyggI2uuFtce7a-pU,41
|
|
71
|
+
dvt/cli/context.py,sha256=uEBNeQPdblVo3-dZR_RuxpWI7tOKTtcwPiCGfyUt3gY,379
|
|
72
|
+
dvt/cli/exceptions.py,sha256=0ruueFQvWzHSrIpuGUYk8emCbfRfZn128g2GWFvmd-M,1882
|
|
73
|
+
dvt/cli/flags.py,sha256=s_q_4bmH6SYfW1GmGosezi6JrUscddLhgny1jrhbRw0,24525
|
|
74
|
+
dvt/cli/main.py,sha256=9wdr-0ABRQkenEUf7ohw98liarZ9P4MNDJQAFzit46o,22907
|
|
75
|
+
dvt/cli/option_types.py,sha256=KJ6KC0_H6mrGTCG8b-0GwFkmyNa110IYRQ1ssQMTjvk,4307
|
|
76
|
+
dvt/cli/options.py,sha256=uTOH1Rh0WIxZWB2QlpQwaWk6PLs2Psf5ulbHN8iLuTs,3525
|
|
77
|
+
dvt/cli/params.py,sha256=EEqBSQVzos2J8b_3pOwE7n7bksQAP9qae59VZS6bj1I,26009
|
|
78
|
+
dvt/cli/requires.py,sha256=I1Rruv2mKuT0rgKhlT5lc6cRSE2ZWMz56PsTVOzAHCY,17012
|
|
79
|
+
dvt/cli/resolvers.py,sha256=pLtLHRicMullSREJct0Ljc_SRXi0BzS5Mo-CaID4h90,1248
|
|
80
|
+
dvt/cli/types.py,sha256=rJoHvBZAo3rLEUzznpEgUAamOvNXm_6AhSOXzZz7Rrs,1006
|
|
81
|
+
dvt/clients/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
82
|
+
dvt/clients/checked_load.py,sha256=CSF6bVsiZi1zhNyR7feAmrK3u455FlAEXh3_AjuTJU0,3182
|
|
83
|
+
dvt/clients/git.py,sha256=tWMaLETM2e_ygU2FCbvmmiaVPdCKXwBmR8JYxv56rTg,5263
|
|
84
|
+
dvt/clients/jinja.py,sha256=Qr7GMS0ZaTpzlkyKVo6-LxXO8sGc_9ZA3ne9_fakd8Y,6523
|
|
85
|
+
dvt/clients/jinja_static.py,sha256=76SgS2lcm9VXpzj_zjz22lDvXPVA0DcA9ZiuPr51UYM,9102
|
|
86
|
+
dvt/clients/registry.py,sha256=dqOaFsFg54h5UGOX2yGktyEBgXFk7P5t1h_OSIPOc24,7970
|
|
87
|
+
dvt/clients/yaml_helper.py,sha256=vgvhBlsvZAqA9cy2CazdGVBOAiXERk_YDy6qVa0XwA0,1826
|
|
88
|
+
dvt/compute/__init__.py,sha256=05ik12rBIPQPcasmnBfxXVFtiRFvUfAGZN2lYC-KY5A,584
|
|
89
|
+
dvt/compute/base.py,sha256=cM6WVkxUbfkx4sD3QdXsqJGVewIY_4MK9PHsWKhxQB4,8039
|
|
90
|
+
dvt/compute/query_analyzer.py,sha256=MiGi8MiSRjlW1RdRyyUG5VuQfK5_C84IX41hGb81GCQ,6677
|
|
91
|
+
dvt/compute/router.py,sha256=OrtdCx46CsyF4ITMqZkO6TAPt60gn0lGmJfGomjLhWM,17939
|
|
92
|
+
dvt/compute/engines/__init__.py,sha256=Ze4rDoAtZQd01Uz9DpYGfQxja8CUoR6N2nlk-ACmijk,274
|
|
93
|
+
dvt/compute/engines/duckdb_engine.py,sha256=PTj34ilN9nza1_ytQIpMiYiG9IKjdAthobCLfKAlWoE,12946
|
|
94
|
+
dvt/compute/engines/spark_engine.py,sha256=ehlNQKwxqCONSwx8vJOur67pBz6lj7yeTugF2ntRLco,8864
|
|
95
|
+
dvt/config/__init__.py,sha256=OdOurJMVaCvlxZSXeSsMeSu8rPeQxkC4HYf8qBDe6q4,224
|
|
96
|
+
dvt/config/catalogs.py,sha256=ODAZxPFRejvfv6xsxNkvk9ocdHV28CyoKLmivFi4qrI,3917
|
|
97
|
+
dvt/config/compute_config.py,sha256=cxUFZRQ1jBjdRV_l2St2vhhkURivlVmzrn68oEO5gIs,13896
|
|
98
|
+
dvt/config/profile.py,sha256=AZZZL4-HHJ6HGuOSdBUsewQLiAdDKQTxO0IExpKWEZU,15636
|
|
99
|
+
dvt/config/profiles_v2.py,sha256=xyCPPepD8ZyXg92IcLByNDrMZcF8MwerUdUMkh2-Fro,14722
|
|
100
|
+
dvt/config/project.py,sha256=Gtm4GlZl0WXdL_R95WvdTUCB5P4e4MqO6asglScM_gQ,33884
|
|
101
|
+
dvt/config/renderer.py,sha256=umeVW4nFJCjcXFNKUp6n87jY_caLUv0OPbzm6aarxvA,8135
|
|
102
|
+
dvt/config/runtime.py,sha256=14mS_j7H4NZVqMUaCBhEPq6CXmTvN7jB3jCgOepgZKU,17940
|
|
103
|
+
dvt/config/selectors.py,sha256=VYL4fuR8qCx5CjAi8zvc9D0h__TzZ_9b8neZ9hW3nNU,8063
|
|
104
|
+
dvt/config/utils.py,sha256=jFElROCTicRYJNDkMQbOGjTZSUMn4qUe5VmXn7Pb0J0,2756
|
|
105
|
+
dvt/connectors/.gitignore,sha256=CSEcTlgmSx_2SdiMDNKQZNX8_P_yNMu1dSmiPLpeRn0,88
|
|
106
|
+
dvt/connectors/README.md,sha256=NXqbCOlbj7wMqxZ5YFlU-V6j3VUbXwqmQb_qBWxpJnE,7088
|
|
107
|
+
dvt/connectors/catalog.yml,sha256=yCPxvrGI5ypYU8pPvTYjWodaohqE7VHOkQw5FQvfqnM,8324
|
|
108
|
+
dvt/connectors/download_connectors.py,sha256=sO3at2olEhXImrVV2xBnSM6WjItVwdqvnvF6j8vG8k8,8752
|
|
109
|
+
dvt/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
110
|
+
dvt/context/base.py,sha256=isGuH05NHISkHQlDbQV6IdSK5HF7vEa0hQ9aKc_S-4s,24761
|
|
111
|
+
dvt/context/configured.py,sha256=_ajo4TYIdr-3L7UhtGEqMY6ti2qvNcntpQRBAjixtuI,4498
|
|
112
|
+
dvt/context/context_config.py,sha256=HrtUwcIejY8y_GS6ZocfI1iUO9RPMDkBJJzlSAJX46A,13590
|
|
113
|
+
dvt/context/docs.py,sha256=vTSYIEyxE1lnT1eeOiYMbes5Iyx1prbFuhI6ENa66dc,2524
|
|
114
|
+
dvt/context/exceptions_jinja.py,sha256=pciCvJRw3toKhuBWIaEJPk3-VBR0R2a4uR0uU5Nrm4g,4792
|
|
115
|
+
dvt/context/macro_resolver.py,sha256=OLJrL5VLPltnVVqcyMlAi8RYeDlpyrbOs7Gn1430Md8,8682
|
|
116
|
+
dvt/context/macros.py,sha256=D9qeFnqZUmtbPH-lBDVszWK-SUJL5G1ZStWUesVpYiE,7425
|
|
117
|
+
dvt/context/manifest.py,sha256=JzbOvs3k_GxpKaxwQwFMhbUXPuR22APSaprS3dtflSs,2692
|
|
118
|
+
dvt/context/providers.py,sha256=3Ejy1pO4Jsk0TUIW6QQIDU6wRi6PRBqc56p4unOXXGw,80365
|
|
119
|
+
dvt/context/query_header.py,sha256=3aIu3-HaRtQ8IaklzKkEHsE4vvC-AhJR3dFsUtgqu7I,520
|
|
120
|
+
dvt/context/secret.py,sha256=BhBog6zVAhER3M7NvmtdzFHbLWzhYWBpEW1S-Lp_97Q,2636
|
|
121
|
+
dvt/context/target.py,sha256=yA6diUh4WChp4iEC0v2rkrL75waoX-Zb5ezYxz7r7yw,4165
|
|
122
|
+
dvt/contracts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
123
|
+
dvt/contracts/files.py,sha256=LGZVEcK7KsopJphSv0SY75NIf0cWpUVG5ZL33DhVMWY,15492
|
|
124
|
+
dvt/contracts/project.py,sha256=dIweYSDG5bj_OIqFb4v2v3yaaTV-vhMsStdU1sNataA,15216
|
|
125
|
+
dvt/contracts/results.py,sha256=NBT09EbMvpcpIWgbrjSJhrkzhlWUG94FRaBeEum4wrE,1204
|
|
126
|
+
dvt/contracts/selection.py,sha256=CUxsd1JP2owTjWjn9OTvRa-iAPm9SFZk8CWP40NFKJs,522
|
|
127
|
+
dvt/contracts/sql.py,sha256=PPHdf7VIeGfhqBk-6FFzZ8v2ADYazEcNWu-Lxo249fg,2532
|
|
128
|
+
dvt/contracts/state.py,sha256=R0AAlSnnZABT-E-BS3qmcVUA76JmjS8rzj9ZikKelwI,3069
|
|
129
|
+
dvt/contracts/util.py,sha256=c0WHoq8pTjuUTMGrAGo0fHkdnp7k6HNG7Ax9-QZ5z4o,1128
|
|
130
|
+
dvt/contracts/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
131
|
+
dvt/contracts/graph/manifest.py,sha256=00aHvmlC-sPcBw6pPJNMXKfeMlRpsj1Ahw0OZ6Lhfko,73986
|
|
132
|
+
dvt/contracts/graph/metrics.py,sha256=zNRry9_xz0t-FfUB7LlX8bzc2osSnB8eNxiZncRuD-w,3869
|
|
133
|
+
dvt/contracts/graph/model_config.py,sha256=jUX7SrhRJJByx0i0M6dQ-Zzww3GQmn0NmCbeBGNquJw,1967
|
|
134
|
+
dvt/contracts/graph/node_args.py,sha256=KAx6u0r_xwRguEwomPK3EwqoU-W2kvf6HfbH8amVc00,1273
|
|
135
|
+
dvt/contracts/graph/nodes.py,sha256=CwwdcDWwLd1mF6Yy8s7RMNsGOv2ZbeC6pTnnFNJYyW0,61696
|
|
136
|
+
dvt/contracts/graph/semantic_manifest.py,sha256=uR3RkDaxeF1pz2YkdzOBw9u99zQsecyw1xglhdJbH0E,10856
|
|
137
|
+
dvt/contracts/graph/unparsed.py,sha256=F4xQdqVI0nTWwxc8AnCs9lkS5wYZpwfxBnjDoeGWhZE,27029
|
|
138
|
+
dvt/deps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
139
|
+
dvt/deps/base.py,sha256=gn1WbfQi_AxOB11QnFkvAyTj7Aev3pDWKeMSAMkhB6s,4779
|
|
140
|
+
dvt/deps/git.py,sha256=aARaSeUwfgjkZNAObM9afHC8PcL9v2L3dXAWEScY3JI,6447
|
|
141
|
+
dvt/deps/local.py,sha256=UUIzEBphdD_9cfddTPypnqQVIdDpD_m_DiGx62FkIeM,2508
|
|
142
|
+
dvt/deps/registry.py,sha256=aMds564yL6ngYh7PaRKydL7FkhQdngTzTJxYcmZwdOg,4541
|
|
143
|
+
dvt/deps/resolver.py,sha256=3uXhSl_1PwRWfTeN8r-wo5pFGSP2m2urwmr1G-dUpgs,5067
|
|
144
|
+
dvt/deps/tarball.py,sha256=NYTnNIUB4hU-pOD6NXaHNd4GCjH-kek_4b2t6NoXFNQ,4545
|
|
145
|
+
dvt/docs/source/conf.py,sha256=MUDFtRYQic1qn16ygvLMarmWJ6g61-DvTlcEx3f5Te4,1060
|
|
146
|
+
dvt/docs/source/_ext/dbt_click.py,sha256=l9VOb8Ja_DhcUzUcC3_YsA8BKUF5Z-krJIVapc9Jnu4,3544
|
|
147
|
+
dvt/event_time/event_time.py,sha256=KmDp54TT4ohq9FCVu5QhMSBKAJuVQ8HcN01dxzbtLnE,1904
|
|
148
|
+
dvt/event_time/sample_window.py,sha256=erkDCgfr57eun4BQIJCIOd1bz2THZlhUm2Ec3DOteag,2262
|
|
149
|
+
dvt/events/__init__.py,sha256=uQp2josLnrlLBqtIBAl5p9RkEMWKP6_toYYgDYDf1LI,455
|
|
150
|
+
dvt/events/base_types.py,sha256=xJvxBeSNgUR8hV0CeKdIWbaVYrp_o-CQwZtocbB97w8,962
|
|
151
|
+
dvt/events/core_types_pb2.py,sha256=Uyi6hVP6Vn9afppo33hC3n-kC4Ljl-l6sEZS6tC3-Qw,123
|
|
152
|
+
dvt/events/logging.py,sha256=rcOdC0Gmcd8Dntjb3ApZquJHQJRhlVSNqjgjczbcIe8,3762
|
|
153
|
+
dvt/events/types.py,sha256=GbiicHyp0TntDci7QqDf4Ys47cTsrBqTZyTewHL-SvI,75053
|
|
154
|
+
dvt/graph/__init__.py,sha256=cyK8jC-TCcs2O84HStOdS6SS-__09cnmeIVbumZJm_g,404
|
|
155
|
+
dvt/graph/cli.py,sha256=jbsEwXqzA5tmMcbQLkzNw1e9HhCFEKxomPlOSTEu1g4,9024
|
|
156
|
+
dvt/graph/graph.py,sha256=cxTI8WQziuY08nL4dwe-3orKsLK4C8E_TEZKTYnRkTs,6749
|
|
157
|
+
dvt/graph/queue.py,sha256=vEVyOJ73e0dTO2H-xJ8hG2jdoDF0fHzL___Yho_ad3Y,7600
|
|
158
|
+
dvt/graph/selector.py,sha256=n3l-A_01wF7cciHTevTE7K5C2lHQihYDAbVAW7LpYm4,15781
|
|
159
|
+
dvt/graph/selector_methods.py,sha256=aRhuO2UZW2cN4y9cWV3mhWx-V6_sjBZCtdlBMyNADZg,38546
|
|
160
|
+
dvt/graph/selector_spec.py,sha256=2ex4_lDnwr2b_4w5rc5oNFurOl6f-KtDwVmSPB3keXw,7053
|
|
161
|
+
dvt/graph/thread_pool.py,sha256=OL0-v3sTiD6-BcyqL-GXDuYydMI9eb1hpUi7y5XaaSs,420
|
|
162
|
+
dvt/include/README.md,sha256=C-sEdxQaBIq8kS7sw-CnmDBwCIKO9c8xefGzVGL6nxo,3120
|
|
163
|
+
dvt/include/__init__.py,sha256=qEFeq3yuf3lQKVseALmL8aPM8fpCS54B_5pry00M3hk,76
|
|
164
|
+
dvt/include/global_project.py,sha256=hOkYLzg7cTs7Cp9lEn1IvNEcZlODpd6KxqQJweucHmY,189
|
|
165
|
+
dvt/include/starter_project/.gitignore,sha256=1jJAyXSzJ3YUm0nx3i7wUSE4RjQMX3ad6F8O88UbtzI,29
|
|
166
|
+
dvt/include/starter_project/README.md,sha256=55nDkX5uQXWmawpQbgG1hbyn64j_CegDBQddQ2C85C8,571
|
|
167
|
+
dvt/include/starter_project/__init__.py,sha256=vBGWeG-dHHkimfnX8axBJ4IgAowFw8xADmo6Auzn2xc,52
|
|
168
|
+
dvt/include/starter_project/dvt_project.yml,sha256=j6C5m84r0B6ml9aXaW_ZPlZMuBPmdFzNQoEz2k0qrgI,1260
|
|
169
|
+
dvt/include/starter_project/analyses/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
170
|
+
dvt/include/starter_project/macros/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
171
|
+
dvt/include/starter_project/models/example/my_first_dbt_model.sql,sha256=hCJR9e0dl5INN0jZaGuMBaOgBx7HmQ-UjzZ5ZJF4iu0,475
|
|
172
|
+
dvt/include/starter_project/models/example/my_second_dbt_model.sql,sha256=s6o0byg_PJyadZNvO4DSVyypqzmu5MArMFU9P-K6VpI,115
|
|
173
|
+
dvt/include/starter_project/models/example/schema.yml,sha256=q-QZZlZI0qGJzmy9CnY-EWry2ZY4NKLI6TZ4uAsCuV8,447
|
|
174
|
+
dvt/include/starter_project/seeds/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
175
|
+
dvt/include/starter_project/snapshots/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
176
|
+
dvt/include/starter_project/tests/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
177
|
+
dvt/jsonschemas/__init__.py,sha256=1Hknl-BkcVl_D3_As2V8GDkCrUV69Fp-66Tehjj9F4Q,56
|
|
178
|
+
dvt/jsonschemas/jsonschemas.py,sha256=e84gmoFTlZNyshNtkAyNqLdL4bQoZdg6QSQlNdEqnQc,11431
|
|
179
|
+
dvt/jsonschemas/project/0.0.110.json,sha256=Kwof3-KxyOgiUo7O9fvdSM3BoqnlLdkH3gNO-rN1IAk,93337
|
|
180
|
+
dvt/jsonschemas/project/0.0.85.json,sha256=ZevfKWEaekLHpQLPp-KeV8VGdBFhorILCURGyM8xQvc,38918
|
|
181
|
+
dvt/jsonschemas/resources/0.0.110.json,sha256=l1SgOzKmX0YE1E-e_PZViwCYLwQFQwGhzqAd7t3-dco,50588
|
|
182
|
+
dvt/jsonschemas/resources/0.0.85.json,sha256=dS5dERUBIvd2TLF8VwZNj6xLjOO3HuJf2EzeLOHSm8E,48785
|
|
183
|
+
dvt/jsonschemas/resources/latest.json,sha256=xGLfWu8iTP08hlQnHz_OiMrhDDRhTHnIBLxwTN4386w,134508
|
|
184
|
+
dvt/materializations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
185
|
+
dvt/materializations/incremental/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
186
|
+
dvt/materializations/incremental/microbatch.py,sha256=c37emuW554zKaSwEb5Ojq2ww6_yoU7LCTjTb9H9VUBg,10805
|
|
187
|
+
dvt/parser/__init__.py,sha256=xXgCErnu80x6oDRPGy0wIGtpB3YjhivfN6lPWbfm5yM,652
|
|
188
|
+
dvt/parser/analysis.py,sha256=iLiSUFVF631P5LcGA_TwiaprjaJ9bIqYUn3l-eo7OM4,630
|
|
189
|
+
dvt/parser/base.py,sha256=jpFJ2gBTQen51sir1pvxV6hddKIn05So0KjpcTmPlFM,22639
|
|
190
|
+
dvt/parser/common.py,sha256=jxDCB7guvE7Lpfj7MMk6lNFwLUxsw9HurjyAcM4qF18,7552
|
|
191
|
+
dvt/parser/docs.py,sha256=uLTwy4zDWdFKtYJrKEFoxdFWMgL98Ri8sGQD6J758iA,1871
|
|
192
|
+
dvt/parser/fixtures.py,sha256=D9u-ZJYIvus64h-STRA_SQLUX0uQgiC9VCwr4zM5W08,1793
|
|
193
|
+
dvt/parser/functions.py,sha256=nSn1tlAqgHHeGxdoSYsWy6mRV1xij8o9CAc8wAMpUoI,1075
|
|
194
|
+
dvt/parser/generic_test.py,sha256=Owy5GgBa0dgpWJ2WTBTp_wC03sYa725owsuMkERvoYk,3497
|
|
195
|
+
dvt/parser/generic_test_builders.py,sha256=a0TIRuigDiyimgjiCuasv8oKeLIYeW7qMqN9OUSrygI,12928
|
|
196
|
+
dvt/parser/hooks.py,sha256=eKPJv0qVLOb9OJXi3G-gkNyYYLfubS5Qkrq3SMiClnk,3596
|
|
197
|
+
dvt/parser/macros.py,sha256=Jkx68WEIpl17552gxVIZwB9mzSrV8mA-KATC5Rck600,5192
|
|
198
|
+
dvt/parser/manifest.py,sha256=lC3EKsk2EQac8UMDRdybs33pARY3a0SAAz9osQplB6s,95010
|
|
199
|
+
dvt/parser/models.py,sha256=3JIGLAxhspVH-lx8tGz8CV3JocaTDptBXBMu-b6A20M,24046
|
|
200
|
+
dvt/parser/partial.py,sha256=QMf8QF0mBKf5Q-p_TbSsMpcjUFSVKPB_RiRcb1rW5qM,59234
|
|
201
|
+
dvt/parser/read_files.py,sha256=DEwQcCBKzBSi7jvA6BoomLGKYwYrk0tEe0YLv-KShrE,17866
|
|
202
|
+
dvt/parser/schema_generic_tests.py,sha256=FRam9uZpGisj4PaXtaQQPo-er1N91P60kMOOGkM5T-g,17516
|
|
203
|
+
dvt/parser/schema_renderer.py,sha256=ZM2LZfJBErTMneLg2ZVsB9ES_7FOmu6dJwcXIlJNNVI,4079
|
|
204
|
+
dvt/parser/schema_yaml_readers.py,sha256=sxzZy7OtJR7paFcRIZxZ6Ms65Rpam279kTjkNXJK9ao,35331
|
|
205
|
+
dvt/parser/schemas.py,sha256=iXtSd13oYq99z2BzKjWXaTRKkqVru55bSgjXwXG9CJE,61383
|
|
206
|
+
dvt/parser/search.py,sha256=duhSUuIfqJryme2Cm06QoCc48rmhuc0MnPR2_J7icjk,4472
|
|
207
|
+
dvt/parser/seeds.py,sha256=b7Beb3fzfsGs9Vd0FtkLvFXjA7O1njlaVRBRfXcQtJg,1018
|
|
208
|
+
dvt/parser/singular_test.py,sha256=72ApawOYBwob7t9rf-26ijdNoXtmhPeBrNGZp5jf7vg,690
|
|
209
|
+
dvt/parser/snapshots.py,sha256=Z0quKB5e47Gagk14yatx6ACxMWh3Xe6rPjO9oMnN1DM,1353
|
|
210
|
+
dvt/parser/sources.py,sha256=cUM5z39n6wC0nM2jDQmQoMETCM0KeFG9XIwmSZ_6Jxk,23376
|
|
211
|
+
dvt/parser/sql.py,sha256=rDJTXoVkyUT7SRz4smkYGhBHp7rLxejbnC2kwW_gLi0,1957
|
|
212
|
+
dvt/parser/unit_tests.py,sha256=BzZfV1pGKCBWu5wJVLunOdU0o2te80AyWUGiiB1OlSA,28303
|
|
213
|
+
dvt/plugins/__init__.py,sha256=lJPCl_8gxApqUDCip0Jqjarqpdz9PtWrnlRBy7M1320,561
|
|
214
|
+
dvt/plugins/contracts.py,sha256=97jExzUGfRhr0tCgrIlStZAiBDDAcvD0qEAEw5Id4X0,429
|
|
215
|
+
dvt/plugins/exceptions.py,sha256=fk7pH4XTkfXKg_lNS7FUIUV9RIvalae4E-ZJ9nnmwJw,112
|
|
216
|
+
dvt/plugins/manager.py,sha256=6T9bA_U2U5teaKozDL_NKAUWjYsnFVgrGRIAcazDveY,5960
|
|
217
|
+
dvt/plugins/manifest.py,sha256=23hndXhT2Ls57TkyWEJKhfDNwb7vODc2uCE-UnDxigQ,723
|
|
218
|
+
dvt/runners/__init__.py,sha256=T_njT-Z0o-yQFfD8l1ykgafLNKBRaI8agKDSM3xyXR4,93
|
|
219
|
+
dvt/runners/exposure_runner.py,sha256=lcvuapdg87BHN_WQFYHCVFhhVLxwh0tUUARffVv5VUY,176
|
|
220
|
+
dvt/runners/no_op_runner.py,sha256=f90ozL5NJQT7ESVqYCUoJzI0qP51nwU8Psyrfn3xir0,1285
|
|
221
|
+
dvt/runners/saved_query_runner.py,sha256=vyRQEPf2iA4Og3L65Km9aFsC40JYQRI_3eYjIs0XVEY,181
|
|
222
|
+
dvt/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
223
|
+
dvt/task/base.py,sha256=gp7cPUtp6Cr4PtfHeDjXwtEOwzImCIvmPmmdBqLYl_0,17924
|
|
224
|
+
dvt/task/build.py,sha256=NAmXuYowQEbBLhbTMFMbE7nq2ieQG5sdWliWVtuacrs,8492
|
|
225
|
+
dvt/task/clean.py,sha256=p2hiLHhkS4JPY3RtEG-jdABL7qdIS8uAWBQ3eGN3niY,2173
|
|
226
|
+
dvt/task/clone.py,sha256=b_gzzT_MoriTHXSsMyrmJgG-B8Rh8y2EtjL1q0Mwt-Q,6407
|
|
227
|
+
dvt/task/compile.py,sha256=6RYXNfTeoYqK3mYKUTVM46_Q9NPXvHUSEnZTk2zMDHs,5756
|
|
228
|
+
dvt/task/compute.py,sha256=wG92zwsjHAO5qPYEgF-k16_-cYXKxBkIv4NYmpD2Npk,14211
|
|
229
|
+
dvt/task/debug.py,sha256=PXeVFZfqRE1tvANqdWHIc71C-ELRBOwcnyHEQRPwmq0,25240
|
|
230
|
+
dvt/task/deps.py,sha256=48V9XAI-VL8brfSW1kDPiCYlyVYdleAH0BrNdP6XWEI,10556
|
|
231
|
+
dvt/task/freshness.py,sha256=bJQ00ciHHBa3bPKWW-pfR81mKRveeLyW1dAac3TWB-Q,12922
|
|
232
|
+
dvt/task/function.py,sha256=FVmjqSMN1gka6dXRMvRLRi-u9JSyOS3o45yzy5tTcM0,5415
|
|
233
|
+
dvt/task/group_lookup.py,sha256=YKo2o1gblNNFuPkz8xDwTRTRAhwqQikoO6AJTjKiwpE,1444
|
|
234
|
+
dvt/task/init.py,sha256=4rAfcXoJDmbgBAREjvvi4hjMCGY19CUaOodh6lHa5wo,16510
|
|
235
|
+
dvt/task/list.py,sha256=ri0G50GL7Btk-KGgIJ6c2ookT6jkDgAn5PF85rr9QKc,9536
|
|
236
|
+
dvt/task/printer.py,sha256=q2KKHJosLuf6s7cPFiIEvlcNs097jaYmkPMi9pYOV1A,5977
|
|
237
|
+
dvt/task/profiles.py,sha256=p9a5NwasDkr60lnSa60g_Mu5TSxDo9qERrTcaLfkUi0,9316
|
|
238
|
+
dvt/task/retry.py,sha256=z1K-kr02qKS0mFmEw12kEUFMoHcj9iVdALA0JoPrFN0,6217
|
|
239
|
+
dvt/task/run.py,sha256=tkp4hHrz2T1BJHAcBikGXUIFLtun8tmXwQsOQ_j9WFM,44367
|
|
240
|
+
dvt/task/run_operation.py,sha256=jzcJTI42RrrfoDDiWuZ1ayJQU5rYC5y3RIG4rvaiUlM,4787
|
|
241
|
+
dvt/task/runnable.py,sha256=VJKWDXgg7IbttPFTGd4m4XvT0nsrmAtx-87UpgMIqVw,31447
|
|
242
|
+
dvt/task/seed.py,sha256=y4KF121R9SolnfwRUnE4RjtrzXIqHROhqrGG-BGSu4Y,3495
|
|
243
|
+
dvt/task/show.py,sha256=FPNwOnZz4I4is4dN_5HcgMZsgplJx4R8F4rtiATOJzY,5322
|
|
244
|
+
dvt/task/snapshot.py,sha256=3CGahCSxbpuTTBbfwgGDzBF_LOxH42WM1Kyv6iOTf-Y,2040
|
|
245
|
+
dvt/task/sql.py,sha256=I4U1d-v5a1VgYXX76zz_gSB7tE9kHUALQ7h_fE0NwhA,3804
|
|
246
|
+
dvt/task/test.py,sha256=d9zpTFQgAE2Ay-JYNzyXvqb6euxvKtyVSiYvxFswhyw,16998
|
|
247
|
+
dvt/task/docs/__init__.py,sha256=fJAAr0OsOdzuS3ihetC9WQhL2h67Ah0H9BeFg2RqYlE,106
|
|
248
|
+
dvt/task/docs/generate.py,sha256=w4BUYOcQ-1eZdOm7eIvvMMICJeRFu50ZNQUk8REyLMw,15398
|
|
249
|
+
dvt/task/docs/index.html,sha256=mIIjEWVRcQRMrhACjTbhNLdRE2QBTPhARL171icIcRM,1709115
|
|
250
|
+
dvt/task/docs/serve.py,sha256=2TvLM5gUYQXKlJ_sXGeNqQePdDmRj1nKwg03t5cskxo,876
|
|
251
|
+
dvt/tests/util.py,sha256=UKV8sW40c81D0rfMUvzhbyTVnCmCBVCdNuYeP-YdJ0Y,21022
|
|
252
|
+
dvt/tests/fixtures/__init__.py,sha256=NHa3hnjcznIhj-6IjHii35RcHnG5NRsbPh5MGnd_hQA,31
|
|
253
|
+
dvt/tests/fixtures/project.py,sha256=37LBZ662QNkSbCumAIrOdLMHapfYvAnSmsQ75K2HHM0,20837
|
|
254
|
+
dvt/utils/__init__.py,sha256=J-Zb-1T350Mzdv3GR3_qQ4galjhagP44fqPoeWHj4FQ,140
|
|
255
|
+
dvt/utils/artifact_upload.py,sha256=Bg2ggd09ZrrS9-ZqDlguL08N91RHtMZK05v5tdcPqYE,5523
|
|
256
|
+
dvt/utils/utils.py,sha256=-6XHudk6kWzBFxc3-zZF_wFaAstWdZDeistJJ48zRNg,12803
|
|
257
|
+
dvt_core-1.11.0b4.dist-info/METADATA,sha256=iUPr3rvgvmCZ9tRLpnAC_RIOmIw9kN9dRP45Mc7LwqQ,7073
|
|
258
|
+
dvt_core-1.11.0b4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
259
|
+
dvt_core-1.11.0b4.dist-info/entry_points.txt,sha256=9eb2F0KYsp0cz01uOJPxQzo5cqQZhG1vtgNcTr1Civ4,41
|
|
260
|
+
dvt_core-1.11.0b4.dist-info/top_level.txt,sha256=hlc4jk_0dNSn8LJ89wTCSdH2dE9EhwKn6YVjbvoYzR8,4
|
|
261
|
+
dvt_core-1.11.0b4.dist-info/RECORD,,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
dvt
|