These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)
| Commit: | cce1da6 | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Move DefaultIcebergConfig message to avoid circular dependencies (#2104) * Define DefaultIcebergConfig message Move DefaultIcebergConfig message from configs.proto to core.proto. This now prevents using core.proto messages in config.proto. The way protos are used across the project lets this change work without additional changes in code. * Remove DefaultIcebergConfig message Removed DefaultIcebergConfig message definition from configs.proto. * Remove import of configs.proto from core.proto * Remove unused import from configs.proto Removed import statement for core.proto.
| Commit: | cc9eb94 | |
|---|---|---|
| Author: | SuchodolskiEdvin | |
| Committer: | SuchodolskiEdvin | |
Implement incrementalPredicates config for BigQuery incremental tables - Replaced legacy 'T' and 'S' MERGE aliases with explicit 'DATAFORM_DEST' and 'DATAFORM_SOURCE' in the BigQuery adapter. - Updated `incremental_table_test.ts` assertions. - Documented the new `incrementalPredicates` property in the OSS API reference.
| Commit: | 21ccaf1 | |
|---|---|---|
| Author: | SuchodolskiEdvin | |
| Committer: | SuchodolskiEdvin | |
Support incremental_strategy parameter and new insert_overwrite strategy - updated proto with new parameters - added new tests - added validation for chosen incremental_strategies - added new insert_overwrite strategy logic
| Commit: | 90ce4bd | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Merge branch 'main' into apilaskowski-patch-1
| Commit: | b3ceda5 | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
Proto field additions for JiT flow (#2182)
The documentation is generated from this commit.
| Commit: | 539ad98 | |
|---|---|---|
| Author: | Rafal Hawrylak | |
| Committer: | Rafal Hawrylak | |
feat: Implement Dataform CLI Data Lineage write path PoC Implement table-level lineage emission from the Dataform CLI to the Dataplex Lineage API (`datalineage.googleapis.com`) using OpenLineage RunEvents. - Introduce `@google-cloud/lineage` library dependency and wire to Bazel. - Build `LineageEmitter` to handle OpenLineage v1-0-2 payload construction, recursive Protobuf Struct serialization, and endpoint localization. - Persist and reuse `runId` maps to consolidate STARTED and terminal execution states under a single run resource lifecycle. - Integrate emission trigger Hooks into the CLI execution engine under `cli/api/commands/run.ts`. - Expose configuration flags via `workflow_settings.yaml` (`lineage: { enabled: true }`) and CLI argument (`--emit-lineage`). - Implement unit tests covering payload serialization, permission denial logic, and error-handling fallback behaviors.
| Commit: | c11105a | |
|---|---|---|
| Author: | Nick Nalivaika | |
Merge branch 'main' into dataproc-poc
| Commit: | 8f1bcb7 | |
|---|---|---|
| Author: | SuchodolskiEdvin | |
| Committer: | SuchodolskiEdvin | |
Support incremental_strategy parameter and new insert_overwrite strategy - updated proto with new parameters - added new tests - added validation for chosen incremental_strategies - added new insert_overwrite strategy logic
| Commit: | e2d053d | |
|---|---|---|
| Author: | Rafal Hawrylak | |
| Committer: | Rafal Hawrylak | |
Proto field additions for JiT flow
| Commit: | f8eae76 | |
|---|---|---|
| Author: | Rafal Hawrylak | |
feat: Implement Dataform CLI Data Lineage write path PoC Implement table-level lineage emission from the Dataform CLI to the Dataplex Lineage API (`datalineage.googleapis.com`) using OpenLineage RunEvents. - Introduce `@google-cloud/lineage` library dependency and wire to Bazel. - Build `LineageEmitter` to handle OpenLineage v1-0-2 payload construction, recursive Protobuf Struct serialization, and endpoint localization. - Persist and reuse `runId` maps to consolidate STARTED and terminal execution states under a single run resource lifecycle. - Integrate emission trigger Hooks into the CLI execution engine under `cli/api/commands/run.ts`. - Expose configuration flags via `workflow_settings.yaml` (`lineage: { enabled: true }`) and CLI argument (`--emit-lineage`). - Implement unit tests covering payload serialization, permission denial logic, and error-handling fallback behaviors.
| Commit: | 7a54f35 | |
|---|---|---|
| Author: | Slawek Walkowski | |
| Committer: | Slawek Walkowski | |
Add support for running Airflow operator in Cloud Run service. The choice is controlled using the runner field in orchestration pipeline yaml, which can accept dataform_notebook_cloud_run_service and dataform_notebook_cloud_run_job. The notebooks that run Airflow operator are also more parameterized now.
| Commit: | 012f680 | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
Add metadata field to AssertionConfig (#2208) Mirrors TableConfig.metadata / ViewConfig.metadata so callers can attach key/value data that lands on Assertion.action_descriptor.metadata.extra_properties.
| Commit: | 4ec849d | |
|---|---|---|
| Author: | Slawek Walkowski | |
Add support for airflowOperator actions
| Commit: | 21e1abe | |
|---|---|---|
| Author: | Slawek Walkowski | |
Add op-to-dataform extension and related core patches
| Commit: | fa3b94c | |
|---|---|---|
| Author: | Rafal Hawrylak | |
Add optional original_file_path to Assertion protos Lets callers record a source declaration path distinct from the existing `file_name`/`filename`. When the new field is unset, consumers continue to use `file_name` as today. Backwards-compatible: additive, optional.
| Commit: | 1942a72 | |
|---|---|---|
| Author: | SuchodolskiEdvin | |
| Committer: | SuchodolskiEdvin | |
Support incremental_strategy parameter and new insert_overwrite strategy - updated proto with new parameters - added new tests - added validation for chosen incremental_strategies - added new insert_overwrite strategy logic
| Commit: | 940e7c9 | |
|---|---|---|
| Author: | Nick Nalivayka | |
| Committer: | GitHub | |
Add go_package option to db_adapter.proto and jit.proto (#2197)
| Commit: | cc48c7c | |
|---|---|---|
| Author: | Nick Nalivaika | |
| Committer: | Nick Nalivaika | |
Add Managed Spark execution engine support for Notebook actions - Introduce a nested `ExecutionEngine` enum in both configs and core protos (decoupled design) to allow selecting the engine backend (`COLAB` vs `MANAGED_SPARK`). - Add project-level `default_managed_spark_execution_options` (with required `staging_bucket_uri`) configuration options to configs and core protos. - Update the TypeScript compiler to parse and validate default Managed Spark options at the project level, and map the action-level engine configuration. - Implement compile-time validation in `Notebook.compile()` to check that `defaultManagedSparkExecutionOptions` is defined if a notebook action uses `MANAGED_SPARK`. - Update the VS Code JSON schema to validate the new project options. - Implement unit tests covering parsing, propagation, and validation behaviors.
| Commit: | c61e121 | |
|---|---|---|
| Author: | Nick Nalivaika | |
Add go_package option to db_adapter.proto and jit.proto
| Commit: | 510f086 | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
Add JiT compilation support for assertion actions (#2193) Adds JIT_COMPILATION_TARGET_TYPE_ASSERTION alongside the existing TABLE / OPERATION / INCREMENTAL_TABLE target types, plus a matching JitAssertionResult { string query } proto and a jitCompileAssertion() dispatcher in core/jit_compiler.ts. Assertions reuse SqlActionJitContext since AssertionContext implements IActionContext, and the result is a single SELECT query string (matching the existing JitAssertionResult = string alias in core/actions/assertion.ts).
| Commit: | bf4d057 | |
|---|---|---|
| Author: | Rafal Hawrylak | |
| Committer: | Rafal Hawrylak | |
feat: integrate JiT compilation and finalize test suite feat: enable JiT compilation in CLI run, build and compile commands Connect main CLI execution flow to the JiT worker process Add comprehensive JiT test suite Finalize AoT build logic to preserve JiT-specific fields Update CLI console and entry points for integrated JiT support Add file_name field (=8) to JitCompilationRequest proto for target source file resolution in the JiT worker.
| Commit: | 8488238 | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
feat: implement .jitCode() support for Assertion actions (#2170) - Add `jit_code` field to the `Assertion` message in `protos/core.proto` - Fix missing protobuf imports and configuration in `protos/BUILD` - Introduce `JitAssertionResult` type alias and `jitCode` method to `Assertion` builder (`core/actions/assertion.ts`) - Add strictly typed `jitContextable` parameter to `Session.sqlxAction` in `core/session.ts` - Update assertion `compile()` to handle `jitCode` execution bypassing standard string evaluation - Parse and apply `jitContextable` safely for assertions in `core/session.ts` - Add unit test coverage in `core/main_test.ts` to verify compilation output
| Commit: | a6dded3 | |
|---|---|---|
| Author: | Rafal Hawrylak | |
feat: add .preOps() and .postOps() support to Assertion action This update brings the Assertion action on par with Table and View by introducing support for pre-operations and post-operations. - Updated `dataform.proto` (via `core.proto` and `configs.proto`) to include `pre_ops`/`post_ops` for `Assertion` and `pre_operations`/ `post_operations` for `AssertionConfig`. - Enhanced `core/actions/assertion.ts` with `contextablePreOps` and `contextablePostOps` arrays. - Exposed `.preOps()` and `.postOps()` methods on both `Assertion` builder and `AssertionContext`. - Added test coverage in `core/main_test.ts` to ensure operations are compiled correctly for assertions.
| Commit: | 433e852 | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
JiT Worker in CLI and RPC infrastructure (#2109) * refactor: split index_test.ts into specialized test files * refactor: decompose monolithic cli/index_test.ts into modular components - Extract shared test utilities into cli/index_test_base.ts - Create dedicated test files for help, init, project, compile, and run commands - Update cli/BUILD to reflect the new modular test structure * feat: enhance JiT compiler with action descriptors and metadata support * feat: add action descriptor support to JiT compilation results - Implement action and column descriptor logic in core/jit_compiler.ts - Support overrides for descriptions, labels, and tags in JiT results - Enhance error coercion in common/errors/errors.ts - Add comprehensive JiT metadata tests in core/jit_compiler_test.ts - Sync protos/execution.proto and protos/jit.proto with new result fields * feat: implement JiT worker and RPC infrastructure * feat: add worker process management for JiT compilation - Introduce base worker and JiT-specific child process logic - Implement RPC bridge for database access during JiT - Add VM scripts and loader for isolated execution - Add unit tests for the RPC mechanism
| Commit: | 86c3d82 | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Populate new unit test properties and add flag to include unit tests in compiled graph (#2063) * Added new properties to Test proto * Simplified code * Simplified code for readability * More cleanup * renamed function * Fixed issue with schema/database overrides and tests * Removed unused code * Cleanup * Further cleanup * Fixed test naming * Added tags support * Removed adding test actions into the DAG until later * Addressed PR comments * Fixed tests * Add new property to configure wether unit tests should be included in the compiled DAG as dependencies to the action being tested
| Commit: | 9f7ff34 | |
|---|---|---|
| Author: | dependabot[bot] | |
| Committer: | GitHub | |
Bump protobufjs from 7.2.5 to 7.5.5 (#2144) * Bump protobufjs from 7.2.5 to 7.5.5 Bumps [protobufjs](https://github.com/protobufjs/protobuf.js) from 7.2.5 to 7.5.5. - [Release notes](https://github.com/protobufjs/protobuf.js/releases) - [Changelog](https://github.com/protobufjs/protobuf.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/protobufjs/protobuf.js/compare/protobufjs-v7.2.5...protobufjs-v7.5.5) --- updated-dependencies: - dependency-name: protobufjs dependency-version: 7.5.5 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> * fix local proto imports after protobufjs upgrade --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Nick Nalivaika <ikolina@google.com>
| Commit: | 16b73bd | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
Move extension options (#2147)
| Commit: | 7ed4492 | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
Support generic compilation options (#2145)
| Commit: | d75db6c | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
Extend list of supported BQ types (#2134)
| Commit: | c16f168 | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
JiT context - Add Running execution metadata (#2132) Extend metadata of JiT context with information about the current execution run.
| Commit: | d398ecb | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
Introduce tags to Dataform declarations (#2130)
| Commit: | b09cf5d | |
|---|---|---|
| Author: | piotrwrotniak | |
| Committer: | GitHub | |
Extend ExecuteResponse to contain schema fields. (#2125)
| Commit: | 59f22fc | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Support extension in workflow_settings.yml (#2122) * Support extension in workflow_settings.yml If extension is defined in workflow_settings.yml, the extension will be executed in selected mode. * Support extension in workflow_settings.yml If extension is defined in workflow_settings.yml, the extension will be executed in selected mode. * Update BUILD. * Update BUILD. * Add BUILD file for utils_test * Add imports to BUILD * Fix test. * Remove node_modules * Update tests. * DRY + move extension preparetion to compilation (from index). * Add newlines at end of files. * Yet another endline.
| Commit: | 412d523 | |
|---|---|---|
| Author: | rafal-hawrylak | |
| Committer: | GitHub | |
JiT: protos update to enable execution in CLI (#2107) - Enhance error coercion in common/errors/errors.ts - Sync protos/execution.proto and protos/jit.proto with new fields
| Commit: | 18042dd | |
|---|---|---|
| Author: | Rafal Hawrylak | |
| Committer: | Rafal Hawrylak | |
feat: integrate JiT compilation and finalize test suite * feat: enable JiT compilation in CLI run, build and compile commands - Connect main CLI execution flow to the JiT worker process - Add comprehensive JiT test suite - Finalize AoT build logic to preserve JiT-specific fields - Update CLI console and entry points for integrated JiT support
| Commit: | 62dc58f | |
|---|---|---|
| Author: | Rafal Hawrylak | |
feat: integrate JiT compilation and finalize test suite
| Commit: | aefea64 | |
|---|---|---|
| Author: | Rafal Hawrylak | |
| Committer: | Rafal Hawrylak | |
feat: enhance JiT compiler with action descriptors and metadata support * feat: add action descriptor support to JiT compilation results - Implement action and column descriptor logic in core/jit_compiler.ts - Support overrides for descriptions, labels, and tags in JiT results - Enhance error coercion in common/errors/errors.ts - Add comprehensive JiT metadata tests in core/jit_compiler_test.ts - Sync protos/execution.proto and protos/jit.proto with new result fields
| Commit: | cc0cdc8 | |
|---|---|---|
| Author: | Rafal Hawrylak | |
| Committer: | Rafal Hawrylak | |
JiT: protos update to enable execution in CLI - Enhance error coercion in common/errors/errors.ts - Sync protos/execution.proto and protos/jit.proto with new fields
| Commit: | a7a211b | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Remove unused import from configs.proto Removed import statement for core.proto.
| Commit: | 9f99149 | |
|---|---|---|
| Author: | Max Ostapenko | |
| Committer: | GitHub | |
Add BigQuery reservation configuration (#2096) * feat: Add BigQuery reservation configuration for projects and individual actions. * lint Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * refactor: rename `bigqueryReservation` to `reservation` across configurations, protos, and related code Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * docs: clarify BigQuery reservation fallback behavior in protos and CLI Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * refactor: update default reservation test constant and expand project config assertions Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * fix test reservation name Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * added documentation for BigQuery reservation configuration Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * fix project name Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * fix reservation location Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * Add reservation to a profile schema Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * revert reservation attribute Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com> * Note support status --------- Signed-off-by: Max Ostapenko <1611259+max-ostapenko@users.noreply.github.com>
| Commit: | d276374 | |
|---|---|---|
| Author: | Ashish Alex | |
| Committer: | GitHub | |
feat: add --verbose flag to expose stateless installation steps of Dataform Core and identify bottlenecks (#2100) * feat: add --verbose argument to expose steps in stateless installation * chore: make verbose and quiet flags mutually exclusive * feat: use performance timing in node to avoid system clock issues * chore: do not export print * refactor: remove redundant double check * chore: print should pipe to stderr
| Commit: | 95df529 | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Remove import of configs.proto from core.proto
| Commit: | 136c9cd | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Remove DefaultIcebergConfig message Removed DefaultIcebergConfig message definition from configs.proto.
| Commit: | fb4490e | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Add import for core.proto in configs.proto
| Commit: | 39bba24 | |
|---|---|---|
| Author: | Artur Piotr Izaak Laskowski | |
| Committer: | GitHub | |
Define DefaultIcebergConfig message Move DefaultIcebergConfig message from configs.proto to core.proto. This now prevents using core.proto messages in config.proto. The way protos are used across the project lets this change work without additional changes in code.
| Commit: | 8724d55 | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
JiT Compilation protos - Add file_paths (#2093) Add file_paths field to pass accessible file paths at JiT compilation stage.
| Commit: | e4d8a78 | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
JiT compilation request format (#2085)
| Commit: | 7fc8c87 | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
Jit data in Session (#2080) Adding a JiT data to the session. Renaming the proto field as well, it was submitted before the update of the design, but since it is not used yet, it should be fine to rename it directly.
| Commit: | bb35744 | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
JiT context RPC service and protos (#2079) Protos for JiT DB adapter and JiT compilation messages.
| Commit: | 91d80dd | |
|---|---|---|
| Author: | mfiglus | |
| Committer: | GitHub | |
Add repository snapshot destination field to NotebookRuntimeOptions (#2078) * Add repository snapshot destination field to NotebookRuntimeOptions * Improve code clarity and add more tests
| Commit: | b5fc8b5 | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
Action Protos - Action fields for JiT execution (#2076) Protobuf changes required for a basic JiT execution in @dataform/core.
| Commit: | 5044e87 | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Proto changes for unit tests definition (#2065) * Proto changes for unit tests definition * Added property that allows disabling unit tests
| Commit: | 8bf72c0 | |
|---|---|---|
| Author: | Rahul | |
| Committer: | GitHub | |
Add extra_properties struct to metadata (#2055) * add custom_attributes struct to metadata & incremental table tests * fix incremental table tests & add view & table test * change custom_attributes to extra_properties
| Commit: | f7b3c5b | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | Fernando Velasquez | |
Added new properties to Test proto
| Commit: | 78ededc | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
Allow filename overrides in declaration, tests and other assets (#2048) Making filename configuration supported in all graph nodes, right now this works only partially, for ex. for views and tables, but it is not supported for declarations and breaks for incremental tables. Explicitly adding a support for that and adding a test to prevent future regressions.
| Commit: | f1cb1ed | |
|---|---|---|
| Author: | Rahul | |
| Committer: | GitHub | |
Add overview metadata to sqlxconfig (#2041) * added metadata proto with overview field in view, table & inc table & added unit tests
| Commit: | 1035b69 | |
|---|---|---|
| Author: | Rahul Madanahalli | |
Merge branch 'main' into add-metadata-to-sqlxconfig
| Commit: | 9d7b1b0 | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
Compile extension interface (#2037) Introducing a compilation extension interface - the way to plug ad-hoc compilation stages as NPM package without a need to create an explicit JS definition, unblocking the transpilation of additional syntax and formats. The interface at the moment includes a compilation callback, which receives the original request and Session to operate on. Two modes are supported: 1. "prologue" - extension performs compilation in session before the regular Dataform compilation of sources is done. 2. "application code" - extension replaces the normal Dataform sources compilation.
| Commit: | 096e3ef | |
|---|---|---|
| Author: | ikholopov-omni | |
| Committer: | GitHub | |
Dataform Protos - Fix //protos:dataform_proto build (#2036) `//protos:dataform_proto` target has been broken for quite a while with: ``` dataform/protos/BUILD:7:14: Generating Descriptor Set proto_library //protos:dataform_proto failed: (Exit 1): protoc failed: error executing command bazel-out/k8-py2-opt-exec-2B5CBBC6/bin/external/com_google_protobuf/protoc '--descriptor_ set_out=bazel-out/k8-py2-fastbuild/bin/protos/dataform_proto-descriptor-set.proto.bin' ... (remaining 13 arguments skipped) Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging protos/core.proto:29:3: "dataform.DefaultIcebergConfig" seems to be defined in "protos/configs.proto", which is not imported by "protos/core.proto". To use it here, please add the necessary import. ``` This was breaking only this target and not TS/JS code, but we had to fix it manually on the internal imports as well. Adding a missing import, so that the target is passing again and we no longer need to fix it by-hand on internal import.
| Commit: | 12891dd | |
|---|---|---|
| Author: | Rahul Madanahalli | |
added metadata proto with overview field in view, table & inc table
| Commit: | 78a1d6c | |
|---|---|---|
| Author: | TerukiUeno | |
| Committer: | GitHub | |
Add --disable-assertions option to skip all assertions during compilation and execution (#2024) * add --disable-assertions option to skip all assertions during compilation and execution * change --disable-assertions behavior to mark assertions as disabled instead of excluding them * move disable_assertions from CompileConfig to ProjectConfig * split disable-assertions test into compile and run test cases * made the integration tests pass * add instructions for running the integration tests * fix incorrect merge conflict resolution * fix linter error for SQL injection
| Commit: | 74025c5 | |
|---|---|---|
| Author: | Leonarda | |
| Committer: | GitHub | |
Enable setting default connection for Iceberg table (#2030) * Enable setting default connection for Iceberg table This change enables a workflow-level default connection to be set inside workflow_settings.yaml. * Change parameters order in getConnectionForIcebergTables
| Commit: | d47a717 | |
|---|---|---|
| Author: | Leonarda Pribanić | |
Enable setting default connection for Iceberg table This change enables a workflow-level default connection to be set inside workflow_settings.yaml.
| Commit: | efceae6 | |
|---|---|---|
| Author: | leonarda-pribanic | |
| Committer: | GitHub | |
Rename Iceberg repo-level configs (#2022)
| Commit: | af536b9 | |
|---|---|---|
| Author: | leonarda-pribanic | |
| Committer: | GitHub | |
Rename field with default iceberg configs (#2020) This change renames defaultIcebergConfig to icebergConfig. 'Default' in the name is redundant since all the subfields have 'default_' as a prefix.
| Commit: | 5c49536 | |
|---|---|---|
| Author: | leonarda-pribanic | |
| Committer: | GitHub | |
Enable setting default values for storageUri substrings when constructing an Iceberg table. (#2013) * Add fields for Iceberg defaults to protos This change adds default_bucket_name, default_table_folder_root and default_table_folder_subpath to hold default values for respective Iceberg fields. These defaults will be used to construct storageUri for Iceberg tables. * Read Iceberg defaults when constructing ProjectConfig This change uses the Iceberg defaults from workflow_settings.yaml to construct the ProjectConfig. * Use defaults when constructing storageUri This change introduces default values for storageUri substring when creating an Iceberg table. If the substrings are not defined in the config block, we use default values from workflow_settings.yaml. If the substrings are not defined in workflow_settings.yaml either, we fall back to existing defaults. * Add descriptions for proto fields holding defaults This change adds comments to the proto fields holding defaults for storageUri substrings. * Move Iceberg defaults to defaultIcebergConfigs This change extracts proto fields for Iceberg defaults into a separate subblock defaultIcebergConfigs. * Clean up iceberg set up functions for tests This change simplifies the set up functions for Iceberg tests inside table_test and incremental_table_test. * Rename DefaultIcebergConfigs to DefaultIcebergConfig This naming is more consistent with the existing code.
| Commit: | ade83d7 | |
|---|---|---|
| Author: | Leonarda Pribanić | |
Move Iceberg defaults to defaultIcebergConfigs This change extracts proto fields for Iceberg defaults into a separate subblock defaultIcebergConfigs.
| Commit: | 722c6b5 | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Add Merge Incremental config for data preparation. (#2017) Add validation for merge incremental setting on compilation.
| Commit: | 019108b | |
|---|---|---|
| Author: | Leonarda Pribanić | |
Add descriptions for proto fields holding defaults This change adds comments to the proto fields holding defaults for storageUri substrings.
| Commit: | 85cfc13 | |
|---|---|---|
| Author: | Leonarda Pribanić | |
| Committer: | Leonarda Pribanić | |
Add fields for Iceberg defaults to protos This change adds default_bucket_name, default_table_folder_root and default_table_folder_subpath to hold default values for respective Iceberg fields. These defaults will be used to construct storageUri for Iceberg tables.
| Commit: | 798c536 | |
|---|---|---|
| Author: | leonarda-pribanic | |
| Committer: | GitHub | |
Add Iceberg fields to compilation logic (#2009) * Add Apache Iceberg fields to protos This change adds fields that will br used to create Apache Iceberg BigQuery tables to relevant protos. connection, table_format, file_format and storage_uri are added to core.proto. connection, table_format, file_format, storage_uri, bucket_Name, table_folder_root and table_folder_subpath are added to dataform.proto. * Add Iceberg options to compile logic This change ensures Iceberg options provided in the user's config file are correctly compiled. * Set defaults for storageUri, remove it from config This change removes storage_uri as a field users can set in their config files. It also sets defaults for tableFolderRoot and tableFolderSubpath. If tableFolderRoot is not provided to users, we default to `_dataform`. If tableFolderSubpath is not provided to users, we default to `{dataset name}/{table name}`. * Add check for valid file format This change ensures that the file_format in the user's config file is set to "PARQUET" because that is the only value currently supported. * Ensure bucket_name is defined in iceberg config block This change adds a check for bucket_name in the iceberg subblock of the user's config file. bucket_name is required when defining iceberg options. * Alphabetize imports and use T[] instead of Array<T> This fixes the build failures. * Add test for an empty file_format field * Move file_format to iceberg subblock This change moves the file_format config field from the bigquery subblock to the iceberg subblock. * Move FileFormat enum to IcebergTableConfig This change moves the FileFormat enum from TableConfig to IcebergTableConfig because that is where the enum is used. * Rename Iceberg enums in core.proto The new naming is consistent with the naming in configs.proto. * Change fileFormat defaulting logic We now only default to Iceberg if fileFormat is not defined. * Add tests for storageUri and connection validation This change adds a utils_test.ts to hold tests for methods inside core/utils.ts, and adds tests for methods that validate storageUri and connection format. * Remove contextableIcebergOpts This change removes the temporary state variable contextableIcebergOpts and sets Iceberg options directly. * Refactor storageUri construction * Throw regular instead of session errors It is not necessary to throe session errors because regular errors get wrapped into session errors a few layers above. * Add tests for getters in utils This change introduces testing for Iceberg-related getters in utils.ts * Lint fixes * Refactor Iceberg table tests This change refactors the Iceberg table tests to check the entire bigquery object and adds a test with non-Iceberg and Iceberg bigquery options. * Add Iceberg options to IncrementalTableConfig * Add Iceberg options to incremental table compilation This change adds Iceberg options to the compilation logic for incremental tables. Unit tests are added to verify the changes. * Remove validation of iceberg in bigqueryoptions This change removes the validation of iceberg as part of the bigqueryoptions in the unverified config. This validation is not necessary because iceberg is not part of the bigqueryoptions. * Use existing method to set iceberg proto fields This change removes the dedicated method for setting iceberg fields and reuses the existing method for bigquery options.
| Commit: | cb1a0ef | |
|---|---|---|
| Author: | karo | |
draft to convert default values from workflow_settings.ts to protos/core.proto - ProjectConfig
| Commit: | 45e58e6 | |
|---|---|---|
| Author: | karo | |
updated rest of files to match {dynamicVar} naming convention
| Commit: | 0250f75 | |
|---|---|---|
| Author: | Leonarda Pribanić | |
Rename Iceberg enums in core.proto The new naming is consistent with the naming in configs.proto.
| Commit: | 8487cb2 | |
|---|---|---|
| Author: | Leonarda Pribanić | |
Move FileFormat enum to IcebergTableConfig This change moves the FileFormat enum from TableConfig to IcebergTableConfig because that is where the enum is used.
| Commit: | 8a83502 | |
|---|---|---|
| Author: | Leonarda Pribanić | |
| Committer: | Leonarda Pribanić | |
Move file_format to iceberg subblock This change moves the file_format config field from the bigquery subblock to the iceberg subblock.
| Commit: | 7e28d3a | |
|---|---|---|
| Author: | Leonarda Pribanić | |
Set defaults for storageUri, remove it from config This change removes storage_uri as a field users can set in their config files. It also sets defaults for tableFolderRoot and tableFolderSubpath. If tableFolderRoot is not provided to users, we default to `_dataform`. If tableFolderSubpath is not provided to users, we default to `{dataset name}/{table name}`.
| Commit: | 0a61b27 | |
|---|---|---|
| Author: | Mikhail Kumachev | |
Prototype runtime parameters.
| Commit: | d8b79bd | |
|---|---|---|
| Author: | Leonarda Pribanić | |
| Committer: | Leonarda Pribanić | |
Add Apache Iceberg fields to protos This change adds fields that will br used to create Apache Iceberg BigQuery tables to relevant protos. connection, table_format, file_format and storage_uri are added to core.proto. connection, table_format, file_format, storage_uri, bucket_Name, table_folder_root and table_folder_subpath are added to dataform.proto.
| Commit: | 02f82a1 | |
|---|---|---|
| Author: | Mikhail Kumachev | |
| Committer: | GitHub | |
Fix materialized views (#1970) * Add support for partitionBy and clusterBy fields on materialized views. * Update docs to incl;ude new fields on ViewConfig.
| Commit: | 2b1c8ae | |
|---|---|---|
| Author: | Mikhail Kumachev | |
Add support for partitionBy and clusterBy fields on materialized views.
| Commit: | 8270ad7 | |
|---|---|---|
| Author: | Mikhail Kumachev | |
| Committer: | GitHub | |
Add builtinAssertionNamePrefix field to WorkflowSettings. (#1956) * feat: Add implementation for builtinAssertionNamePrefix. * test: Add unit tests for builtinAssertionNamePrefix. * docs: Update docs with builtinAssertionNamePrefix field info. * test: Cover projectConfig with unit test. * feat: Make prefix as first part of the name and adjust tests. * refactor: Clean up index_test.ts * refactor: Clean up index_test.ts again * refactor: Clean up index_test.ts again and again
| Commit: | eff648b | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Add support for schema and dataset configs in data preparation config. (#1935) This allows data preparations to configure override similar to all other actions.
| Commit: | f8ef11c | |
|---|---|---|
| Author: | Fernando Velasquez | |
Remove the unused automatic load mode. This doesn't apply to compiled data preparations.
| Commit: | 6241747 | |
|---|---|---|
| Author: | Elias Kassell | |
| Committer: | GitHub | |
Clean up remaining ekrekr todos (#1927) * Start removing todos * Cleanup more todos * Remove another todo * More old TODO tidying * Add fixed filename resolution for filepath of inline assertions * Move inline assertion generation to shared definition * Remove last todo * Fix lint
| Commit: | 0b18322 | |
|---|---|---|
| Author: | Elias Kassell | |
| Committer: | GitHub | |
Add typedoc generation of the Dataform JS API (#1913) * Experiment with typedoc comments * Add typedoc configuration json. Now can just run 'typedoc' to run * Add working generation, just via npx typedoc * Add documentation for remaining publish session methods * Add docs changes * Add typedoc generation to docs regeneration script, run * Add typedocs to the assertion action, tidy docs structure * Add docs for more actions, add more details on consumption * Add docs for the remaining classes * Tidy, improve JS API references * Fix lint * Update typedoc and typedoc markdown to versions that are in airlock * Fix dataprep docs generation, remove sources from typedoc generation * Add hide private
| Commit: | 436ba95 | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Added Load Configuration setting for Data Preparation SQLX format. (#1909) * Added Load Configuration setting for Data Preparation SQLX format. # Conflicts: # core/main_test.ts * Addressed PR comments * Addressed suggestions * Addressed PR comments
| Commit: | 167f36a | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
SQLX support for Data Preparations (#1891) * Added SQLX support for data preparation. # Conflicts: # core/utils.ts # Conflicts: # core/actions/data_preparation.ts # core/main_test.ts * Removed config interfaces, using proto config instead. # Conflicts: # core/actions/data_preparation.ts * Removed config interfaces, using proto config instead. Added requested test case. * Removed package.json changes * Addressed PR comments
| Commit: | 70bdbe6 | |
|---|---|---|
| Author: | Mikhail Kumachev | |
| Committer: | GitHub | |
Add support for OnSchemaChange field for incremental tables. (#1902) * Add support for OnSchemaChange field for incremental tables. * Fix docs * Fix OnSchemaChange docs section * Update comments and simplify tests.
| Commit: | 0e98564 | |
|---|---|---|
| Author: | Dias | |
| Committer: | GitHub | |
Add notebook runtime template resource name field to NotebookRuntimOptions (#1890)
| Commit: | d774f0e | |
|---|---|---|
| Author: | Elias Kassell | |
Add assert config option for the JS api
| Commit: | 09f606a | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Remove data preparation proto definition. (#1849) * Remove data preparation proto definition. Clean up unused code in data preparation action. * Removed missed unused code
| Commit: | 86254eb | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Update Data Preparation processor to remove proto dependency. (#1839) * Update Data Preparation processor to remove proto dependency. The data preparation in the compiled graph now contains the resolved YAML after compiling. * Fixed compilation issue
| Commit: | 1868d37 | |
|---|---|---|
| Author: | Elias Kassell | |
| Committer: | GitHub | |
Bump dataprep proto to latest config (#1825) * Bump dataprep proto to latest config * Remove license header
| Commit: | 7f69306 | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Sync proto structure and message names for data preparation. (#1811) * Sync proto structure and message names for data preparation. Moved data preparation into another package. * Fix broken test.
| Commit: | 2531b12 | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Update output for Data Preparation processing (#1808) * Updated data preparation proto to only carry binary encoded data preparation contents after processing the data preparation definition. * Addressed PR Comments. * Addressed final PR comments * Fixed compilation issue.
| Commit: | a918c0c | |
|---|---|---|
| Author: | Elias Kassell | |
| Committer: | GitHub | |
Remove some outdated configs references, fix generated formatting (#1799)
| Commit: | 85f47d4 | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Handling for Data Preparation actions (#1789) * Add logic to handle Data preparation definitions and parse data preparation YAML into the proto representation of the operation. * Addressed PR Comments * Fixed lint warnings
| Commit: | 6635abc | |
|---|---|---|
| Author: | Fernando Velasquez | |
| Committer: | GitHub | |
Added proto definitions for Data Preparations (#1788) * Added proto definitions for Data Preparations * Moved Data preparation protos into a separate file
| Commit: | da1d7bd | |
|---|---|---|
| Author: | Elias Kassell | |
| Committer: | GitHub | |
Add support for action configs table assertions and hermeticity, add action configs fields tests (#1762) * Progress adding action config tests for different actions * Add remaining table test types, fix support for table assertions and hermeticity * Regenerate docs, tidy merge files