fabricks 3.0.18__tar.gz → 3.0.19__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.
- {fabricks-3.0.18 → fabricks-3.0.19}/PKG-INFO +1 -1
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/_types.py +2 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/gold.py +12 -1
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/udfs.py +2 -1
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/path.py +10 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/pyproject.toml +1 -1
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job5/test_step.py +3 -3
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/_config.invoke.yml +26 -1
- fabricks-3.0.19/tests/integration/runtime/gold/gold/invoke/add_missing_modules.py +24 -0
- fabricks-3.0.19/tests/integration/runtime/gold/gold/invoke/complete_notebook.py +51 -0
- fabricks-3.0.18/tests/integration/runtime/gold/gold/invoke/pre_run/exe_2.py → fabricks-3.0.19/tests/integration/runtime/gold/transf/post_run.py +4 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/uv.lock +1 -1
- {fabricks-3.0.18 → fabricks-3.0.19}/.gitignore +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/.gitkeep +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/.python-version +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/README.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/databricks.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/helpers/init.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/helpers/job.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/helpers/runtime.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/helpers/schedule.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/helpers/step.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/index.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/introduction/layers.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/introduction/overview.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/reference/cdc.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/reference/checks-data-quality.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/reference/extenders-udfs-parsers.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/reference/table-options.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/steps/BRONZE.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/steps/GOLD.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/docs/steps/SILVER.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/cdc/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/cdc/nocdc.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/cdc/scd1.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/cdc/scd2.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/context.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/core.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/deploy.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/exceptions.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/extenders.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/job_schema.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/log.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/masks.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/metastore/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/metastore/database.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/metastore/table.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/metastore/view.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/notebooks/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/notebooks/cluster.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/notebooks/initialize.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/notebooks/process.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/notebooks/run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/notebooks/schedule.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/notebooks/terminate.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/parsers.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/schedules.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/udfs.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/utils.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/version.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/api/views.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/base/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/base/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/base/cdc.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/base/configurator.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/base/generator.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/base/merger.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/base/processor.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/cdc.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/nocdc.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/scd.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/scd1.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/scd2.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/ctes/base.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/ctes/current.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/ctes/deduplicate_hash.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/ctes/deduplicate_key.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/ctes/rectify.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/ctes/slice.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/filter.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/filters/final.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/filters/latest.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/filters/update.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/macros/bactick.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/macros/hash.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/merge.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/merges/nocdc.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/merges/scd1.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/merges/scd2.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/queries/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/queries/context.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/queries/final.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/queries/nocdc/complete.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/queries/nocdc/update.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/queries/scd1.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/queries/scd2.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/cdc/templates/query.sql.jinja +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/config.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/helpers.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/log.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/runtime.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/secret.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/spark_session.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/context/utils.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/base.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/generator.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/log.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/processor.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/terminator.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/dags/utils.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/extenders.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/job_schema.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/checker.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/configurator.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/exception.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/generator.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/invoker.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/job.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/base/processor.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/bronze.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/get_job.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/get_job_conf.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/get_job_id.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/get_jobs.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/get_schedule.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/get_schedules.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/jobs/silver.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/masks.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/parsers/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/parsers/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/parsers/base.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/parsers/decorator.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/parsers/get_parser.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/parsers/utils.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/diagrams.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/generate.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/get_schedule.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/get_schedules.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/process.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/terminate.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/schedules/views.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/steps/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/steps/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/steps/base.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/steps/get_step.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/steps/get_step_conf.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/core/views.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/masks.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/notebooks.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/schedules.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/tables.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/udfs.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/utils.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/deploy/views.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/README.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/database.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/dbobject.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/pyproject.toml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/table.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/utils.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/metastore/view.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/azure_queue.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/azure_table.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/console.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/fdict.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/helpers.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/log.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/mermaid.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/pip.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/pydantic.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/read/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/read/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/read/read.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/read/read_excel.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/read/read_yaml.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/schema/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/schema/get_json_schema_for_type.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/schema/get_schema_for_type.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/spark.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/sqlglot.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/write/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/write/delta.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/fabricks/utils/write/stream.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/format.sh +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/mkdocs.sh +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/mkdocs.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/README.md +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/_types.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/add_missing_modules.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/armageddon.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/compare.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/king/2022/01/01/0001/king_202201010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/king/2022/01/02/0001/king_202201020001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/king__deletelog/2022/02/01/0001/king_202201010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/prince/2022/01/01/0001/prince_202201010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/princess/2022/01/01/0001/princess_202201010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/queen/2022/01/01/0001/queen_202201010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/queen/2022/01/02/0001/queen_202201020001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/queen/2022/01/04/0001/queen_202201040001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/queen__deletelog/2022/01/03/0001/queen_202201030001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/queen__deletelog/2022/01/04/0001/queen_202201040001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job1/too_many_columns/2022/01/01/0001/sample_202201010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job10/king/2022/10/01/0001/king_202210010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job10/king/2022/10/02/0001/king_202210020001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job10/king/2022/10/02/0002/king_202210020002.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job10/king/2022/10/03/0001/king_202210030001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job10/queen__deletelog/2022/10/01/0001/queen_202210010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job11/king/2022/11/01/0001/king_202210010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job11/king__deletelog/2022/11/01/0001/king_202211010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job2/king/2022/02/05/0001/king_202202050001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job2/prince__deletelog/2022/02/01/0001/prince_202202010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job2/princess/2022/02/05/0001/princess_202202050001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job2/queen/2022/02/05/0001/queen_202202050001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job3/king/2022/03/01/001234/king_20220301001234.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job3/king__deletelog/2022/03/01/001234/king_20220301001234.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job3/queen/2022/03/05/001234/queen_20220305001234.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job3/queen/2022/03/06/0001/queen_202203060001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job4/king/2022/04/01/0001/king_202204010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job4/monarch/2022/04/01/0001/monarch_202204010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job4/queen/2022/04/01/0001/queen_202204010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job4/regent/2022/04/01/0001/regent_202204010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job5/king/2022/05/01/0001/king_202205010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job5/queen/2022/05/01/0001/queen_202205010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job6/king/2022/06/01/0001/king_202206010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job6/queen/2022/06/01/0001/queen_202206010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job7/king/2022/07/01/0001/king_202207010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job7/queen/2022/07/01/0001/queen_202207010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job8/king/2022/08/01/0001/king_202208010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job8/queen/2022/08/01/0001/queen_202208010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king/2022/09/01/0001/king_202209010001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king/2022/09/03/0001/king_202209030001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king/2022/09/03/0002/king_202209030002.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king/2022/09/08/0001/king_202209080001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king__deletelog/2022/09/02/0001/king_202209020001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king__deletelog/2022/09/04/0001/king_202209040001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king__deletelog/2022/09/04/0005/king_202209040005.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/king__deletelog/2022/09/04/0009/king_202209040009.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/queen/2022/09/08/0001/queen_202209080001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/data/job9/queen__deletelog/2022/09/01/0001/queen_202209030001.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job01.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job02.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job03.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job04.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job05.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job06.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job07.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job08.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job09.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job10.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd1/job11.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job01.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job02.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job03.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job04.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job05.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job06.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job07.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job08.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job09.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job10.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/gold/scd2/job11.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job01.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job02.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job03.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job04.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job05.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job06.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job07.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job08.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job09.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job10.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd1/job11.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job01.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job02.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job03.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job04.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job05.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job06.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job07.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job08.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job09.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job10.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/expected/silver/scd2/job11.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/fabricksconfig.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/init.sh +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/initialize.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_cdc.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_check.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_dependency.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_gold.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_invoke.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_overwrite.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_schedule.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_semantic.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job1/test_silver.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job2/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job2/test_gold.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job2/test_run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job2/test_semantic.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job2/test_silver.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job3/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job3/test_gold.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job3/test_run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job3/test_silver.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job4/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job4/test_gold.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job4/test_run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/jobs/job5/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/landing_to_raw.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/reset.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runjobs.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtests.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/.gitignore +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/bronze/_config.kings.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/bronze/_config.memory.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/bronze/_config.monarchs.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/bronze/_config.princes.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/bronze/_config.princesses.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/bronze/_config.queens.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/bronze/_config.regents.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/conf.fabricks.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/conf.uc.fabricks.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/extenders/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/extenders/add_country.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/extenders/drop__cols.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/extenders/force_reload.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/extenders/monarch.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/masks/dummy.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/notebooks/add_missing_modules.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/notebooks/cluster.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/notebooks/initialize.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/notebooks/process.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/notebooks/run.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/notebooks/schedule.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/notebooks/terminate.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/parsers/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/parsers/delete_log.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/parsers/monarch.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/requirements.txt +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/schedules/schedule.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/udfs/__init__.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/udfs/addition.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/udfs/identity.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/udfs/key.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/udfs/parse_phone_number.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/fabricks/views/monarch.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/_config.check.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/count_must_equal.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/duplicate_identity.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/duplicate_key.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/fail.pre_run.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/fail.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/max_rows.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/min_rows.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/skip.skip.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/skip.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/warning.post_run.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/check/warning.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/dim/_config.dim.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/dim/date.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/dim/identity.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/dim/overwrite.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/dim/time.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/_config.fact.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/add_missing_modules.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/append.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/deduplicate.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/dependency_notebook.ipynb +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/dependency_sql.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/foreign_keys.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/manual.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/masker_and_commenter.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/memory.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/no_drop.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/notebook.ipynb +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/optimize_vacuum.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/option.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/order_duplicate.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/overwrite.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/primary_key.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/fact/udf.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/failed_pre_run.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/notebook.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/notebook_without_argument.ipynb +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/notebooks.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/notebooks_failed_pre_run.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/post_run/exe.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/post_run.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/pre_run/exe.py +0 -0
- /fabricks-3.0.18/tests/integration/runtime/gold/transf/post_run.py → /fabricks-3.0.19/tests/integration/runtime/gold/gold/invoke/pre_run/exe_2.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/timedout.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/timedout_pre_run.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/nocdc/_config.nocdc.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/nocdc/deduplicate.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/nocdc/update.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd1/_config.scd1.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd1/complete.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd1/identity.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd1/last_timestamp.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd1/memory.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd1/special_char.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd1/update.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd2/_config.scd2.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd2/complete.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd2/correct_valid_from.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd2/last_timestamp.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd2/memory.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/scd2/update.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/type_widening/_config.type_widening.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/type_widening/merge.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/type_widening/overwrite.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/transf/fact/_config.transf.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/transf/fact/memory.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/job-schema.json +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/dim/_config.semantic.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/dim/complex_query.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/fact/_config.semantic.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/fact/job_option.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/fact/powerbi.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/fact/schema_drift.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/fact/step_option.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/semantic/fact/zstd.sql +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/silver/_config.kings_and_queens.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/silver/_config.memory.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/silver/_config.monarchs.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/silver/_config.princes.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/silver/_config.princesses.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/silver/_config.regents.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/uc/bronze/_config.kings.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/uc/bronze/_config.memory.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/uc/bronze/_config.monarchs.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/uc/bronze/_config.princes.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/uc/bronze/_config.princesses.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/uc/bronze/_config.queens.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/uc/bronze/_config.regents.yml +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/schedule.py +0 -0
- {fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/utils.py +0 -0
|
@@ -16,10 +16,12 @@ class RuntimeTimeoutOptions(TypedDict):
|
|
|
16
16
|
pre_run: int
|
|
17
17
|
post_run: int
|
|
18
18
|
|
|
19
|
+
|
|
19
20
|
class UDFOptions(TypedDict):
|
|
20
21
|
prefix: Optional[str]
|
|
21
22
|
schema: Optional[str]
|
|
22
23
|
|
|
24
|
+
|
|
23
25
|
class StepTimeoutOptions(TypedDict):
|
|
24
26
|
step: Optional[int]
|
|
25
27
|
job: Optional[int]
|
|
@@ -126,7 +126,18 @@ class Gold(BaseJob):
|
|
|
126
126
|
invokers = self.options.invokers.get_list("run")
|
|
127
127
|
assert len(invokers) <= 1, "at most one invoker allowed when notebook is true"
|
|
128
128
|
|
|
129
|
-
|
|
129
|
+
path = None
|
|
130
|
+
if invokers:
|
|
131
|
+
notebook = invokers[0].get("notebook")
|
|
132
|
+
if notebook:
|
|
133
|
+
from fabricks.context import PATH_RUNTIME
|
|
134
|
+
|
|
135
|
+
path = PATH_RUNTIME.joinpath(notebook)
|
|
136
|
+
|
|
137
|
+
if path is None:
|
|
138
|
+
path = self.paths.runtime
|
|
139
|
+
|
|
140
|
+
global_temp_view = self.invoke(path=path, schema_only=schema_only, **kwargs)
|
|
130
141
|
assert global_temp_view is not None, "global_temp_view not found"
|
|
131
142
|
|
|
132
143
|
df = self.spark.sql(f"select * from global_temp.{global_temp_view}")
|
|
@@ -5,7 +5,7 @@ from typing import Callable, List, Optional
|
|
|
5
5
|
|
|
6
6
|
from pyspark.sql import SparkSession
|
|
7
7
|
|
|
8
|
-
from fabricks.context import CATALOG, IS_UNITY_CATALOG, PATH_UDFS, SPARK
|
|
8
|
+
from fabricks.context import CATALOG, CONF_RUNTIME, IS_UNITY_CATALOG, PATH_UDFS, SPARK
|
|
9
9
|
from fabricks.context.log import DEFAULT_LOGGER
|
|
10
10
|
|
|
11
11
|
UDFS: dict[str, Callable] = {}
|
|
@@ -13,6 +13,7 @@ UDFS: dict[str, Callable] = {}
|
|
|
13
13
|
udf_schema = CONF_RUNTIME.get("udf_options", {}).get("schema", "default")
|
|
14
14
|
udf_prefix = CONF_RUNTIME.get("udf_options", {}).get("prefix", "udf_")
|
|
15
15
|
|
|
16
|
+
|
|
16
17
|
def register_all_udfs(extension: Optional[str] = None, override: bool = False):
|
|
17
18
|
"""
|
|
18
19
|
Register all user-defined functions (UDFs).
|
|
@@ -246,3 +246,13 @@ class Path:
|
|
|
246
246
|
|
|
247
247
|
def __str__(self) -> str:
|
|
248
248
|
return self.string
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
class GitPath(Path):
|
|
252
|
+
def __init__(self, path: Union[str, PathlibPath]):
|
|
253
|
+
super().__init__(path=path, assume_git=True)
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
class FileSharePath(Path):
|
|
257
|
+
def __init__(self, path: Union[str, PathlibPath]):
|
|
258
|
+
super().__init__(path=path, assume_git=False)
|
|
@@ -57,19 +57,19 @@ def test_update_configurations():
|
|
|
57
57
|
step.update_configurations()
|
|
58
58
|
|
|
59
59
|
df = SPARK.sql("select * from fabricks.gold_jobs")
|
|
60
|
-
assert df.count() ==
|
|
60
|
+
assert df.count() == 53, f"{df.count()} job(s) <> 53"
|
|
61
61
|
|
|
62
62
|
SPARK.sql("update fabricks.gold_jobs set options = null")
|
|
63
63
|
|
|
64
64
|
df = SPARK.sql("select * from fabricks.gold_jobs where options is null")
|
|
65
|
-
assert df.count() ==
|
|
65
|
+
assert df.count() == 53, f"{df.count()} job(s) without options <> 53"
|
|
66
66
|
|
|
67
67
|
SPARK.sql("delete from fabricks.gold_jobs where topic == 'scd1'")
|
|
68
68
|
|
|
69
69
|
step.update_configurations()
|
|
70
70
|
|
|
71
71
|
df = SPARK.sql("select * from fabricks.gold_jobs")
|
|
72
|
-
assert df.count() ==
|
|
72
|
+
assert df.count() == 53, f"{df.count()} job(s) <> 53"
|
|
73
73
|
|
|
74
74
|
df = SPARK.sql("select * from fabricks.gold_jobs where options is null")
|
|
75
75
|
assert df.count() == 0, f"{df.count()} job(s) without options <> 0"
|
{fabricks-3.0.18 → fabricks-3.0.19}/tests/integration/runtime/gold/gold/invoke/_config.invoke.yml
RENAMED
|
@@ -109,4 +109,29 @@
|
|
|
109
109
|
arguments:
|
|
110
110
|
arg1: 1
|
|
111
111
|
arg2: 2
|
|
112
|
-
arg3: 3
|
|
112
|
+
arg3: 3
|
|
113
|
+
- job:
|
|
114
|
+
step: gold
|
|
115
|
+
topic: invoke
|
|
116
|
+
item: complete_invoker
|
|
117
|
+
tags: [test]
|
|
118
|
+
options:
|
|
119
|
+
mode: complete
|
|
120
|
+
notebook: true
|
|
121
|
+
invoker_options:
|
|
122
|
+
run:
|
|
123
|
+
- notebook: gold/gold/invoke/complete_notebook
|
|
124
|
+
arguments:
|
|
125
|
+
arg1: 1
|
|
126
|
+
- job:
|
|
127
|
+
step: gold
|
|
128
|
+
topic: invoke
|
|
129
|
+
item: complete_notebook
|
|
130
|
+
tags: [test]
|
|
131
|
+
options:
|
|
132
|
+
mode: complete
|
|
133
|
+
notebook: true
|
|
134
|
+
invoker_options:
|
|
135
|
+
run:
|
|
136
|
+
- arguments:
|
|
137
|
+
arg1: 1
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Databricks notebook source
|
|
2
|
+
import os
|
|
3
|
+
import sys
|
|
4
|
+
from pathlib import Path
|
|
5
|
+
|
|
6
|
+
# COMMAND ----------
|
|
7
|
+
|
|
8
|
+
# https://docs.databricks.com/aws/en/files/workspace-modules
|
|
9
|
+
|
|
10
|
+
# COMMAND ----------
|
|
11
|
+
|
|
12
|
+
p = Path(os.getcwd())
|
|
13
|
+
while not (p / "pyproject.toml").exists():
|
|
14
|
+
p = p.parent
|
|
15
|
+
|
|
16
|
+
# COMMAND ----------
|
|
17
|
+
|
|
18
|
+
root = p.absolute()
|
|
19
|
+
|
|
20
|
+
# COMMAND ----------
|
|
21
|
+
|
|
22
|
+
if str(root) not in sys.path:
|
|
23
|
+
print(f"adding {root} to sys.path")
|
|
24
|
+
sys.path.insert(0, str(root))
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Databricks notebook source
|
|
2
|
+
# MAGIC %run ./add_missing_modules
|
|
3
|
+
|
|
4
|
+
# COMMAND ----------
|
|
5
|
+
|
|
6
|
+
from databricks.sdk.runtime import dbutils, spark
|
|
7
|
+
|
|
8
|
+
from fabricks.metastore.view import View
|
|
9
|
+
|
|
10
|
+
# COMMAND ----------
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
# COMMAND ----------
|
|
14
|
+
|
|
15
|
+
dbutils.widgets.text("step", "--")
|
|
16
|
+
dbutils.widgets.text("topic", "--")
|
|
17
|
+
dbutils.widgets.text("item", "--")
|
|
18
|
+
|
|
19
|
+
# COMMAND ----------
|
|
20
|
+
|
|
21
|
+
dbutils.widgets.text("arg1", "--")
|
|
22
|
+
|
|
23
|
+
# COMMAND ----------
|
|
24
|
+
|
|
25
|
+
step = dbutils.widgets.get("step")
|
|
26
|
+
topic = dbutils.widgets.get("topic")
|
|
27
|
+
item = dbutils.widgets.get("item")
|
|
28
|
+
|
|
29
|
+
# COMMAND ----------
|
|
30
|
+
|
|
31
|
+
arg1 = dbutils.widgets.get("arg1")
|
|
32
|
+
|
|
33
|
+
# COMMAND ----------
|
|
34
|
+
|
|
35
|
+
print(step, topic, item)
|
|
36
|
+
|
|
37
|
+
# COMMAND ----------
|
|
38
|
+
|
|
39
|
+
assert arg1 == "1"
|
|
40
|
+
|
|
41
|
+
# COMMAND ----------
|
|
42
|
+
|
|
43
|
+
df = spark.sql("select 1 as dummy")
|
|
44
|
+
|
|
45
|
+
# COMMAND ----------
|
|
46
|
+
|
|
47
|
+
uuid = View.create_or_replace(df)
|
|
48
|
+
|
|
49
|
+
# COMMAND ----------
|
|
50
|
+
|
|
51
|
+
dbutils.notebook.exit(uuid) # type: ignore
|
|
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
|
|
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
|
|
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
|