databricks-sql-connector 4.0.0b3__tar.gz → 4.0.0b4__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.
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/CHANGELOG.md +5 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/PKG-INFO +21 -8
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/README.md +20 -3
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/pyproject.toml +2 -11
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/client.py +7 -0
- databricks_sql_connector-4.0.0b3/src/databricks/sqlalchemy/__init__.py +0 -6
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/LICENSE +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/__init__.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/__init__.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/__init__.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/auth.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/authenticators.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/endpoint.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/oauth.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/oauth_http_handler.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/retry.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/auth/thrift_http_client.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/cloudfetch/download_manager.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/cloudfetch/downloader.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/exc.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/experimental/__init__.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/experimental/oauth_persistence.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/parameters/__init__.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/parameters/native.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/parameters/py.typed +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/py.typed +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/thrift_api/TCLIService/TCLIService-remote +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/thrift_api/TCLIService/TCLIService.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/thrift_api/TCLIService/__init__.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/thrift_api/TCLIService/constants.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/thrift_api/TCLIService/ttypes.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/thrift_api/__init__.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/thrift_backend.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/types.py +0 -0
- {databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/utils.py +0 -0
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
+
# 4.0.0
|
|
4
|
+
|
|
5
|
+
- Split the connector into two separate packages: `databricks-sql-connector` and `databricks-sqlalchemy`. The `databricks-sql-connector` package contains the core functionality of the connector, while the `databricks-sqlalchemy` package contains the SQLAlchemy dialect for the connector.
|
|
6
|
+
- Pyarrow dependency is now optional in `databricks-sql-connector`. Users needing arrow are supposed to explicitly install pyarrow
|
|
7
|
+
|
|
3
8
|
# 3.6.0 (2024-10-25)
|
|
4
9
|
|
|
5
10
|
- Support encryption headers in the cloud fetch request (https://github.com/databricks/databricks-sql-python/pull/460 by @jackyhu-db)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: databricks-sql-connector
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.0b4
|
|
4
4
|
Summary: Databricks SQL Connector for Python
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Author: Databricks
|
|
@@ -13,11 +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
|
-
Provides-Extra: alembic
|
|
17
|
-
Provides-Extra: databricks-sqlalchemy
|
|
18
16
|
Provides-Extra: pyarrow
|
|
19
|
-
Requires-Dist: alembic (>=1.0.11,<2.0.0) ; extra == "alembic"
|
|
20
|
-
Requires-Dist: databricks-sqlalchemy (>=2.0.0) ; extra == "databricks-sqlalchemy" or extra == "alembic"
|
|
21
17
|
Requires-Dist: lz4 (>=4.0.2,<5.0.0)
|
|
22
18
|
Requires-Dist: numpy (>=1.16.6,<2.0.0) ; python_version >= "3.8" and python_version < "3.11"
|
|
23
19
|
Requires-Dist: numpy (>=1.23.4,<2.0.0) ; python_version >= "3.11"
|
|
@@ -37,9 +33,9 @@ Description-Content-Type: text/markdown
|
|
|
37
33
|
[](https://pypi.org/project/databricks-sql-connector/)
|
|
38
34
|
[](https://pepy.tech/project/databricks-sql-connector)
|
|
39
35
|
|
|
40
|
-
The Databricks SQL Connector for Python allows you to develop Python applications that connect to Databricks clusters and SQL warehouses. It is a Thrift-based client with no dependencies on ODBC or JDBC. It conforms to the [Python DB API 2.0 specification](https://www.python.org/dev/peps/pep-0249/)
|
|
36
|
+
The Databricks SQL Connector for Python allows you to develop Python applications that connect to Databricks clusters and SQL warehouses. It is a Thrift-based client with no dependencies on ODBC or JDBC. It conforms to the [Python DB API 2.0 specification](https://www.python.org/dev/peps/pep-0249/).
|
|
41
37
|
|
|
42
|
-
This connector uses Arrow as the data-exchange format, and supports APIs to directly fetch Arrow tables. Arrow tables are wrapped in the `ArrowQueue` class to provide a natural API to get several rows at a time.
|
|
38
|
+
This connector uses Arrow as the data-exchange format, and supports APIs (e.g. `fetchmany_arrow`) to directly fetch Arrow tables. Arrow tables are wrapped in the `ArrowQueue` class to provide a natural API to get several rows at a time. [PyArrow](https://arrow.apache.org/docs/python/index.html) is required to enable this and use these APIs, you can install it via `pip install pyarrow` or `pip install databricks-sql-connector[pyarrow]`.
|
|
43
39
|
|
|
44
40
|
You are welcome to file an issue here for general use cases. You can also contact Databricks Support [here](help.databricks.com).
|
|
45
41
|
|
|
@@ -56,7 +52,12 @@ For the latest documentation, see
|
|
|
56
52
|
|
|
57
53
|
## Quickstart
|
|
58
54
|
|
|
59
|
-
|
|
55
|
+
### Installing the core library
|
|
56
|
+
Install using `pip install databricks-sql-connector`
|
|
57
|
+
|
|
58
|
+
### Installing the core library with PyArrow
|
|
59
|
+
Install using `pip install databricks-sql-connector[pyarrow]`
|
|
60
|
+
|
|
60
61
|
|
|
61
62
|
```bash
|
|
62
63
|
export DATABRICKS_HOST=********.databricks.com
|
|
@@ -94,6 +95,18 @@ or to a Databricks Runtime interactive cluster (e.g. /sql/protocolv1/o/123456789
|
|
|
94
95
|
> to authenticate the target Databricks user account and needs to open the browser for authentication. So it
|
|
95
96
|
> can only run on the user's machine.
|
|
96
97
|
|
|
98
|
+
## SQLAlchemy
|
|
99
|
+
Starting from `databricks-sql-connector` version 4.0.0 SQLAlchemy support has been extracted to a new library `databricks-sqlalchemy`.
|
|
100
|
+
|
|
101
|
+
- Github repository [databricks-sqlalchemy github](https://github.com/databricks/databricks-sqlalchemy)
|
|
102
|
+
- PyPI [databricks-sqlalchemy pypi](https://pypi.org/project/databricks-sqlalchemy/)
|
|
103
|
+
|
|
104
|
+
### Quick SQLAlchemy guide
|
|
105
|
+
Users can now choose between using the SQLAlchemy v1 or SQLAlchemy v2 dialects with the connector core
|
|
106
|
+
|
|
107
|
+
- Install the latest SQLAlchemy v1 using `pip install databricks-sqlalchemy~=1.0`
|
|
108
|
+
- Install SQLAlchemy v2 using `pip install databricks-sqlalchemy`
|
|
109
|
+
|
|
97
110
|
|
|
98
111
|
## Contributing
|
|
99
112
|
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
[](https://pypi.org/project/databricks-sql-connector/)
|
|
4
4
|
[](https://pepy.tech/project/databricks-sql-connector)
|
|
5
5
|
|
|
6
|
-
The Databricks SQL Connector for Python allows you to develop Python applications that connect to Databricks clusters and SQL warehouses. It is a Thrift-based client with no dependencies on ODBC or JDBC. It conforms to the [Python DB API 2.0 specification](https://www.python.org/dev/peps/pep-0249/)
|
|
6
|
+
The Databricks SQL Connector for Python allows you to develop Python applications that connect to Databricks clusters and SQL warehouses. It is a Thrift-based client with no dependencies on ODBC or JDBC. It conforms to the [Python DB API 2.0 specification](https://www.python.org/dev/peps/pep-0249/).
|
|
7
7
|
|
|
8
|
-
This connector uses Arrow as the data-exchange format, and supports APIs to directly fetch Arrow tables. Arrow tables are wrapped in the `ArrowQueue` class to provide a natural API to get several rows at a time.
|
|
8
|
+
This connector uses Arrow as the data-exchange format, and supports APIs (e.g. `fetchmany_arrow`) to directly fetch Arrow tables. Arrow tables are wrapped in the `ArrowQueue` class to provide a natural API to get several rows at a time. [PyArrow](https://arrow.apache.org/docs/python/index.html) is required to enable this and use these APIs, you can install it via `pip install pyarrow` or `pip install databricks-sql-connector[pyarrow]`.
|
|
9
9
|
|
|
10
10
|
You are welcome to file an issue here for general use cases. You can also contact Databricks Support [here](help.databricks.com).
|
|
11
11
|
|
|
@@ -22,7 +22,12 @@ For the latest documentation, see
|
|
|
22
22
|
|
|
23
23
|
## Quickstart
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
### Installing the core library
|
|
26
|
+
Install using `pip install databricks-sql-connector`
|
|
27
|
+
|
|
28
|
+
### Installing the core library with PyArrow
|
|
29
|
+
Install using `pip install databricks-sql-connector[pyarrow]`
|
|
30
|
+
|
|
26
31
|
|
|
27
32
|
```bash
|
|
28
33
|
export DATABRICKS_HOST=********.databricks.com
|
|
@@ -60,6 +65,18 @@ or to a Databricks Runtime interactive cluster (e.g. /sql/protocolv1/o/123456789
|
|
|
60
65
|
> to authenticate the target Databricks user account and needs to open the browser for authentication. So it
|
|
61
66
|
> can only run on the user's machine.
|
|
62
67
|
|
|
68
|
+
## SQLAlchemy
|
|
69
|
+
Starting from `databricks-sql-connector` version 4.0.0 SQLAlchemy support has been extracted to a new library `databricks-sqlalchemy`.
|
|
70
|
+
|
|
71
|
+
- Github repository [databricks-sqlalchemy github](https://github.com/databricks/databricks-sqlalchemy)
|
|
72
|
+
- PyPI [databricks-sqlalchemy pypi](https://pypi.org/project/databricks-sqlalchemy/)
|
|
73
|
+
|
|
74
|
+
### Quick SQLAlchemy guide
|
|
75
|
+
Users can now choose between using the SQLAlchemy v1 or SQLAlchemy v2 dialects with the connector core
|
|
76
|
+
|
|
77
|
+
- Install the latest SQLAlchemy v1 using `pip install databricks-sqlalchemy~=1.0`
|
|
78
|
+
- Install SQLAlchemy v2 using `pip install databricks-sqlalchemy`
|
|
79
|
+
|
|
63
80
|
|
|
64
81
|
## Contributing
|
|
65
82
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "databricks-sql-connector"
|
|
3
|
-
version = "4.0.0.
|
|
3
|
+
version = "4.0.0.b4"
|
|
4
4
|
description = "Databricks SQL Connector for Python"
|
|
5
5
|
authors = ["Databricks <databricks-sql-connector-maintainers@databricks.com>"]
|
|
6
6
|
license = "Apache-2.0"
|
|
@@ -23,15 +23,9 @@ numpy = [
|
|
|
23
23
|
]
|
|
24
24
|
openpyxl = "^3.0.10"
|
|
25
25
|
urllib3 = ">=1.26"
|
|
26
|
-
|
|
27
|
-
databricks-sqlalchemy = { version = ">=2.0.0", optional = true }
|
|
28
26
|
pyarrow = { version = ">=14.0.1,<17", optional=true }
|
|
29
|
-
alembic = { version = "^1.0.11", optional = true }
|
|
30
|
-
|
|
31
27
|
|
|
32
28
|
[tool.poetry.extras]
|
|
33
|
-
databricks-sqlalchemy = ["databricks-sqlalchemy"]
|
|
34
|
-
alembic = ["databricks-sqlalchemy", "alembic"]
|
|
35
29
|
pyarrow = ["pyarrow"]
|
|
36
30
|
|
|
37
31
|
[tool.poetry.dev-dependencies]
|
|
@@ -45,9 +39,6 @@ pytest-dotenv = "^0.5.2"
|
|
|
45
39
|
"Homepage" = "https://github.com/databricks/databricks-sql-python"
|
|
46
40
|
"Bug Tracker" = "https://github.com/databricks/databricks-sql-python/issues"
|
|
47
41
|
|
|
48
|
-
[tool.poetry.plugins."sqlalchemy.dialects"]
|
|
49
|
-
"databricks" = "databricks.sqlalchemy:DatabricksDialect"
|
|
50
|
-
|
|
51
42
|
[build-system]
|
|
52
43
|
requires = ["poetry-core>=1.0.0"]
|
|
53
44
|
build-backend = "poetry.core.masonry.api"
|
|
@@ -64,5 +55,5 @@ markers = {"reviewed" = "Test case has been reviewed by Databricks"}
|
|
|
64
55
|
minversion = "6.0"
|
|
65
56
|
log_cli = "false"
|
|
66
57
|
log_cli_level = "INFO"
|
|
67
|
-
testpaths = ["tests"
|
|
58
|
+
testpaths = ["tests"]
|
|
68
59
|
env_files = ["test.env"]
|
{databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/client.py
RENAMED
|
@@ -52,6 +52,13 @@ from databricks.sql.thrift_api.TCLIService.ttypes import (
|
|
|
52
52
|
|
|
53
53
|
logger = logging.getLogger(__name__)
|
|
54
54
|
|
|
55
|
+
if pyarrow is None:
|
|
56
|
+
logger.warning(
|
|
57
|
+
"[WARN] pyarrow is not installed by default since databricks-sql-connector 4.0.0,"
|
|
58
|
+
"any arrow specific api (e.g. fetchmany_arrow) and cloud fetch will be disabled."
|
|
59
|
+
"If you need these features, please run pip install pyarrow or pip install databricks-sql-connector[pyarrow] to install"
|
|
60
|
+
)
|
|
61
|
+
|
|
55
62
|
DEFAULT_RESULT_BUFFER_SIZE_BYTES = 104857600
|
|
56
63
|
DEFAULT_ARRAY_SIZE = 100000
|
|
57
64
|
|
|
File without changes
|
{databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/__init__.py
RENAMED
|
File without changes
|
{databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/exc.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/types.py
RENAMED
|
File without changes
|
{databricks_sql_connector-4.0.0b3 → databricks_sql_connector-4.0.0b4}/src/databricks/sql/utils.py
RENAMED
|
File without changes
|