Skip to content

Commit d77a490

Browse files
authored
Merge branch 'main' into python-non-experimental
2 parents 511834f + d3ac142 commit d77a490

250 files changed

Lines changed: 5321 additions & 1716 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.codegen/_openapi_sha

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6701524136501ef070774942ef5d6e01cfaafb88
1+
b95c2c6e21bec9551ec7d7d51ddf2dfe390b4522

.golangci.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,9 @@ linters:
6969
- path-except: bundle/terranova/tnresources
7070
linters:
7171
- exhaustruct
72+
- path: bundle/terranova/tnresources/all_test.go
73+
linters:
74+
- exhaustruct
7275
issues:
7376
max-issues-per-linter: 1000
7477
max-same-issues: 1000

.release_metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"timestamp": "2025-08-27 11:34:20+0000"
2+
"timestamp": "2025-09-03 13:49:06+0000"
33
}

.wsignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ integration/bundle/testdata/apps/bundle_deploy.txt
3030

3131
# Extra whitespace in test output:
3232
acceptance/bundle/resource_deps/bad_syntax/out.plan.terraform.txt
33+
acceptance/bundle/upload/internal_server_error/output.txt
3334

3435
# Extra whitespace in command help:
3536
acceptance/cmd/workspace/apps/output.txt

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,23 @@
11
# Version changelog
22

3+
## Release v0.267.0
4+
5+
### CLI
6+
* Introduce retries to `databricks psql` command ([#3492](https://github.com/databricks/cli/pull/3492))
7+
* Add rule files for coding agents working on the CLI code base ([#3245](https://github.com/databricks/cli/pull/3245))
8+
9+
### Dependency updates
10+
* Upgrade TF provider to 1.88.0 ([#3529](https://github.com/databricks/cli/pull/3529))
11+
* Upgrade Go SDK to 0.82.0
12+
13+
### Bundles
14+
* Update default-python template to make DB Connect work out of the box for unit tests, using uv to install dependencies ([#3254](https://github.com/databricks/cli/pull/3254))
15+
* Add support for `TaskRetryMode` for continuous jobs ([#3529](https://github.com/databricks/cli/pull/3529))
16+
* Add support for specifying database instance as an application resource ([#3529](https://github.com/databricks/cli/pull/3529))
17+
* Allow referencing job libraries outside bundle root without the need to specify sync root ([#2842](https://github.com/databricks/cli/pull/2842))
18+
* Add top level `run_as` support for Lakeflow Declarative Pipelines ([#3307](https://github.com/databricks/cli/pull/3307))
19+
20+
321
## Release v0.266.0
422

523
### Notable Changes

Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@ links:
4747
checks: tidy ws links
4848

4949
test:
50+
${GOTESTSUM_CMD} -- ${PACKAGES} -timeout=${LOCAL_TIMEOUT} -short
51+
52+
test-slow:
5053
${GOTESTSUM_CMD} -- ${PACKAGES} -timeout=${LOCAL_TIMEOUT}
5154

5255
# Updates acceptance test output (local tests)

NEXT_CHANGELOG.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# NEXT CHANGELOG
22

3-
## Release v0.267.0
3+
## Release v0.268.0
44

55
### Notable Changes
66

77
### CLI
8-
* Introduce retries to `databricks psql` command ([#3492](https://github.com/databricks/cli/pull/3492))
9-
* Add rule files for coding agents working on the CLI code base ([#3245](https://github.com/databricks/cli/pull/3245))
108

119
### Dependency updates
12-
* Upgrade TF provider to 1.88.0 ([#3529](https://github.com/databricks/cli/pull/3529))
1310

1411
### Bundles
12+
* Add support for schemas in Python support ([#3389])(https://github.com/databricks/cli/pull/3389))
13+
14+
* Updated templates to use the new "environment_version" property instead of the deprecated "client" property ([#3554](https://github.com/databricks/cli/pull/3554)).
1515

1616
### API Changes

acceptance/acceptance_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -415,6 +415,14 @@ func getSkipReason(config *internal.TestConfig, configPath string) string {
415415
return ""
416416
}
417417

418+
if isTruePtr(config.SkipOnDbr) && WorkspaceTmpDir {
419+
return "Disabled via SkipOnDbr setting in " + configPath
420+
}
421+
422+
if isTruePtr(config.Slow) && testing.Short() {
423+
return "Disabled via Slow setting in " + configPath
424+
}
425+
418426
isEnabled, isPresent := config.GOOS[runtime.GOOS]
419427
if isPresent && !isEnabled {
420428
return fmt.Sprintf("Disabled via GOOS.%s setting in %s", runtime.GOOS, configPath)

acceptance/bin/allocate_ports.py

Lines changed: 0 additions & 22 deletions
This file was deleted.

acceptance/bin/kill_port.py

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
#!/usr/bin/env python3
2+
"""
3+
Cross-platform script to kill processes using specific ports.
4+
Usage: kill_port.py <port1> [port2] [port3] ...
5+
"""
6+
7+
import sys
8+
import subprocess
9+
import platform
10+
import re
11+
12+
13+
def kill_processes_on_port(port):
14+
"""Kill all processes using the specified port."""
15+
system = platform.system().lower()
16+
17+
try:
18+
if system in ["linux", "darwin"]: # Linux or macOS
19+
# Try lsof first (most reliable)
20+
try:
21+
result = subprocess.run(
22+
["lsof", "-ti", f":{port}"],
23+
capture_output=True,
24+
text=True,
25+
check=False,
26+
)
27+
if result.returncode == 0 and result.stdout.strip():
28+
pids = result.stdout.strip().split("\n")
29+
for pid in pids:
30+
if pid.strip():
31+
subprocess.run(["kill", "-9", pid.strip()], check=False)
32+
except FileNotFoundError:
33+
# Fall back to netstat if lsof not available
34+
result = subprocess.run(["netstat", "-tlnp"], capture_output=True, text=True, check=False)
35+
if result.returncode == 0:
36+
for line in result.stdout.split("\n"):
37+
if f":{port} " in line:
38+
# Extract PID from output like "tcp 0 0 :::8080 :::* LISTEN 12345/python"
39+
match = re.search(r"(\d+)/", line)
40+
if match:
41+
pid = match.group(1)
42+
subprocess.run(["kill", "-9", pid], check=False)
43+
44+
elif system == "windows":
45+
# Windows using netstat and taskkill
46+
result = subprocess.run(["netstat", "-ano"], capture_output=True, text=True, check=False)
47+
if result.returncode == 0:
48+
for line in result.stdout.split("\n"):
49+
if f":{port} " in line and "LISTENING" in line:
50+
# Extract PID from last column
51+
parts = line.split()
52+
if len(parts) >= 5:
53+
pid = parts[-1]
54+
if pid.isdigit():
55+
subprocess.run(
56+
["taskkill", "/PID", pid, "/F"],
57+
check=False,
58+
capture_output=True,
59+
)
60+
61+
except Exception as e:
62+
# Silently continue - port cleanup is best effort
63+
pass
64+
65+
66+
def main():
67+
if len(sys.argv) < 2:
68+
print("Usage: kill_port.py <port1> [port2] [port3] ...")
69+
sys.exit(1)
70+
71+
for port_str in sys.argv[1:]:
72+
try:
73+
port = int(port_str)
74+
kill_processes_on_port(port)
75+
except ValueError:
76+
print(f"Warning: Invalid port number '{port_str}'")
77+
78+
79+
if __name__ == "__main__":
80+
main()

0 commit comments

Comments
 (0)