dependabot[bot] opened a new pull request, #40184: URL: https://github.com/apache/superset/pull/40184
Updates the requirements on [clickhouse-connect](https://github.com/ClickHouse/clickhouse-connect) to permit the latest version. <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.0.0</h2> <h2>clickhouse-connect 1.0.0</h2> <p>The first stable release of clickhouse-connect. 1.0.0 is identical in code to <a href="https://github.com/ClickHouse/clickhouse-connect/releases/tag/v1.0.0rc3"><code>1.0.0rc3</code></a>. No changes have been merged since that tag.</p> <p><strong>Installation:</strong></p> <pre><code>pip install clickhouse-connect </code></pre> <h2>Upgrading from 0.x</h2> <p>The 1.0 release includes breaking changes accumulated across the rc1/rc2/rc3 cycle. If you are upgrading from a 0.15.x or earlier release, please read <a href="https://github.com/ClickHouse/clickhouse-connect/blob/main/MIGRATION.md">MIGRATION.md</a> for a guide to the changes and their replacements.</p> <p>At a glance, the breaking changes are:</p> <ul> <li>Python 3.10 minimum (3.9 dropped. <code>0.15.x</code> is the last series supporting 3.9)</li> <li>pandas 2.0 minimum (1.x dropped)</li> <li><code>pytz</code> dependency replaced with stdlib <code>zoneinfo</code> (install the <code>tzdata</code> extra on slim Linux containers)</li> <li><code>utc_tz_aware</code> -> <code>tz_mode</code> (<code>"naive_utc"</code> / <code>"aware"</code> / <code>"schema"</code>)</li> <li><code>apply_server_timezone</code> -> <code>tz_source</code> (<code>"auto"</code> / <code>"server"</code> / <code>"local"</code>)</li> <li><code>preserve_pandas_datetime_resolution</code> setting removed: <code>DateTime</code>/<code>DateTime64</code> now return their natural numpy resolution</li> <li>Executor-based async client removed: use <code>clickhouse_connect.get_async_client()</code> (native aiohttp, installed via the <code>async</code> extra)</li> </ul> <h2>Highlights</h2> <h3>Performance</h3> <p>1.0 includes substantial Cython read- and write-path improvements over the 0.15.x series:</p> <ul> <li>Order-of-magnitude faster <code>DateTime</code>/<code>DateTime64</code> reads for naive UTC and UTC-equivalent timezones, via epoch arithmetic and the CPython datetime C API.</li> <li>Order-of-magnitude faster fixed-width numeric inserts from numpy arrays, with significantly lower peak memory, 1-D C-contiguous arrays of matching dtype are now copied directly via <code>memcpy</code>.</li> <li>Significantly faster <code>Map</code> reads and writes, with reads avoiding the intermediate pair-tuple materialization.</li> <li>Significantly faster <code>Decimal</code> and <code>BigDecimal</code> reads, the decode path now builds values directly from the integer column via <code>Decimal.scaleb</code> instead of constructing intermediate strings per row.</li> </ul> <h3>Bug fixes</h3> <p>Notable fixes that shipped during the RC cycle:</p> <ul> <li>Fix intermittent <code>Code: 62. Empty query. (SYNTAX_ERROR)</code> on inserts when a pooled keep-alive connection is reset between attempts. (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/731">#731</a>)</li> <li>Async client: retry once when aiohttp raises bare <code>ServerDisconnectedError("Server disconnected")</code> on a pooled keep-alive connection idle-closed by the server.</li> <li>Fix Dynamic/JSON column reads when a path's inferred type sorts alphabetically after <code>"SharedVariant"</code>. (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/712">#712</a>)</li> <li>Fix async streaming race condition that caused unhandled <code>InvalidStateError</code> on early stream termination.</li> <li>SQLAlchemy: wrap raw SQL strings in <code>text()</code> in <code>Inspector.get_schema_names()</code> / <code>get_table_names()</code> so they work on SQLAlchemy 2.x.</li> <li>SQLAlchemy: <code>Bool</code> type now accepts and forwards <code>**kwargs</code>, fixing ORM model use and <code>Table.to_metadata()</code>. (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/705">#705</a>)</li> <li>SQLAlchemy: <code>CreateDatabase</code> with <code>engine="Replicated"</code> now emits valid DDL.</li> </ul> <h3>Other improvements</h3> <ul> <li>Package version is now exposed as <code>clickhouse_connect.__version__</code>, following Python packaging conventions.</li> </ul> <!-- 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.0.0, 2026-05-13</h2> <p>No code changes since <code>1.0.0rc3</code>. See the <code>1.0.0rc1</code>, <code>1.0.0rc2</code>, and <code>1.0.0rc3</code> entries below for the full set of changes included in the 1.0.0 release.</p> <p>Upgrading from a 0.15.x or earlier release? See <a href="https://github.com/ClickHouse/clickhouse-connect/blob/main/MIGRATION.md">https://github.com/ClickHouse/clickhouse-connect/blob/main/MIGRATION.md</a> for a guide to the breaking changes and their replacements.</p> <h2>1.0.0rc3, 2026-05-07</h2> <h3>Bug Fixes</h3> <ul> <li>Fix intermittent <code>Code: 62. Empty query. (SYNTAX_ERROR)</code> on inserts when a pooled keep-alive connection is reset between attempts. The retry path now rebuilds the insert body instead of replaying an already-drained generator. Affects both sync and async clients. Closes <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/731">#731</a></li> </ul> <h2>1.0.0rc2, 2026-05-05</h2> <h3>Improvements</h3> <ul> <li>Order-of-magnitude faster <code>DateTime</code> and <code>DateTime64</code> reads for naive UTC and UTC-equivalent timezones. The Cython read paths now decode via epoch arithmetic and construct <code>datetime</code> objects directly via the CPython datetime C API, bypassing <code>datetime.fromtimestamp</code> and the Python-level <code>datetime(...)</code> constructor. Also fixes Cython <code>DateTime</code> conversion bugs and expands epoch-arithmetic test coverage.</li> <li>Significantly faster <code>Map</code> reads and writes. The read path avoids materializing an intermediate pair tuple, with the win scaling with entries per row. The write path moves into a new Cython <code>build_map_columns</code> helper.</li> <li>Order-of-magnitude faster fixed-width numeric inserts from numpy arrays, with significantly lower peak memory. A new Cython <code>write_native_col</code> helper writes 1-D C-contiguous numpy arrays of matching dtype directly into the output buffer via <code>memcpy</code>, avoiding the per-element conversion the previous path required.</li> <li>Significantly faster <code>Decimal</code> and <code>BigDecimal</code> reads. The decode path no longer constructs intermediate strings per row, building values directly from the integer column via <code>Decimal.scaleb</code>.</li> </ul> <h3>Bug Fixes</h3> <ul> <li>Async client: retry once when a pooled keep-alive connection is closed by the server and aiohttp raises <code>ServerDisconnectedError</code> with the default <code>"Server disconnected"</code> message. The existing retry path covered <code>"Connection reset"</code> and <code>"Remote end closed"</code>, but not the bare <code>ServerDisconnectedError()</code> produced by recent aiohttp versions, which surfaced as an <code>OperationalError("Network Error: Server disconnected")</code> on the first request after an idle period.</li> <li>SQLAlchemy <code>Bool</code> type now accepts and forwards <code>**kwargs</code> to the underlying <code>SqlaBoolean</code> constructor. SQLAlchemy's <code>SchemaType</code> machinery passes internal kwargs (e.g., <code>_create_events</code>) when copying or adapting the type during ORM model use or <code>Table.to_metadata()</code>, which previously raised a <code>TypeError</code>. Fixes <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/705">#705</a></li> <li>SQLAlchemy: <code>CreateDatabase</code> with <code>engine="Replicated"</code> now emits a closing <code>)</code> after the <code>(zoo_path, shard, replica)</code> arguments, fixing previously invalid DDL on this path. The same arguments and the <code>system.tables</code> lookup in <code>get_engine</code> now go through bound parameters and the existing <code>format_str</code> helper instead of raw f-string interpolation.</li> </ul> <h2>1.0.0rc1, 2026-04-22</h2> <h3>Breaking Changes</h3> <ul> <li>Dropped the <code>pytz</code> dependency in favor of the standard library <code>zoneinfo</code>. On Windows, <code>tzdata</code> is pulled in automatically. On slim Linux containers without a system tzdb, install <code>pip install clickhouse-connect[tzdata]</code>.</li> <li>Unknown timezone strings from <code>query_tz</code>, <code>column_tzs</code>, or the server now surface <code>zoneinfo.ZoneInfoNotFoundError</code> internally (previously <code>pytz.exceptions.UnknownTimeZoneError</code>). User-visible <code>ProgrammingError</code>/log messages suggest the <code>tzdata</code> extra. Closes <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/714">#714</a>.</li> <li>Remove the legacy executor-based async client. The <code>AsyncClient(client=...)</code> constructor pattern, <code>executor_threads</code>, and <code>executor</code> parameters are no longer supported. Use <code>clickhouse_connect.get_async_client()</code> (or <code>create_async_client()</code>) which creates a native aiohttp-based async client directly. The <code>pool_mgr</code> parameter is also rejected on the async path. <code>aiohttp</code> remains an optional dependency, installed via <code>pip install clickhouse-connect[async]</code>.</li> <li>The internal <code>AiohttpAsyncClient</code> class has been renamed to <code>AsyncClient</code> and the module <code>clickhouse_connect.driver.aiohttp_client</code> has been removed. Import <code>AsyncClient</code> from <code>clickhouse_connect.driver</code> as before.</li> <li>Removed the deprecated <code>utc_tz_aware</code> parameter entirely. Use <code>tz_mode</code> instead: <code>"naive_utc"</code> (default, was <code>False</code>), <code>"aware"</code> (was <code>True</code>), or <code>"schema"</code> (unchanged). Closes <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/654">#654</a>, <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/665">#665</a></li> <li>Removed the deprecated <code>apply_server_timezone</code> parameter entirely. Use <code>tz_source</code> instead: <code>"auto"</code> (default), <code>"server"</code> (was <code>True</code>), or <code>"local"</code> (was <code>False</code>).</li> <li>Dropped pandas 1.x support. Minimum pandas version is now 2.0. Users with pandas < 2.0 will get a <code>NotSupportedError</code> at import time. Non-pandas usage is unaffected. Closes <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/661">#661</a></li> <li>Removed the <code>preserve_pandas_datetime_resolution</code> common setting. Datetime columns now always return their natural resolution, e.g. <code>datetime64[s]</code> for <code>DateTime</code>, <code>datetime64[ms]</code> for <code>DateTime64(3)</code>, instead of coercing everything to <code>datetime64[ns]</code>. Closes <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/662">#662</a></li> <li>Dropped Python 3.9 support. The minimum supported Python version is now 3.10. 0.15.x is the last series supporting Python 3.9.</li> </ul> <h3>Bug Fixes</h3> <ul> <li>Fix Dynamic/JSON column reads when a path's inferred type sorts alphabetically after <code>"SharedVariant"</code>. ClickHouse's <code>DataTypeVariant</code> constructor sorts its members alphabetically by name, and discriminator bytes on the wire index into that sorted order. The client appended <code>SharedVariant</code> to the variant list without sorting, so affected paths were read as the wrong variant. Closes <a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/712">#712</a></li> <li>Fix async streaming race condition that caused unhandled <code>InvalidStateError</code> exceptions on early stream termination. When breaking out of an async stream early, <code>shutdown()</code> scheduled a <code>set_result</code> callback for pending futures via <code>call_soon_threadsafe</code>, but <code>Task.cancel()</code> could cancel the future before the callback ran. The done-check is now deferred into the callback itself so it sees the actual future state at execution time.</li> <li>SQLAlchemy: Wrap raw SQL strings in <code>text()</code> in <code>ChClickHouseDialect.get_schema_names()</code> and <code>get_table_names()</code>, so <code>Inspector.get_schema_names()</code> and <code>get_table_names()</code> work on SQLAlchemy 2.x instead of raising <code>ObjectNotExecutableError</code>.</li> </ul> <h3>Development</h3> <ul> <li>Replaced pylint with <a href="https://docs.astral.sh/ruff/">Ruff</a> for linting and formatting. Double quotes are now the standard quote style. Bulk formatting commits are listed in <code>.git-blame-ignore-revs</code>. CI lint job no longer requires building C extensions or installing project dependencies, significantly reducing lint check time.</li> </ul> <h3>Improvements</h3> <ul> <li>Package version is now exposed as <code>clickhouse_connect.__version__</code> (a string), following Python packaging conventions. The version remains single-sourced from <code>clickhouse_connect/_version.py</code>. Users can access version information via <code>clickhouse_connect.__version__</code>, <code>importlib.metadata.version("clickhouse-connect")</code>, or the <code>clickhouse_connect.common.version()</code> helper.</li> <li>Lazy loading of optional dependencies (numpy, pandas, pyarrow, polars) now applies to the async client as well, matching the pattern established in 0.15.0 for the sync client.</li> <li>Clearer error message when attempting to use the async client without aiohttp installed.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/eb24221add8308abf1fab928182fde80ad2ceaee"><code>eb24221</code></a> 1.0.0 release prep and migration guide (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/738">#738</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/c295aa286c39d90a35570b8d036b76531a86338c"><code>c295aa2</code></a> 1.0.0rc3 release prep (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/733">#733</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/5703b24e2450c495ec0993681c98727c1d29974f"><code>5703b24</code></a> rebuild body on connection-reset insert retry (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/732">#732</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/dfb53fd700c87431096e0f925d57750fe24b067a"><code>dfb53fd</code></a> 1.0.0rc2 release prep (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/729">#729</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/39ca7ed33ee81e45a16131a6b4da1fb3930684b1"><code>39ca7ed</code></a> Performance improvements (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/710">#710</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/f0cedf75d9d9fe70a698c39ef1d0845b92b6bd09"><code>f0cedf7</code></a> use bound params and format_str in DDL/inspector (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/728">#728</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/95f4c96c23796f308235f4822a872c41f1c53419"><code>95f4c96</code></a> Use SPDX license identifier (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/727">#727</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/da0ee994c7520661148f43d65c6b6d6e1de0feca"><code>da0ee99</code></a> update server ref agent docs, add server map (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/724">#724</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/5b6f3dc836dd8760a934ba040d97ff7d259cfefb"><code>5b6f3dc</code></a> fix: accept **kwargs in Bool.<strong>init</strong> for SQLAlchemy type compatibility (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/706">#706</a>)</li> <li><a href="https://github.com/ClickHouse/clickhouse-connect/commit/4d2dffae41fc13800053bfc2759e061134346b98"><code>4d2dffa</code></a> async client: retry on bare ServerDisconnectedError (<a href="https://redirect.github.com/ClickHouse/clickhouse-connect/issues/726">#726</a>)</li> <li>Additional commits viewable in <a href="https://github.com/ClickHouse/clickhouse-connect/compare/v0.13.0...v1.0.0">compare view</a></li> </ul> </details> <br /> 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]
