## START: Set by rpmautospec ## (rpmautospec version 0.8.4) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global extras caching,grpc,utils Name: python-litellm Version: 1.84.0 Release: %autorelease Summary: Library to easily interface with LLM API providers License: MIT URL: https://litellm.ai Source: %{pypi_source litellm} BuildArch: noarch BuildRequires: tomcli # Test dependencies BuildRequires: python3-pytest ## For check import tests BuildRequires: python3-fastapi BuildRequires: python3-orjson BuildRequires: python3-backoff BuildRequires: python3-mcp BuildRequires: python3-boto3 BuildRequires: python3-opentelemetry-api BuildRequires: python3-cryptography BuildRequires: python3-dateutil BuildRequires: python3-pydantic+email BuildRequires: python3-websockets %global _description %{expand: This is package 'litellm' generated automatically by pyp2spec.} %description %_description %package -n python3-litellm Summary: %{summary} %description -n python3-litellm %_description %pyproject_extras_subpkg -n python3-litellm %{extras} %prep %autosetup -p1 -n litellm-%{version} # Drop python constraint tomcli set pyproject.toml str "project.requires-python" ">=3.10" # Remove version constraint on uv-build tomcli set pyproject.toml arrays replace "build-system.requires" "uv_build==0.11.8" "uv_build" # Relax and downgrade dependencies tomcli set pyproject.toml arrays replace "project.optional-dependencies.grpc" "grpcio==1.78.0" "grpcio>=1.48" tomcli set pyproject.toml arrays replace "project.optional-dependencies.utils" "numpydoc==1.8.0" "numpydoc>=1.9" tomcli set pyproject.toml arrays replace "project.dependencies" "importlib-metadata>=8.0.0,<9.0" "importlib-metadata>=8" %generate_buildrequires %pyproject_buildrequires -x %{extras} %build %pyproject_wheel %install %pyproject_install %pyproject_save_files litellm %check # Missing polars dependency (provided via `proxy` extras) missing="${missing-} -e 'litellm.integrations.cloudzero.cz_stream_api'" missing="${missing-} -e 'litellm.integrations.cloudzero.database'" missing="${missing-} -e 'litellm.integrations.cloudzero.transform'" missing="${missing-} -e 'litellm.integrations.focus.database'" missing="${missing-} -e 'litellm.integrations.focus.export_engine'" missing="${missing-} -e 'litellm.integrations.focus.schema'" missing="${missing-} -e 'litellm.integrations.focus.serializers'" missing="${missing-} -e 'litellm.integrations.focus.serializers.base'" missing="${missing-} -e 'litellm.integrations.focus.serializers.parquet'" missing="${missing-} -e 'litellm.integrations.focus.transformer'" # Missing `fastapi_sso` dependency (provided via `proxy` extras) missing="${missing-} -e 'litellm.integrations.custom_sso_handler'" missing="${missing-} -e 'litellm.proxy.auth.login_utils'" missing="${missing-} -e 'litellm.proxy.custom_hooks.custom_ui_sso_hook'" missing="${missing-} -e 'litellm.proxy.custom_sso'" missing="${missing-} -e 'litellm.proxy.management_endpoints.sso.custom_microsoft_sso'" missing="${missing-} -e 'litellm.proxy.management_endpoints.types'" missing="${missing-} -e 'litellm.proxy.management_endpoints.ui_sso'" # google missing="${missing-} -e 'litellm.llms.vertex_ai.aws_credentials_supplier'" # dynamodb missing="${missing-} -e 'litellm.proxy.db.dynamo_db'" # RestrictedPython missing="${missing-} -e 'litellm.proxy.guardrails.guardrail_endpoints'" missing="${missing-} -e 'litellm.proxy.guardrails.guardrail_hooks.custom_code'" missing="${missing-} -e 'litellm.proxy.guardrails.guardrail_hooks.custom_code.custom_code_guardrail'" missing="${missing-} -e 'litellm.proxy.guardrails.guardrail_hooks.custom_code.primitives'" missing="${missing-} -e 'litellm.proxy.guardrails.guardrail_hooks.custom_code.response_rejection_code'" missing="${missing-} -e 'litellm.proxy.guardrails.guardrail_hooks.custom_code.sandbox'" missing="${missing-} -e 'litellm.proxy.management_endpoints.policy_endpoints'" missing="${missing-} -e 'litellm.proxy.management_endpoints.policy_endpoints.ai_policy_suggester'" missing="${missing-} -e 'litellm.proxy.management_endpoints.policy_endpoints.endpoints'" # semantic-router missing="${missing-} -e 'litellm.router_strategy.auto_router.litellm_encoder'" missing="${missing-} -e 'litellm.a2a_protocol'" missing="${missing-} -e 'litellm.a2a_protocol.card_resolver'" missing="${missing-} -e 'litellm.a2a_protocol.exception_mapping_utils'" missing="${missing-} -e 'litellm.a2a_protocol.litellm_completion_bridge'" missing="${missing-} -e 'litellm.a2a_protocol.litellm_completion_bridge.handler'" missing="${missing-} -e 'litellm.a2a_protocol.litellm_completion_bridge.transformation'" missing="${missing-} -e 'litellm.a2a_protocol.main'" missing="${missing-} -e 'litellm.a2a_protocol.providers'" missing="${missing-} -e 'litellm.a2a_protocol.providers.base'" missing="${missing-} -e 'litellm.a2a_protocol.providers.bedrock_agentcore'" missing="${missing-} -e 'litellm.a2a_protocol.providers.bedrock_agentcore.config'" missing="${missing-} -e 'litellm.a2a_protocol.providers.bedrock_agentcore.handler'" missing="${missing-} -e 'litellm.a2a_protocol.providers.bedrock_agentcore.transformation'" missing="${missing-} -e 'litellm.a2a_protocol.providers.config_manager'" missing="${missing-} -e 'litellm.a2a_protocol.providers.litellm_completion'" missing="${missing-} -e 'litellm.a2a_protocol.providers.litellm_completion.handler'" missing="${missing-} -e 'litellm.a2a_protocol.providers.litellm_completion.transformation'" %pyproject_check_import "${missing-}" %pytest %files -n python3-litellm -f %{pyproject_files} %{_bindir}/litellm %{_bindir}/litellm-proxy %changelog ## START: Generated by rpmautospec * Thu May 14 2026 John Doe - 1.84.0-1 - Uncommitted changes ## END: Generated by rpmautospec