Repository navigation
acceptance: give title its own trailing newline - #7003
Merged
Merged
Conversation
Follow-up to the review thread on #6957. `title` printed `\n=== <label>` with no trailing newline, relying on a following `trace` (which prepends `\n`) to terminate the header line. When a `title` was instead followed by non-`trace` output the header got mashed onto the next line (e.g. `=== Recorded request bodies{`), and authors worked around the missing newline inconsistently: a bare `echo` after the title, or a literal `\n` appended to the label. Make `title` self-contained by printing its own trailing newline. `trace` is unchanged and still prepends a blank line, so every `>>>` block is now uniformly preceded by one blank line whether it follows a section header or earlier output. Remove the now-redundant workarounds (bare `echo`/`echo ""` after a title, trailing `\n` in labels) and regenerate the acceptance goldens. Co-authored-by: Isaac <no-reply@databricks.com>
janniklasrose
force-pushed
the
janniklasrose/acc/title-trace-newlines
branch
from
November 9, 2026 23:51
a1ed86e to
9c69a7c
Compare
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
This test is skipped on Linux, so the local regen did not reach it; the blank lines after each header match the output CI produced on macOS. Co-authored-by: Isaac <no-reply@databricks.com>
Contributor
|
Commit: Regression test reportSelected 20 changed tests (limit=20, 664 not selected) 41 tests: regression=0 unreleased=0 coverage=41 failing=0
|
Collaborator
✅ Integration test reportCommit: 85ebc5d
Top 32 slowest tests (at least 2 minutes):
|
denik
approved these changes
Nov 10, 2026
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
janniklasrose
enabled auto-merge
November 11, 2026 14:16
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
andrewnester
added a commit
that referenced
this pull request
Nov 11, 2026
Main commit 8b4f052 (#7003) gave the acceptance `title` helper a trailing newline, so every `=== Section` header is now followed by a blank line. The isolation_mode golden was generated before that change and went stale when main was merged into this branch. Co-authored-by: Isaac <no-reply@databricks.com>
denik
added a commit
that referenced
this pull request
Nov 11, 2026
…e schema-rename's in-place rename Co-authored-by: Isaac <no-reply@databricks.com>
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.
Follow-up to the review thread on #6957 (#6957 (comment)).
Problem
The acceptance-test
titlehelper printed\n=== <label>with no trailing newline, relying on a followingtrace(which prepends\n) to terminate the header line. This had two consequences:titlewas followed by non-traceoutput, the header got mashed onto the output, e.g.=== Recorded create-branch request bodies{.echoafter the title or a literal\nappended to the label.Change
titlenow prints its own trailing newline, so it is self-contained: the header is always terminated and non-traceoutput is no longer mashed onto it.traceis unchanged (it still prepends a single blank line), so every>>>command block is uniformly preceded by one blank line, whether it follows a section header or earlier output.The now-redundant workarounds are removed (bare
echo/echo ""after a title; trailing\nin labels) and all acceptance goldens regenerated.The net change to
acceptance/script.prepareis a single trailing\nintitle.Net effect on
output.txt=== headeris followed by one blank line before its first>>>command. Previously a header was tight against the command only whentracehappened to be the literal next line, and spaced otherwise.titlefollowed by non-traceoutput: no longer mashed onto the header line.Testing
Regenerated via
go test ./acceptance -updateon top of currentmain(merged in); full suite re-run without-updatepasses locally. Unrelated local drift that a full regen bakes in (thejob_permissionsdeploy-order flake, thefipsDefaultGODEBUGstring from a non-pinned local toolchain, aSIGPIPEincmd/completion,cmd/api/request-handlingerror wording) was reverted so this PR only carries the title/trace changes.Files
Of the 573 goldens that changed, all but 18 differ only in blank lines. These 18 had a header mashed onto the following output (
=== header{,=== header: 0, ...) and now have it on its own line:acceptance/bundle/config-remote-sync/output_json/output.txtacceptance/bundle/deploy/immutable/basic/output.txtacceptance/bundle/deployment/bind/experiment/output.txtacceptance/bundle/deployment/bind/job/job-abort-bind/output.txtacceptance/bundle/deployment/bind/job/job-spark-python-task/output.txtacceptance/bundle/deployment/bind/job/stale-state/output.txtacceptance/bundle/deployment/bind/schema/output.txtacceptance/bundle/generate/pipeline_and_deploy/output.txtacceptance/bundle/generate/python_job_and_deploy/output.txtacceptance/bundle/resource_deps/loop_self/output.txtacceptance/bundle/resources/apps/lifecycle-started-omitted/output.txtacceptance/bundle/resources/dashboards/detect-change/output.txtacceptance/bundle/resources/genie_spaces/version_migration/output.txtacceptance/bundle/resources/models/readplan-permissions/output.txtacceptance/bundle/resources/pipelines/auto-approve/output.txtacceptance/bundle/resources/pipelines/recreate/output.txtacceptance/bundle/resources/schemas/auto-approve/output.txtacceptance/cmd/workspace/postgres/create-branch/output.txtScripts where a workaround was removed:
Bare
echoafter atitleremoved (46 scripts)acceptance/bundle/config-remote-sync/cli_defaults/scriptacceptance/bundle/config-remote-sync/config_edits/scriptacceptance/bundle/config-remote-sync/dashboard_etag/scriptacceptance/bundle/config-remote-sync/flushed_cache/scriptacceptance/bundle/config-remote-sync/formatting_preserved/scriptacceptance/bundle/config-remote-sync/job_fields/scriptacceptance/bundle/config-remote-sync/job_multiple_tasks/scriptacceptance/bundle/config-remote-sync/job_params_variables/scriptacceptance/bundle/config-remote-sync/job_pipeline_task/scriptacceptance/bundle/config-remote-sync/json_status_missing_state/scriptacceptance/bundle/config-remote-sync/json_status_selectors/scriptacceptance/bundle/config-remote-sync/multiple_files/scriptacceptance/bundle/config-remote-sync/multiple_resources/scriptacceptance/bundle/config-remote-sync/output_no_changes/scriptacceptance/bundle/config-remote-sync/pipeline_fields/scriptacceptance/bundle/config-remote-sync/policy_injected_cluster_fields/scriptacceptance/bundle/config-remote-sync/resolve_variables/scriptacceptance/bundle/config-remote-sync/select_basic/scriptacceptance/bundle/config-remote-sync/select_multiple/scriptacceptance/bundle/config-remote-sync/skip_deployment/scriptacceptance/bundle/config-remote-sync/skip_permissions/scriptacceptance/bundle/config-remote-sync/split/cli_default_split_element/scriptacceptance/bundle/config-remote-sync/split/dotted_target/scriptacceptance/bundle/config-remote-sync/split/isolation/scriptacceptance/bundle/config-remote-sync/split/keyed_edit/scriptacceptance/bundle/config-remote-sync/split/keyed_remove/scriptacceptance/bundle/config-remote-sync/split/keyed_rename/scriptacceptance/bundle/config-remote-sync/split/keyed_twoblock/scriptacceptance/bundle/config-remote-sync/split/multifile/scriptacceptance/bundle/config-remote-sync/split/nested_add_split_parent/scriptacceptance/bundle/config-remote-sync/split/nested_sequence/scriptacceptance/bundle/config-remote-sync/split/positional/scriptacceptance/bundle/config-remote-sync/split/remove_field_both_blocks/scriptacceptance/bundle/config-remote-sync/split/remove_with_unrelated_add/scriptacceptance/bundle/config-remote-sync/split/rename_ambiguous_pairing/scriptacceptance/bundle/config-remote-sync/split/rename_ambiguous_single_block/scriptacceptance/bundle/config-remote-sync/split/rename_two_removes_one_add/scriptacceptance/bundle/config-remote-sync/split/target_variable/scriptacceptance/bundle/config-remote-sync/split/variable_file_order/scriptacceptance/bundle/config-remote-sync/target_override/scriptacceptance/bundle/config-remote-sync/task_rename_revert/scriptacceptance/bundle/config-remote-sync/validation_errors/scriptacceptance/bundle/config-remote-sync/variable_reference_parent/scriptacceptance/bundle/deploy/immutable/permissions-change/scriptacceptance/bundle/resources/postgres_projects/recreate/scriptacceptance/selftest/record_cloud/pipeline-crud/scriptTrailing
\nstripped from thetitlelabel (160 scripts)acceptance/air/image-push/scriptacceptance/auth/bundle_default_profile/scriptacceptance/auth/host-metadata-cache/scriptacceptance/bundle/apps/delete_deleting/scriptacceptance/bundle/artifacts/whl_dynamic/scriptacceptance/bundle/debug/fetch-repository-info/scriptacceptance/bundle/deploy/mlops-stacks/scriptacceptance/bundle/deployment/bind/job/generate-and-bind/scriptacceptance/bundle/deployment/bind/job/job-abort-bind/scriptacceptance/bundle/deployment/bind/job/job-spark-python-task/scriptacceptance/bundle/deployment/bind/job/stale-state/scriptacceptance/bundle/deployment/bind/job/unreadable-state/scriptacceptance/bundle/destroy/jobs-and-pipeline/scriptacceptance/bundle/destroy/lineage-mismatch-after-redeploy/scriptacceptance/bundle/escaped_refs/scriptacceptance/bundle/generate/auto-bind/scriptacceptance/bundle/git-metadata/scriptacceptance/bundle/hashing/new-cli-on-old-state/scriptacceptance/bundle/hashing/old-cli-on-new-state/scriptacceptance/bundle/includes/plan_multifile/scriptacceptance/bundle/local_state_staleness/scriptacceptance/bundle/migrate/auto/apply-failure/scriptacceptance/bundle/migrate/auto/artifacts/scriptacceptance/bundle/migrate/auto/clean/scriptacceptance/bundle/migrate/auto/default/scriptacceptance/bundle/migrate/auto/empty-tfstate/scriptacceptance/bundle/migrate/auto/envvar/scriptacceptance/bundle/migrate/auto/push-failure/scriptacceptance/bundle/migrate/auto/run-no-commit/scriptacceptance/bundle/migrate/auto/tfbackup-failure/scriptacceptance/bundle/resource_deps/escaped_ref/scriptacceptance/bundle/resources/cluster_policies/definition_and_family_conflict/scriptacceptance/bundle/resources/clusters/cluster_policy/scriptacceptance/bundle/resources/clusters/deploy/local_ssd_count/scriptacceptance/bundle/resources/clusters/deploy/local_ssd_count_update/scriptacceptance/bundle/resources/clusters/deploy/simple/scriptacceptance/bundle/resources/clusters/deploy/spot_bid_max_price_update/scriptacceptance/bundle/resources/clusters/deploy/update-after-create/scriptacceptance/bundle/resources/clusters/deploy/update-and-resize-autoscale/scriptacceptance/bundle/resources/clusters/deploy/update-and-resize/scriptacceptance/bundle/resources/clusters/deploy/use_preemptible_update/scriptacceptance/bundle/resources/clusters/resize-terminated-fallback/scriptacceptance/bundle/resources/dashboards/change-serialized-inline/scriptacceptance/bundle/resources/dashboards/detect-change/scriptacceptance/bundle/resources/dashboards/generate_inplace/scriptacceptance/bundle/resources/job_runs/on_bundle_deploy/scriptacceptance/bundle/resources/job_runs/on_file_change/scriptacceptance/bundle/resources/job_runs/on_file_change_glob/scriptacceptance/bundle/resources/jobs/check-metadata/scriptacceptance/bundle/resources/jobs/cluster_policy/config_conflicts_policy/scriptacceptance/bundle/resources/jobs/cluster_policy/default_flag/scriptacceptance/bundle/resources/jobs/cluster_policy/fixed_addition/scriptacceptance/bundle/resources/jobs/cluster_policy/owned_tag_drift/scriptacceptance/bundle/resources/jobs/cluster_policy/policy_id_scoping/scriptacceptance/bundle/resources/jobs/remote_matches_config/scriptacceptance/bundle/resources/jobs/webhook-reorder-remote/scriptacceptance/bundle/resources/model_serving_endpoints/basic/scriptacceptance/bundle/resources/permissions/factcheck/scriptacceptance/bundle/resources/permissions/jobs/delete_one/scriptacceptance/bundle/resources/permissions/jobs/update/scriptacceptance/bundle/resources/permissions/pipelines/update/scriptacceptance/bundle/resources/pipelines/cluster_policy/scriptacceptance/bundle/resources/volumes/change-comment/scriptacceptance/bundle/resources/volumes/change-name/scriptacceptance/bundle/resources/volumes/change-schema-name/scriptacceptance/bundle/run/app-with-job/scriptacceptance/bundle/select/basic/scriptacceptance/bundle/select/deletion/scriptacceptance/bundle/select/deletion_dependents/scriptacceptance/bundle/select/deletion_saved_plan/scriptacceptance/bundle/select/grants_permissions/scriptacceptance/bundle/select/plan_file_survives_not_selected/scriptacceptance/bundle/select/redeploy_unqualified/scriptacceptance/bundle/state/engine_default/scriptacceptance/bundle/state/engine_mismatch/scriptacceptance/bundle/state/force_pull_commands/scriptacceptance/bundle/state/newer_cli_version/scriptacceptance/bundle/state/state_present/scriptacceptance/bundle/sync/replace-node-type/scriptacceptance/bundle/sync/zip-extract/scriptacceptance/bundle/telemetry/deploy-immutable-snapshot/scriptacceptance/bundle/templates-machinery/workspace_variable/input/scriptacceptance/bundle/templates-machinery/workspace_variable/runtime/scriptacceptance/bundle/templates/dbt-sql-workspace-id/scriptacceptance/bundle/templates/default-minimal/profiles/scriptacceptance/bundle/validate/presets_name_prefix_dev/scriptacceptance/bundle/variables/reference-typo/scriptacceptance/bundle/variables/sensitive/scriptacceptance/cache/clear/scriptacceptance/cache/simple/scriptacceptance/cmd/aitools/claude-config-dir/scriptacceptance/cmd/aitools/list/explicit-ref/scriptacceptance/cmd/aitools/list/latest-lookup-fails/scriptacceptance/cmd/aitools/list/latest/scriptacceptance/cmd/aitools/list/pinned/scriptacceptance/cmd/api/default-profile-vs-env/scriptacceptance/cmd/api/default-profile/scriptacceptance/cmd/api/profile-overrides-env/scriptacceptance/cmd/api/request-handling/scriptacceptance/cmd/auth/describe/account-host-with-workspace-id/scriptacceptance/cmd/auth/describe/bundle-profile-env/scriptacceptance/cmd/auth/describe/default-profile/scriptacceptance/cmd/auth/describe/profile-overrides-env/scriptacceptance/cmd/auth/docker/configure-errors/scriptacceptance/cmd/auth/docker/configure-missing-region/scriptacceptance/cmd/auth/docker/configure/scriptacceptance/cmd/auth/docker/host/scriptacceptance/cmd/auth/docker/invalid-refresh-token/scriptacceptance/cmd/auth/docker/token/scriptacceptance/cmd/auth/login/configure-serverless/scriptacceptance/cmd/auth/login/custom-config-file/scriptacceptance/cmd/auth/login/device-code/non-interactive/concurrent/scriptacceptance/cmd/auth/login/device-code/non-interactive/errors/scriptacceptance/cmd/auth/login/device-code/non-interactive/flags/scriptacceptance/cmd/auth/login/device-code/non-interactive/nominal/scriptacceptance/cmd/auth/login/device-code/precondition/scriptacceptance/cmd/auth/login/device-code/unsupported-host/scriptacceptance/cmd/auth/login/host-arg-overrides-profile/scriptacceptance/cmd/auth/login/host-from-profile/scriptacceptance/cmd/auth/login/preserve-fields/scriptacceptance/cmd/auth/logout/default-profile/scriptacceptance/cmd/auth/logout/delete-clears-default/scriptacceptance/cmd/auth/logout/delete-pat-token-profile/scriptacceptance/cmd/auth/logout/error-cases/scriptacceptance/cmd/auth/logout/last-non-default/scriptacceptance/cmd/auth/logout/ordering-preserved/scriptacceptance/cmd/auth/logout/pending-device-code-login/scriptacceptance/cmd/auth/logout/stale-account-id-workspace-host/scriptacceptance/cmd/auth/logout/token-only-shared-host/scriptacceptance/cmd/auth/logout/token-only/scriptacceptance/cmd/auth/profiles/scriptacceptance/cmd/auth/storage-modes/env-overrides-config/scriptacceptance/cmd/auth/storage-modes/plaintext-env-default/scriptacceptance/cmd/auth/switch/nominal/scriptacceptance/cmd/auth/token/default-profile/scriptacceptance/cmd/configure/clears-oauth-on-pat/scriptacceptance/cmd/configure/clears-serverless-when-cluster-from-env/scriptacceptance/cmd/psql/completions/scriptacceptance/cmd/version/scriptacceptance/cmd/workspace/apps/run-local-node/scriptacceptance/cmd/workspace/apps/run-local/scriptacceptance/cmd/workspace/arg-validation/scriptacceptance/cmd/workspace/clusters-list/scriptacceptance/cmd/workspace/put-secret/scriptacceptance/cmd/workspace/uc-renames/scriptacceptance/pipelines/history/basic/scriptacceptance/pipelines/show/basic/scriptacceptance/pipelines/show/exact-limit/scriptacceptance/pipelines/show/limit-hint/scriptacceptance/pipelines/show/rendering/scriptacceptance/selftest/selection/scriptacceptance/selftest/selection_exclusions/scriptacceptance/selftest/uuid/scriptacceptance/ssh/agent-launchers/scriptacceptance/ssh/bulk-transfer/scriptacceptance/ssh/connect-serverless-cpu/scriptacceptance/ssh/connect-serverless-feature-disabled/scriptacceptance/ssh/connect-serverless-port-forwarding-disabled/scriptacceptance/ssh/reconnect-reused-name/scriptacceptance/ssh/setup/scriptThis pull request and its description were written by Isaac.