Conversation
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Move these links up, otherwise its buried in the list of dependencies
## Are these changes tested?
N/A
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
No
<!-- Thanks for opening a pull request! --> Part of apache#2700 <!-- In the case this PR will resolve an issue, please replace ${GITHUB_ISSUE_ID} below with the actual Github issue id. --> <!-- Closes #${GITHUB_ISSUE_ID} --> # Rationale for this change We're trying to re-enable all of the Ruff linter rules. B024 is abstract-base-class-without-abstract-method ## Are these changes tested? `make lint` and tests should still pass. ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. -->
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Follow up to apache#2601
clean up .egg-info/ and setup.cfg from sdist
## Are these changes tested?
Yes
Check the new sdist
```
rm -rf dist build pyiceberg.egg-info
uv build --sdist
tar -tzf dist/pyiceberg-*.tar.gz | grep -E "(build/|setup.cfg|\.egg-info)"
```
Diffed too
```
diff -qr ./dist/pyiceberg-0.10.0 ~/Downloads/nightly/sdist/ | sort
differ
Files ./dist/pyiceberg-0.10.0/Makefile and /Users/kevinliu/Downloads/nightly/sdist/Makefile differ
Files ./dist/pyiceberg-0.10.0/PKG-INFO and /Users/kevinliu/Downloads/nightly/sdist/PKG-INFO differ
Files ./dist/pyiceberg-0.10.0/dev/.rat-excludes and /Users/kevinliu/Downloads/nightly/sdist/dev/.rat-excludes differ
Files ./dist/pyiceberg-0.10.0/pyproject.toml and /Users/kevinliu/Downloads/nightly/sdist/pyproject.toml differ
new
Only in ./dist/pyiceberg-0.10.0/tests: .DS_Store
Only in ./dist/pyiceberg-0.10.0: MANIFEST.in
Only in ./dist/pyiceberg-0.10.0: setup.py
removed
Only in /Users/kevinliu/Downloads/nightly/sdist: build-module.py
Only in /Users/kevinliu/Downloads/nightly/sdist: poetry.lock
```
In sdist, ran RAT check and tests
```
make check-license
make test-coverage
```
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
No
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Follow up to apache#2601
Apply `PYTHON_ARG` override to all `uv` commands`
## Are these changes tested?
Yes
Override to use python 3.13
```
export PYTHON=3.13
make setup-venv
make install
make docs-serve
```
Unset override and verify it uses system default, python 3.12
```
unset PYTHON
make setup-venv
make test
```
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
No
<!-- Thanks for opening a pull request! --> Part of apache#2700 <!-- In the case this PR will resolve an issue, please replace ${GITHUB_ISSUE_ID} below with the actual Github issue id. --> <!-- Closes #${GITHUB_ISSUE_ID} --> # Rationale for this change This lets us enable rule B208 on the linter. ## Are these changes tested? `make lint` and `make test` should pass. ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. --> Co-authored-by: Kevin Liu <kevinjqliu@users.noreply.github.com>
<!-- Thanks for opening a pull request! --> Part of apache#2700 <!-- In the case this PR will resolve an issue, please replace ${GITHUB_ISSUE_ID} below with the actual Github issue id. --> <!-- Closes #${GITHUB_ISSUE_ID} --> # Rationale for this change This enables linter rule UP037 ## Are these changes tested? `make lint` and `make test` should pass. ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. --> Co-authored-by: Kevin Liu <kevinjqliu@users.noreply.github.com>
<!-- Thanks for opening a pull request! --> Part of apache#2700 <!-- In the case this PR will resolve an issue, please replace ${GITHUB_ISSUE_ID} below with the actual Github issue id. --> <!-- Closes #${GITHUB_ISSUE_ID} --> # Rationale for this change This enables linter rule UP006. Most of these changes revolve around using native-Python types instead of using typing imports. This is a big one, sorry! It seems easier just to do this in a single PR (considering how mechanical this process is) as opposed to breaking it up. ## Are these changes tested? `make lint` and `make test` should pass. ## Are there any user-facing changes? None. <!-- In the case of user-facing changes, please add the changelog label. -->
…#2740) - Adds documentation example for configuring Google BigLake Metastore as a REST catalog - Includes configuration example with proper authentication setup # Rationale for this change GCP had the GA release of the BigLake Metastore Catalog Iceberg REST api Nov 30 (see [release notes](https://docs.cloud.google.com/bigquery/docs/release-notes#October_30_2025)). There are few GCP docs available how to set this up in general, and with pyiceberg specifically. Ray Data and probably many other tools use pyiceberg under the hood, so documenting this would make it much easier for folks in the GCP cloud to use pyiceberg at scale. # Are these changes tested? Yes, using the following test plan: - [x] Configuration tested to work with pyiceberg 0.10.0 and Google BigLake Metastore (Nov 11, 2025) - [x] Documentation builds successfully - [x] Configuration example follows existing format and style - [x] Added links are valid # Are there any user-facing changes? Would add a new section in the docs when docs are published. --------- Co-authored-by: Kyle <kyle.heath@recursion.com>
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Follow up to apache#2601
`pandas`/`duckdb`/`ray` do not need `pyiceberg-core`
This matches the previous pyproject.toml:
https://github.com/apache/iceberg-python/pull/2601/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711L133-L157
## Are these changes tested?
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
nightly pypi silently fails (apache#2678)
This PR adds notification when github workflow fails
Sent to `ci-jobs@iceberg.apache.org`
## Are these changes tested?
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Closes apache#2705
This PR fixes `check-md-link` by pinning it to the [specific hash
allowed in
apache/infrastructure-actions](https://github.com/apache/infrastructure-actions/blob/ac09a0970d14dc1043a3787a95835c6efa07dd9c/actions.yml#L752-L753)
and also allow manual trigger
## Are these changes tested?
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
# Rationale for this change This is a big one, and was on my mind for a long time, but I think we should clean this up before a 1.x release. I bumped into this once more when I tried to extend from the `IcebergBaseModel`, but that did not work well with the `Generic`. From the beginning we had these Generic in the expressions system, but it really never worked as we hoped. It came from Java where Generics are much stronger, but the static typing of Python/mypy doesn't really follow the types. ## Are these changes tested? ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. -->
Bumps [pypa/cibuildwheel](https://github.com/pypa/cibuildwheel) from 3.2.1 to 3.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pypa/cibuildwheel/releases">pypa/cibuildwheel's releases</a>.</em></p> <blockquote> <h2>v3.3.0</h2> <ul> <li>🐛 Fix an incompatibility with Docker v29 (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2660">#2660</a>)</li> <li>✨ Adds <code>test-runtime</code> option, to customise how tests on simulated/emulated environments are run (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2636">#2636</a>)</li> <li>✨ Adds support for new <code>manylinux_2_35</code> images on 32-bit ARM <code>armv7l</code>, offering better C++20 compatibility (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2656">#2656</a>)</li> <li>✨ <code>build[uv]</code> is now supported on Android (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2587">#2587</a>)</li> <li>✨ You can now install extras (such as <code>uv</code>) with a simple option on the GitHub Action (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2630">#2630</a>)</li> <li>✨ <code>{project}</code> and <code>{package}</code> placeholders are now supported in <code>repair-wheel-command</code> (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2589">#2589</a>)</li> <li>🛠 The versions set with <code>dependency-versions</code> no longer constrain packages specified by your <code>build-system.requires</code>. Previously, on platforms other than Linux, the constraints in this option would remain in the environment during the build. This has been tidied up make behaviour more consistent between platforms, and to prevent version conflicts. (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2583">#2583</a>)</li> <li>🛠 Improve the handling of <code>test-command</code> on Android, enabling more options to be passed (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2590">#2590</a>)</li> <li>📚 Docs improvements (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2618">#2618</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pypa/cibuildwheel/blob/main/docs/changelog.md">pypa/cibuildwheel's changelog</a>.</em></p> <blockquote> <h3>v3.3.0</h3> <p><em>12 November 2025</em></p> <ul> <li>🐛 Fix an incompatibility with Docker v29 (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2660">#2660</a>)</li> <li>✨ Adds <code>test-runtime</code> option, to customise how tests on simulated/emulated environments are run (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2636">#2636</a>)</li> <li>✨ Adds support for new <code>manylinux_2_35</code> images on 32-bit ARM <code>armv7l</code>, offering better C++20 compatibility (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2656">#2656</a>)</li> <li>✨ <code>build[uv]</code> is now supported on Android (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2587">#2587</a>)</li> <li>✨ You can now install extras (such as <code>uv</code>) with a simple option on the GitHub Action (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2630">#2630</a>)</li> <li>✨ <code>{project}</code> and <code>{package}</code> placeholders are now supported in <code>repair-wheel-command</code> (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2589">#2589</a>)</li> <li>🛠 The versions set with <code>dependency-versions</code> no longer constrain packages specified by your <code>build-system.requires</code>. Previously, on platforms other than Linux, the constraints in this option would remain in the environment during the build. This has been tidied up make behaviour more consistent between platforms, and to prevent version conflicts. (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2583">#2583</a>)</li> <li>🛠 Improve the handling of <code>test-command</code> on Android, enabling more options to be passed (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2590">#2590</a>)</li> <li>📚 Docs improvements (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2618">#2618</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pypa/cibuildwheel/commit/63fd63b352a9a8bdcc24791c9dbee952ee9a8abc"><code>63fd63b</code></a> Bump version: v3.3.0</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/f4fe311fc96f735aa0d7beb74d6ae61801cf5382"><code>f4fe311</code></a> fix: support Docker 29 (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2660">#2660</a>)</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/f6c810852d424abdddc6abc44d1e4b165797399d"><code>f6c8108</code></a> feat: make the <code>{project}</code> placeholder available to <code>repair-wheel-command</code> (#...</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/ccbae30b538eeacb2269052ca6603ba28485206b"><code>ccbae30</code></a> feat: support uv with Android (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2587">#2587</a>)</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/1337e50f74cda9ab8a65568b3052d7e4b82da54c"><code>1337e50</code></a> chore: pytest log_level is better than log_cli_level (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2657">#2657</a>)</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/720f8e266f6c4b5d3064fc8c366397266eaedfe5"><code>720f8e2</code></a> feat: add manylinux_2_35 (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2656">#2656</a>)</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/4c7f3696b166b9a2cefcd9c33a7ace9648a823b9"><code>4c7f369</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2658">#2658</a>)</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/e1baa60eb0f6e7e57cbb5087940acefcaa86fb97"><code>e1baa60</code></a> chore: enable more Ruff checks (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2654">#2654</a>)</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/1f2f8b28d5cf5adac0ccab4078dcb415f53c7d2b"><code>1f2f8b2</code></a> fix: don't constrain <code>build-system.requires</code> with our <code>dependency-versions</code> (...</li> <li><a href="https://github.com/pypa/cibuildwheel/commit/8c5b02f42c051a818a176259fc5f4d1876cb5945"><code>8c5b02f</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/pypa/cibuildwheel/issues/2648">#2648</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pypa/cibuildwheel/compare/v3.2.1...v3.3.0">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [mypy-boto3-glue](https://github.com/youtype/mypy_boto3_builder) from 1.40.63 to 1.40.75. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/youtype/mypy_boto3_builder/releases">mypy-boto3-glue's releases</a>.</em></p> <blockquote> <h2>8.8.0 - Python 3.8 runtime is back</h2> <h3>Changed</h3> <ul> <li><code>[services]</code> <code>install_requires</code> section is calculated based on dependencies in use, so <code>typing-extensions</code> version is set properly</li> <li><code>[all]</code> Replaced <code>typing</code> imports with <code>collections.abc</code> with a fallback to <code>typing</code> for Python <3.9</li> <li><code>[all]</code> Added aliases for <code>builtins.list</code>, <code>builtins.set</code>, <code>builtins.dict</code>, and <code>builtins.type</code>, so Python 3.8 runtime should work as expected again (reported by <a href="https://github.com/YHallouard"><code>@YHallouard</code></a> in <a href="https://redirect.github.com/youtype/mypy_boto3_builder/issues/340">#340</a> and <a href="https://github.com/Omri-Ben-Yair"><code>@Omri-Ben-Yair</code></a> in <a href="https://redirect.github.com/youtype/mypy_boto3_builder/issues/336">#336</a>)</li> <li><code>[all]</code> Unions use the same type annotations as the rest of the structures due to proper fallbacks</li> </ul> <h3>Fixed</h3> <ul> <li><code>[services]</code> Universal input/output shapes were not replaced properly in service subresources</li> <li><code>[docs]</code> Simplified doc links rendering for services</li> <li><code>[services]</code> Cleaned up unnecessary imports in <code>client.pyi</code></li> <li><code>[builder]</code> Import records with fallback are always rendered</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/youtype/mypy_boto3_builder/commits">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [prek](https://github.com/j178/prek) from 0.2.13 to 0.2.15. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/j178/prek/releases">prek's releases</a>.</em></p> <blockquote> <h2>0.2.15</h2> <h2>Release Notes</h2> <p>Released on 2025-11-17.</p> <h3>Highlights</h3> <p>prek is now available on crates.io! You can build prek from source via <code>cargo install prek</code>, for more details see <a href="https://prek.j178.dev/installation/#build-from-source">Installation</a>.</p> <h3>Enhancements</h3> <ul> <li>Clean up hook environments when install fails (<a href="https://redirect.github.com/j178/prek/pull/1085">#1085</a>)</li> <li>Prepare for publishing prek to crates.io (<a href="https://redirect.github.com/j178/prek/pull/1088">#1088</a>)</li> <li>Replace <code>serde-yaml</code> with <code>serde_saphyr</code> (<a href="https://redirect.github.com/j178/prek/pull/1087">#1087</a>)</li> <li>Warn unexpected keys in repo and hook level (<a href="https://redirect.github.com/j178/prek/pull/1096">#1096</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>prek init-template-dir</code> fails in non-git repo (<a href="https://redirect.github.com/j178/prek/pull/1093">#1093</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/j178"><code>@j178</code></a></li> </ul> <h2>Install prek 0.2.15</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.2.15/prek-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.2.15/prek-installer.ps1 | iex" </code></pre> <h3>Install prebuilt binaries via Homebrew</h3> <pre lang="sh"><code>brew install j178/tap/prek </code></pre> <h3>Install prebuilt binaries into your npm project</h3> <pre lang="sh"><code>npm install @j178/prek@0.2.15 </code></pre> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/j178/prek/blob/master/CHANGELOG.md">prek's changelog</a>.</em></p> <blockquote> <h2>0.2.15</h2> <p>Released on 2025-11-17.</p> <h3>Highlights</h3> <p>prek is now available on crates.io! You can build prek from source via <code>cargo install prek</code> or <code>cargo binstall prek</code>, for more details see <a href="https://prek.j178.dev/installation/#build-from-source">Installation</a>.</p> <h3>Enhancements</h3> <ul> <li>Clean up hook environments when install fails (<a href="https://redirect.github.com/j178/prek/pull/1085">#1085</a>)</li> <li>Prepare for publishing prek to crates.io (<a href="https://redirect.github.com/j178/prek/pull/1088">#1088</a>)</li> <li>Replace <code>serde-yaml</code> with <code>serde_saphyr</code> (<a href="https://redirect.github.com/j178/prek/pull/1087">#1087</a>)</li> <li>Warn unexpected keys in repo and hook level (<a href="https://redirect.github.com/j178/prek/pull/1096">#1096</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>prek init-template-dir</code> fails in non-git repo (<a href="https://redirect.github.com/j178/prek/pull/1093">#1093</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/j178"><code>@j178</code></a></li> </ul> <h2>0.2.14</h2> <p>Released on 2025-11-14.</p> <h3>Enhancements</h3> <ul> <li>Support <code>PREK_CONTAINER_RUNTIME=podman</code> to override container runtime (<a href="https://redirect.github.com/j178/prek/pull/1033">#1033</a>)</li> <li>Support rootless container runtime (<a href="https://redirect.github.com/j178/prek/issues/1018">#1018</a>)</li> <li>Support <code>language: unsupported</code> and <code>language: unsupported_script</code> introduced in pre-commit v4.4 (<a href="https://redirect.github.com/j178/prek/pull/1073">#1073</a>)</li> <li>Tweak to regex used for mountinfo (<a href="https://redirect.github.com/j178/prek/pull/1037">#1037</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>--files</code> argument - files referencing other projects aren’t being filtered (<a href="https://redirect.github.com/j178/prek/pull/1064">#1064</a>)</li> <li>Unset <code>objectFormat</code> in <code>git init</code> (<a href="https://redirect.github.com/j178/prek/pull/1048">#1048</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add scoop to installation (<a href="https://redirect.github.com/j178/prek/pull/1067">#1067</a>)</li> <li>Document workspace file visibility constraints (<a href="https://redirect.github.com/j178/prek/pull/1071">#1071</a>)</li> <li>Add <code>iceberg-python</code>, <code>msgspec</code> and <code>humanize</code> to "who is using prek" (<a href="https://redirect.github.com/j178/prek/pull/1039">#1039</a>, <a href="https://redirect.github.com/j178/prek/pull/1042">#1042</a>, <a href="https://redirect.github.com/j178/prek/pull/1063">#1063</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Add a hint to install when running inside a sub-project (<a href="https://redirect.github.com/j178/prek/pull/1045">#1045</a>)</li> <li>Add a hint to use <code>--refresh</code> when no configuration found (<a href="https://redirect.github.com/j178/prek/pull/1046">#1046</a>)</li> <li>Run uv pip install from the current directory (<a href="https://redirect.github.com/j178/prek/pull/1069">#1069</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/j178/prek/commit/11f369ed7a209cd5e79bab764b3b173395272df2"><code>11f369e</code></a> Bump version to 0.2.15 (<a href="https://redirect.github.com/j178/prek/issues/1098">#1098</a>)</li> <li><a href="https://github.com/j178/prek/commit/ce8faf7ea5b4eab13ca86a2d9d706564119c59af"><code>ce8faf7</code></a> Add some more error context (<a href="https://redirect.github.com/j178/prek/issues/1097">#1097</a>)</li> <li><a href="https://github.com/j178/prek/commit/236967f63f1abafafce076bf13ed22a8a90fc749"><code>236967f</code></a> Warn unexpected keys in repo and hook level (<a href="https://redirect.github.com/j178/prek/issues/1096">#1096</a>)</li> <li><a href="https://github.com/j178/prek/commit/af779bed9ec9791c786f6d84d4dec169f359a4d5"><code>af779be</code></a> Simplify config deserialization (<a href="https://redirect.github.com/j178/prek/issues/1095">#1095</a>)</li> <li><a href="https://github.com/j178/prek/commit/abd6ed428da25486b859d106021f3145d5e2e895"><code>abd6ed4</code></a> Tweak config parsing error message (<a href="https://redirect.github.com/j178/prek/issues/1094">#1094</a>)</li> <li><a href="https://github.com/j178/prek/commit/f38fe383298b1c3470db05cafaa2337a2f601424"><code>f38fe38</code></a> Fix <code>prek init-template-dir</code> fails in non-git repo (<a href="https://redirect.github.com/j178/prek/issues/1093">#1093</a>)</li> <li><a href="https://github.com/j178/prek/commit/f46e6f901112f5e39f124c44aff311e6f6b0ae62"><code>f46e6f9</code></a> Fix npmjs publish action</li> <li><a href="https://github.com/j178/prek/commit/7e06cffa7070a95875764e4232d00b19ae6df2da"><code>7e06cff</code></a> Bump version to 0.2.15-alpha.3 (<a href="https://redirect.github.com/j178/prek/issues/1091">#1091</a>)</li> <li><a href="https://github.com/j178/prek/commit/bf8dc871e52ebad9b0ed9182fa7f8221c9ec9abb"><code>bf8dc87</code></a> Bump version to 0.2.15-alpha.2 (<a href="https://redirect.github.com/j178/prek/issues/1090">#1090</a>)</li> <li><a href="https://github.com/j178/prek/commit/0d0509f4f38d734ed20bff79469b10ecfa762c17"><code>0d0509f</code></a> Bump version to 0.2.15-alpha.1 (<a href="https://redirect.github.com/j178/prek/issues/1089">#1089</a>)</li> <li>Additional commits viewable in <a href="https://github.com/j178/prek/compare/v0.2.13...v0.2.15">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pyarrow](https://github.com/apache/arrow) from 21.0.0 to 22.0.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/apache/arrow/releases">pyarrow's releases</a>.</em></p> <blockquote> <h2>Apache Arrow 22.0.0</h2> <p>Release Notes URL: <a href="https://arrow.apache.org/release/22.0.0.html">https://arrow.apache.org/release/22.0.0.html</a></p> <h2>Apache Arrow 22.0.0 RC1</h2> <p>Release Notes: Release Candidate: 22.0.0 RC1</p> <h2>Apache Arrow 22.0.0 RC0</h2> <p>Release Notes: Release Candidate: 22.0.0 RC0</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/apache/arrow/commit/5aeb5f217f1ba39c428c9b481f393bd37097f69e"><code>5aeb5f2</code></a> MINOR: [Release] Update versions for 22.0.0</li> <li><a href="https://github.com/apache/arrow/commit/81563ad2c53f886a4901191e0f2d05238398e177"><code>81563ad</code></a> MINOR: [Release] Update .deb/.rpm changelogs for 22.0.0</li> <li><a href="https://github.com/apache/arrow/commit/c5055366fb5d6ae6a7c51ae50135ebf3203b48af"><code>c505536</code></a> MINOR: [Release] Update CHANGELOG.md for 22.0.0</li> <li><a href="https://github.com/apache/arrow/commit/e04fafb1242ce428b5068f075de58579992f8c5c"><code>e04fafb</code></a> <a href="https://redirect.github.com/apache/arrow/issues/47838">GH-47838</a>: [C++][Parquet] Set Variant specification version to 1 to align with...</li> <li><a href="https://github.com/apache/arrow/commit/07e4d5aeadf0c24542309edc3056ed26dfc5f49c"><code>07e4d5a</code></a> <a href="https://redirect.github.com/apache/arrow/issues/47819">GH-47819</a>: [CI][Packaging][Release] Avoid triggering Linux packages on release...</li> <li><a href="https://github.com/apache/arrow/commit/e2fa94cf96c5b21924451ca52a6b522618c28a9e"><code>e2fa94c</code></a> <a href="https://redirect.github.com/apache/arrow/issues/47809">GH-47809</a>: [CI][Release] Fix Windows verification job trying to install patch ...</li> <li><a href="https://github.com/apache/arrow/commit/2140934e4d79587ffa91e5d1462ac7ee673d2df0"><code>2140934</code></a> <a href="https://redirect.github.com/apache/arrow/issues/47738">GH-47738</a>: [R] Update NEWS.md for 22.0.0 (<a href="https://redirect.github.com/apache/arrow/issues/47739">#47739</a>)</li> <li><a href="https://github.com/apache/arrow/commit/08f5304074ce550c342f97e107081ea61a51e3da"><code>08f5304</code></a> <a href="https://redirect.github.com/apache/arrow/issues/47803">GH-47803</a>: [C++][Parquet] Fix read out of bounds on invalid RLE data (<a href="https://redirect.github.com/apache/arrow/issues/47804">#47804</a>)</li> <li><a href="https://github.com/apache/arrow/commit/d5b8e2b151730312ef80a975627ef7ff2423a232"><code>d5b8e2b</code></a> <a href="https://redirect.github.com/apache/arrow/issues/47438">GH-47438</a>: [Python][Packaging] Set up wheel building for Python 3.14 (<a href="https://redirect.github.com/apache/arrow/issues/47616">#47616</a>)</li> <li><a href="https://github.com/apache/arrow/commit/618f6090118606f83a93cdd88e47868db9c61b8f"><code>618f609</code></a> <a href="https://redirect.github.com/apache/arrow/issues/47795">GH-47795</a>: [Archery] Add support for custom Docker registry (<a href="https://redirect.github.com/apache/arrow/issues/47796">#47796</a>)</li> <li>Additional commits viewable in <a href="https://github.com/apache/arrow/compare/apache-arrow-21.0.0...apache-arrow-22.0.0">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [huggingface-hub](https://github.com/huggingface/huggingface_hub) from 1.1.2 to 1.1.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/huggingface/huggingface_hub/releases">huggingface-hub's releases</a>.</em></p> <blockquote> <h2>[v1.1.4] Paginated results in list_user_access</h2> <ul> <li>Paginated results in list_user_access by <a href="https://github.com/Wauplin"><code>@Wauplin</code></a> in <a href="https://redirect.github.com/huggingface/huggingface_hub/pull/3535">huggingface/huggingface_hub#3535</a> :warning: This patch release is a breaking chance but necessary to reflect API update made server-side.</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/huggingface/huggingface_hub/compare/v1.1.3...v1.1.4">https://github.com/huggingface/huggingface_hub/compare/v1.1.3...v1.1.4</a></p> <h2>[v1.1.3] Avoid HTTP 429 on downloads + fix missing arguments in download API</h2> <ul> <li>Make 'name' optional in catalog deploy by <a href="https://github.com/Wauplin"><code>@Wauplin</code></a> in <a href="https://redirect.github.com/huggingface/huggingface_hub/pull/3529">huggingface/huggingface_hub#3529</a></li> <li>Pass through additional arguments from HfApi download utils by <a href="https://github.com/schmrlng"><code>@schmrlng</code></a> in <a href="https://redirect.github.com/huggingface/huggingface_hub/pull/3531">huggingface/huggingface_hub#3531</a></li> <li>Avoid redundant call to the Xet connection info URL by <a href="https://github.com/Wauplin"><code>@Wauplin</code></a> in <a href="https://redirect.github.com/huggingface/huggingface_hub/pull/3534">huggingface/huggingface_hub#3534</a> <ul> <li>=> this PR fixes HTTP 429 rate limit issues happening when downloading a very large dataset of small files</li> </ul> </li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/huggingface/huggingface_hub/compare/v1.1.0...v1.1.3">https://github.com/huggingface/huggingface_hub/compare/v1.1.0...v1.1.3</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/huggingface/huggingface_hub/commit/c8992647f02e254281f45afd01a0d28aaeee08ab"><code>c899264</code></a> Release: v1.1.4</li> <li><a href="https://github.com/huggingface/huggingface_hub/commit/eeb0e73e35987316ad48c8b3b461f3a3af5aa26b"><code>eeb0e73</code></a> Paginated results in list_user_access (<a href="https://redirect.github.com/huggingface/huggingface_hub/issues/3535">#3535</a>)</li> <li><a href="https://github.com/huggingface/huggingface_hub/commit/5b7f672909b538d49d0b8a4234ea9927d83436c7"><code>5b7f672</code></a> Release: v1.1.3</li> <li><a href="https://github.com/huggingface/huggingface_hub/commit/e1162cdc7c24ca3efb3bd0d00a9cff7fa9e70049"><code>e1162cd</code></a> Avoid redundant call to the Xet connection info URL (<a href="https://redirect.github.com/huggingface/huggingface_hub/issues/3534">#3534</a>)</li> <li><a href="https://github.com/huggingface/huggingface_hub/commit/4f941716b321ec7b5251e6fbc86094f03c97e940"><code>4f94171</code></a> Pass through additional arguments from <code>HfApi</code> download utils (<a href="https://redirect.github.com/huggingface/huggingface_hub/issues/3531">#3531</a>)</li> <li>See full diff in <a href="https://github.com/huggingface/huggingface_hub/compare/v1.1.2...v1.1.4">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [cython](https://github.com/cython/cython) from 3.2.0 to 3.2.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/cython/cython/blob/master/CHANGES.rst">cython's changelog</a>.</em></p> <blockquote> <h1>3.2.1 (2025-11-12)</h1> <h2>Features added</h2> <ul> <li>Cython now leaves markers about its utility code dependencies in the generated C code to help debugging "unused function" C compiler warnings. (Github issue :issue:<code>7294</code>)</li> </ul> <h2>Bugs fixed</h2> <ul> <li> <p>Relative imports could fail if the shared utility module is used. This bug was introduces in Cython 3.2.0. (Github issue :issue:<code>7290</code>)</p> </li> <li> <p>Under lock congestion, acquiring the GIL could crash in Python 3.11. This bug was introduces in Cython 3.2.0. (Github issue :issue:<code>7312</code>)</p> </li> <li> <p>Using the shared utility module left an unused C function in user modules with memoryviews. To make debugging this kind of issue easier, Cython now leaves "used by …" markers in the generated C files that indicate why a specific piece of utility code was included. This bug was introduces in Cython 3.2.0. (Github issue :issue:<code>7293</code>)</p> </li> <li> <p>Code using the pre-import scope failed with an undefined name. This bug was introduces in Cython 3.2.0. (Github issue :issue:<code>7304</code>)</p> </li> <li> <p>Includes all fixes as of Cython 3.1.7.</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/cython/cython/commit/91685b68e8efc249863b50cd6b6d6bf2d4a9e285"><code>91685b6</code></a> Prepare release of Cython 3.2.1.</li> <li><a href="https://github.com/cython/cython/commit/aff6117b3187994eff3f4823570b3ebe9cc539cf"><code>aff6117</code></a> Update changelog.</li> <li><a href="https://github.com/cython/cython/commit/2ee6756d75c573da55edad5d8d10894a5ac71e31"><code>2ee6756</code></a> Merge branch '3.1.x' into 3.2.x</li> <li><a href="https://github.com/cython/cython/commit/9be46dc8e0666b6fdd9a9efe2184addcc5cd35c0"><code>9be46dc</code></a> Update changelog.</li> <li><a href="https://github.com/cython/cython/commit/6ab94443a9cab77eb07099d5703a8bbc6c54ee20"><code>6ab9444</code></a> Fix version hex in thread state save (<a href="https://redirect.github.com/cython/cython/issues/7313">#7313</a>)</li> <li><a href="https://github.com/cython/cython/commit/0a69663524d8f304e3af78aec4f3eda1620bd68a"><code>0a69663</code></a> Merge branch '3.1.x' into 3.2.x</li> <li><a href="https://github.com/cython/cython/commit/44e095182aa5c03ffdb0847b9f98d4b4eba0e34c"><code>44e0951</code></a> Prepare release of Cython 3.1.7.</li> <li><a href="https://github.com/cython/cython/commit/0d78f7290088485b666e8f7139ec2650823091d8"><code>0d78f72</code></a> Update changelog.</li> <li><a href="https://github.com/cython/cython/commit/bc041bf90ea3647a12ea54a523f8a25bf0569684"><code>bc041bf</code></a> Fix crash when assigning nested structs from a list of structs (<a href="https://redirect.github.com/cython/cython/issues/7309">GH-7309</a>)</li> <li><a href="https://github.com/cython/cython/commit/62ba6b5b4f3a2261ae4f28ca21e487a04696450f"><code>62ba6b5</code></a> Update changelog.</li> <li>Additional commits viewable in <a href="https://github.com/cython/cython/compare/3.2.0...3.2.1">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [cachetools](https://github.com/tkem/cachetools) from 6.2.1 to 6.2.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tkem/cachetools/blob/master/CHANGELOG.rst">cachetools's changelog</a>.</em></p> <blockquote> <h1>v6.2.2 (2025-11-13)</h1> <ul> <li> <p>Minor improvements from GitHub Copilot code review.</p> </li> <li> <p>Improve documentation.</p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tkem/cachetools/commit/4ee2600ab09b109f79d4ef08103240bf9f239b2d"><code>4ee2600</code></a> Release v6.2.2.</li> <li><a href="https://github.com/tkem/cachetools/commit/f1cec391fea1a1e407fe596b6e37b849adf7fce5"><code>f1cec39</code></a> Minor improvements from GitHub Copilot code review.</li> <li><a href="https://github.com/tkem/cachetools/commit/e9117dc1e18389341ce4836f171e23d89f306b65"><code>e9117dc</code></a> Merge pull request <a href="https://redirect.github.com/tkem/cachetools/issues/371">#371</a> from RektPunk/master</li> <li><a href="https://github.com/tkem/cachetools/commit/6774af212c0c95c2179f2644023fac74317d0262"><code>6774af2</code></a> fix typo</li> <li><a href="https://github.com/tkem/cachetools/commit/4d8fc20d9eac2cf93d0d938127f6dd3c30441c22"><code>4d8fc20</code></a> docs: add cachetools-async to related projects in README (<a href="https://redirect.github.com/tkem/cachetools/issues/369">#369</a>)</li> <li>See full diff in <a href="https://github.com/tkem/cachetools/compare/v6.2.1...v6.2.2">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
[//]: # (dependabot-start)⚠️ **Dependabot is rebasing this PR**⚠️ Rebasing might not happen immediately, so don't worry if this takes some time. Note: if you make any changes to this PR yourself, they will take precedence over the rebase. --- [//]: # (dependabot-end) Bumps [duckdb](https://github.com/duckdb/duckdb-python) from 1.4.1 to 1.4.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/duckdb/duckdb-python/releases">duckdb's releases</a>.</em></p> <blockquote> <h2>Python DuckDB v1.4.2</h2> <p>This is a bug fix release for various issues discovered after we released v1.4.1.</p> <p>Also see the <a href="https://github.com/duckdb/duckdb/releases/tag/v1.4.2">DuckDB v1.4.2 Changelog</a>.</p> <h2>What's Changed</h2> <ul> <li>Add Python 3.14 support by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/116">duckdb/duckdb-python#116</a></li> <li>Fix ADBC driver path resolution when <code>importlib.util</code> was not implicitly loaded by <a href="https://github.com/henryharbeck"><code>@henryharbeck</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/135">duckdb/duckdb-python#135</a></li> <li>add targeted test workflow by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/145">duckdb/duckdb-python#145</a></li> <li>Remove xfail annotations on adbc tests by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/147">duckdb/duckdb-python#147</a></li> <li>fix config dict value typehint by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/151">duckdb/duckdb-python#151</a></li> <li>Add df data and tz type columns back into the same loc after type con… by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/150">duckdb/duckdb-python#150</a></li> <li>Enable pyarrow with python 3.14 by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/152">duckdb/duckdb-python#152</a></li> <li>spark imports by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/157">duckdb/duckdb-python#157</a></li> <li>Fix failing test due to changed error msg by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/158">duckdb/duckdb-python#158</a></li> <li>Add explicit .pl(lazy=True) overload by <a href="https://github.com/J-Meyers"><code>@J-Meyers</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/172">duckdb/duckdb-python#172</a></li> <li>Fix InsertRelation on attached database by <a href="https://github.com/evertlammerts"><code>@evertlammerts</code></a> in <a href="https://redirect.github.com/duckdb/duckdb-python/pull/155">duckdb/duckdb-python#155</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/duckdb/duckdb-python/compare/v1.4.1...v1.4.2">https://github.com/duckdb/duckdb-python/compare/v1.4.1...v1.4.2</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/duckdb/duckdb-python/blob/main/CHANGELOG.md">duckdb's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/duckdb/duckdb-python/commit/70380a14a1afd0b2117f41fcba65e0b2d888ee1a"><code>70380a1</code></a> Submodule at 68d7555 for 1.4.2 release</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/13827e7bdca6fc21574ab10f4204a52696daf43a"><code>13827e7</code></a> Fix InsertRelation on attached database (<a href="https://redirect.github.com/duckdb/duckdb-python/issues/155">#155</a>)</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/7ccc8e91a5cdd288fa3a6b768921594f7cc8e9a2"><code>7ccc8e9</code></a> Add explicit .pl(lazy=True) overload (<a href="https://redirect.github.com/duckdb/duckdb-python/issues/172">#172</a>)</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/20bfd52a0932327fafd94fa16a25c6acc38f5dcb"><code>20bfd52</code></a> review feedback</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/10e0ef38a24b22741c97b18afc18e0b2579c2ec9"><code>10e0ef3</code></a> Add explicit polars overloads</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/95a9968bc10720401f41e982d2cf99b64399fe5d"><code>95a9968</code></a> Fix InsertRelation on attached database</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/f3b8c8adf29dfd9c69df182eabb98fc7316221c0"><code>f3b8c8a</code></a> Bumped submodule</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/f5618a3c3b09a4cb1983617a271628c37079800d"><code>f5618a3</code></a> Bumped submodule</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/17a0cad1a2a9d052c5829ed3811cd485c182474d"><code>17a0cad</code></a> remove experimental import because of the transitive dependencies that requires</li> <li><a href="https://github.com/duckdb/duckdb-python/commit/e35a2ceedf5f85671f393a01d6621ea1e27b4516"><code>e35a2ce</code></a> mypy shouldn't check experimental.spark</li> <li>Additional commits viewable in <a href="https://github.com/duckdb/duckdb-python/compare/v1.4.1...v1.4.2">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
[//]: # (dependabot-start)⚠️ **Dependabot is rebasing this PR**⚠️ Rebasing might not happen immediately, so don't worry if this takes some time. Note: if you make any changes to this PR yourself, they will take precedence over the rebase. --- [//]: # (dependabot-end) Bumps [boto3](https://github.com/boto/boto3) from 1.40.61 to 1.40.75. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/boto/boto3/commit/76bb63ddcaf878e5fea038518af5f84a1dccfcb1"><code>76bb63d</code></a> Merge branch 'release-1.40.75'</li> <li><a href="https://github.com/boto/boto3/commit/4094ca62c842c51761d442a0eb6063565b5f07ad"><code>4094ca6</code></a> Bumping version to 1.40.75</li> <li><a href="https://github.com/boto/boto3/commit/b37bc1c7514e9e1a8f9a4f3a1c650d8b4132f40d"><code>b37bc1c</code></a> Add changelog entries from botocore</li> <li><a href="https://github.com/boto/boto3/commit/49140e033d31324b28e340329f866af3009f0d06"><code>49140e0</code></a> Merge branch 'release-1.40.74'</li> <li><a href="https://github.com/boto/boto3/commit/f3fe4845588855a9871cf8182597e2ab2e26eca9"><code>f3fe484</code></a> Merge branch 'release-1.40.74' into develop</li> <li><a href="https://github.com/boto/boto3/commit/786aff8131cd2e48dbe522643f06d84353dad2c5"><code>786aff8</code></a> Bumping version to 1.40.74</li> <li><a href="https://github.com/boto/boto3/commit/0a66fb2138fec05d0ccbec07aba926c62f692e54"><code>0a66fb2</code></a> Add changelog entries from botocore</li> <li><a href="https://github.com/boto/boto3/commit/cd8545493fb93990034989cb24c7f151fe7af200"><code>cd85454</code></a> Merge branch 'release-1.40.73'</li> <li><a href="https://github.com/boto/boto3/commit/27d56447889f2c96bf1fda35929c7bf5add1cbad"><code>27d5644</code></a> Merge branch 'release-1.40.73' into develop</li> <li><a href="https://github.com/boto/boto3/commit/5f2866c2057eb1c638c9aed9acf1e487eb7b4a93"><code>5f2866c</code></a> Bumping version to 1.40.73</li> <li>Additional commits viewable in <a href="https://github.com/boto/boto3/compare/1.40.61...1.40.75">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [click](https://github.com/pallets/click) from 8.3.0 to 8.3.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pallets/click/releases">click's releases</a>.</em></p> <blockquote> <h2>8.3.1</h2> <p>This is the Click 8.3.1 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.</p> <p>PyPI: <a href="https://pypi.org/project/click/8.3.1/">https://pypi.org/project/click/8.3.1/</a> Changes: <a href="https://click.palletsprojects.com/page/changes/#version-8-3-1">https://click.palletsprojects.com/page/changes/#version-8-3-1</a> Milestone: <a href="https://github.com/pallets/click/milestone/28">https://github.com/pallets/click/milestone/28</a></p> <ul> <li>Don't discard pager arguments by correctly using <code>subprocess.Popen</code>. <a href="https://redirect.github.com/pallets/click/issues/3039">#3039</a> <a href="https://redirect.github.com/pallets/click/issues/3055">#3055</a></li> <li>Replace <code>Sentinel.UNSET</code> default values by <code>None</code> as they're passed through the <code>Context.invoke()</code> method. <a href="https://redirect.github.com/pallets/click/issues/3066">#3066</a> <a href="https://redirect.github.com/pallets/click/issues/3065">#3065</a> <a href="https://redirect.github.com/pallets/click/issues/3068">#3068</a></li> <li>Fix conversion of <code>Sentinel.UNSET</code> happening too early, which caused incorrect behavior for multiple parameters using the same name. <a href="https://redirect.github.com/pallets/click/issues/3071">#3071</a> <a href="https://redirect.github.com/pallets/click/issues/3079">#3079</a></li> <li>Fix rendering when <code>prompt</code> and <code>confirm</code> parameter <code>prompt_suffix</code> is empty. <a href="https://redirect.github.com/pallets/click/issues/3019">#3019</a> <a href="https://redirect.github.com/pallets/click/issues/3021">#3021</a></li> <li>When <code>Sentinel.UNSET</code> is found during parsing, it will skip calls to <code>type_cast_value</code>. <a href="https://redirect.github.com/pallets/click/issues/3069">#3069</a> <a href="https://redirect.github.com/pallets/click/issues/3090">#3090</a></li> <li>Hide <code>Sentinel.UNSET</code> values as <code>None</code> when looking up for other parameters through the context inside parameter callbacks. <a href="https://redirect.github.com/pallets/click/issues/3136">#3136</a> <a href="https://redirect.github.com/pallets/click/issues/3137">#3137</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/click/blob/main/CHANGES.rst">click's changelog</a>.</em></p> <blockquote> <h2>Version 8.3.1</h2> <p>Released 2025-11-15</p> <ul> <li>Don't discard pager arguments by correctly using <code>subprocess.Popen</code>. :issue:<code>3039</code> :pr:<code>3055</code></li> <li>Replace <code>Sentinel.UNSET</code> default values by <code>None</code> as they're passed through the <code>Context.invoke()</code> method. :issue:<code>3066</code> :issue:<code>3065</code> :pr:<code>3068</code></li> <li>Fix conversion of <code>Sentinel.UNSET</code> happening too early, which caused incorrect behavior for multiple parameters using the same name. :issue:<code>3071</code> :pr:<code>3079</code></li> <li>Hide <code>Sentinel.UNSET</code> values as <code>None</code> when looking up for other parameters through the context inside parameter callbacks. :issue:<code>3136</code> :pr:<code>3137</code></li> <li>Fix rendering when <code>prompt</code> and <code>confirm</code> parameter <code>prompt_suffix</code> is empty. :issue:<code>3019</code> :pr:<code>3021</code></li> <li>When <code>Sentinel.UNSET</code> is found during parsing, it will skip calls to <code>type_cast_value</code>. :issue:<code>3069</code> :pr:<code>3090</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pallets/click/commit/1d038f270701498433cb432f54db89f95f07a845"><code>1d038f2</code></a> release version 8.3.1</li> <li><a href="https://github.com/pallets/click/commit/03f3889f505d0c9ca4f9d6810f9e4ba2799f2a66"><code>03f3889</code></a> Fix Ruff UP038 warning (<a href="https://redirect.github.com/pallets/click/issues/3141">#3141</a>)</li> <li><a href="https://github.com/pallets/click/commit/3867781222cb63693ca67df94352d29d8e6e2770"><code>3867781</code></a> Fix Ruff UP038 warning</li> <li><a href="https://github.com/pallets/click/commit/b91bb9548a5617b1197add95e084d569f57149c3"><code>b91bb95</code></a> Provide altered context to callbacks to hide <code>UNSET</code> values as <code>None</code> (<a href="https://redirect.github.com/pallets/click/issues/3137">#3137</a>)</li> <li><a href="https://github.com/pallets/click/commit/437e1e3295c7ec979fc1bf285bb402ca20d847e7"><code>437e1e3</code></a> Temporarily provide a fake context to the callback to hide <code>UNSET</code> values as ...</li> <li><a href="https://github.com/pallets/click/commit/ea70da487b05d6bb758d472a3a9ffab4a5b7fcd5"><code>ea70da4</code></a> Don't test using a file in docs/ (<a href="https://redirect.github.com/pallets/click/issues/3102">#3102</a>)</li> <li><a href="https://github.com/pallets/click/commit/e27b307462b725722f620c69dd1d5509c032d18a"><code>e27b307</code></a> Make <code>uv run --all-extras pyright --verifytypes click</code> pass (<a href="https://redirect.github.com/pallets/click/issues/3072">#3072</a>)</li> <li><a href="https://github.com/pallets/click/commit/a92c573f3195c9da3058eadf1735d38af186d22c"><code>a92c573</code></a> Fix test_edit to work with BSD sed (<a href="https://redirect.github.com/pallets/click/issues/3129">#3129</a>)</li> <li><a href="https://github.com/pallets/click/commit/bd131e1ab63da2281d6dd9b8205ad2eb5a085468"><code>bd131e1</code></a> Fix test_edit to work with BSD sed</li> <li><a href="https://github.com/pallets/click/commit/0b5c6b75f617e6ee2f9f6dcd071b8a4bf183d1ed"><code>0b5c6b7</code></a> Add Best practices section (<a href="https://redirect.github.com/pallets/click/issues/3127">#3127</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pallets/click/compare/8.3.0...8.3.1">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.6.23 to 9.7.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/squidfunk/mkdocs-material/releases">mkdocs-material's releases</a>.</em></p> <blockquote> <h2>mkdocs-material-9.7.0</h2> <blockquote> <p>[!WARNING]</p> <p><strong>Material for MkDocs is now in maintenance mode</strong></p> <p>This is the last release of Material for MkDocs that will receive new features. Going forward, the Material for MkDocs team focuses on <a href="https://zensical.org">Zensical</a>, a next-gen static site generator built from first principles. We will provide critical bug fixes and security updates for Material for MkDocs for 12 months at least.</p> </blockquote> <p>→ <a href="https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/">Read the full announcement on our blog</a></p> <p>This release includes all features that were previously exclusive to the Insiders edition. These features are now freely available to everyone.</p> <p><strong>Note on deprecated plugins</strong>: The <a href="https://squidfunk.github.io/mkdocs-material/plugins/projects/">projects</a> and <a href="https://squidfunk.github.io/mkdocs-material/plugins/typeset/">typeset</a> plugins are included in this release, but must be considered deprecated. Both plugins proved unsustainable to maintain and represent architectural dead ends. They are provided as-is without ongoing support.</p> <p><strong>Changes</strong>:</p> <ul> <li>Added support for projects plugin (for compat, now deprecated)</li> <li>Added support for typeset plugin (for compat, now deprecated)</li> <li>Added support for pinned blog posts and author profiles</li> <li>Added support for customizing pagination for blog index pages</li> <li>Added support for customizing blog category sort order</li> <li>Added support for staying on page when switching languages</li> <li>Added support for disabling tags in table of contents</li> <li>Added support for nested tags and shadow tags</li> <li>Added support for footnote tooltips</li> <li>Added support for instant previews</li> <li>Added support for instant prefetching</li> <li>Added support for custom social card layouts</li> <li>Added support for custom social card background images</li> <li>Added support for selectable rangs in code blocks</li> <li>Added support for custom selectors for code annotations</li> <li>Added support for configurable log level in privacy plugin</li> <li>Added support for processing of external links in privacy plugin</li> <li>Added support for automatic image optimization via optimize plugin</li> <li>Added support for navigation paths (breadcrumbs)</li> <li>Fixed <a href="https://redirect.github.com/squidfunk/mkdocs-material/issues/8519">#8519</a>: Vector accents do not render when using KaTeX</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG">mkdocs-material's changelog</a>.</em></p> <blockquote> <p>mkdocs-material-9.7.0 (2025-11-11)</p> <p>⚠️ Material for MkDocs is now in maintenance mode</p> <p>This is the last release of Material for MkDocs that will receive new features. Going forward, the Material for MkDocs team focuses on Zensical, a next-gen static site generator built from first principles. We will provide critical bug fixes and security updates for Material for MkDocs for 12 months at least.</p> <p>Read the full announcement on our blog: <a href="https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/">https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/</a></p> <p>This release includes all features that were previously exclusive to the Insiders edition. These features are now freely available to everyone.</p> <p>Note on deprecated plugins: The projects and typeset plugins are included in this release, but must be considered deprecated. Both plugins proved unsustainable to maintain and represent architectural dead ends. They are provided as-is without ongoing support.</p> <p>Changes:</p> <ul> <li>Added support for pinned blog posts and author profiles</li> <li>Added support for customizing pagination for blog index pages</li> <li>Added support for customizing blog category sort order</li> <li>Added support for staying on page when switching languages</li> <li>Added support for disabling tags in table of contents</li> <li>Added support for nested tags and shadow tags</li> <li>Added support for footnote tooltips</li> <li>Added support for instant previews</li> <li>Added support for instant prefetching</li> <li>Added support for custom social card layouts</li> <li>Added support for custom social card background images</li> <li>Added support for selectable rangs in code blocks</li> <li>Added support for custom selectors for code annotations</li> <li>Added support for configurable log level in privacy plugin</li> <li>Added support for processing of external links in privacy plugin</li> <li>Added support for automatic image optimization via optimize plugin</li> <li>Added support for navigation paths (breadcrumbs)</li> <li>Fixed <a href="https://redirect.github.com/squidfunk/mkdocs-material/issues/8519">#8519</a>: Vector accents do not render when using KaTeX</li> </ul> <p>mkdocs-material-9.6.23 (2025-11-01)</p> <ul> <li>Updated Burmese translation</li> </ul> <p>mkdocs-material-9.6.22 (2025-10-15)</p> <ul> <li>Updated Georgian translation</li> </ul> <p>mkdocs-material-9.6.21 (2025-09-30)</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/3308731f1dce2e72809a2167d900b3381ca8d0d1"><code>3308731</code></a> Updated changelog</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/dba54f7be6532893f8acddc6b89aa3c6491b90de"><code>dba54f7</code></a> Fixed back-to-top button partial</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/7702610fd3f06ebcf4fd048b1839173926dd3290"><code>7702610</code></a> Updated blog posts</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/3815f607a56c7390f41ebc30f36fd46a0d121ae1"><code>3815f60</code></a> Documentation</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/b583ea7765ea770505cafea5c0ca931e12289ad1"><code>b583ea7</code></a> Prepare 9.7.0 release</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/764178b0121523f7d77bda77b9a024627d1884e7"><code>764178b</code></a> Merge Insiders features</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/9853cc3a10710e1ee8f641d32fe0cdc83a19673e"><code>9853cc3</code></a> Documentation</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/f31cfa535509e46d23c4bc22994d02f49ec74826"><code>f31cfa5</code></a> Removed documentation on sponsoring</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/a8b9ace30ae6f541314baac0e86dc7ba54aa2651"><code>a8b9ace</code></a> Fixed height of symbols for KaTeX inline rendering</li> <li><a href="https://github.com/squidfunk/mkdocs-material/commit/c0addd8addc34b38d3049b214265e2b3bd3fc8d3"><code>c0addd8</code></a> Updated blog post</li> <li>Additional commits viewable in <a href="https://github.com/squidfunk/mkdocs-material/compare/9.6.23...9.7.0">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
[//]: # (dependabot-start)⚠️ **Dependabot is rebasing this PR**⚠️ Rebasing might not happen immediately, so don't worry if this takes some time. Note: if you make any changes to this PR yourself, they will take precedence over the rebase. --- [//]: # (dependabot-end) Bumps [daft](https://github.com/Eventual-Inc/Daft) from 0.6.12 to 0.6.14. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Eventual-Inc/Daft/releases">daft's releases</a>.</em></p> <blockquote> <h2>v0.6.14</h2> <h2>What's Changed 🚀</h2> <h2>✨ Features</h2> <ul> <li>feat: embed text metrics <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5583">#5583</a>)</li> <li>feat: Add description and attributes to custom udf metrics <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5574">#5574</a>)</li> <li>feat(flotilla): Aggregate Completed Worker Metrics in StatsManager <a href="https://github.com/srilman"><code>@srilman</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5531">#5531</a>)</li> <li>feat: add amplification metric for explode operator in native runner <a href="https://github.com/samstokes"><code>@samstokes</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5565">#5565</a>)</li> </ul> <h2>🐛 Bug Fixes</h2> <ul> <li>fix: Fix empty dataframe <code>show</code> issue <a href="https://github.com/caican00"><code>@caican00</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5595">#5595</a>)</li> <li>fix: Fix openai test metrics fixture <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5593">#5593</a>)</li> <li>fix: resolve docgen disk space failures by removing unused tools <a href="https://github.com/ykdojo"><code>@ykdojo</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5589">#5589</a>)</li> <li>fix: fix imports in explode.rs <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5573">#5573</a>)</li> <li>fix: Add support for parsing STRUCT with parentheses syntax <a href="https://github.com/Lucas61000"><code>@Lucas61000</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5449">#5449</a>)</li> <li>fix: Dashboard Verbose Tracing Error <a href="https://github.com/srilman"><code>@srilman</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5567">#5567</a>)</li> <li>fix: Skip prompt metrics tests on ray runner <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5564">#5564</a>)</li> </ul> <h2>📖 Documentation</h2> <ul> <li>docs: Update AI functions usage patterns <a href="https://github.com/everettVT"><code>@everettVT</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5568">#5568</a>)</li> </ul> <h2>🔧 Maintenance</h2> <ul> <li>chore: Enrich and unify the UDF properties displayed in the query plan <a href="https://github.com/plotor"><code>@plotor</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5553">#5553</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Eventual-Inc/Daft/compare/v0.6.13...v0.6.14">https://github.com/Eventual-Inc/Daft/compare/v0.6.13...v0.6.14</a></p> <h2>v0.6.13</h2> <h2>What's Changed 🚀</h2> <h2>💥 Breaking Changes</h2> <ul> <li>refactor!: Remove support for creating File objects from bytes <a href="https://github.com/universalmind303"><code>@universalmind303</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5556">#5556</a>)</li> </ul> <h2>✨ Features</h2> <ul> <li>feat: Prompt metrics <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5549">#5549</a>)</li> <li>feat: Async udf metrics <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5541">#5541</a>)</li> <li>feat: Support specifying dimensions for text embedding <a href="https://github.com/samstokes"><code>@samstokes</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5543">#5543</a>)</li> <li>feat: support customized retries error message of S3 request <a href="https://github.com/stayrascal"><code>@stayrascal</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5447">#5447</a>)</li> <li>feat: UDF metrics <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5507">#5507</a>)</li> <li>feat: Support product <a href="https://github.com/luoyuxia"><code>@luoyuxia</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5515">#5515</a>)</li> <li>feat: OTEL Metrics from Swordfish <a href="https://github.com/srilman"><code>@srilman</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5454">#5454</a>)</li> <li>feat: add tos object source <a href="https://github.com/stayrascal"><code>@stayrascal</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5372">#5372</a>)</li> <li>feat: Bind the name of the running UDF to the UDFActor <a href="https://github.com/plotor"><code>@plotor</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5514">#5514</a>)</li> <li>feat: Support text documents in prompt <a href="https://github.com/colin-ho"><code>@colin-ho</code></a> (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5520">#5520</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Eventual-Inc/Daft/commit/ada1ef1c4718c3cf9cd64210b3cdef777e2c6f6d"><code>ada1ef1</code></a> chore: Enrich and unify the UDF properties displayed in the query plan (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5553">#5553</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/f49e3fa2a27c21c2fe3a873bc29e0c5e723806ef"><code>f49e3fa</code></a> fix: Fix empty dataframe <code>show</code> issue (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5595">#5595</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/f970a08afb2c4ca5c298a49c3eea25bc6b32be6c"><code>f970a08</code></a> fix: Fix openai test metrics fixture (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5593">#5593</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/b718d70bdf1e53ed0a4a7729fc0466fc4c680690"><code>b718d70</code></a> feat: embed text metrics (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5583">#5583</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/2cd85a9913ea0cba74a78e8c26e7875e4a9687c4"><code>2cd85a9</code></a> fix: resolve docgen disk space failures by removing unused tools (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5589">#5589</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/6159f1f14340157fa7e286e41a22c2f299ea5627"><code>6159f1f</code></a> feat: Add description and attributes to custom udf metrics (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5574">#5574</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/d9d4a4e3a6f4a4ce9469c3e9ac4d26dee58d0fa7"><code>d9d4a4e</code></a> fix: fix imports in explode.rs (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5573">#5573</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/47c6f102522a45af8f9e3ca5eec5ed9a426a2aa6"><code>47c6f10</code></a> feat(flotilla): Aggregate Completed Worker Metrics in StatsManager (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5531">#5531</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/d14777c95468eddb35821660362495b0e95c4b1e"><code>d14777c</code></a> docs: Update AI functions usage patterns (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5568">#5568</a>)</li> <li><a href="https://github.com/Eventual-Inc/Daft/commit/e3af26d7c07b7eb3f26b710239d41380c0a69da1"><code>e3af26d</code></a> feat: add amplification metric for explode operator in native runner (<a href="https://redirect.github.com/Eventual-Inc/Daft/issues/5565">#5565</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Eventual-Inc/Daft/compare/v0.6.12...v0.6.14">compare view</a></li> </ul> </details> <br /> [](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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
<!-- Thanks for opening a pull request! --> Part of apache#2700 <!-- In the case this PR will resolve an issue, please replace ${GITHUB_ISSUE_ID} below with the actual Github issue id. --> <!-- Closes #${GITHUB_ISSUE_ID} --> # Rationale for this change This removes the exception for UP035 from Ruff. ## Are these changes tested? No-op. ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. -->
# Rationale for this change Follow up on apache#2750 ## Are these changes tested? ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. -->
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Similar to apache/iceberg-rust#1855
Add instructions to cleanup testpypi for `pyiceberg` in case of reaching
TestPyPI storage limits
## Are these changes tested?
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
Closes apache#2776 # Rationale for this change This PR removes the unused `start` and `length` fields from the `FileScanTask`. While working on the models for rest scanning in apache#2775 we noticed that these fields were initialized but never accessed or used anywhere in the code base. ## Are these changes tested? ``` > make test ... 3023 passed, 1392 deselected in 30.39s ``` ## Are there any user-facing changes? no
related to apache#2775 # Rationale for this change This PR aligns the `AlwaysTrue` and `AlwaysFalse` expression serialization to use the boolean primitives `true`/`false` instead of string representation, matching the Iceberg [ExpressionParser](https://github.com/apache/iceberg/blob/main/core/src/main/java/org/apache/iceberg/expressions/ExpressionParser.java#L101-L108). I know the spec defines the true/false expressions as string but today we can't hit the scan planning client endpoint following these models. I know the spec defines the true/false expressions as a string representation, but currently we can't successfully use the scan planning client endpoint with those models. Java's actual implementation serializes these as boolean literals. For instance, with what we have today we would throw an illegal argument exception: ``` { "snapshot-id": 2540284336700708540, "filter": "true", "case-sensitive": true } ``` Throws: `java.lang.IllegalArgumentException: argument "content" is null` But, this works just fine (notice no quotes): ``` { "snapshot-id": 2540284336700708540, "filter": true, "case-sensitive": true } ``` ## Are these changes tested? Yes ## Are there any user-facing changes? No, this only affects the JSON serialization format to match Java Cores behavior.
…e#2768) # Rationale for this change This PR adds `pyarrow-stubs` to the project's development dependencies which provide suggestions and parameter hints, speeding up development. ## Are these changes tested? Tested the type hint ## Are there any user-facing changes? No. This is strictly a development dependency and does not affect the runtime package distributed to users.
Related to apache#2775 # Rationale for this change Update the Set Expression serialization to align with the REST spec. Today, the set expression literals are serialized under items, instead of values. For instance: ```json { "term": "foo", "type": "not-in", "items": [ 1, 2, 3 ] } ``` When it should be: ```json { "term": "foo", "type": "not-in", "values": [ 1, 2, 3 ] } ``` **Rest ref**: https://github.com/apache/iceberg/blob/47d5f5009eafbbb526e6e2c9cbeac3105bf34670/open-api/rest-catalog-open-api.yaml#L2353 **Expression ref**: https://github.com/apache/iceberg/blob/d19e3ff07653167d902865281601a5da4e2f2def/core/src/main/java/org/apache/iceberg/expressions/ExpressionParser.java#L189-L192 ## Are these changes tested? Yes ## Are there any user-facing changes? only serialization, and initialization stays the same.
Related to: apache#2518, apache#2775 # Rationale for this change This work was done by @Aniketsy, I just opened this to get the tests passing, and we can merge for scan planning. But, this PR allows `And` expressions to be deserialized from JSON through Pydantic. This PR aligns the `And` expression with the `Or`/`Not` pattern by adding `IcebergBaseModel` as an inherited class. This gets teh And expression into a proven serializable state, preparing it for the full expression tree [de]serializability work in apache#2783. ## Are these changes tested? Yes added a test and ensure that they align with EpressionParser in Iceberg Java ## Are there any user-facing changes? No this is just serialization cc: @kevinjqliu @Fokko --------- Co-authored-by: Aniket Singh Yadav <singhyadavaniket43@gmail.com>
# Rationale for this change Iceberg spec expects `iceberg.required` attribute in addition to `iceberg.id`: > The column IDs must be stored in ORC type attributes using the key `iceberg.id`, and `iceberg.required` to store "true" if the Iceberg column is required, otherwise it will be optional. https://iceberg.apache.org/spec/#orc Fixes apache#2526 ## Are these changes tested? Yes ## Are there any user-facing changes? <!-- In the case of user-facing changes, please add the changelog label. -->
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Previous use of `del_branch_on_merge`
```
github:
del_branch_on_merge: true
```
is deprecated,
https://github.com/apache/infrastructure-asfyaml?tab=readme-ov-file#delete-branch-on-merge
New way is to
```
github:
pull_requests:
del_branch_on_merge: true
```
https://github.com/apache/infrastructure-asfyaml?tab=readme-ov-file#pull_requests
## Are these changes tested?
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
## Are these changes tested?
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label.
-->
<!--
Thanks for opening a pull request!
-->
<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->
# Rationale for this change
Following with the Java
[solution](https://github.com/apache/iceberg/pull/11868/files)
implementation on how to read partition specs when a source field was
dropped.
# Are these changes tested?
Yes, added one integration tests, and one unit test
# Are there any user-facing changes?
No
<!-- In the case of user-facing changes, please add the changelog label.
-->
Summary of ChangesHello @kevinjqliu, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request introduces a significant internal cleanup and modernization effort across the Highlights
Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request introduces a wide range of improvements, including a significant refactoring of the expressions module to better integrate with Pydantic, modernization of type hints across the codebase to use modern syntax (e.g., list instead of List), and updates to dependencies. It also includes bug fixes, such as handling dropped source fields in partition specs, and new features like adding the iceberg.required property to ORC metadata. Overall, these are excellent changes that improve code quality and maintainability. However, there is a critical issue in pyproject.toml where pyiceberg-core has been removed from several optional dependencies, which will break installations for those extras. This needs to be addressed before merging.
| pandas = [ | ||
| "pyarrow>=17.0.0", | ||
| "pyiceberg-core>=0.5.1,<0.8.0", | ||
| "pandas>=1.0.0,<3.0.0", | ||
| "pyarrow>=17.0.0", | ||
| ] | ||
| duckdb = [ | ||
| "pyarrow>=17.0.0", | ||
| "pyiceberg-core>=0.5.1,<0.8.0", | ||
| "duckdb>=0.5.0,<2.0.0", | ||
| "pyarrow>=17.0.0", | ||
| ] | ||
| ray = [ | ||
| "pyarrow>=17.0.0", | ||
| "pyiceberg-core>=0.5.1,<0.8.0", | ||
| "ray>=2.10.0,<=2.44.0", | ||
| "pyarrow>=17.0.0", | ||
| "pandas>=1.0.0,<3.0.0", | ||
| ] |
There was a problem hiding this comment.
The pyiceberg-core dependency has been removed from the pandas, duckdb, and ray extras. This will break installations for users who rely on these extras, as pyiceberg-core is a required dependency for pyiceberg to function.
It seems the intention might be to have these extras implicitly depend on the pyarrow extra, which includes pyiceberg-core. However, pip does not support extras depending on other extras directly.
To fix this, pyiceberg-core should be added back to these extras, or, preferably, added to the main [project.dependencies] list since it's a core dependency.
| pandas = [ | |
| "pyarrow>=17.0.0", | |
| "pyiceberg-core>=0.5.1,<0.8.0", | |
| "pandas>=1.0.0,<3.0.0", | |
| "pyarrow>=17.0.0", | |
| ] | |
| duckdb = [ | |
| "pyarrow>=17.0.0", | |
| "pyiceberg-core>=0.5.1,<0.8.0", | |
| "duckdb>=0.5.0,<2.0.0", | |
| "pyarrow>=17.0.0", | |
| ] | |
| ray = [ | |
| "pyarrow>=17.0.0", | |
| "pyiceberg-core>=0.5.1,<0.8.0", | |
| "ray>=2.10.0,<=2.44.0", | |
| "pyarrow>=17.0.0", | |
| "pandas>=1.0.0,<3.0.0", | |
| ] | |
| pandas = [ | |
| "pandas>=1.0.0,<3.0.0", | |
| "pyarrow>=17.0.0", | |
| "pyiceberg-core>=0.5.1,<0.8.0", | |
| ] | |
| duckdb = [ | |
| "duckdb>=0.5.0,<2.0.0", | |
| "pyarrow>=17.0.0", | |
| "pyiceberg-core>=0.5.1,<0.8.0", | |
| ] | |
| ray = [ | |
| "ray>=2.10.0,<=2.44.0", | |
| "pyarrow>=17.0.0", | |
| "pandas>=1.0.0,<3.0.0", | |
| "pyiceberg-core>=0.5.1,<0.8.0", | |
| ] |
| if source_field := schema_ids.get(field.source_id): | ||
| result_type = field.transform.result_type(source_field.field_type) | ||
| nested_fields.append(NestedField(field.field_id, field.name, result_type, required=source_field.required)) | ||
| else: | ||
| # Since the source field has been drop we cannot determine the type | ||
| nested_fields.append(NestedField(field.field_id, field.name, UnknownType())) |
There was a problem hiding this comment.
This is a great improvement to handle cases where a partition field's source column has been dropped. Using UnknownType is a sensible fallback. However, the required attribute for the NestedField is not set when the source field is missing. It would be safer to default to required=False in this case, as we cannot determine the original requirement. This would prevent potential issues with consumers of the partition type schema that might assume a default required value.
# Since the source field has been drop we cannot determine the type
nested_fields.append(NestedField(field.field_id, field.name, UnknownType(), required=False))
Rationale for this change
Are these changes tested?
Are there any user-facing changes?