sqlmesh 0.200.1.dev7__py3-none-any.whl → 0.200.1.dev9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- sqlmesh/_version.py +2 -2
- sqlmesh/core/config/connection.py +26 -1
- sqlmesh/core/config/loader.py +2 -1
- {sqlmesh-0.200.1.dev7.dist-info → sqlmesh-0.200.1.dev9.dist-info}/METADATA +4 -4
- {sqlmesh-0.200.1.dev7.dist-info → sqlmesh-0.200.1.dev9.dist-info}/RECORD +9 -9
- {sqlmesh-0.200.1.dev7.dist-info → sqlmesh-0.200.1.dev9.dist-info}/WHEEL +0 -0
- {sqlmesh-0.200.1.dev7.dist-info → sqlmesh-0.200.1.dev9.dist-info}/entry_points.txt +0 -0
- {sqlmesh-0.200.1.dev7.dist-info → sqlmesh-0.200.1.dev9.dist-info}/licenses/LICENSE +0 -0
- {sqlmesh-0.200.1.dev7.dist-info → sqlmesh-0.200.1.dev9.dist-info}/top_level.txt +0 -0
sqlmesh/_version.py
CHANGED
|
@@ -17,5 +17,5 @@ __version__: str
|
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
|
18
18
|
version_tuple: VERSION_TUPLE
|
|
19
19
|
|
|
20
|
-
__version__ = version = '0.200.1.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 200, 1, '
|
|
20
|
+
__version__ = version = '0.200.1.dev9'
|
|
21
|
+
__version_tuple__ = version_tuple = (0, 200, 1, 'dev9')
|
|
@@ -1627,7 +1627,32 @@ class MSSQLConnectionConfig(ConnectionConfig):
|
|
|
1627
1627
|
# Create the connection string
|
|
1628
1628
|
conn_str = ";".join(conn_str_parts)
|
|
1629
1629
|
|
|
1630
|
-
|
|
1630
|
+
conn = pyodbc.connect(conn_str, autocommit=kwargs.get("autocommit", False))
|
|
1631
|
+
|
|
1632
|
+
# Set up output converters for MSSQL-specific data types
|
|
1633
|
+
# Handle SQL type -155 (DATETIMEOFFSET) which is not yet supported by pyodbc
|
|
1634
|
+
# ref: https://github.com/mkleehammer/pyodbc/issues/134#issuecomment-281739794
|
|
1635
|
+
def handle_datetimeoffset(dto_value: t.Any) -> t.Any:
|
|
1636
|
+
from datetime import datetime, timedelta, timezone
|
|
1637
|
+
import struct
|
|
1638
|
+
|
|
1639
|
+
# Unpack the DATETIMEOFFSET binary format:
|
|
1640
|
+
# Format: <6hI2h = (year, month, day, hour, minute, second, nanoseconds, tz_hour_offset, tz_minute_offset)
|
|
1641
|
+
tup = struct.unpack("<6hI2h", dto_value)
|
|
1642
|
+
return datetime(
|
|
1643
|
+
tup[0],
|
|
1644
|
+
tup[1],
|
|
1645
|
+
tup[2],
|
|
1646
|
+
tup[3],
|
|
1647
|
+
tup[4],
|
|
1648
|
+
tup[5],
|
|
1649
|
+
tup[6] // 1000,
|
|
1650
|
+
timezone(timedelta(hours=tup[7], minutes=tup[8])),
|
|
1651
|
+
)
|
|
1652
|
+
|
|
1653
|
+
conn.add_output_converter(-155, handle_datetimeoffset)
|
|
1654
|
+
|
|
1655
|
+
return conn
|
|
1631
1656
|
|
|
1632
1657
|
return connect
|
|
1633
1658
|
|
sqlmesh/core/config/loader.py
CHANGED
|
@@ -194,7 +194,8 @@ def load_config_from_python_module(
|
|
|
194
194
|
|
|
195
195
|
if config_obj is None or not isinstance(config_obj, Config):
|
|
196
196
|
raise ConfigError(
|
|
197
|
-
f"Config needs to be a valid object of type sqlmesh.core.config.Config. Found `{config_obj}` instead at '{module_path}'."
|
|
197
|
+
f"Config needs to be a valid object of type sqlmesh.core.config.Config. Found `{config_obj}` instead at '{module_path}'.",
|
|
198
|
+
module_path,
|
|
198
199
|
)
|
|
199
200
|
|
|
200
201
|
return (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sqlmesh
|
|
3
|
-
Version: 0.200.1.
|
|
3
|
+
Version: 0.200.1.dev9
|
|
4
4
|
Summary: Next-generation data transformation framework
|
|
5
5
|
Author-email: "TobikoData Inc." <engineering@tobikodata.com>
|
|
6
6
|
License: Apache License
|
|
@@ -243,7 +243,7 @@ Requires-Dist: PyAthena[Pandas]; extra == "athena"
|
|
|
243
243
|
Provides-Extra: azuresql
|
|
244
244
|
Requires-Dist: pymssql; extra == "azuresql"
|
|
245
245
|
Provides-Extra: azuresql-odbc
|
|
246
|
-
Requires-Dist: pyodbc; extra == "azuresql-odbc"
|
|
246
|
+
Requires-Dist: pyodbc>=5.0.0; extra == "azuresql-odbc"
|
|
247
247
|
Provides-Extra: bigquery
|
|
248
248
|
Requires-Dist: google-cloud-bigquery[pandas]; extra == "bigquery"
|
|
249
249
|
Requires-Dist: google-cloud-bigquery-storage; extra == "bigquery"
|
|
@@ -280,7 +280,7 @@ Requires-Dist: psycopg2-binary; extra == "dev"
|
|
|
280
280
|
Requires-Dist: pydantic; extra == "dev"
|
|
281
281
|
Requires-Dist: PyAthena[Pandas]; extra == "dev"
|
|
282
282
|
Requires-Dist: PyGithub>=2.6.0; extra == "dev"
|
|
283
|
-
Requires-Dist: pyodbc; extra == "dev"
|
|
283
|
+
Requires-Dist: pyodbc>=5.0.0; extra == "dev"
|
|
284
284
|
Requires-Dist: pyperf; extra == "dev"
|
|
285
285
|
Requires-Dist: pyspark~=3.5.0; extra == "dev"
|
|
286
286
|
Requires-Dist: pytest; extra == "dev"
|
|
@@ -318,7 +318,7 @@ Requires-Dist: duckdb>=1.2.0; extra == "motherduck"
|
|
|
318
318
|
Provides-Extra: mssql
|
|
319
319
|
Requires-Dist: pymssql; extra == "mssql"
|
|
320
320
|
Provides-Extra: mssql-odbc
|
|
321
|
-
Requires-Dist: pyodbc; extra == "mssql-odbc"
|
|
321
|
+
Requires-Dist: pyodbc>=5.0.0; extra == "mssql-odbc"
|
|
322
322
|
Provides-Extra: mysql
|
|
323
323
|
Requires-Dist: pymysql; extra == "mysql"
|
|
324
324
|
Provides-Extra: mwaa
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
sqlmesh/__init__.py,sha256=QjwaamJIdW7voXoS880yAx7tHm-Im4_mqGA-XJgafos,7631
|
|
2
|
-
sqlmesh/_version.py,sha256=
|
|
2
|
+
sqlmesh/_version.py,sha256=FlIy8vX7gaBLk6tFwGdei1NOSaRrF-YPOidgzyPN2XA,528
|
|
3
3
|
sqlmesh/magics.py,sha256=bEzYqXHcM0P3CjyUZ1O9arlmXAdLAhoglKbQ29fD9AE,41842
|
|
4
4
|
sqlmesh/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
sqlmesh/cicd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -41,13 +41,13 @@ sqlmesh/core/config/__init__.py,sha256=b4gFb04tpeZpowqJD-7h3U3TLgxrpQhZahVEAo6VW
|
|
|
41
41
|
sqlmesh/core/config/base.py,sha256=t8NQmsgQoZSc-k0dlDiCb8t1jj0AMYdGZ-6se9q_Pks,4898
|
|
42
42
|
sqlmesh/core/config/categorizer.py,sha256=6vzUoNLjR6GOEb_2mYVz2TwmMv2BfldgHX2u-Le5HZs,1975
|
|
43
43
|
sqlmesh/core/config/common.py,sha256=rsb2uVFqPEX3DMsWG_hApwztCuRJP-FAmaQ_5L3-S8g,4006
|
|
44
|
-
sqlmesh/core/config/connection.py,sha256=
|
|
44
|
+
sqlmesh/core/config/connection.py,sha256=uv2kTGKEA8aOZrPVV9XsgZaXy8sjcrKJYFDJw7PZmk8,87610
|
|
45
45
|
sqlmesh/core/config/feature_flag.py,sha256=JRcD31OG_t2cYc24meKbHDGB0iVID0P07V2oOeB_mgA,203
|
|
46
46
|
sqlmesh/core/config/format.py,sha256=6CXFbvnor56xbldKE-Vrm9k_ABRoY4v6vgIb3mCihiQ,1355
|
|
47
47
|
sqlmesh/core/config/gateway.py,sha256=tYngyqwd_4Qr9lhcv2hlvLvb_2pgYYtKu6hdGsTr-4I,1931
|
|
48
48
|
sqlmesh/core/config/janitor.py,sha256=NP0i51V8XwMrHw8uuwQknivuudIleNiFBtBnMuXmfIY,362
|
|
49
49
|
sqlmesh/core/config/linter.py,sha256=4Fh6UgY5FrRD9tk_R41Y-M_r91Wh7EQW3Pc1IdRN9Cg,1287
|
|
50
|
-
sqlmesh/core/config/loader.py,sha256=
|
|
50
|
+
sqlmesh/core/config/loader.py,sha256=Bv3BiZsSb-wYyFpntZjvTbsnWFT_QY5fLokEoa-MJ0w,8397
|
|
51
51
|
sqlmesh/core/config/migration.py,sha256=3lZIlmIcQH3_hIEm3Y3jFtvpw0YXzRzAnk4OdiklO6M,408
|
|
52
52
|
sqlmesh/core/config/model.py,sha256=GIz9kAfKD2NEXNzCZCQ17-CK2OtqN6WgeG1fvibcChM,3650
|
|
53
53
|
sqlmesh/core/config/naming.py,sha256=KVGaxUgswoQajXR_cHFJvgkmEFcU1V182GkOH1SJxuE,326
|
|
@@ -284,7 +284,7 @@ sqlmesh/utils/pydantic.py,sha256=o_NsXbIpDqNpUA1Uc5xF0ZzoXQYYB0DfHwdRxBwXPNk,120
|
|
|
284
284
|
sqlmesh/utils/rich.py,sha256=BpB47G0-JcU41LkGkeGKroexj4NOV5fox4-GOIXPgIc,3545
|
|
285
285
|
sqlmesh/utils/windows.py,sha256=r7Yin4WEwbvH7sKA3hOJtRsclmscNuBeCklCfVPvtQs,611
|
|
286
286
|
sqlmesh/utils/yaml.py,sha256=hvo5lmybYLcIx4p6CQwufS8X4MbwS60lEBnCmYJCXmU,2336
|
|
287
|
-
sqlmesh-0.200.1.
|
|
287
|
+
sqlmesh-0.200.1.dev9.dist-info/licenses/LICENSE,sha256=OlMefUjgWJdULtf84BLW0AZZcY8DwdgQqb_1j2862j8,11346
|
|
288
288
|
web/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
289
289
|
web/client/dist/index.html,sha256=DAv6ABGogw4xRLb0T_92WP_S7XWyqVhwBgGKWtuQwU4,5472
|
|
290
290
|
web/client/dist/assets/Audits-BuHAmFO8.js,sha256=zbYUF6WdUGMbnMm01GMNPb7xAJwj-o5wMdL56vPo2qE,1041
|
|
@@ -402,8 +402,8 @@ web/server/api/endpoints/models.py,sha256=kwj0s7uve3iZSMfmjkoPVMFMeY1sD0peTeyrWf
|
|
|
402
402
|
web/server/api/endpoints/modules.py,sha256=8hqqgonGay_mJmpCw0IdbjsPhWlQH2VLdKAqha-myac,468
|
|
403
403
|
web/server/api/endpoints/plan.py,sha256=bbbY50W_2MsZSTxOHWMKz0tbIm75nsRSlPy8GI2fg9Q,9306
|
|
404
404
|
web/server/api/endpoints/table_diff.py,sha256=SCy3-pr5x6bEEiOaZGCDbiHQhpgxwmnz3Acqa2Ie6jI,2090
|
|
405
|
-
sqlmesh-0.200.1.
|
|
406
|
-
sqlmesh-0.200.1.
|
|
407
|
-
sqlmesh-0.200.1.
|
|
408
|
-
sqlmesh-0.200.1.
|
|
409
|
-
sqlmesh-0.200.1.
|
|
405
|
+
sqlmesh-0.200.1.dev9.dist-info/METADATA,sha256=ZBNqtyzEa-4gbI63KXfB_tjs2UASBixCpv3pibSaxL0,26678
|
|
406
|
+
sqlmesh-0.200.1.dev9.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
407
|
+
sqlmesh-0.200.1.dev9.dist-info/entry_points.txt,sha256=pIYKtg-u-uO7BK_Y0qrdmfyj0bYrcMc3Xiqr5WE3VFk,121
|
|
408
|
+
sqlmesh-0.200.1.dev9.dist-info/top_level.txt,sha256=bspjo5vjELQkuN0qKuTFIbsrUt3Zeo8D2mlKeHG1LdE,12
|
|
409
|
+
sqlmesh-0.200.1.dev9.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|