databricks-sql-connector 4.0.4__tar.gz → 4.0.5__tar.gz

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.
Files changed (34) hide show
  1. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/CHANGELOG.md +3 -0
  2. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/PKG-INFO +3 -2
  3. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/pyproject.toml +1 -1
  4. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/__init__.py +1 -1
  5. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/client.py +3 -30
  6. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/LICENSE +0 -0
  7. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/README.md +0 -0
  8. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/__init__.py +0 -0
  9. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/__init__.py +0 -0
  10. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/auth.py +0 -0
  11. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/authenticators.py +0 -0
  12. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/endpoint.py +0 -0
  13. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/oauth.py +0 -0
  14. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/oauth_http_handler.py +0 -0
  15. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/retry.py +0 -0
  16. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/auth/thrift_http_client.py +0 -0
  17. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/cloudfetch/download_manager.py +0 -0
  18. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/cloudfetch/downloader.py +0 -0
  19. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/exc.py +0 -0
  20. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/experimental/__init__.py +0 -0
  21. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/experimental/oauth_persistence.py +0 -0
  22. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/parameters/__init__.py +0 -0
  23. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/parameters/native.py +0 -0
  24. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/parameters/py.typed +0 -0
  25. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/py.typed +0 -0
  26. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/thrift_api/TCLIService/TCLIService-remote +0 -0
  27. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/thrift_api/TCLIService/TCLIService.py +0 -0
  28. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/thrift_api/TCLIService/__init__.py +0 -0
  29. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/thrift_api/TCLIService/constants.py +0 -0
  30. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/thrift_api/TCLIService/ttypes.py +0 -0
  31. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/thrift_api/__init__.py +0 -0
  32. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/thrift_backend.py +0 -0
  33. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/types.py +0 -0
  34. {databricks_sql_connector-4.0.4 → databricks_sql_connector-4.0.5}/src/databricks/sql/utils.py +0 -0
@@ -1,5 +1,8 @@
1
1
  # Release History
2
2
 
3
+ # 4.0.5 (2025-06-24)
4
+ - Fix: Reverted change in cursor close handling which led to errors impacting users (databricks/databricks-sql-python#613 by @madhav-db)
5
+
3
6
  # 4.0.4 (2025-06-16)
4
7
 
5
8
  - Update thrift client library after cleaning up unused fields and structs (databricks/databricks-sql-python#553 by @vikrantpuppala)
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: databricks-sql-connector
3
- Version: 4.0.4
3
+ Version: 4.0.5
4
4
  Summary: Databricks SQL Connector for Python
5
5
  License: Apache-2.0
6
6
  Author: Databricks
@@ -13,6 +13,7 @@ Classifier: Programming Language :: Python :: 3.9
13
13
  Classifier: Programming Language :: Python :: 3.10
14
14
  Classifier: Programming Language :: Python :: 3.11
15
15
  Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
16
17
  Provides-Extra: pyarrow
17
18
  Requires-Dist: lz4 (>=4.0.2,<5.0.0)
18
19
  Requires-Dist: oauthlib (>=3.1.0,<4.0.0)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "databricks-sql-connector"
3
- version = "4.0.4"
3
+ version = "4.0.5"
4
4
  description = "Databricks SQL Connector for Python"
5
5
  authors = ["Databricks <databricks-sql-connector-maintainers@databricks.com>"]
6
6
  license = "Apache-2.0"
@@ -68,7 +68,7 @@ DATETIME = DBAPITypeObject("timestamp")
68
68
  DATE = DBAPITypeObject("date")
69
69
  ROWID = DBAPITypeObject()
70
70
 
71
- __version__ = "4.0.4"
71
+ __version__ = "4.0.5"
72
72
  USER_AGENT_NAME = "PyDatabricksSqlConnector"
73
73
 
74
74
  # These two functions are pyhive legacy
@@ -321,13 +321,7 @@ class Connection:
321
321
  return self
322
322
 
323
323
  def __exit__(self, exc_type, exc_value, traceback):
324
- try:
325
- self.close()
326
- except BaseException as e:
327
- logger.warning(f"Exception during connection close in __exit__: {e}")
328
- if exc_type is None:
329
- raise
330
- return False
324
+ self.close()
331
325
 
332
326
  def __del__(self):
333
327
  if self.open:
@@ -468,14 +462,7 @@ class Cursor:
468
462
  return self
469
463
 
470
464
  def __exit__(self, exc_type, exc_value, traceback):
471
- try:
472
- logger.debug("Cursor context manager exiting, calling close()")
473
- self.close()
474
- except BaseException as e:
475
- logger.warning(f"Exception during cursor close in __exit__: {e}")
476
- if exc_type is None:
477
- raise
478
- return False
465
+ self.close()
479
466
 
480
467
  def __iter__(self):
481
468
  if self.active_result_set:
@@ -1185,21 +1172,7 @@ class Cursor:
1185
1172
  def close(self) -> None:
1186
1173
  """Close cursor"""
1187
1174
  self.open = False
1188
-
1189
- # Close active operation handle if it exists
1190
- if self.active_op_handle:
1191
- try:
1192
- self.thrift_backend.close_command(self.active_op_handle)
1193
- except RequestError as e:
1194
- if isinstance(e.args[1], CursorAlreadyClosedError):
1195
- logger.info("Operation was canceled by a prior request")
1196
- else:
1197
- logging.warning(f"Error closing operation handle: {e}")
1198
- except Exception as e:
1199
- logging.warning(f"Error closing operation handle: {e}")
1200
- finally:
1201
- self.active_op_handle = None
1202
-
1175
+ self.active_op_handle = None
1203
1176
  if self.active_result_set:
1204
1177
  self._close_and_clear_active_result_set()
1205
1178