Skip to content

Commit 1b03e1a

Browse files
authored
Bumped up to the version to 2 and changed the changelog (#4)
1 parent 76a3c28 commit 1b03e1a

File tree

2 files changed

+4
-273
lines changed

2 files changed

+4
-273
lines changed

CHANGELOG.md

Lines changed: 2 additions & 271 deletions
Original file line numberDiff line numberDiff line change
@@ -1,274 +1,5 @@
11
# Release History
22

3-
# 3.3.0 (2024-07-18)
3+
# 2.0.0 ( 2021-10-23 )
44

5-
- Don't retry requests that fail with HTTP code 401 (databricks/databricks-sql-python#408 by @Hodnebo)
6-
- Remove username/password (aka "basic") auth option (databricks/databricks-sql-python#409 by @jackyhu-db)
7-
- Refactor CloudFetch handler to fix numerous issues with it (databricks/databricks-sql-python#405 by @kravets-levko)
8-
- Add option to disable SSL verification for CloudFetch links (databricks/databricks-sql-python#414 by @kravets-levko)
9-
10-
Databricks-managed passwords reached end of life on July 10, 2024. Therefore, Basic auth support was removed from
11-
the library. See https://docs.databricks.com/en/security/auth-authz/password-deprecation.html
12-
13-
The existing option `_tls_no_verify=True` of `sql.connect(...)` will now also disable SSL cert verification
14-
(but not the SSL itself) for CloudFetch links. This option should be used as a workaround only, when other ways
15-
to fix SSL certificate errors didn't work.
16-
17-
# 3.2.0 (2024-06-06)
18-
19-
- Update proxy authentication (databricks/databricks-sql-python#354 by @amir-haroun)
20-
- Relax `pyarrow` pin (databricks/databricks-sql-python#389 by @dhirschfeld)
21-
- Fix error logging in OAuth manager (databricks/databricks-sql-python#269 by @susodapop)
22-
- SQLAlchemy: enable delta.feature.allowColumnDefaults for all tables (databricks/databricks-sql-python#343 by @dhirschfeld)
23-
- Update `thrift` dependency (databricks/databricks-sql-python#397 by @m1n0)
24-
25-
# 3.1.2 (2024-04-18)
26-
27-
- Remove broken cookie code (#379)
28-
- Small typing fixes (#382, #384 thanks @wyattscarpenter)
29-
30-
# 3.1.1 (2024-03-19)
31-
32-
- Don't retry requests that fail with code 403 (#373)
33-
- Assume a default retry-after for 429/503 (#371)
34-
- Fix boolean literals (#357)
35-
36-
# 3.1.0 (2024-02-16)
37-
38-
- Revert retry-after behavior to be exponential backoff (#349)
39-
- Support Databricks OAuth on Azure (#351)
40-
- Support Databricks OAuth on GCP (#338)
41-
42-
# 3.0.3 (2024-02-02)
43-
44-
- Revised docstrings and examples for OAuth (#339)
45-
- Redact the URL query parameters from the urllib3.connectionpool logs (#341)
46-
47-
# 3.0.2 (2024-01-25)
48-
49-
- SQLAlchemy dialect now supports table and column comments (thanks @cbornet!)
50-
- Fix: SQLAlchemy dialect now correctly reflects TINYINT types (thanks @TimTheinAtTabs!)
51-
- Fix: `server_hostname` URIs that included `https://` would raise an exception
52-
- Other: pinned to `pandas<=2.1` and `urllib3>=1.26` to avoid runtime errors in dbt-databricks (#330)
53-
54-
## 3.0.1 (2023-12-01)
55-
56-
- Other: updated docstring comment about default parameterization approach (#287)
57-
- Other: added tests for reading complex types and revised docstrings and type hints (#293)
58-
- Fix: SQLAlchemy dialect raised DeprecationWarning due to `dbapi` classmethod (#294)
59-
- Fix: SQLAlchemy dialect could not reflect TIMESTAMP_NTZ columns (#296)
60-
61-
## 3.0.0 (2023-11-17)
62-
63-
- Remove support for Python 3.7
64-
- Add support for native parameterized SQL queries. Requires DBR 14.2 and above. See docs/parameters.md for more info.
65-
- Completely rewritten SQLAlchemy dialect
66-
- Adds support for SQLAlchemy >= 2.0 and drops support for SQLAlchemy 1.x
67-
- Full e2e test coverage of all supported features
68-
- Detailed usage notes in `README.sqlalchemy.md`
69-
- Adds support for:
70-
- New types: `TIME`, `TIMESTAMP`, `TIMESTAMP_NTZ`, `TINYINT`
71-
- `Numeric` type scale and precision, like `Numeric(10,2)`
72-
- Reading and writing `PrimaryKeyConstraint` and `ForeignKeyConstraint`
73-
- Reading and writing composite keys
74-
- Reading and writing from views
75-
- Writing `Identity` to tables (i.e. autoincrementing primary keys)
76-
- `LIMIT` and `OFFSET` for paging through results
77-
- Caching metadata calls
78-
- Enable cloud fetch by default. To disable, set `use_cloud_fetch=False` when building `databricks.sql.client`.
79-
- Add integration tests for Databricks UC Volumes ingestion queries
80-
- Retries:
81-
- Add `_retry_max_redirects` config
82-
- Set `_enable_v3_retries=True` and warn if users override it
83-
- Security: bump minimum pyarrow version to 14.0.1 (CVE-2023-47248)
84-
85-
## 2.9.3 (2023-08-24)
86-
87-
- Fix: Connections failed when urllib3~=1.0.0 is installed (#206)
88-
89-
## 2.9.2 (2023-08-17)
90-
91-
**Note: this release was yanked from Pypi on 13 September 2023 due to compatibility issues with environments where `urllib3<=2.0.0` were installed. The log changes are incorporated into version 2.9.3 and greater.**
92-
93-
- Other: Add `examples/v3_retries_query_execute.py` (#199)
94-
- Other: suppress log message when `_enable_v3_retries` is not `True` (#199)
95-
- Other: make this connector backwards compatible with `urllib3>=1.0.0` (#197)
96-
97-
## 2.9.1 (2023-08-11)
98-
99-
**Note: this release was yanked from Pypi on 13 September 2023 due to compatibility issues with environments where `urllib3<=2.0.0` were installed.**
100-
101-
- Other: Explicitly pin urllib3 to ^2.0.0 (#191)
102-
103-
## 2.9.0 (2023-08-10)
104-
105-
- Replace retry handling with DatabricksRetryPolicy. This is disabled by default. To enable, set `_enable_v3_retries=True` when creating `databricks.sql.client` (#182)
106-
- Other: Fix typo in README quick start example (#186)
107-
- Other: Add autospec to Client mocks and tidy up `make_request` (#188)
108-
109-
## 2.8.0 (2023-07-21)
110-
111-
- Add support for Cloud Fetch. Disabled by default. Set `use_cloud_fetch=True` when building `databricks.sql.client` to enable it (#146, #151, #154)
112-
- SQLAlchemy has_table function now honours schema= argument and adds catalog= argument (#174)
113-
- SQLAlchemy set non_native_boolean_check_constraint False as it's not supported by Databricks (#120)
114-
- Fix: Revised SQLAlchemy dialect and examples for compatibility with SQLAlchemy==1.3.x (#173)
115-
- Fix: oauth would fail if expired credentials appeared in ~/.netrc (#122)
116-
- Fix: Python HTTP proxies were broken after switch to urllib3 (#158)
117-
- Other: remove unused import in SQLAlchemy dialect
118-
- Other: Relax pandas dependency constraint to allow ^2.0.0 (#164)
119-
- Other: Connector now logs operation handle guids as hexadecimal instead of bytes (#170)
120-
- Other: test_socket_timeout_user_defined e2e test was broken (#144)
121-
122-
## 2.7.0 (2023-06-26)
123-
124-
- Fix: connector raised exception when calling close() on a closed Thrift session
125-
- Improve e2e test development ergonomics
126-
- Redact logged thrift responses by default
127-
- Add support for OAuth on Databricks Azure
128-
129-
## 2.6.2 (2023-06-14)
130-
131-
- Fix: Retry GetOperationStatus requests for http errors
132-
133-
## 2.6.1 (2023-06-08)
134-
135-
- Fix: http.client would raise a BadStatusLine exception in some cases
136-
137-
## 2.6.0 (2023-06-07)
138-
139-
- Add support for HTTP 1.1 connections (connection pools)
140-
- Add a default socket timeout for thrift RPCs
141-
142-
## 2.5.2 (2023-05-08)
143-
144-
- Fix: SQLAlchemy adapter could not reflect TIMESTAMP or DATETIME columns
145-
- Other: Relax pandas and alembic dependency specifications
146-
147-
## 2.5.1 (2023-04-28)
148-
149-
- Other: Relax sqlalchemy required version as it was unecessarily strict.
150-
151-
## 2.5.0 (2023-04-14)
152-
153-
- Add support for External Auth providers
154-
- Fix: Python HTTP proxies were broken
155-
- Other: All Thrift requests that timeout during connection will be automatically retried
156-
157-
## 2.4.1 (2023-03-21)
158-
159-
- Less strict numpy and pyarrow dependencies
160-
- Update examples in README to use security best practices
161-
- Update docstring for client.execute() for clarity
162-
163-
## 2.4.0 (2023-02-21)
164-
165-
- Improve compatibility when installed alongside other Databricks namespace Python packages
166-
- Add SQLAlchemy dialect
167-
168-
## 2.3.0 (2023-01-10)
169-
170-
- Support staging ingestion commands for DBR 12+
171-
172-
## 2.2.2 (2023-01-03)
173-
174-
- Support custom oauth client id and redirect port
175-
- Fix: Add none check on \_oauth_persistence in DatabricksOAuthProvider
176-
177-
## 2.2.1 (2022-11-29)
178-
179-
- Add support for Python 3.11
180-
181-
## 2.2.0 (2022-11-15)
182-
183-
- Bump thrift version to address https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-13949
184-
- Add support for lz4 compression
185-
186-
## 2.1.0 (2022-09-30)
187-
188-
- Introduce experimental OAuth support while Bring Your Own IDP is in Public Preview on AWS
189-
- Add functional examples
190-
191-
## 2.0.5 (2022-08-23)
192-
193-
- Fix: closing a connection now closes any open cursors from that connection at the server
194-
- Other: Add project links to pyproject.toml (helpful for visitors from PyPi)
195-
196-
## 2.0.4 (2022-08-17)
197-
198-
- Add support for Python 3.10
199-
- Add unit test matrix for supported Python versions
200-
201-
Huge thanks to @dbaxa for contributing this change!
202-
203-
## 2.0.3 (2022-08-05)
204-
205-
- Add retry logic for `GetOperationStatus` requests that fail with an `OSError`
206-
- Reorganised code to use Poetry for dependency management.
207-
208-
## 2.0.2 (2022-05-04)
209-
210-
- Better exception handling in automatic connection close
211-
212-
## 2.0.1 (2022-04-21)
213-
214-
- Fixed Pandas dependency in setup.cfg to be >= 1.2.0
215-
216-
## 2.0.0 (2022-04-19)
217-
218-
- Initial stable release of V2
219-
- Added better support for complex types, so that in Databricks runtime 10.3+, Arrays, Maps and Structs will get
220-
deserialized as lists, lists of tuples and dicts, respectively.
221-
- Changed the name of the metadata arg to http_headers
222-
223-
## 2.0.b2 (2022-04-04)
224-
225-
- Change import of collections.Iterable to collections.abc.Iterable to make the library compatible with Python 3.10
226-
- Fixed bug with .tables method so that .tables works as expected with Unity-Catalog enabled endpoints
227-
228-
## 2.0.0b1 (2022-03-04)
229-
230-
- Fix packaging issue (dependencies were not being installed properly)
231-
- Fetching timestamp results will now return aware instead of naive timestamps
232-
- The client will now default to using simplified error messages
233-
234-
## 2.0.0b (2022-02-08)
235-
236-
- Initial beta release of V2. V2 is an internal re-write of large parts of the connector to use Databricks edge features. All public APIs from V1 remain.
237-
- Added Unity Catalog support (pass catalog and / or schema key word args to the .connect method to select initial schema and catalog)
238-
239-
---
240-
241-
**Note**: The code for versions prior to `v2.0.0b` is not contained in this repository. The below entries are included for reference only.
242-
243-
---
244-
245-
## 1.0.0 (2022-01-20)
246-
247-
- Add operations for retrieving metadata
248-
- Add the ability to access columns by name on result rows
249-
- Add the ability to provide configuration settings on connect
250-
251-
## 0.9.4 (2022-01-10)
252-
253-
- Improved logging and error messages.
254-
255-
## 0.9.3 (2021-12-08)
256-
257-
- Add retries for 429 and 503 HTTP responses.
258-
259-
## 0.9.2 (2021-12-02)
260-
261-
- (Bug fix) Increased Thrift requirement from 0.10.0 to 0.13.0 as 0.10.0 was in fact incompatible
262-
- (Bug fix) Fixed error message after query execution failed -SQLSTATE and Error message were misplaced
263-
264-
## 0.9.1 (2021-09-01)
265-
266-
- Public Preview release, Experimental tag removed
267-
- minor updates in internal build/packaging
268-
- no functional changes
269-
270-
## 0.9.0 (2021-08-04)
271-
272-
- initial (Experimental) release of pyhive-forked connector
273-
- Python DBAPI 2.0 (PEP-0249), thrift based
274-
- see docs for more info: https://docs.databricks.com/dev-tools/python-sql-connector.html
5+
- databricks-sqlalchemy plugin for databricks-sql-python built on sqlalchemy v2 and has all the features of sqlalchemy compatible with the connector till databricks-sql-python v3.3.0

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "databricks-sqlalchemy"
3-
version = "1.0.0"
3+
version = "2.0.0"
44
description = "Databricks SQLAlchemy plugin for Python"
55
authors = ["Databricks <databricks-sql-connector-maintainers@databricks.com>"]
66
license = "Apache-2.0"
@@ -10,7 +10,7 @@ include = ["CHANGELOG.md"]
1010

1111
[tool.poetry.dependencies]
1212
python = "^3.8.0"
13-
databricks_sql_connector_core = { version = ">=1.0.0"}
13+
databricks_sql_connector_core = { version = ">=4.0.0"}
1414
sqlalchemy = { version = ">=2.0.21" }
1515

1616
[tool.poetry.dev-dependencies]

0 commit comments

Comments
 (0)