Repository navigation
Do not check required fields inside a pure reference - #7226
Merged
Merged
Conversation
Contributor
|
Commit: Regression test reportSelected 1 changed tests (limit=20, 0 not selected) 2 tests: regression=2 unreleased=0 coverage=0 failing=0
TestAccept/bundle/validate/references/job_schedule_whole_reference/DMS=: branch ✅ | main (8b4a341) ❌ | latest (v1.22.1) ❌main (8b4a341): latest (v1.22.1): TestAccept/bundle/validate/references/job_schedule_whole_reference/DMS=true: branch ✅ | main (8b4a341) ❌ | latest (v1.22.1) ❌main (8b4a341): latest (v1.22.1): |
Collaborator
Integration test reportCommit: faae0bc
Top 6 slowest tests (at least 2 minutes):
|
denik
force-pushed
the
denik/fix-defaults-whole-reference
branch
from
October 28, 2026 15:16
b7a1880 to
1ec962d
Compare
denik
force-pushed
the
denik/fix-required-skip-reference
branch
from
October 28, 2026 15:16
c32166c to
1930bc7
Compare
denik
marked this pull request as ready for review
October 28, 2026 15:23
shreyas-goenka
approved these changes
Oct 28, 2026
warnForMissingFields reported every required field of e.g. a schedule as not set
when the schedule was "${resources.jobs.base.schedule}". The referenced value is
checked where it is defined.
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
denik
force-pushed
the
denik/fix-required-skip-reference
branch
from
October 28, 2026 16:12
1930bc7 to
faae0bc
Compare
Collaborator
Integration test reportCommit: 634cea7
Top 50 slowest tests (at least 2 minutes):
|
denik
added a commit
that referenced
this pull request
Oct 29, 2026
Port of #7226 to the generated walker: a value that is a pure reference has no fields of its own, the referenced value is checked where it is defined. Co-authored-by: Isaac <no-reply@databricks.com>
deco-sdk-tagging Bot
added a commit
that referenced
this pull request
Oct 29, 2026
## Release v1.23.0 ### CLI * Fix GitHub API rate limit errors in `aitools list` and plugin installs by pinning skills to `0.2.32`. ([#7159](#7159)) * `databricks ssh connect` now makes `claude` and `codex` available on dedicated clusters. ([#7190](#7190)) * `databricks ssh connect` on serverless now makes `claude` and `codex` available in IDE sessions (`--ide`) and to non-interactive commands (e.g. `databricks ssh connect -- 'claude -p "..."'`). ([#7123](#7123)) ### AI Runtime * Add workload support for the GPU_1xRTX6000 accelerator type in enabled workspaces. ([#7214](#7214)) * Show only the accelerator types available in the current workspace in `databricks air run -h config.compute`. ([#6993](#6993)) ### Bundles * Fixed `bundle validate` failing with "expected a map to index" when a job `schedule`, `trigger` or `continuous` is a reference to a whole block, such as `${resources.jobs.base.schedule}`. ([#7225](#7225)) * Added `lifecycle.depends_on` to order resources without referencing their fields. ([#7120](#7120)) * Immutable-folder deploys now refuse to deploy onto a snapshot that was modified outside the bundle (break glass); `bundle deploy --force` moves the deployment to a fresh snapshot. ([#6774](#6774)) * Fix `--include-locations` failing when a resource is missing a required field. ([#7185](#7185)) * Removed spurious "required field is not set" warnings for a field whose value is a reference to a whole block, such as `schedule: ${resources.jobs.base.schedule}`. ([#7226](#7226)) * Revert bundle file uploads to the legacy `/workspace-files/import-file` endpoint, rolling back [#6149](#6149) and [#7034](#7034) released in [v1.21.0](https://github.com/databricks/cli/releases/tag/v1.21.0). This fixes notebooks being uploaded as plain files and deployments failing (for example SQL notebooks in [#7216](#7216)). A remote file or notebook whose type differs from the local one is now deleted and replaced instead of blocking the deploy. ([#7218](#7218)) * Support selecting resources for deletion with `bundle deploy --select`. ([#7023](#7023)) * Add the `workspace.sync_mode` setting with the values `overwrite` (default), `in-place`, and `immutable`. It replaces `presets.source_linked_deployment` (use `in-place`) and `experimental.immutable_folder` (use `immutable`), which are now deprecated and emit a warning. ([#7183](#7183)) ### Dependency Updates * Bump dependencies with known vulnerabilities. ([#7213](#7213)) * Update the Go SDK to [v0.190.0](https://github.com/databricks/databricks-sdk-go/releases/tag/v0.190.0). ([#7155](#7155)) * Update the Go SDK to [v0.191.0](https://github.com/databricks/databricks-sdk-go/releases/tag/v0.191.0). ([#7211](#7211)) * Bump Node.js downloaded by the `ssh` agent shim from v24.21.0 to v24.22.2. ([#7246](#7246))
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
The required-field warning check (
bundle/config/validate/required.go) skips a value that is a pure${...}reference.Why
schedule: ${resources.jobs.base.schedule}producedrequired field "quartz_cron_expression" is not set(andtimezone_id) for the referring job, although the referenced schedule sets both. The same happens on main for e.g.queue: ${...}. The referenced value is checked where it is defined.Stacked on #7225 (the test only gets past validate with that fix).
Port note: the fix lives in
warnForMissingFieldsand is dyn-specific (it walks the dyn tree); a typed walker needs the same skip for fields held as references.Tests
bundle/config/validate/required_test.go.acceptance/bundle/validate/references/job_schedule_whole_reference: warnings gone, Badness removed.This pull request and its description were written by Isaac.