Skip to content

Commit 0c3366c

Browse files
committed
Add UUID data type, add WORKSPACE object type
1 parent 6b3642e commit 0c3366c

File tree

8 files changed

+24
-3
lines changed

8 files changed

+24
-3
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
## [0.63.0] - 2026-02-04
4+
5+
- Introduced support for `UUID` data type.
6+
- Added `WORKSPACE` object type, which can be used for `owner_create_grants` parameter. Workspaces do not seem to support future grants at this moment.
7+
38
## [0.62.2] - 2026-01-27
49

510
- Added logic to prevent drop of automatically generated `UNIQUE_KEY` objects with name `SYS_CONSTRAINT_DERIVED_PK`.

snowddl/_config/sample02_01/permission_model.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ fivetran:
88
- VIEW
99
- NOTEBOOK
1010
- CORTEX_SEARCH_SERVICE
11+
- WORKSPACE
1112

1213
owner_future_grants:
1314
DATASET: [OWNERSHIP]

snowddl/blueprint/data_type.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,12 @@ class BaseDataType(Enum):
7676
"default_properties": [9],
7777
}
7878

79+
UUID = {
80+
"base_name": "UUID",
81+
"number_of_properties": 0,
82+
"default_properties": [],
83+
}
84+
7985
VARIANT = {
8086
"base_name": "VARIANT",
8187
"number_of_properties": 0,

snowddl/blueprint/object_type.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,6 +333,13 @@ class ObjectType(Enum):
333333
"blueprint_cls": "WarehouseBlueprint",
334334
}
335335

336+
# Technical object type, used for GRANTs only
337+
# There is no blueprint
338+
WORKSPACE = {
339+
"singular": "WORKSPACE",
340+
"plural": "WORKSPACES",
341+
}
342+
336343
# Constraints
337344
PRIMARY_KEY = {
338345
"singular": "PRIMARY KEY",

snowddl/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "0.62.2"
1+
__version__ = "0.63.0"

test/_config/step1/db1/sc1/table/tb001_tb1.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,4 @@ columns:
2424
geo2: GEOMETRY
2525
file1: FILE
2626
dec1: DECFLOAT(38)
27+
uid1: UUID

test/_config/step2/db1/sc1/table/tb001_tb1.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,4 @@ columns:
2424
geo2: GEOMETRY
2525
file1: FILE
2626
dec1: DECFLOAT(38)
27+
uid1: UUID

test/table/tb001.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ def test_step1(helper):
22
cols = helper.desc_table("db1", "sc1", "tb001_tb1")
33

44
# Created table with specific number of columns
5-
assert len(cols) == 25
5+
assert len(cols) == 26
66

77
# Data types and sizes
88
assert cols["NUM1"]["type"] == "NUMBER(10,0)"
@@ -14,7 +14,7 @@ def test_step2(helper):
1414
cols = helper.desc_table("db1", "sc1", "tb001_tb1")
1515

1616
# Still the same number of columns
17-
assert len(cols) == 25
17+
assert len(cols) == 26
1818

1919
# Data types and sizes
2020
assert cols["NUM1"]["type"] == "NUMBER(12,0)"

0 commit comments

Comments
 (0)