| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- # Copyright 2023-present, the HuggingFace Inc. team.
- #
- # Licensed under the Apache License, Version 2.0 (the "License");
- # you may not use this file except in compliance with the License.
- # You may obtain a copy of the License at
- #
- # http://www.apache.org/licenses/LICENSE-2.0
- #
- # Unless required by applicable law or agreed to in writing, software
- # distributed under the License is distributed on an "AS IS" BASIS,
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- # See the License for the specific language governing permissions and
- # limitations under the License.
- """Legacy `hf repo-files` command.
- Kept for backward compatibility. Users are nudged to use `hf repos delete-files` instead.
- """
- from typing import Annotated
- import typer
- from ._cli_utils import (
- FormatWithAutoOpt,
- RepoIdArg,
- RepoType,
- RepoTypeOpt,
- RevisionOpt,
- TokenOpt,
- get_hf_api,
- typer_factory,
- )
- from ._output import OutputFormatWithAuto, out
- repo_files_cli = typer_factory(
- help="(Deprecated) Manage files in a repo on the Hub. Use `hf repos delete-files` instead."
- )
- @repo_files_cli.command(
- "delete",
- )
- def repo_files_delete(
- repo_id: RepoIdArg,
- patterns: Annotated[
- list[str],
- typer.Argument(
- help="Glob patterns to match files to delete. Based on fnmatch, '*' matches files recursively.",
- ),
- ],
- repo_type: RepoTypeOpt = RepoType.model,
- revision: RevisionOpt = None,
- commit_message: Annotated[
- str | None,
- typer.Option(
- help="The summary / title / first line of the generated commit.",
- ),
- ] = None,
- commit_description: Annotated[
- str | None,
- typer.Option(
- help="The description of the generated commit.",
- ),
- ] = None,
- create_pr: Annotated[
- bool,
- typer.Option(
- help="Whether to create a new Pull Request for these changes.",
- ),
- ] = False,
- token: TokenOpt = None,
- format: FormatWithAutoOpt = OutputFormatWithAuto.auto,
- ) -> None:
- out.warning("`hf repo-files delete` is deprecated. Use `hf repos delete-files` instead.")
- api = get_hf_api(token=token)
- url = api.delete_files(
- delete_patterns=patterns,
- repo_id=repo_id,
- repo_type=repo_type.value,
- revision=revision,
- commit_message=commit_message,
- commit_description=commit_description,
- create_pr=create_pr,
- )
- out.result("Files deleted", repo_id=repo_id, commit_url=url)
|