dependabot[bot] opened a new pull request, #45321:
URL: https://github.com/apache/superset/pull/45321

   Bumps [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) 
from 1.9.0 to 1.10.0.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/ClickHouse/clickhouse-connect/releases";>clickhouse-connect's
 releases</a>.</em></p>
   <blockquote>
   <h2>v1.10.0</h2>
   <h2>clickhouse-connect v1.10.0</h2>
   <h3>Rust codec performance</h3>
   <ul>
   <li>NumPy and Pandas queries no longer require PyArrow. This covers buffered 
and streamed results and <code>query(..., use_numpy=True)</code>. Strings use 
Arrow conversion when available and Rust object conversion otherwise. Invalid 
UTF-8 keeps its hex rendering. Explicit Arrow output and Arrow storage still 
require PyArrow.</li>
   <li>Supported numeric, Boolean, BFloat16, Interval, date, timestamp, and 
time columns now convert directly from decoded buffers. Selected nullable, 
Array, and LowCardinality shapes also use this path. Existing output dtypes 
stay unchanged, apart from the nanosecond correction described below.</li>
   <li>Large response chunks now feed the decoder in bounded slices, reducing 
temporary copies and peak memory for large NumPy, Pandas, and Python 
results.</li>
   </ul>
   <h3>Client improvements</h3>
   <ul>
   <li>DB-API connections and cursors now support <code>with</code> blocks. 
They close on normal and exceptional exit. Connection contexts don't manage 
transactions thus <code>commit()</code> and <code>rollback()</code> are still 
no-ops.</li>
   <li>Async Arrow inserts move DataFrame conversion and Arrow encoding to a 
dedicated client worker, reducing event-loop stalls. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1054";>#1054</a></li>
   <li>Large async external-data uploads use bounded writes to reduce 
event-loop stalls during TLS encryption. Upload payloads are replayable for 
eligible retries. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1057";>#1057</a></li>
   </ul>
   <h3>Query and insert fixes</h3>
   <ul>
   <li><code>QueryResult.result_rows</code> works after materializing 
<code>result_columns</code>, including async queries with 
<code>column_oriented=True</code>.</li>
   <li>Dynamic shared-storage values and JSON paths beyond 
<code>max_dynamic_types</code> decode supported compound and scalar values to 
Python objects. Nullable defaults and typed JSON null paths work, and DataFrame 
results retain the decoded objects. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1070";>#1070</a></li>
   <li>Internal <code>DESCRIBE TABLE</code> requests get their own query ID. 
Inserts retain the caller's ID, avoiding 
<code>QUERY_WITH_SAME_ID_IS_ALREADY_RUNNING</code> errors. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1066";>#1066</a></li>
   <li>After a remote close or HTTP 429/503/504, SQL execution retries only 
recognized reads. Writes, DDL, mutations, <code>SET</code>, <code>USE</code>, 
and <code>CHECK TABLE</code> aren't replayed. This also applies through DB-API 
and SQLAlchemy. Read retries and insert API retries are still available. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1079";>#1079</a></li>
   </ul>
   <h3>Streaming and temporal fixes</h3>
   <ul>
   <li>Synchronous Native response cleanup waits for active reads and drains 
partially consumed HTTP chunks through the same parser. Early Rust stream 
closure drains the response before releasing its iterator, avoiding premature 
closure and subsequent <code>SESSION_IS_LOCKED</code> errors.</li>
   <li>Rust cleanup releases each response source once, handles closure during 
read-ahead startup, and releases decoder workers after cancelled pending 
reads.</li>
   <li>Async Rust stream cleanup finishes before cancellation is re-raised.</li>
   <li>Rust NumPy and Pandas results preserve nanoseconds in nullable scalar 
<code>DateTime64(9)</code> columns, including 
<code>SimpleAggregateFunction</code> aliases. Unsupported scalar precisions now 
fail consistently.</li>
   <li>Nullable <code>SimpleAggregateFunction</code> aliases of 
<code>Time64</code> return correct durations and <code>NaT</code> for NULL 
values.</li>
   </ul>
   <h3>SQLAlchemy and Alembic fixes</h3>
   <ul>
   <li>Importing the dialect preserves another provider's 
<code>clickhouse://</code> registration. Generated schema metadata and Alembic 
revisions use <code>clickhousedb_*</code> options so copies and migrations work 
with both drivers installed. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1074";>#1074</a></li>
   <li><code>GROUP BY</code> uses aliases only for matching top-level 
expressions selected by the query. Unselected and nested expressions render in 
full. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1062";>#1062</a></li>
   <li><code>Nullable()</code> and <code>LowCardinality()</code> preserve the 
wrapped type in their return annotations. <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1033";>#1033</a></li>
   <li>Alembic accepts reflected <code>AggregateFunction</code> state versions 
when metadata omits the version, including nested types. Explicit versions 
still detect changes; legacy unversioned states match explicit version 
<code>0</code>.</li>
   </ul>
   <h2>Installation</h2>
   <pre lang="bash"><code>pip install clickhouse-connect
   </code></pre>
   <p>For the experimental Rust codec:</p>
   <pre lang="bash"><code>pip install &quot;clickhouse-connect[rust]&quot;
   </code></pre>
   <p>The Rust extra requires 
<code>clickhouse-connect-core&gt;=0.2.1,&lt;0.3</code>. The driver checks both 
binding and column-buffer APIs and reports upgrade guidance for older 
wheels.</p>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Changelog</summary>
   <p><em>Sourced from <a 
href="https://github.com/ClickHouse/clickhouse-connect/blob/main/CHANGELOG.md";>clickhouse-connect's
 changelog</a>.</em></p>
   <blockquote>
   <h2>1.10.0, 2026-10-07</h2>
   <h3>Improvements</h3>
   <ul>
   <li>The DB-API <code>Connection</code> and <code>Cursor</code> now support 
the context manager protocol, so <code>with connect(...) as connection:</code> 
and <code>with connection.cursor() as cursor:</code> work. Both call 
<code>close()</code> when the block exits, including when it raises. Connection 
contexts don't manage transactions. The DB-API <code>commit</code> and 
<code>rollback</code> remain no-ops.</li>
   <li>Rust codec NumPy and Pandas queries no longer require PyArrow. This 
includes buffered and streamed results and <code>query(..., 
use_numpy=True)</code>. Pandas strings use the Arrow conversion when PyArrow is 
installed and the Rust object conversion otherwise. Invalid UTF-8 keeps its 
existing hex rendering. Explicit Arrow storage and Arrow methods still require 
PyArrow.</li>
   <li>The Rust codec now converts non-nullable 8-64-bit integers, Float32/64, 
Boolean, BFloat16, Interval, Date/Date32, DateTime/DateTime64, and Time/Time64 
columns to NumPy/Pandas directly from its decoded buffers. Nullable BFloat16 
and Time/Time64 also use direct buffers, as do arrays of Time/Time64 and 
LowCardinality(Time). Extended Pandas nullable integer, float, and Interval 
output uses direct buffers as well. Output dtypes are unchanged.</li>
   <li>The Rust codec now feeds large response chunks to the decoder in bounded 
slices. This reduces temporary decoder copies and the number of decoded blocks 
held during conversion, lowering peak memory for large <code>query_np</code>, 
<code>query_df</code>, and <code>query()</code> results. Output is 
unchanged.</li>
   </ul>
   <h3>Bug Fixes</h3>
   <ul>
   <li>Alembic autogeneration now accepts server-pinned 
<code>AggregateFunction</code> state versions when metadata omits the version, 
including nested types. Explicit metadata versions still detect state version 
changes. Reflected legacy states match an explicit version <code>0</code>.</li>
   <li>Importing the SQLAlchemy dialect no longer replaces another provider's 
<code>clickhouse://</code> registration, including 
<code>clickhouse-sqlalchemy</code>. Generated schema metadata and Alembic 
revisions use <code>clickhousedb_*</code> options so metadata copies and 
migrations work with both packages installed. Closes <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1074";>#1074</a>.</li>
   <li><code>QueryResult.result_rows</code> now works after reading 
<code>result_columns</code>. Previously, accessing rows after materializing 
columns raised <code>StreamClosedError</code> even though the data was already 
cached. This also affected <code>AsyncClient.query()</code> with 
<code>column_oriented=True</code>, where <code>result_rows</code> always 
failed.</li>
   <li>After a remote connection close or HTTP 429/503/504, 
<code>command()</code>, <code>query()</code>, <code>raw_query()</code>, and 
<code>raw_stream()</code> now replay only statements the client recognizes as 
reads. Other statements, including SQL writes, DDL, mutations, 
<code>SET</code>, <code>USE</code>, and <code>CHECK TABLE</code>, are not 
replayed. This also covers their DB-API and SQLAlchemy wrappers. Read retries 
and retries through the insert APIs, including <code>raw_insert()</code>, 
remain available. Insert retries provide at-least-once delivery and can 
duplicate rows without server deduplication. Closes <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1079";>#1079</a>.</li>
   <li>Values in Dynamic shared storage, including JSON paths that exceed 
<code>max_dynamic_types</code>, now decode to Python objects instead of encoded 
bytes or strings. This covers supported arrays, tuples, maps, nested JSON, and 
date, time, UUID and IP address scalars, including nullable defaults and typed 
JSON null paths. DataFrame results keep the decoded objects. Closes <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1070";>#1070</a>.</li>
   <li>Inserts that resolve column types from the server now give the internal 
<code>DESCRIBE TABLE</code> its own server-generated query ID. The 
<code>INSERT</code> retains the caller's <code>query_id</code> from per-call 
settings or client defaults. This prevents 
<code>QUERY_WITH_SAME_ID_IS_ALREADY_RUNNING</code> errors when the server 
hasn't yet released the finished <code>DESCRIBE</code>. Closes <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1066";>#1066</a>.</li>
   <li>Closing a synchronous Native-format HTTP response now waits for an 
active read before draining it, including Rust codec reads that outlast 
read-ahead shutdown. Cleanup also finishes partially consumed HTTP chunks with 
the same parser. This prevents concurrent response reads, premature connection 
closure, and <code>SESSION_IS_LOCKED</code> errors on the next query.</li>
   <li>AsyncClient now awaits response cleanup when a Rust codec stream closes, 
including when its consumer is cancelled. Cleanup finishes before cancellation 
is re-raised.</li>
   <li>SQLAlchemy <code>Nullable()</code> and <code>LowCardinality()</code> now 
preserve the wrapped type in their return annotations. Column declarations such 
as <code>Column(&quot;hostname&quot;, LowCardinality(String))</code> now pass 
strict type checking. Runtime behavior is unchanged. Closes <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1033";>#1033</a>.</li>
   <li>SQLAlchemy <code>GROUP BY</code> now uses aliases only for top-level 
labels that match an expression selected by the current query. Unselected and 
nested expressions render in full. Selected aliases, including independently 
rebuilt matching expressions, retain their names. This fixes unknown-identifier 
errors and incorrect grouping when a label collides with another column. Closes 
<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1062";>#1062</a>.</li>
   <li>Async <code>insert_arrow</code> and <code>insert_df_arrow</code> now run 
DataFrame conversion and Arrow encoding in a dedicated worker owned by the 
client. This reduces event-loop stalls during large inserts. Closes <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1054";>#1054</a>.</li>
   <li>Closing a Rust codec stream during read-ahead startup no longer lets a 
producer read from an already closed source. This applies to sync and async 
cleanup.</li>
   <li>Closing a sync Rust codec stream early now drains its HTTP response 
before releasing the response iterator. This fixes premature connection closure 
that could make the next query on the same client fail with 
<code>SESSION_IS_LOCKED</code>.</li>
   <li>Concurrent sync and async cleanup of a Rust codec stream now releases 
its response source only once.</li>
   <li>Cancelling a pending Rust codec stream read now releases the waiting 
decoder worker. Previously, closing the stream could leave a worker blocked and 
hang async executor shutdown.</li>
   <li>Rust codec NumPy and Pandas queries now preserve nanoseconds in nullable 
scalar <code>DateTime64(9)</code> columns, including 
<code>SimpleAggregateFunction</code> aliases. They also reject unsupported 
scalar <code>DateTime64</code> precisions consistently for nullable columns and 
aliases.</li>
   <li>Rust codec NumPy and Pandas queries now return correct durations and 
<code>NaT</code> for NULL values in <code>Nullable(SimpleAggregateFunction(..., 
Time64))</code> columns. Previously, columns with NULLs returned floating-point 
bit patterns interpreted as durations.</li>
   <li>Large async external-data uploads now use bounded writes to avoid long 
event-loop stalls during TLS encryption. Closes <a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1057";>#1057</a>.</li>
   </ul>
   <h3>Compatibility</h3>
   <ul>
   <li>When <code>clickhouse-sqlalchemy</code> is installed, use 
<code>clickhousedb://</code> or <code>clickhousedb+connect://</code> for 
ClickHouse Connect. Bare <code>clickhouse://</code> remains with its existing 
provider; the ClickHouse Connect alias is still available when no other 
provider claims it. In mixed installs, cc-only schema options such as 
<code>clickhouse_engine</code>, <code>clickhouse_ttl</code>, 
<code>clickhouse_settings</code>, and <code>clickhouse_dictionary_*</code> must 
use the <code>clickhousedb_</code> prefix. Custom schema defaults for 
ClickHouse Connect should use 
<code>Table.argument_for(&quot;clickhousedb&quot;, ...)</code> or 
<code>Column.argument_for(&quot;clickhousedb&quot;, ...)</code>. Newly 
generated schema metadata and Alembic revisions use <code>clickhousedb_*</code> 
option names. In cc-only installs, 
<code>table.kwargs[&quot;clickhouse_engine&quot;]</code> now returns 
<code>None</code> after a positional engine or table reflection; read <code>cl
 ickhousedb_engine</code> instead, and read generated Dictionary options 
through their <code>clickhousedb_*</code> keys. Public reflection dictionaries 
retain their existing <code>clickhouse_*</code> keys.</li>
   <li>Type checkers now infer <code>list[String]</code> for 
<code>[Nullable(String)]</code>. If a collection also holds other ClickHouse 
types, annotate it as <code>list[ChSqlaType]</code> from 
<code>clickhouse_connect.cc_sqlalchemy.datatypes.base</code>.</li>
   <li>Rust NumPy object columns for nullable scalar <code>DateTime64(9)</code> 
now contain <code>numpy.datetime64</code> cells at UTC nanosecond resolution 
instead of Python <code>datetime</code> cells. SQL NULL stays 
<code>None</code>. Use <code>query_df</code> to retain named timezone metadata. 
Pandas datetime output now uses nanoseconds instead of Pandas 3's microseconds, 
while existing object dtypes from all-null blocks remain.</li>
   <li>The Rust extra now requires 
<code>clickhouse-connect-core&gt;=0.2.1,&lt;0.3</code>. Rust codec setup checks 
the column buffer API separately from the binding API and reports upgrade 
guidance for older core wheels. See the <a 
href="https://github.com/ClickHouse/clickhouse-connect/blob/main/rust/ch-core-py/CHANGELOG.md#021-2026-09-24";>core
 0.2.1 release notes</a>.</li>
   </ul>
   </blockquote>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/090fb9a49e2f641ebc1cd058a4077fd67f1dfdcd";><code>090fb9a</code></a>
 Release/1.10.0 (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1085";>#1085</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/fec4e57089b3b8d51163676f3b133d6e1ab09dbe";><code>fec4e57</code></a>
 Fix Alembic comparison of server-pinned aggregate state versions (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1084";>#1084</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/6d738790ae6c90cb237745edae6edf9bc0064ca4";><code>6d73879</code></a>
 Fix SQLAlchemy dialect coexistence with clickhouse-sqlalchemy (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1082";>#1082</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/a104e28a202f07352363249c9a195407edb15f33";><code>a104e28</code></a>
 Fix row access after materializing query result columns (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1081";>#1081</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/08131dc5756fc3cfb56303942803e456f851f74d";><code>08131dc</code></a>
 Restrict HTTP retries to recognized reads and insert data (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1080";>#1080</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/122edfecbe003ff5d151fa83ebb2a8f3c2688a97";><code>122edfe</code></a>
 Fix free-threaded insert concurrency test timeouts (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1078";>#1078</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/4c25bc1e0c39e3a5b8de7578c0eefa9b7009a7b3";><code>4c25bc1</code></a>
 release prep for core 0.2.2 (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1077";>#1077</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/cac10b23dcf5262f8c38a23d1687d1b563e01082";><code>cac10b2</code></a>
 Fix Rust insert crashes on free-threaded Python (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1076";>#1076</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/c9f813958ea4e29c533eadbc15e409c2d59775dc";><code>c9f8139</code></a>
 Fix decoding of Dynamic shared values (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1071";>#1071</a>)</li>
   <li><a 
href="https://github.com/ClickHouse/clickhouse-connect/commit/8d3fe7b734b0ea9a8027298c684febf65303f75e";><code>8d3fe7b</code></a>
 Keep the insert query_id off the internal DESCRIBE TABLE (<a 
href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/1067";>#1067</a>)</li>
   <li>Additional commits viewable in <a 
href="https://github.com/ClickHouse/clickhouse-connect/compare/v1.9.0...v1.10.0";>compare
 view</a></li>
   </ul>
   </details>
   <br />
   
   
   [![Dependabot compatibility 
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clickhouse-connect&package-manager=pip&previous-version=1.9.0&new-version=1.10.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
   
   Dependabot will resolve any conflicts with this PR as long as you don't 
alter it yourself. You can also trigger a rebase manually by commenting 
`@dependabot rebase`.
   
   [//]: # (dependabot-automerge-start)
   [//]: # (dependabot-automerge-end)
   
   ---
   
   <details>
   <summary>Dependabot commands and options</summary>
   <br />
   
   You can trigger Dependabot actions by commenting on this PR:
   - `@dependabot rebase` will rebase this PR
   - `@dependabot recreate` will recreate this PR, overwriting any edits that 
have been made to it
   - `@dependabot show <dependency name> ignore conditions` will show all of 
the ignore conditions of the specified dependency
   - `@dependabot ignore this major version` will close this PR and stop 
Dependabot creating any more for this major version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this minor version` will close this PR and stop 
Dependabot creating any more for this minor version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this dependency` will close this PR and stop 
Dependabot creating any more for this dependency (unless you reopen the PR or 
upgrade to it yourself)
   
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to