Proto commits in dataform-co/dataform

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