Skip to content

fix(deps): update python: non-major updates - #339

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/python-non-major
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/python-non-major

Conversation

@renovate

@renovate renovate Bot commented Aug 23, 2026 •

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change OpenSSF Age Confidence
gitpython project.dependencies patch ==3.1.59 → ==3.1.62 OpenSSF Scorecard age confidence
gliner project.dependencies patch ==0.2.28 → ==0.2.29 OpenSSF Scorecard age confidence
gradio project.dependencies minor ==6.25.0 → ==6.28.0 OpenSSF Scorecard age confidence
huggingface-hub project.dependencies minor ==1.28.0 → ==1.33.0 OpenSSF Scorecard age confidence
onnxruntime project.dependencies minor ==1.29.0 → ==1.30.0 age confidence
ruff (source, changelog) dependency-groups patch ==0.16.4 → ==0.16.9 OpenSSF Scorecard age confidence
torch tool.uv.sources minor ==2.13.0 → ==2.14.0+cpu age confidence
ty (changelog) dependency-groups patch ==0.0.74 → ==0.0.84 OpenSSF Scorecard age confidence
uvicorn (changelog) project.dependencies minor ==0.52.4 → ==0.54.0 OpenSSF Scorecard age confidence

Release Notes

gitpython-developers/GitPython (gitpython)

v3.1.62

Compare Source

What's Changed

New Contributors

Full Changelog: gitpython-developers/GitPython@3.1.61...3.1.62

v3.1.61

Compare Source

Fix accidental removal of exploitable regex in Actor by bringing it back, and deprecating it.

What's Changed
New Contributors

Full Changelog: gitpython-developers/GitPython@3.1.60...3.1.61

v3.1.60: Security

Compare Source

What's Changed

Full Changelog: gitpython-developers/GitPython@3.1.59...3.1.60

urchade/GLiNER (gliner)

v0.2.29

Compare Source

GLiNER v0.2.29 — OpenVINO, label descriptions, and contextual embeddings

This release expands deployment options, adds richer inference outputs, and fixes issues across batching, fine-tuning, evaluation, and offline model loading.

New capabilities

  • OpenVINO support: Export supported PyTorch models directly to OpenVINO IR and select OpenVINO or ONNX Runtime through GLiNER.from_pretrained, while retaining GLiNER’s familiar prediction API. [#​385](#​385)
  • Label descriptions: Pass a {label: description} dictionary to inference or serving. Descriptions become model prompts, while predictions retain your label names. Separate label dictionaries per input text are also supported. [#​386](#​386)
  • Contextual embeddings: Request entity, relation, and matched-label representations using return_vectors=True and return_label_vectors=True for downstream processing. [#​386](https://redirect.github.com/urchade/GLiNER/pull/386/files)
  • Additional training objectives: Add span-level Dice loss and optional weighting of positive spans by their width. [#​361](#​361)

Fixes and improvements

  • Fix crashes and incorrect label assignments when batching texts with different label sets. [#​384](#​384)
  • Fix training on negative examples with no annotated entities. [#​387](#​387)
  • Fix best-checkpoint restoration and resuming training from native GLiNER checkpoints. [#​389](#​389)
  • Fix relation-extraction evaluation by forwarding relation types and handling entity representations correctly. [#​380](#​380)
  • Improve offline loading by propagating local_files_only through model initialization and saving/loading auxiliary tokenizers locally. [#​391](#​391)
  • Separate optional runtime dependencies and preserve warmup_ratio compatibility with newer Transformers versions. [#​388](#​388)
  • Refresh fine-tuning and ONNX conversion notebooks. [#​390](#​390)

Upgrade notes

  • Install gliner[onnx] for CPU ONNX Runtime, gliner[gpu] for GPU ONNX Runtime, or gliner[openvino] for OpenVINO. Install the separate onnx package when exporting to ONNX.
  • Vector outputs require native PyTorch inference; ONNX, OpenVINO, and stateful streaming sessions do not currently return them.
  • OpenVINO and ONNX export support span/token uni-encoders, bi-encoders, and relation-extraction models. Generative-decoder and streaming-span architectures require PyTorch.
  • Descriptive prompts are intended for models trained to use descriptive labels.
gradio-app/gradio (gradio)

v6.28.0

Compare Source

Features
  • #​13840 aab9fcf - workflow: add styling to input nodes. Thanks @​hannahblair!
  • #​13836 abf6825 - workflow: add pending node UI. Thanks @​hannahblair!
  • #​13573 5ab610f - workflow: add getting started templates. Thanks @​hannahblair!
  • #​13850 cb0cdac - Add keyword arguments for event inputs. Thanks @​abidlabs!
  • #​13851 afffecc - Add configurable tab overflow and alignment. Thanks @​abidlabs!
  • #​13843 8193f16 - Speed up multipage app navigation. Thanks @​abidlabs!
  • #​13862 3353446 - Expose live camera and slider position to event handlers. Thanks @​abidlabs!/n camera_position on gr.Model3D and slider_position on gr.ImageSlider now follow the user, so a function whose parameter is annotated with the component reads the view that is actually on screen. Both can still be set from the backend to move the camera or the divider./n Also fixes, in the same area:/n - camera_position is applied on load for display_mode="point_cloud" and display_mode="wireframe", not only for "solid"./n - camera_position is applied to interactive (uploadable) gr.Model3D, and slider_position to interactive gr.ImageSlider; both previously ignored it./n - pan_speed is passed through to the gr.Model3D viewer; it was silently stuck at its default./n - A Model3D camera observer was added on every camera update without ever being removed; exactly one is now registered, and it is cleaned up with the component.
Fixes

v6.27.0

Compare Source

Features
Fixes

v6.26.0

Compare Source

Features
Fixes
huggingface/huggingface_hub (huggingface-hub)

v1.33.0: [v1.33.0] Better UX on large uploads and simpler skills installs

Compare Source

📤 See progress while large Xet uploads validate

Very large Xet uploads used to sit silently between "Uploading" and "Committing" while shards were being finalized, which could take a long time with no feedback. The upload live display now shows a dedicated Validating bar — reported as a percentage instead of opaque internal validation-entry counts — both in the upload_folder display and in XetUploadProgressReporter (used by upload_file, create_commit and bucket uploads). This requires hf-xet>=1.6.0.

🧩 Skills are now installed for every agent by default

hf skills add no longer requires a special flag for Claude Code. The skill is now always installed to .agents/skills (or ~/.agents/skills with -g) and symlinked into .claude/skills (honoring CLAUDE_CONFIG_DIR when set), so a single command covers Claude Code, Codex, Cursor, OpenCode, Pi and any other agent that loads skills from .agents/skills. The --claude flag is deprecated: it still works as a no-op but prints a warning, and --dest keeps installing only to the directory you provide. hf skills update refreshes both roots the same way. Along the way, CLAUDE_CONFIG_DIR is now properly honored everywhere (it was previously ignored, which left skills invisible to relocated Claude Code installs).

# works with Claude Code, Codex, Cursor, OpenCode, Pi and any agent that loads skills from `.agents/skills`
hf skills add

📚 Documentation: CLI guide

💔 Breaking Change

  • Send PrivateLink config under privateService in create_inference_endpoint by @​co42 in #​4966
    • AWS PrivateLink settings are now sent as privateService.accountId and privateService.region. Use the new private_link_account_id and private_link_region parameters (the region is required when the account ID is set, and is independent of the compute region). The legacy account_id keyword still exists but is ignored and emits a FutureWarning; it is no longer included as a top-level payload field.

🖥️ CLI

  • [CLI] Honor --format / --json / -q on jobs run commands by @​Wauplin in #​4936 — docs
    • These flags previously leaked into the container command on hf jobs run, hf jobs uv run and their scheduled variants (--format became the script path, -q became the image name). They are now consumed wherever they appear; use -- when your script needs them.
  • [CLI] Allow bucket as a watched item type in hf webhooks create --watch by @​davanstrien in #​4958 — docs

📖 Documentation

🐛 Bug and typo fixes

🏗️ Internal

v1.32.0: [v1.32.0] Shared blob store, sandbox security hardening and faster imports

Compare Source

📂 [Cache] Shared blob store: deduplicate Xet files across repos

The cache now deduplicates Xet files across repos. A Xet file downloaded through hf_xet is stored once at <CACHE_DIR>/blobs/<prefix>/<xet_hash> and every repo that needs it gets a relative symlink instead of a download: no bytes are transferred and no extra space is used, even across different repos — or after the repo that first downloaded the file was deleted. The per-repo snapshot layout is unchanged, older clients keep reading and downloading normally, and any failure to share silently falls back to regular repo-local storage. Set HF_HUB_DISABLE_SHARED_BLOBS=1 to opt out entirely. Shared files carry a <xet_hash>.refs manifest listing the repo blobs referencing them, which hf cache rm consults on deletion and hf cache prune sweeps to reclaim payloads that no cached repo uses anymore.

📚 Documentation: Manage your cache

💻 [Jobs] Ship config inside UV scripts

A UV script that only runs correctly on a specific runtime can now carry that runtime with it. An optional [tool.hf-jobs] table in the script's PEP 723 header accepts image, flavor, python, timeout, name, namespace, env, secrets, labels, volumes, network_group and network_aliases, and hf jobs uv run reads it at submit time. CLI flags always win, and env/secrets/labels/volumes merge entry by entry instead of being replaced, so -e/-v add to what the script declares. Typos and unknown keys are rejected with the list of valid options, secrets are passed by name only (values come from your environment), and every run prints a config summary with script-sourced values marked and secrets redacted. Note that the table is read by the CLI only: run_uv_job() and create_scheduled_uv_job() ignore it.

# /// script
# requires-python = ">=3.11"

# dependencies = ["vllm", "datasets"]
#

# [tool.hf-jobs]
# image   = "vllm/vllm-openai:unlimited-ocr"

# flavor  = "l4x1"
# python  = "/usr/bin/python3"

# secrets = ["HF_TOKEN"]
# ///

📚 Documentation: Run and manage Jobs

  • [CLI] Read a UV script's [tool.hf-jobs] launch config (opus-generated) by @​Wauplin in #​4598

🛡️ [Sandbox] security hardening

An internal security review of the Sandbox API resulted in a 9-PR hardening series. Pooled sandboxes now use their own per-sandbox capability token instead of the host-wide credential, pool hosts are fully validated (initiator, namespace, image, flavor, command, URL) before any credential is sent to them, the sbx-server binary is pinned by digest and verified before being run as PID 1, and the local pool cache is bound to the endpoint, credential and namespace that wrote it. Secret values no longer end up in argv when using hf sandbox exec --secrets, background processes are addressed by their server-assigned id (so kill() actually stops them and reports honestly), transfers and command output are bounded to avoid unbounded memory usage in the client, and pool ownership is decided per host so a with SandboxPool(...) block never again tears down a colleague's discovered host. The security documentation was also rewritten to state precisely what the sandbox contract is — and what it is not — including a new "Known limitations" section.

📚 Documentation: Sandboxes

  • [sandbox audit] Make the sandbox security contract match the implementation by @​Wauplin in #​4831
  • [sandbox audit] Use each pooled sandbox's own capability token by @​Wauplin in #​4832
  • [sandbox audit] Validate a pool host before sending it a credential by @​Wauplin in #​4834
  • [sandbox audit] Bind the sandbox pool cache to the endpoint, credential and namespace that wrote it by @​Wauplin in #​4838
  • [sandbox audit] Bound what a transfer or a command's output costs the client by @​Wauplin in #​4839
  • [sandbox audit] Decide host teardown per host, and report it honestly by @​Wauplin in #​4840
  • [sandbox audit] Address background processes by their server-assigned id by @​Wauplin in #​4836
  • [sandbox audit] Pin the sandbox server binary by digest and verify it before running it by @​Wauplin in #​4837
  • [sandbox audit] Keep secret values out of argv in the CLI and fix the env/secrets docs by @​Wauplin in #​4835

🔒 Security hardening for serialization and validation

Three changes make the library safer against malicious or malformed inputs, with a stricter behavior worth noting. Torch checkpoint deserialization was hardened across 11 reported vulnerabilities: load_state_dict_from_file now defaults to safe=True (always using the safetensors loader), the pickle path defaults to weights_only=True, and unsafe combinations raise explicit errors instead of silently falling through. Path validation now rejects .. segments anywhere in path_in_repo (previously only a leading one was caught), so uploads like "a/../../etc/passwd" are refused. Finally, repo_id validation is restricted to ASCII word characters as documented, so non-ASCII ids like café are rejected client-side instead of failing later on the Hub.

🧰 Smarter cache management

hf cache rm accepts hf:// file URIs, so you can remove a single cached file — typically one GGUF quantization — without deleting the whole repo. The file is removed from every cached revision, and its blob is deleted only if no other cached file still references it. hf cache commands also support kernel repos: scan_cache_dir() used to treat kernels--* folders as corrupted and skip them, but kernel repos now show up in hf cache ls, rm and prune, and --repo-type kernel works for hf download and hf cache verify.

hf cache rm hf://models/unsloth/gemma-3-27b-it-GGUF/gemma-3-27b-it-Q4_K_M.gguf --dry-run
hf download kernels-community/activation README.md --repo-type kernel

📚 Documentation: Manage your cache

🚀 Faster imports

huggingface_hub now imports much faster: huggingface_hub.utils is lazy like the root package, heavy HfApi implementation imports and optional Torch/TensorBoard/NumPy/FastAPI/Starlette dependencies are deferred until used, and CLI commands are registered lazily while hf --help still renders the same complete output. Benchmark medians on Python 3.10: from huggingface_hub import * drops from 2.36s to 0.39s (626.8 → 49.6 MiB peak RSS), hf version from 0.37s to 0.17s, and hf env from 0.40s to 0.24s.

🖥️ CLI

🤖 Inference

📊 Jobs

🔧 Other QoL Improvements

🐛 Bug and typo fixes

📖 Documentation

🏗️ Internal

v1.31.0: [v1.31.0] Custom labels for Sandboxes, More resilient downloads and more

Compare Source

🏷️ Custom labels for Sandboxes

Dedicated sandboxes now accept custom labels, attached to the underlying Job. This is useful for cost attribution, bookkeeping, or finding and reconnecting to the sandboxes created by a given controller run. Labels use the same -l / --label KEY=VALUE syntax as hf jobs run. They are merged with the labels the SDK uses internally, and invalid or reserved labels are rejected before a billable Job is started. Pool-based sandboxes are unchanged: custom labels are only accepted for dedicated sandboxes.

>>> from huggingface_hub import Sandbox
>>> sandbox = Sandbox.create(image="python:3.12", labels={"controller-run": "run-42"})
hf sandbox create --label controller-run=run-42 --label team=data-infra

📥 More resilient downloads

A batch of fixes makes downloads more robust to unusual server responses, network hiccups and concurrent usage:

  • A timeout while waiting for the response headers of a streamed download is now retried and resumed like a body read failure, instead of escaping http_get() while retries remain.

  • Regular HTTP downloads no longer fail when the HEAD response has no Content-Length. The file size is validated against the GET response when available.

  • snapshot_download now writes the refs/ cache file atomically, reusing the logic already used by hf_hub_download. This fixes a long-standing race when many concurrent snapshot_download calls target the same repo (seen in vLLM / llm-compressor).

  • hf download --dry-run --local-dir ... no longer copies files from the Hub cache into the destination. On large files and slow disks this looked like a hang and could leave an incomplete file behind.

  • [Download] Share retry handling for stream entry and body failures by @​Wauplin in #​4826

  • [Download] Tolerate missing HEAD Content-Length by @​Wauplin in #​4805

  • [Download] Write cache ref file atomically in snapshot_download by @​Wauplin in #​4829

  • [Download] Prevent cached file copies during local-dir dry runs by @​wakamex in #​4817

🔌 httpx re-exported for library integrators

huggingface_hub now re-exports the HTTP library it uses as huggingface_hub.utils.httpx. Libraries built on top of huggingface_hub that need httpx types or exceptions (typically to catch errors) should import it from there rather than importing httpx directly. v1.x is built on httpx, and v2.x will move to its successor httpx2, so importing through huggingface_hub.utils keeps your code compatible with both. This is only for types and exceptions: to make requests to the Hub, keep using get_session().

from huggingface_hub.utils import httpx

try:
    ...
except httpx.HTTPError:
    ...

📚 Documentation: Utilities — The httpx module

🔒 Security

HfFileSystem.get() now validates remote filenames before writing anything locally. A server-side filename such as folder/..\..\outside.txt could previously escape the destination directory on Windows during a recursive download. The same check already protected hf_hub_download, snapshot_download and bucket sync. Unsafe filenames now raise ValueError on all platforms, including when downloading to an explicitly named file or a file object.

🖥️ CLI

  • [CLI] Fix hf buckets rm --recursive deleting lexical siblings of the prefix: removing logs/ no longer touches logs_root.txt by @​Wauplin in #​4804
  • [CLI] Don't let hf update self-upgrade a pip install on Windows: it now prints the pip install -U command to run instead of leaving a broken install by @​Wauplin in #​4823
  • [CLI] Raise explicit error for shell-script extensions on Windows by @​hanouticelina in #​4846
  • [CLI] Fix truncated command descriptions in the CLI reference by @​hanouticelina in #​4849

🐛 Bug and typo fixes

❗ Important

✂ PR body was truncated to here.


Configuration

📅 Schedule: (in timezone Europe/Berlin)

  • Branch creation
    • Between 12:00 AM and 03:59 AM, only on Monday (* 0-3 * * 1)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added lifecycle Update or deprecate something renovate labels Aug 23, 2026
@renovate
renovate Bot requested a review from freinold August 23, 2026 22:50
@renovate renovate Bot added lifecycle Update or deprecate something renovate labels Aug 23, 2026
@renovate
renovate Bot force-pushed the renovate/python-non-major branch from 3124628 to 1ea7fff Compare August 25, 2026 17:10
@renovate renovate Bot changed the title fix(deps): update dependency gitpython to v3.1.59 fix(deps): update python: non-major updates Aug 25, 2026
@renovate
renovate Bot force-pushed the renovate/python-non-major branch 8 times, most recently from 4f65f2f to 25993b6 Compare September 1, 2026 02:50
@renovate
renovate Bot force-pushed the renovate/python-non-major branch 9 times, most recently from cfb53b8 to aeb62ba Compare September 9, 2026 19:44
@renovate
renovate Bot force-pushed the renovate/python-non-major branch from aeb62ba to 9915f5b Compare September 10, 2026 01:42
@coderabbitai

coderabbitai Bot commented Sep 10, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 93ec9feb-29fc-49bc-8949-dfb4faa71f34

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@renovate
renovate Bot force-pushed the renovate/python-non-major branch 4 times, most recently from 9856072 to 539d9c8 Compare September 14, 2026 10:09
@renovate
renovate Bot force-pushed the renovate/python-non-major branch 5 times, most recently from fd965f5 to ccb242f Compare September 22, 2026 02:46
@renovate
renovate Bot force-pushed the renovate/python-non-major branch from ccb242f to 125ec06 Compare September 24, 2026 20:28
@renovate
renovate Bot force-pushed the renovate/python-non-major branch from 125ec06 to a31df81 Compare September 25, 2026 11:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lifecycle Update or deprecate something renovate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants