Skip to content

Releases: huggingface/huggingface_hub

[v1.10.1] Fix copy file to folder

09 Apr 15:05

Choose a tag to compare

  • Fix copy file to folder (#4075)
  • [CLI ]Improving a bit hf CLI discoverability (#4079)
  • Support kernels in list_liked_repos (#4078)

Full Changelog: v1.10.0...v1.10.1

[v1.10.0] Instant file copy and new Kernel repo type

09 Apr 12:30

Choose a tag to compare

📁 Instant file copy between Buckets and Repositories

This release introduces server-side file copy operations that let you move data between Hugging Face storage without downloading and re-uploading. You can now copy files from one Bucket to another, from a repository (model, dataset, or Space) to a Bucket, or between Buckets — all without bandwidth costs. Files tracked with Xet are copied directly by hash (no data transfer), while small text files not tracked with Xet are automatically downloaded and re-uploaded.

>>> from huggingface_hub import copy_files

# Bucket to bucket (same or different bucket)
>>> copy_files(
...     "hf://buckets/username/source-bucket/checkpoints/model.safetensors",
...     "hf://buckets/username/destination-bucket/archive/model.safetensors",
... )

# Repo to bucket
>>> copy_files(
...     "hf://datasets/username/my-dataset/processed/",
...     "hf://buckets/username/my-bucket/datasets/processed/",
... )

The same capability is available in the CLI:

# Bucket to bucket
>>> hf buckets cp hf://buckets/username/source-bucket/logs/ hf://buckets/username/archives/logs/

# Repo to bucket
>>> hf buckets cp hf://datasets/username/my-dataset/data/train/ hf://buckets/username/my-bucket/datasets/train/

Note that copying files from a Bucket to a Repository is not yet supported.

📚 Documentation: Buckets guide

⚛️ Introducing Kernel repositories

Tip

For building, publishing, and using kernel repos, please use the dedicated kernels package.

The Hub now supports a new kernel repository type for hosting compute kernels. This release adds first-class (but explicitly limited) support for interacting with kernel repos via the Python API. Only a subset of methods are officially supported: kernel_info, hf_hub_download, snapshot_download, list_repo_refs, list_repo_files, and list_repo_tree. Creation and deletion are also supported but restricted to a small subset of allowed users and organizations on the Hub.

>>> from huggingface_hub import kernel_info
>>> kernel_info("kernels-community/yoso")
KernelInfo(id='kernels-community/yoso', author='kernels-community', downloads=0, gated=False, last_modified=datetime.datetime(2026, 4, 3, 22, 27, 25, tzinfo=datetime.timezone.utc), likes=0, private=False)

📚 Documentation: Repository guide

📖 Documentation

🐛 Bug and typo fixes

🏗️ Internal

[v1.9.2] Fix set_space_volume / delete_space_volume return types

08 Apr 08:44

Choose a tag to compare

Full Changelog: v1.9.1...v1.9.2

[v1.9.1] Fix: `set_space_volumes` sending bare array instead of object

07 Apr 13:50

Choose a tag to compare

Full Changelog: v1.9.0...v1.9.1

[v1.9.0] Agent-Aware CLI, Spaces Volumes, and more

02 Apr 15:59

Choose a tag to compare

🚀 Spaces Volumes: Mount Models, Datasets, and Buckets Directly

Hugging Face Spaces now support mounting volumes, giving your Space direct filesystem access to models, datasets, and storage buckets. This replaces the deprecated persistent storage feature.

from huggingface_hub import HfApi, Volume

api = HfApi()
api.set_space_volumes(
    repo_id="username/my-space",
    volumes=[
        Volume(type="model", source="username/my-model", mount_path="/models", read_only=True),
        Volume(type="bucket", source="username/my-bucket", mount_path="/data"),
    ],
)

Volumes can also be set at creation time via create_repo(space_volumes=...) and duplicate_repo(space_volumes=...), and from the CLI with the --volume / -v flag:

# Create a Space with volumes mounted
hf repos create my-space --type space --space-sdk gradio \
    -v hf://gpt2:/models -v hf://buckets/org/b:/data

# Duplicate a Space with volumes
hf repos duplicate org/my-space my-space --type space \
    -v hf://gpt2:/models -v hf://buckets/org/b:/data

🤖 The hf CLI Now Auto-Detects AI Agents and Adapts Its Output

AI coding agents (Claude Code, Cursor, Codex, Copilot, Gemini, ...) increasingly use the hf CLI to interact with the Hub. Until now, the output was designed for humans - ANSI colors, padded tables, emoji booleans, truncated cells - making it hard for agents to parse reliably.

Starting with v1.9, the CLI automatically detects when it's running inside an agent and adapts its output: no ANSI, no truncation, tab-separated tables, compact JSON, full timestamps. No configuration needed - it just works. This is only a first step toward making the hf CLI the primary entry point to the Hugging Face Hub for AI agents!

Agent mode is auto-detected but you can also force a mode explicitly with --format:

hf models ls --limit 5                  # auto-detect
hf models ls --limit 5 --format agent   # force agent-friendly output
hf models ls --limit 5 --format json    # structured JSON
hf models ls --limit 5 --format quiet   # IDs only, great for piping

Here's what an agent sees compared to a human:

hf auth whoami

# Human
✓ Logged in
  user: Wauplin
  orgs: huggingface, awesome-org

# Agent
user=Wauplin orgs=huggingface,awesome-org

# JSON
{"user": "Wauplin", "orgs": ["huggingface", "awesome-org"]}

hf models ls --author google --limit 3

# Human
ID                         DOWNLOADS TRENDING_SCORE
-------------------------- --------- --------------
google/embeddinggemma-300m 1213145   17            
google/gemma-3-4b-it       1512637   16            
google/gemma-3-27b-it      988618    12   

# Agent (TSV, no truncation, no ANSI)
id      downloads       trending_score
google/embeddinggemma-300m      1213145 17
google/gemma-3-4b-it    1512637 16
google/gemma-3-27b-it   988618  12

hf models info google/gemma-3-27b-it

# Human — pretty-printed JSON (indent=2)
{
  "id": "google/gemma-3-27b-it",
  "author": "google",
  ...
}

# Agent — compact JSON (~40% fewer tokens)
{"id": "google/gemma-3-27b-it", "author": "google", "card_data": ...}

Commands migrated so far: hf models ls|info, hf datasets ls|info|parquet|sql, hf spaces ls|info, hf papers ls|search|info, hf auth whoami. More commands will be migrated soon

🧩 Install Agent Skills from the Hugging Face Marketplace

The hf skills add command now supports installing skills directly from the Hugging Face skills marketplace (https://github.com/huggingface/skills) - pre-built tools that give AI agents new capabilities.

# Install a marketplace skill
hf skills add gradio

# Install with Claude Code integration
hf skills add huggingface-gradio --claude

# Upgrade all installed skills
hf skills upgrade

🔧 More CLI Improvements

🔧 Other Improvements

  • Clarify 404 access guidance in errors by @Pierrci in #4010
  • Add HF_HUB_DISABLE_SYMLINKS env variable to force no-symlink cache by @Wauplin in #4032
  • Add CACHEDIR.TAG to cache directories by @Wauplin in #4030
  • Support None type in strict dataclass by @Wauplin in #3987
  • Reject bool/int cross-type confusion in @strict dataclass validation by @Wauplin in #3992

🐛 Bug Fixes

📖 Documentation

  • Add tip about AI agents skill to CLI guide by @gary149 in #3970
  • Link to Hub local cache docs from manage-cache guide by @Wauplin in #3989
  • Note that environment variables are read at import time by @Wauplin in #3990
  • Add DatasetLeaderboardEntry and EvalResultEntry to docs reference by @pcuenca in #3982
  • Fix typos and outdated references in CONTRIBUTING.md by @GopalGB in #4009
  • no explicit models/ in hf:// protocol by @lhoestq in #3980
  • Add CLAUDE.md symlink pointing to AGENTS.md by @hanouticelina in #4013

🏗️ Internal

[v1.8.0] Mounted volumes on Jobs, complete papers CLI, and more

25 Mar 15:46

Choose a tag to compare

🚀 Jobs can now mount volumes

Jobs can now access Hugging Face repositories (models, datasets, Spaces) and Storage Buckets directly as mounted volumes in their containers. This enables powerful workflows like running queries directly against datasets, loading models without explicit downloads, and persisting training checkpoints to buckets.

from huggingface_hub import run_job, Volume

job = run_job(
    image="duckdb/duckdb",
    command=["duckdb", "-c", "SELECT * FROM '/data/**/*.parquet' LIMIT 5"],
    volumes=[
        Volume(type="dataset", source="HuggingFaceFW/fineweb", mount_path="/data"),
    ],
)
hf jobs run -v hf://datasets/HuggingFaceFW/fineweb:/data duckdb/duckdb duckdb -c "SELECT * FROM '/data/**/*.parquet' LIMIT 5"
  • Add volume mounting support for buckets and repos by @XciD in #3936

📖 Papers CLI is now complete

The hf papers command now has full functionality: search papers by keyword, get structured JSON metadata, and read the full paper content as markdown. The ls command is also enhanced with new filters for week, month, and submitter.

# Search papers
hf papers search "vision language"

# Get metadata
hf papers info 2601.15621

# Read as markdown
hf papers read 2601.15621
  • Complete hf papers with search, info, read + ls filters by @mishig25 in #3952

🖥️ CLI repo ID shorthand

You can now use repo ID prefixes like spaces/user/repo, datasets/user/repo, and models/user/repo as a shorthand for user/repo --type space. This works automatically for all CLI commands that accept a --type flag.

# Before
hf download user/my-space --type space
hf discussions list user/my-dataset --type dataset

# After
hf download spaces/user/my-space
hf discussions list datasets/user/my-dataset
  • Accept spaces/user/repo as repo ID prefix shorthand by @Wauplin in #3929

🔧 More repo visibility options

Repositories can now be created or updated with explicit visibility settings (--public, --protected) alongside the existing --private flag. This adds a visibility parameter to HfApi.create_repo, update_repo_settings, and duplicate_repo, with --protected available for Spaces only.

Protected Spaces allow for private code while being publicly accessible.

  • Add visibility parameter to HfApi repo create/update/duplicate methods by @hanouticelina in #3951

🖥️ CLI

🔧 Other QoL Improvements

🐛 Bug and typo fixes

  • Use module logger consistently and narrow bare except clauses by @mango766 in #3924
  • Fix HfFileSystem glob in missing subdir by @lhoestq in #3935

🏗️ Internal

[1.7.2] `hf` CLI skill improvements, `uv` extension installs & bug fixes

20 Mar 11:25

Choose a tag to compare

🛠️ CLI improvements

hf CLI skill now fully expands subcommand groups and inlines all flags and options, making the CLI self-describing and easier for agents to discover.

hf extension install now uses uv for Python extension installation when available making extension installation faster:

> hyperfine "hf extensions install alvarobartt/hf-mem --force"
# Before
Benchmark 1: hf extensions install alvarobartt/hf-mem --force
  Time (mean ± σ):      3.490 s ±  0.220 s    [User: 1.925 s, System: 0.445 s]
  Range (min … max):    3.348 s …  4.097 s    10 runs

# After
Benchmark 1: hf extensions install alvarobartt/hf-mem --force
  Time (mean ± σ):     519.6 ms ± 119.7 ms    [User: 216.6 ms, System: 95.2 ms]
  Range (min … max):   371.6 ms … 655.2 ms    10 runs

Other QoL improvements:

🐛 Bug & Typo fixes

  • Fix HfFileSystem glob in missing subdirectory (#3935) by @lhoestq
  • Fix: use module logger consistently and narrow bare except clauses (#3924) by @mango766
  • Fix typo in --every help text (#3950) by @julien-c

📚 Docs

  • Rename .env to .venv in virtual environment instructions (#3939) by @julien-c

🏗️ Internal

Full Changelog: v1.7.1...v1.7.2

[v1.7.0] pip-installable CLI extensions and multiple QoL improvements

12 Mar 17:12

Choose a tag to compare

This release brings major improvements to the hf CLI with extension discoverability, unified list commands, and multiple QoL improvements in the CLI.

🎉 The Homebrew formula of the Hugging Face CLI has been renamed to hf. Existing users just need to run brew update - Homebrew handles the rename automatically. New users can install with brew install hf.

🧩 CLI Extensions: pip-installable packages and discoverability

The hf CLI extensions system gets a major upgrade in this release. Extensions can now be full Python packages (with a pyproject.toml) installed in isolated virtual environments, in addition to the existing shell script approach. This means extension authors can use Python dependencies without conflicting with the user's system. The install command auto-detects whether a GitHub repo is a script or a Python package and handles both transparently.

A new hf extensions search command lets users discover available extensions directly from the terminal by querying GitHub repositories tagged with the hf-extension topic. Results are sorted by stars and show whether each extension is already installed locally. Additionally, a comprehensive guide on how to build, publish, and make extensions discoverable has been added to the documentation.

# Install a Python-based extension
hf extensions install alvarobartt/hf-mem

# Discover available extensions
hf extensions search
NAME   REPO                    STARS DESCRIPTION                         INSTALLED
------ ----------------------- ----- ----------------------------------- ---------
claude hanouticelina/hf-claude     2 Extension for `hf` CLI to launch... yes
agents hanouticelina/hf-agents       HF extension to run local coding...
  • [CLI] Add pip installable repos support to hf extensions by @Wauplin in #3892
  • [CLI] Add hf extensions search command by @julien-c in #3905
  • [Docs] How to build a CLI extension guide by @Wauplin in #3908

📚 Documentation: Create a CLI extension

🔐 hf auth login CLI update

A new --force flag lets you explicitly go through the full login flow again when needed, for example to switch tokens.

# Already logged in — returns immediately
hf auth login

# Force re-login to switch tokens
hf auth login --force
  • Default to skipping login if already logged in and add --force flag by @hanouticelina in #3920

📚 Documentation: CLI guide

📦 Xet optimizations and fixes

hf-xet has been bumped to v1.4.2 with some optimizations:

  • Avoid duplicate sha256 computation when uploading to a model/dataset repo
  • Skip sha256 computation when uploading to a bucket
    This should greatly improve upload speed of large files.

The hf-xet bump also comes with a fix for deadlocks / stall on large file downloads.

See hf-xet release notes for more details.

  • feat: pass pre-computed SHA-256 to hf_xet upload by @XciD in #3876
  • feat: pass skip_sha256=True to hf_xet for bucket uploads by @Wauplin in #3900

🖥️ CLI QoL Improvements

  • Add num_parameters filtering to hf API and CLI by @evalstate in #3897docs
  • [CLI] Normalize all list/ls commands to use list | ls alias by @julien-c in #3901
  • [CLI] Add --format and --quiet options to hf papers ls by @julien-c in #3903
  • [CLI] Add hidden --json shorthand for --format json by @Wauplin in #3919
  • Allow 'hf skills add' default directory by @Wauplin in #3923

🔧 Other QoL Improvements

  • Add used_storage field to ModelInfo, DatasetInfo, and SpaceInfo by @julien-c in #3911
  • Make sure all expand attributes are official ModelInfo/DatasetInfo/SpaceInfo by @Wauplin in #3918

📖 Documentation

🐛 Bug and typo fixes

  • snapshot_download operation raises the generic exception even when actual error is different. by @pavankumarch470 in #3914

🏗️ Internal

[v1.6.0] New CLI commands, Bucket fsspec support, and more

06 Mar 13:52
7536357

Choose a tag to compare

This release brings significant new CLI commands for managing Spaces, Datasets, Discussions, and Webhooks, along with HfFileSystem support for Buckets and a CLI extension system.

🚀 New CLI commands

We've added several new CLI command groups to make interacting with the Hub even easier from your terminal.

New hf spaces dev-mode command

You can now enable or disable dev mode on Spaces directly from the CLI. When enabling dev mode, the command waits for the Space to be ready and prints connection instructions (web VSCode, SSH, local VSCode/Cursor). This makes iterating on Spaces much faster by allowing you to restart your application without stopping the Space container.

# Enable dev mode
hf spaces dev-mode username/my-space

# Disable dev mode
hf spaces dev-mode username/my-space --stop

New hf discussions command group

You can now manage discussions and pull requests on the Hub directly from the CLI. This includes listing, viewing, creating, commenting on, closing, reopening, renaming, and merging discussions and PRs.

# List open discussions and PRs on a repo
hf discussions list username/my-model

# Create a new discussion
hf discussions create username/my-model --title "Feature request" --body "Description"

# Create a pull request
hf discussions create username/my-model --title "Fix bug" --pull-request

# Merge a pull request
hf discussions merge username/my-model 5 --yes

New hf webhooks command group

Full CLI support for managing Hub webhooks is now available. You can list, inspect, create, update, enable/disable, and delete webhooks directly from the terminal.

# List all webhooks
hf webhooks ls

# Create a webhook
hf webhooks create --url https://example.com/hook --watch model:bert-base-uncased

# Enable / disable a webhook
hf webhooks enable webhook_id
hf webhooks disable webhook_id

# Delete a webhook
hf webhooks delete webhook_id

New hf datasets parquet and hf datasets sql commands

Two new commands make it easy to work with dataset parquet files. Use hf datasets parquet to discover parquet file URLs, then query them with hf datasets sql using DuckDB.

# List parquet URLs for a dataset
hf datasets parquet cfahlgren1/hub-stats
hf datasets parquet cfahlgren1/hub-stats --subset models --split train

# Run SQL queries on dataset parquet
hf datasets sql "SELECT COUNT(*) FROM read_parquet('https://huggingface.co/api/datasets/...')"

New hf repos duplicate command

You can now duplicate any repository (model, dataset, or Space) using a unified command. This replaces the previous duplicate_space method with a more general solution.

# Duplicate a Space
hf repos duplicate multimodalart/dreambooth-training --type space

# Duplicate a dataset
hf repos duplicate openai/gdpval --type dataset
  • Add duplicate_repo method and hf repos duplicate command by @Wauplin in #3880

🪣 Bucket support in HfFileSystem

The HfFileSystem now supports buckets, providing S3-like object storage on Hugging Face. You can list, glob, download, stream, and upload files in buckets using the familiar fsspec interface.

from huggingface_hub import hffs

# List files in a bucket
hffs.ls("buckets/my-username/my-bucket/data")

# Read a remote file
with hffs.open("buckets/my-username/my-bucket/data/file.txt", "r") as f:
    content = f.read()

# Read file content as string
hffs.read_text("buckets/my-username/my-bucket/data/file.txt")

📦 Extensions now support pip install

The hf extensions system now supports installing extensions as Python packages in addition to standalone executables. This makes it easier to distribute and install CLI extensions.

# Install an extension
> hf extensions install hanouticelina/hf-claude
> hf extensions install alvarobartt/hf-mem

# List them
> hf extensions list
COMMAND   SOURCE                  TYPE   INSTALLED  DESCRIPTION                        
--------- ----------------------- ------ ---------- -----------------------------------
hf claude hanouticelina/hf-claude binary 2026-03-06 Launch Claude Code with Hugging ...
hf mem    alvarobartt/hf-mem      python 2026-03-06 A CLI to estimate inference memo...

# Run extension
> hf claude --help
Usage: claude [options] [command] [prompt]

Claude Code - starts an interactive session by default, use -p/--print for non-interactive output
  • Add pip installable repos support to hf extensions by @Wauplin in #3892

Show installed extensions in hf --help

The CLI now shows installed extensions under an "Extension commands" section in the help output.

Other QoL improvements

  • Add NVIDIA provider support to InferenceClient by @manojkilaru97 in #3886
  • Bump hf_xet minimal package version to >=1.3.2 for better throughput by @Wauplin in #3873
  • Fix CLI errors formatting to include repo_id, repo_type, bucket_id by @Wauplin in #3889

📚 Documentation updates

🐛 Bug and typo fixes

💔 Breaking changes

  • Remove deprecated direction argument in list_models/datasets/spaces by @Wauplin in #3882

🏗️ Internal

[v1.5.0]: Buckets API, Agent-first CLI, Spaces Hot-Reload and more

26 Feb 15:02
2b20726

Choose a tag to compare

This release introduces major new features including Buckets (xet-based large scale object storage), CLI Extensions, Space Hot-Reload, and significant improvements for AI coding agents. The CLI has been completely overhauled with centralized error handling, better help output, and new commands for collections, papers, and more.

🪣 Buckets: S3-like Object Storage on the Hub

Buckets provide S3-like object storage on Hugging Face, powered by the Xet storage backend. Unlike repositories (which are git-based and track file history), buckets are remote object storage containers designed for large-scale files with content-addressable deduplication. Use them for training checkpoints, logs, intermediate artifacts, or any large collection of files that doesn't need version control.

# Create a bucket
hf buckets create my-bucket --private

# Upload a directory
hf buckets sync ./data hf://buckets/username/my-bucket

# Download from bucket
hf buckets sync hf://buckets/username/my-bucket ./data

# List files
hf buckets list username/my-bucket -R --tree

The Buckets API includes full CLI and Python support for creating, listing, moving, and deleting buckets; uploading, downloading, and syncing files; and managing bucket contents with include/exclude patterns.

📚 Documentation: Buckets guide

🤖 AI Agent Support

This release includes several features designed to improve the experience for AI coding agents (Claude Code, OpenCode, Cursor, etc.):

  • Centralized CLI error handling: Clean user-facing messages without tracebacks (set HF_DEBUG=1 for full traces) by @hanouticelina in #3754
  • Token-efficient skill: The hf skills add command now installs a compact skill (~1.2k tokens vs ~12k before) by @hanouticelina in #3802
  • Agent-friendly hf jobs logs: Prints available logs and exits by default; use -f to stream by @davanstrien in #3783
  • Add AGENTS.md: Dev setup and codebase guide for AI agents by @Wauplin in #3789
# Install the hf-cli skill for Claude
hf skills add --claude

# Install for project-level
hf skills add --project

🔥 Space Hot-Reload (Experimental)

Hot-reload Python files in a Space without a full rebuild and restart. This is useful for rapid iteration on Gradio apps.

# Open an interactive editor to modify a remote file
hf spaces hot-reload username/repo-name app.py

# Take local version and patch remote
hf spaces hot-reload username/repo-name -f app.py

🖥️ CLI Improvements

New Commands

  • Add hf papers ls to list daily papers on the Hub by @julien-c in #3723
  • Add hf collections commands (ls, info, create, update, delete, add-item, update-item, delete-item) by @Wauplin in #3767

CLI Extensions

Introduce an extension mechanism to the hf CLI. Extensions are standalone executables hosted in GitHub repositories that users can install, run, and remove with simple commands. Inspired by gh extension.

# Install an extension (defaults to huggingface org)
hf extensions install hf-claude

# Install from any GitHub owner
hf extensions install hanouticelina/hf-claude

# Run an extension
hf claude

# List installed extensions
hf extensions list

Output Format Options

  • Add --format {table,json} and -q/--quiet to hf models ls, hf datasets ls, hf spaces ls, hf endpoints ls by @hanouticelina in #3735
  • Align hf jobs ps output with standard CLI pattern by @davanstrien in #3799
  • Dynamic table columns based on --expand field by @hanouticelina in #3760

Usability

Jobs CLI

List available hardware:

✗ hf jobs hardware
NAME            PRETTY NAME            CPU      RAM     ACCELERATOR       COST/MIN COST/HOUR 
--------------- ---------------------- -------- ------- ----------------- -------- --------- 
cpu-basic       CPU Basic              2 vCPU   16 GB   N/A               $0.0002  $0.01     
cpu-upgrade     CPU Upgrade            8 vCPU   32 GB   N/A               $0.0005  $0.03     
cpu-performance CPU Performance        32 vCPU  256 GB  N/A               $0.3117  $18.70    
cpu-xl          CPU XL                 16 vCPU  124 GB  N/A               $0.0167  $1.00     
t4-small        Nvidia T4 - small      4 vCPU   15 GB   1x T4 (16 GB)     $0.0067  $0.40     
t4-medium       Nvidia T4 - medium     8 vCPU   30 GB   1x T4 (16 GB)     $0.0100  $0.60     
a10g-small      Nvidia A10G - small    4 vCPU   15 GB   1x A10G (24 GB)   $0.0167  $1.00  
...

Also added a ton of fixes and small QoL improvements.

🤖 Inference

  • Add dimensions & encoding_format parameter to InferenceClient for output embedding size by @mishig25 in #3671
  • feat: zai-org provider supports text to image by @tomsun28 in #3675
  • Fix fal image urls payload by @hanouticelina in #3746
  • Fix Replicate image-to-image compatibility with different model schemas by @hanouticelina in #3749
  • Accelerator parameter support for inference endpoints by @Wauplin in #3817

🔧 Other QoL Improvements

💔 Breaking Changes

  • hf jobs ps removes old Go-template --format '{{.id}}' syntax. Use -q for IDs or --format json | jq for custom extraction by @davanstrien in #3799
  • Migrate to hf repos instead of hf repo (old command still works but shows deprecation warning) by @Wauplin in #3848
  • Migrate hf repo-files delete to hf repo delete-files (old command hidden from help, shows deprecation warning) by @Wauplin in #3821

🐛 Bug and typo fixes

  • Fix severe performance regression in streaming by keeping a byte iterator in HfFileSystemStreamFile by @leq6c in #3685
  • Fix endpoint not forwarded in CommitUrl by @Wauplin in #3679
  • Fix HfFileSystem.resolve_path() with special char @ by @lhoestq in #3704
  • Fix cache verify incorrectly reporting folders as missing files by @Mitix-EPI in #3707
  • Fix multi user cache lock permissions by @hanouticelina in #3714
  • Default _endpoint to None in CommitInfo, fixes tiny regression from v1.3.3 by @tomaarsen in #3737
  • Filter datasets by benchmark:official by @Wauplin in #3761
  • Fix file corruption when server ignores Range header on download retry by @XciD in #3778
  • Fix Xet token invalid on repo recreation...
Read more