etlplus 0.5.1__tar.gz → 0.5.3__tar.gz

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.
Files changed (136) hide show
  1. {etlplus-0.5.1/etlplus.egg-info → etlplus-0.5.3}/PKG-INFO +49 -1
  2. {etlplus-0.5.1 → etlplus-0.5.3}/README.md +48 -0
  3. {etlplus-0.5.1 → etlplus-0.5.3/etlplus.egg-info}/PKG-INFO +49 -1
  4. {etlplus-0.5.1 → etlplus-0.5.3}/.coveragerc +0 -0
  5. {etlplus-0.5.1 → etlplus-0.5.3}/.editorconfig +0 -0
  6. {etlplus-0.5.1 → etlplus-0.5.3}/.gitattributes +0 -0
  7. {etlplus-0.5.1 → etlplus-0.5.3}/.github/actions/python-bootstrap/action.yml +0 -0
  8. {etlplus-0.5.1 → etlplus-0.5.3}/.github/workflows/ci.yml +0 -0
  9. {etlplus-0.5.1 → etlplus-0.5.3}/.gitignore +0 -0
  10. {etlplus-0.5.1 → etlplus-0.5.3}/.pre-commit-config.yaml +0 -0
  11. {etlplus-0.5.1 → etlplus-0.5.3}/.ruff.toml +0 -0
  12. {etlplus-0.5.1 → etlplus-0.5.3}/CODE_OF_CONDUCT.md +0 -0
  13. {etlplus-0.5.1 → etlplus-0.5.3}/CONTRIBUTING.md +0 -0
  14. {etlplus-0.5.1 → etlplus-0.5.3}/DEMO.md +0 -0
  15. {etlplus-0.5.1 → etlplus-0.5.3}/LICENSE +0 -0
  16. {etlplus-0.5.1 → etlplus-0.5.3}/MANIFEST.in +0 -0
  17. {etlplus-0.5.1 → etlplus-0.5.3}/Makefile +0 -0
  18. {etlplus-0.5.1 → etlplus-0.5.3}/REFERENCES.md +0 -0
  19. {etlplus-0.5.1 → etlplus-0.5.3}/docs/pipeline-guide.md +0 -0
  20. {etlplus-0.5.1 → etlplus-0.5.3}/docs/snippets/installation_version.md +0 -0
  21. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/__init__.py +0 -0
  22. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/__main__.py +0 -0
  23. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/__version__.py +0 -0
  24. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/README.md +0 -0
  25. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/__init__.py +0 -0
  26. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/auth.py +0 -0
  27. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/config.py +0 -0
  28. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/endpoint_client.py +0 -0
  29. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/errors.py +0 -0
  30. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/pagination/__init__.py +0 -0
  31. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/pagination/client.py +0 -0
  32. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/pagination/config.py +0 -0
  33. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/pagination/paginator.py +0 -0
  34. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/rate_limiting/__init__.py +0 -0
  35. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/rate_limiting/config.py +0 -0
  36. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/rate_limiting/rate_limiter.py +0 -0
  37. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/request_manager.py +0 -0
  38. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/retry_manager.py +0 -0
  39. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/transport.py +0 -0
  40. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/api/types.py +0 -0
  41. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/cli/__init__.py +0 -0
  42. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/cli/app.py +0 -0
  43. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/cli/handlers.py +0 -0
  44. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/cli/main.py +0 -0
  45. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/config/__init__.py +0 -0
  46. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/config/connector.py +0 -0
  47. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/config/jobs.py +0 -0
  48. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/config/pipeline.py +0 -0
  49. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/config/profile.py +0 -0
  50. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/config/types.py +0 -0
  51. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/config/utils.py +0 -0
  52. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/ddl.py +0 -0
  53. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/enums.py +0 -0
  54. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/extract.py +0 -0
  55. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/file.py +0 -0
  56. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/load.py +0 -0
  57. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/mixins.py +0 -0
  58. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/py.typed +0 -0
  59. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/run.py +0 -0
  60. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/run_helpers.py +0 -0
  61. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/templates/__init__.py +0 -0
  62. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/templates/ddl.sql.j2 +0 -0
  63. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/templates/view.sql.j2 +0 -0
  64. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/transform.py +0 -0
  65. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/types.py +0 -0
  66. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/utils.py +0 -0
  67. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/validate.py +0 -0
  68. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/validation/__init__.py +0 -0
  69. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus/validation/utils.py +0 -0
  70. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus.egg-info/SOURCES.txt +0 -0
  71. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus.egg-info/dependency_links.txt +0 -0
  72. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus.egg-info/entry_points.txt +0 -0
  73. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus.egg-info/requires.txt +0 -0
  74. {etlplus-0.5.1 → etlplus-0.5.3}/etlplus.egg-info/top_level.txt +0 -0
  75. {etlplus-0.5.1 → etlplus-0.5.3}/examples/README.md +0 -0
  76. {etlplus-0.5.1 → etlplus-0.5.3}/examples/configs/ddl_spec.yml +0 -0
  77. {etlplus-0.5.1 → etlplus-0.5.3}/examples/configs/pipeline.yml +0 -0
  78. {etlplus-0.5.1 → etlplus-0.5.3}/examples/data/sample.csv +0 -0
  79. {etlplus-0.5.1 → etlplus-0.5.3}/examples/data/sample.json +0 -0
  80. {etlplus-0.5.1 → etlplus-0.5.3}/examples/data/sample.xml +0 -0
  81. {etlplus-0.5.1 → etlplus-0.5.3}/examples/data/sample.xsd +0 -0
  82. {etlplus-0.5.1 → etlplus-0.5.3}/examples/data/sample.yaml +0 -0
  83. {etlplus-0.5.1 → etlplus-0.5.3}/examples/quickstart_python.py +0 -0
  84. {etlplus-0.5.1 → etlplus-0.5.3}/pyproject.toml +0 -0
  85. {etlplus-0.5.1 → etlplus-0.5.3}/pytest.ini +0 -0
  86. {etlplus-0.5.1 → etlplus-0.5.3}/setup.cfg +0 -0
  87. {etlplus-0.5.1 → etlplus-0.5.3}/setup.py +0 -0
  88. {etlplus-0.5.1 → etlplus-0.5.3}/tests/__init__.py +0 -0
  89. {etlplus-0.5.1 → etlplus-0.5.3}/tests/conftest.py +0 -0
  90. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/conftest.py +0 -0
  91. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_cli.py +0 -0
  92. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_examples_data_parity.py +0 -0
  93. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_pagination_strategy.py +0 -0
  94. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_pipeline_smoke.py +0 -0
  95. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_pipeline_yaml_load.py +0 -0
  96. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_run.py +0 -0
  97. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_run_profile_pagination_defaults.py +0 -0
  98. {etlplus-0.5.1 → etlplus-0.5.3}/tests/integration/test_i_run_profile_rate_limit_defaults.py +0 -0
  99. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/conftest.py +0 -0
  100. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_auth.py +0 -0
  101. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_config.py +0 -0
  102. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_endpoint_client.py +0 -0
  103. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_mocks.py +0 -0
  104. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_pagination_client.py +0 -0
  105. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_pagination_config.py +0 -0
  106. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_paginator.py +0 -0
  107. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_rate_limit_config.py +0 -0
  108. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_rate_limiter.py +0 -0
  109. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_request_manager.py +0 -0
  110. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_retry_manager.py +0 -0
  111. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_transport.py +0 -0
  112. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/api/test_u_types.py +0 -0
  113. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/cli/conftest.py +0 -0
  114. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/cli/test_u_cli_app.py +0 -0
  115. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/cli/test_u_cli_handlers.py +0 -0
  116. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/cli/test_u_cli_main.py +0 -0
  117. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/config/test_u_config_utils.py +0 -0
  118. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/config/test_u_connector.py +0 -0
  119. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/config/test_u_jobs.py +0 -0
  120. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/config/test_u_pipeline.py +0 -0
  121. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/conftest.py +0 -0
  122. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_enums.py +0 -0
  123. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_extract.py +0 -0
  124. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_file.py +0 -0
  125. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_load.py +0 -0
  126. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_main.py +0 -0
  127. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_mixins.py +0 -0
  128. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_run.py +0 -0
  129. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_run_helpers.py +0 -0
  130. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_transform.py +0 -0
  131. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_utils.py +0 -0
  132. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_validate.py +0 -0
  133. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/test_u_version.py +0 -0
  134. {etlplus-0.5.1 → etlplus-0.5.3}/tests/unit/validation/test_u_validation_utils.py +0 -0
  135. {etlplus-0.5.1 → etlplus-0.5.3}/tools/run_pipeline.py +0 -0
  136. {etlplus-0.5.1 → etlplus-0.5.3}/tools/update_demo_snippets.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: etlplus
3
- Version: 0.5.1
3
+ Version: 0.5.3
4
4
  Summary: A Swiss Army knife for simple ETL operations
5
5
  Home-page: https://github.com/Dagitali/ETLPlus
6
6
  Author: ETLPlus Team
@@ -61,6 +61,8 @@ package and command-line interface for data extraction, validation, transformati
61
61
  - [Quickstart](#quickstart)
62
62
  - [Usage](#usage)
63
63
  - [Command Line Interface](#command-line-interface)
64
+ - [Inspect Pipelines](#inspect-pipelines)
65
+ - [Render SQL DDL](#render-sql-ddl)
64
66
  - [Extract Data](#extract-data)
65
67
  - [Validate Data](#validate-data)
66
68
  - [Transform Data](#transform-data)
@@ -88,6 +90,14 @@ package and command-line interface for data extraction, validation, transformati
88
90
 
89
91
  ## Features
90
92
 
93
+ - **Inspect** data pipeline definitions before running them:
94
+ - Summarize jobs, sources, targets, and transforms
95
+ - Confirm configuration changes by printing focused sections on demand
96
+
97
+ - **Render** SQL DDL from shared table specs:
98
+ - Generate CREATE TABLE or view statements
99
+ - Swap templates or direct output to files for database migrations
100
+
91
101
  - **Extract** data from multiple sources:
92
102
  - Files (CSV, JSON, XML, YAML)
93
103
  - Databases (connection string support)
@@ -169,6 +179,44 @@ etlplus --help
169
179
  etlplus --version
170
180
  ```
171
181
 
182
+ #### Inspect Pipelines
183
+
184
+ Use `etlplus list` to explore pipeline YAML definitions without running them. The command can print
185
+ job names, summarize configured sources and targets, or drill into specific sections.
186
+
187
+ List jobs and show a pipeline summary:
188
+ ```bash
189
+ etlplus list --config examples/configs/pipeline.yml --jobs
190
+ etlplus list --config examples/configs/pipeline.yml --summary
191
+ ```
192
+
193
+ Show sources or transforms for troubleshooting:
194
+ ```bash
195
+ etlplus list --config examples/configs/pipeline.yml --sources
196
+ etlplus list --config examples/configs/pipeline.yml --transforms
197
+ ```
198
+
199
+ #### Render SQL DDL
200
+
201
+ Use `etlplus render` to turn table schema specs into ready-to-run SQL. Render from a pipeline config
202
+ or from a standalone schema file, and choose the built-in `ddl` or `view` templates (or provide your
203
+ own).
204
+
205
+ Render all tables defined in a pipeline:
206
+ ```bash
207
+ etlplus render --config examples/configs/pipeline.yml --template ddl
208
+ ```
209
+
210
+ Render a single table in that pipeline:
211
+ ```bash
212
+ etlplus render --config examples/configs/pipeline.yml --table customers --template view
213
+ ```
214
+
215
+ Render from a standalone table spec to a file:
216
+ ```bash
217
+ etlplus render --spec schemas/customer.yml --template view -o temp/customer_view.sql
218
+ ```
219
+
172
220
  #### Extract Data
173
221
 
174
222
  Note: For file sources, the format is normally inferred from the filename extension. Use
@@ -19,6 +19,8 @@ package and command-line interface for data extraction, validation, transformati
19
19
  - [Quickstart](#quickstart)
20
20
  - [Usage](#usage)
21
21
  - [Command Line Interface](#command-line-interface)
22
+ - [Inspect Pipelines](#inspect-pipelines)
23
+ - [Render SQL DDL](#render-sql-ddl)
22
24
  - [Extract Data](#extract-data)
23
25
  - [Validate Data](#validate-data)
24
26
  - [Transform Data](#transform-data)
@@ -46,6 +48,14 @@ package and command-line interface for data extraction, validation, transformati
46
48
 
47
49
  ## Features
48
50
 
51
+ - **Inspect** data pipeline definitions before running them:
52
+ - Summarize jobs, sources, targets, and transforms
53
+ - Confirm configuration changes by printing focused sections on demand
54
+
55
+ - **Render** SQL DDL from shared table specs:
56
+ - Generate CREATE TABLE or view statements
57
+ - Swap templates or direct output to files for database migrations
58
+
49
59
  - **Extract** data from multiple sources:
50
60
  - Files (CSV, JSON, XML, YAML)
51
61
  - Databases (connection string support)
@@ -127,6 +137,44 @@ etlplus --help
127
137
  etlplus --version
128
138
  ```
129
139
 
140
+ #### Inspect Pipelines
141
+
142
+ Use `etlplus list` to explore pipeline YAML definitions without running them. The command can print
143
+ job names, summarize configured sources and targets, or drill into specific sections.
144
+
145
+ List jobs and show a pipeline summary:
146
+ ```bash
147
+ etlplus list --config examples/configs/pipeline.yml --jobs
148
+ etlplus list --config examples/configs/pipeline.yml --summary
149
+ ```
150
+
151
+ Show sources or transforms for troubleshooting:
152
+ ```bash
153
+ etlplus list --config examples/configs/pipeline.yml --sources
154
+ etlplus list --config examples/configs/pipeline.yml --transforms
155
+ ```
156
+
157
+ #### Render SQL DDL
158
+
159
+ Use `etlplus render` to turn table schema specs into ready-to-run SQL. Render from a pipeline config
160
+ or from a standalone schema file, and choose the built-in `ddl` or `view` templates (or provide your
161
+ own).
162
+
163
+ Render all tables defined in a pipeline:
164
+ ```bash
165
+ etlplus render --config examples/configs/pipeline.yml --template ddl
166
+ ```
167
+
168
+ Render a single table in that pipeline:
169
+ ```bash
170
+ etlplus render --config examples/configs/pipeline.yml --table customers --template view
171
+ ```
172
+
173
+ Render from a standalone table spec to a file:
174
+ ```bash
175
+ etlplus render --spec schemas/customer.yml --template view -o temp/customer_view.sql
176
+ ```
177
+
130
178
  #### Extract Data
131
179
 
132
180
  Note: For file sources, the format is normally inferred from the filename extension. Use
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: etlplus
3
- Version: 0.5.1
3
+ Version: 0.5.3
4
4
  Summary: A Swiss Army knife for simple ETL operations
5
5
  Home-page: https://github.com/Dagitali/ETLPlus
6
6
  Author: ETLPlus Team
@@ -61,6 +61,8 @@ package and command-line interface for data extraction, validation, transformati
61
61
  - [Quickstart](#quickstart)
62
62
  - [Usage](#usage)
63
63
  - [Command Line Interface](#command-line-interface)
64
+ - [Inspect Pipelines](#inspect-pipelines)
65
+ - [Render SQL DDL](#render-sql-ddl)
64
66
  - [Extract Data](#extract-data)
65
67
  - [Validate Data](#validate-data)
66
68
  - [Transform Data](#transform-data)
@@ -88,6 +90,14 @@ package and command-line interface for data extraction, validation, transformati
88
90
 
89
91
  ## Features
90
92
 
93
+ - **Inspect** data pipeline definitions before running them:
94
+ - Summarize jobs, sources, targets, and transforms
95
+ - Confirm configuration changes by printing focused sections on demand
96
+
97
+ - **Render** SQL DDL from shared table specs:
98
+ - Generate CREATE TABLE or view statements
99
+ - Swap templates or direct output to files for database migrations
100
+
91
101
  - **Extract** data from multiple sources:
92
102
  - Files (CSV, JSON, XML, YAML)
93
103
  - Databases (connection string support)
@@ -169,6 +179,44 @@ etlplus --help
169
179
  etlplus --version
170
180
  ```
171
181
 
182
+ #### Inspect Pipelines
183
+
184
+ Use `etlplus list` to explore pipeline YAML definitions without running them. The command can print
185
+ job names, summarize configured sources and targets, or drill into specific sections.
186
+
187
+ List jobs and show a pipeline summary:
188
+ ```bash
189
+ etlplus list --config examples/configs/pipeline.yml --jobs
190
+ etlplus list --config examples/configs/pipeline.yml --summary
191
+ ```
192
+
193
+ Show sources or transforms for troubleshooting:
194
+ ```bash
195
+ etlplus list --config examples/configs/pipeline.yml --sources
196
+ etlplus list --config examples/configs/pipeline.yml --transforms
197
+ ```
198
+
199
+ #### Render SQL DDL
200
+
201
+ Use `etlplus render` to turn table schema specs into ready-to-run SQL. Render from a pipeline config
202
+ or from a standalone schema file, and choose the built-in `ddl` or `view` templates (or provide your
203
+ own).
204
+
205
+ Render all tables defined in a pipeline:
206
+ ```bash
207
+ etlplus render --config examples/configs/pipeline.yml --template ddl
208
+ ```
209
+
210
+ Render a single table in that pipeline:
211
+ ```bash
212
+ etlplus render --config examples/configs/pipeline.yml --table customers --template view
213
+ ```
214
+
215
+ Render from a standalone table spec to a file:
216
+ ```bash
217
+ etlplus render --spec schemas/customer.yml --template view -o temp/customer_view.sql
218
+ ```
219
+
172
220
  #### Extract Data
173
221
 
174
222
  Note: For file sources, the format is normally inferred from the filename extension. Use
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes