Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
404 commits
Select commit Hold shift + click to select a range
f6e526c
Fix bulk update tests
Sameerlite Apr 14, 2026
ef94f5f
Fix budget reset test
Sameerlite Apr 14, 2026
ffb87dc
Fix failing test and code qa + lint
Sameerlite Apr 14, 2026
ee40da5
Merge branch 'main' into litellm_oss_staging_04_11_2026
Sameerlite Apr 14, 2026
a0e61a9
Fix code qa
Sameerlite Apr 14, 2026
69bf2bf
Fix tests
Sameerlite Apr 14, 2026
15ef3fa
Merge pull request #25679 from michelligabriele/fix/azure-passthrough…
ishaan-berri Apr 14, 2026
d479234
Merge pull request #25694 from milan-berri/feat/mcp-initialize-instru…
ishaan-berri Apr 14, 2026
f6058bd
Merge pull request #25673 from michelligabriele/fix/responses-api-cac…
ishaan-berri Apr 14, 2026
53828dd
refactor: migrate policy attachment deletion to useMutation hook with…
Lucas-Song-Dev Apr 14, 2026
ef774a1
Merge remote-tracking branch 'origin/main' into fix-ui-policy-attachm…
Lucas-Song-Dev Apr 14, 2026
9810a1b
Merge pull request #25344 from BerriAI/litellm_Sameerlite/healthcheck…
ishaan-berri Apr 14, 2026
977245c
fix(ui): rename test file to tsx and remove unused useMutation import
Lucas-Song-Dev Apr 14, 2026
9c86973
fix(ui): remove unused useMutation import and add React import to test
Lucas-Song-Dev Apr 14, 2026
693c846
Merge pull request #25674 from BerriAI/litellm_anthropic-messages-thi…
ishaan-berri Apr 14, 2026
6da4e0b
fix(ui): pre-select backend default for boolean guardrail provider fi…
ryan-crabbe-berri Apr 14, 2026
e2fc7d6
Merge pull request #25396 from BerriAI/litellm_bedrock-normalize-cust…
ishaan-berri Apr 14, 2026
4a71583
Merge pull request #25348 from BerriAI/litellm_gemini-veo-video-resol…
ishaan-berri Apr 14, 2026
6d2b942
fix(mypy): resolve type errors in compression/compress.py and __init_…
krrish-berri-2 Apr 14, 2026
b1c77d2
Merge pull request #25192 from BerriAI/litellm_oss_staging_04_04_2026
Sameerlite Apr 14, 2026
b8f7d61
Merge pull request #25589 from BerriAI/litellm_oss_staging_04_11_2026
Sameerlite Apr 14, 2026
e20c114
fix(mcp): set instructions=None in SigV4BuildFromTable test mocks
ishaan-berri Apr 14, 2026
8c50563
chore: sync uv.lock with pyproject.toml (v1.83.6 -> v1.83.7)
ishaan-berri Apr 14, 2026
3f3760b
Merge pull request #25324 from Lucas-Song-Dev/fix-ui-policy-attachmen…
yuneng-berri Apr 14, 2026
dd93d26
fix(gemini): assign correct indices in batch embedding response (#25656)
lucassz Apr 14, 2026
15245a5
fix: emit input_json_delta for tool args bundled in first streaming c…
krisyang1125 Apr 14, 2026
1d45cfd
fix(proxy) - #25506 Team members added before team_member_budget is c…
daanhendrio Apr 14, 2026
6343148
Hiddenlayer Integration: Add V2 Integration (#22708)
Ashton-Sidhu Apr 14, 2026
17bfa42
fix(router): discard oldest entry when trimming latency list in lowes…
hatim-ez Apr 14, 2026
e724e5e
add NO_OPENAPI env var to disable /openapi.json endpoint (#25547)
jonemo Apr 14, 2026
a302b53
fix: drain datadog batches safely (#25663)
emerzon Apr 14, 2026
924418a
fix: prune expired in-memory cache heap entries (#25664)
emerzon Apr 14, 2026
212b249
fix(vertex_ai): drop search tools when mixed with function declaratio…
duan-levan Mar 16, 2026
1e79ad6
docs: add comment explaining why non-search tools are preserved
duan-levan Mar 16, 2026
cacc3b3
fix: skip dropping search tools when server-side tool invocations ena…
duan-levan Apr 9, 2026
085e70c
refactor: extract search tool conflict resolution into _resolve_searc…
duan-levan Apr 14, 2026
dec630b
Fix mypy issues
Sameerlite Apr 14, 2026
25c444c
Merge pull request #25686 from milan-berri/fix/key-update-cross-team-…
yuneng-berri Apr 14, 2026
1a9a31e
Merge pull request #25665 from BerriAI/litellm_oss_staging_04_13_2026_p1
Sameerlite Apr 14, 2026
db94b4d
fix(cost-map): add us-south1 to vertex qwen3-235b-a22b-instruct-2507-…
ti3x Apr 14, 2026
92a5ed4
fix(mcp): set instructions=None in test_add_update_server_fallback_to…
ishaan-berri Apr 14, 2026
0e43050
Merge pull request #25650 from BerriAI/litellm_dev_04_13_2026_p1
ishaan-berri Apr 14, 2026
2b5eb79
fix(mcp): set instructions=None in test_add_update_server_with_alias …
ishaan-berri Apr 14, 2026
6126b47
fix(mcp): set instructions=None in test_add_update_server_without_ali…
ishaan-berri Apr 14, 2026
1beb803
fix: isolate logs team filter dropdown from root teams state bleed
ryan-crabbe-berri Apr 14, 2026
ec4ce1c
Merge pull request #25700 from BerriAI/litellm_fix-guardrail-bool-sel…
ryan-crabbe-berri Apr 14, 2026
43efe76
Merge pull request #25716 from BerriAI/litellm_fix-logs-team-filter-s…
ryan-crabbe-berri Apr 14, 2026
bdaaa5c
test(ui): add getCookie to cookieUtils mock in user_dashboard test
ryan-crabbe-berri Apr 14, 2026
7b36cfc
Merge pull request #25719 from BerriAI/litellm_fix-ui-unit-tests-get-…
yuneng-berri Apr 14, 2026
a428ae7
fix: default invite user modal global role to least-privilege
ryan-crabbe-berri Apr 14, 2026
8eec2c6
[Docs] Add release notes for v1.83.3-stable and v1.83.7.rc.1
yuneng-berri Apr 14, 2026
4a1da62
[Fix] Correct pip install versions for v1.83.3-stable and v1.83.7.rc.…
yuneng-berri Apr 14, 2026
25f93be
security: prevent API key leaks in error tracebacks, logs, and alerts
stuxf Apr 3, 2026
74f55b0
fix: apply mask_sensitive_info to async streaming error body
stuxf Apr 3, 2026
b16d0b1
test: add coverage for credential leak prevention changes
stuxf Apr 4, 2026
abb8d8d
ci: trigger CI re-run for codecov
stuxf Apr 4, 2026
966be29
[Docs] Add missed content PRs to v1.83.7.rc.1 and update runbook
yuneng-berri Apr 14, 2026
3aae15f
[Docs] Use GitHub avatar for Ryan Crabbe in release notes
ryan-crabbe-berri Apr 14, 2026
f521e27
test(gemini): align API key expectations
stuxf Apr 14, 2026
260d51a
Merge pull request #25723 from BerriAI/litellm_release_notes_v1_83_3_…
yuneng-berri Apr 14, 2026
6d2b7b7
Merge pull request #25721 from BerriAI/litellm_fix-invite-user-defaul…
ryan-crabbe-berri Apr 14, 2026
b1bc3c1
test(prompts): isolate in-memory version tests
stuxf Apr 14, 2026
05ad482
[Docs] Regenerate v1.83.3-stable release notes from v1.82.3-stable ba…
yuneng-berri Apr 15, 2026
58ce769
Remove Chat UI link from Swagger docs message
yuneng-berri Apr 15, 2026
2911d99
test(gemini): stub API key for format param tests
stuxf Apr 15, 2026
bb91f3a
Merge pull request #25726 from BerriAI/docs_yj_apr14
yuneng-berri Apr 15, 2026
2af0768
Merge pull request #25727 from BerriAI/litellm_removeChatUiSwaggerLink
yuneng-berri Apr 15, 2026
a9c6156
[Fix] Test - Together AI: replace deprecated Mixtral with serverless …
yuneng-berri Apr 15, 2026
045d32a
bump: version 1.83.7 → 1.83.8
yuneng-berri Apr 15, 2026
d20c70f
Optimize database query which fetches latest model_id, model_name pai…
harish876 Apr 15, 2026
1962900
fallbacks image
shivamrawat1 Apr 15, 2026
ec0953f
Merge pull request #25728 from BerriAI/litellm_fix_together_ai_test_m…
yuneng-berri Apr 15, 2026
65ce89d
update
shivamrawat1 Apr 15, 2026
5c1f7d9
Merge pull request #25731 from BerriAI/docs_guardrail
yuneng-berri Apr 15, 2026
45d1e1b
[Infra] Guard main branch with PR source-branch check
yuneng-berri Apr 15, 2026
d805fe7
test(bedrock): add unit tests for cache token billing with prompt cac…
ishaan-berri Apr 14, 2026
c1dcfa7
feat(types): add cache_read_cost and cache_creation_cost fields to Co…
ishaan-berri Apr 15, 2026
5c056ca
fix(anthropic): store raw text_tokens in PromptTokensDetailsWrapper b…
ishaan-berri Apr 15, 2026
c84597e
fix(bedrock/converse): capture raw input_tokens as text_tokens before…
ishaan-berri Apr 15, 2026
b5a4c26
feat(logging): pass cache_read_cost and cache_creation_cost through s…
ishaan-berri Apr 15, 2026
781fc63
feat(cost-calculator): compute and store per-type cache costs in Cost…
ishaan-berri Apr 15, 2026
6b1dc11
fix(ui/usage): subtract cache tokens from Input Tokens summary card t…
ishaan-berri Apr 15, 2026
0148eff
feat(ui/cost-breakdown): show separate Input / Cache Read / Cache Wri…
ishaan-berri Apr 15, 2026
e0a988e
feat(ui/log-details): pass rawInputTokens, cacheReadTokens, cacheCrea…
ishaan-berri Apr 15, 2026
e20d9df
remove test file
ishaan-berri Apr 15, 2026
fd110cd
docs update
shivamrawat1 Apr 15, 2026
ab71d3d
Also reject PRs from forks, not just non-allowlisted branches
yuneng-berri Apr 15, 2026
38f8d7a
Point contributors toward litellm_oss_branch in guard error messages
yuneng-berri Apr 15, 2026
a01cf44
fix: remove non-existent litellm_mcps_tests_coverage from coverage co…
joereyna Apr 15, 2026
84c507b
fix(mypy): use explicit None check for cache rate values to satisfy t…
ishaan-berri Apr 15, 2026
d6a69b9
[Test] mark bedrock gpt-oss function-calling stream test flaky
yuneng-berri Apr 15, 2026
8e44a02
[Test] stub flaky bedrock gpt-oss function-calling stream test
yuneng-berri Apr 15, 2026
e2043e1
[Test] add request-body mock test for bedrock gpt-oss tool schema
yuneng-berri Apr 15, 2026
ccbdaa9
fix(ci): increase test-server-root-path timeout to 30m
joereyna Apr 15, 2026
ffc3a97
Merge pull request #25739 from BerriAI/litellm_flakyBedrockGptOssTool…
yuneng-berri Apr 15, 2026
5078600
Merge pull request #25736 from BerriAI/docs_visual_guide_for_guardrai…
yuneng-berri Apr 15, 2026
3284dee
Merge pull request #25737 from joereyna/fix/remove-missing-mcps-cover…
yuneng-berri Apr 15, 2026
bdb4f39
Merge pull request #25741 from joereyna/fix/test-server-root-path-tim…
yuneng-berri Apr 15, 2026
9790a46
Merge pull request #25730 from BerriAI/yj_bump_apr14_2
yuneng-berri Apr 15, 2026
b3c413a
add a composite index on the model_name, model_id and checked_at key …
harish876 Apr 15, 2026
72a461b
Merge pull request #25733 from BerriAI/litellm_guardMainBranch
yuneng-berri Apr 15, 2026
4a73e94
Merge pull request #25747 from BerriAI/main
shin-berri Apr 15, 2026
6426bc4
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
yuneng-berri Apr 15, 2026
277be4c
Add input + output tokens for anthropic message type
Sameerlite Apr 15, 2026
3fdd67f
Delete docs/my-website/blog/debug_cost_discrepancy/index.md
Sameerlite Apr 15, 2026
f27bf8e
fix(ui): pre-select backend default for boolean guardrail provider fi…
ryan-crabbe-berri Apr 14, 2026
27484c4
fix: isolate logs team filter dropdown from root teams state bleed
ryan-crabbe-berri Apr 14, 2026
a23408d
test(ui): add getCookie to cookieUtils mock in user_dashboard test
ryan-crabbe-berri Apr 14, 2026
719f4ca
[Docs] Add release notes for v1.83.3-stable and v1.83.7.rc.1
yuneng-berri Apr 14, 2026
d92e65c
[Fix] Correct pip install versions for v1.83.3-stable and v1.83.7.rc.…
yuneng-berri Apr 14, 2026
c94f5d5
[Docs] Add missed content PRs to v1.83.7.rc.1 and update runbook
yuneng-berri Apr 14, 2026
8837138
[Docs] Use GitHub avatar for Ryan Crabbe in release notes
ryan-crabbe-berri Apr 14, 2026
3b8f651
fix: default invite user modal global role to least-privilege
ryan-crabbe-berri Apr 14, 2026
81e3849
[Docs] Regenerate v1.83.3-stable release notes from v1.82.3-stable ba…
yuneng-berri Apr 15, 2026
dbe7008
Remove Chat UI link from Swagger docs message
yuneng-berri Apr 15, 2026
641a377
[Fix] Test - Together AI: replace deprecated Mixtral with serverless …
yuneng-berri Apr 15, 2026
2933b21
fallbacks image
shivamrawat1 Apr 15, 2026
19070d3
update
shivamrawat1 Apr 15, 2026
be9053d
[Test] mark bedrock gpt-oss function-calling stream test flaky
yuneng-berri Apr 15, 2026
c8a94ff
[Test] stub flaky bedrock gpt-oss function-calling stream test
yuneng-berri Apr 15, 2026
1e50925
[Test] add request-body mock test for bedrock gpt-oss tool schema
yuneng-berri Apr 15, 2026
5af74b6
docs update
shivamrawat1 Apr 15, 2026
213b1ea
fix: remove non-existent litellm_mcps_tests_coverage from coverage co…
joereyna Apr 15, 2026
571faae
fix(ci): increase test-server-root-path timeout to 30m
joereyna Apr 15, 2026
557accb
bump: version 1.83.7 → 1.83.8
yuneng-berri Apr 15, 2026
a305eb8
[Infra] Guard main branch with PR source-branch check
yuneng-berri Apr 15, 2026
d9b89bc
Also reject PRs from forks, not just non-allowlisted branches
yuneng-berri Apr 15, 2026
ff5bd43
Point contributors toward litellm_oss_branch in guard error messages
yuneng-berri Apr 15, 2026
922c617
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
yuneng-berri Apr 15, 2026
b599c8b
refactor(ui): reduce Tremor usage in Guardrails Monitor layout
ryan-crabbe-berri Apr 15, 2026
645e0a7
Merge pull request #25735 from BerriAI/litellm_bedrock_cache_cost_bre…
ishaan-berri Apr 15, 2026
31fd681
build(ui): rebuild dashboard for cache token cost breakdown changes
ishaan-berri Apr 15, 2026
fb245b7
Merge pull request #25801 from BerriAI/litellm_rebuild_ui_cache_break…
ishaan-berri Apr 15, 2026
fbd15a0
fix(types): add missing x_ratelimit_reset_* fields to StandardLogging…
ishaan-berri Apr 15, 2026
5270830
fix(logging): preserve all provider response headers in StandardLoggi…
ishaan-berri Apr 15, 2026
cc6a33c
test(logging): add tests for get_additional_headers header preservation
ishaan-berri Apr 15, 2026
48aa776
refactor(ui): use antd grid for guardrails monitor metrics
ryan-crabbe-berri Apr 15, 2026
f04a5e7
fix(ui): render guardrail optional_params bool defaults in Select
ryan-crabbe-berri Apr 15, 2026
98c2d90
fix(logging): update test_get_additional_headers to reflect provider …
ishaan-berri Apr 15, 2026
f9bffbb
Merge pull request #25803 from BerriAI/litellm_guardrails-monitor-ant…
ryan-crabbe-berri Apr 15, 2026
35559c4
fix(ui): use antd Select for MCP ToolTestPanel bool inputs
ryan-crabbe-berri Apr 15, 2026
aaf169c
resolve merge conflicts: keep null-safety tests + add L3 regression t…
ishaan-berri Apr 15, 2026
c8496a2
fix(ui): invalidate organization queries after team mutations
ryan-crabbe-berri Apr 15, 2026
6e9cbba
refactor(ui): migrate organization view to useOrganization hook
ryan-crabbe-berri Apr 15, 2026
18afe6a
test(ui): update organization_view tests for useOrganization hook
ryan-crabbe-berri Apr 15, 2026
d8ceeb8
Merge pull request #25810 from BerriAI/litellm_bedrock_api_response_n…
ishaan-berri Apr 15, 2026
de7aad9
[Feature] UI - Deleted Keys/Teams: Add Enterprise notice banner
yuneng-berri Apr 15, 2026
0a1b442
fix(guardrails): replace custom_code sandbox with RestrictedPython
jaydns Apr 15, 2026
fc9852c
fix(guardrails): move test_custom_code_security.py to correct location
jaydns Apr 15, 2026
aff4717
[Infra] Expand CI branch filters for non-main PR targets
yuneng-berri Apr 15, 2026
469045b
fix(guardrails): provide _inplacevar_ to sandbox
jaydns Apr 15, 2026
bf1c528
Merge pull request #25819 from BerriAI/litellm_expandCiBranchFilters
yuneng-berri Apr 15, 2026
5f99e52
Added concurrent index creation. Added necessary disclaimers to index…
harish876 Apr 15, 2026
dabf8ea
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
yuneng-berri Apr 15, 2026
42ab3f9
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
yuneng-berri Apr 15, 2026
814fa20
Merge pull request #25814 from BerriAI/litellm_/elastic-zhukovsky
yuneng-berri Apr 15, 2026
55f2a89
[Infra] Remove unused publish_proxy_extras and prisma_schema_sync jobs
yuneng-berri Apr 15, 2026
3f3bfdb
Merge pull request #25117 from stuxf/fix/credential-leak-prevention
yuneng-berri Apr 15, 2026
93faf32
Merge pull request #25818 from jaydns/fix/custom-code-guardrail-restr…
yuneng-berri Apr 15, 2026
2f72eb6
Merge pull request #25821 from BerriAI/litellm_/funny-meninsky
yuneng-berri Apr 15, 2026
3914226
Merge pull request #25796 from BerriAI/litellm_yj_apr14
yuneng-berri Apr 16, 2026
f92490c
fix: make PodLockManager.release_lock atomic compare-and-delete (re-l…
joereyna Apr 16, 2026
cb8fc48
Merge pull request #25732 from harish876/health-check-oom
ishaan-berri Apr 16, 2026
9114b0d
fix(ci): sync uv.lock with pyproject.toml
ishaan-berri Apr 16, 2026
c3dbd78
style: black format llm_http_handler.py
ishaan-berri Apr 16, 2026
563e05e
style: black format _types.py
ishaan-berri Apr 16, 2026
d8dbb46
style: black format mcp_server_manager.py
ishaan-berri Apr 16, 2026
65061b1
style: black format mcp server.py
ishaan-berri Apr 16, 2026
0acd052
style: black format health_check.py
ishaan-berri Apr 16, 2026
e5adafc
style: black format anthropic_messages transformation.py
ishaan-berri Apr 16, 2026
107003a
style: black format model_param_helper.py
ishaan-berri Apr 16, 2026
13952b0
style: black format types/mcp_server/mcp_server_manager.py
ishaan-berri Apr 16, 2026
3847a59
style: black format test_model_param_helper.py
ishaan-berri Apr 16, 2026
f2a1dbe
style: black format test_health_check_max_tokens.py
ishaan-berri Apr 16, 2026
93a90a5
style: black format test_mcp_client.py
ishaan-berri Apr 16, 2026
c8a0fe1
style: black format test_unit_test_caching.py
ishaan-berri Apr 16, 2026
9a154a3
style: black format test_mcp_sigv4_auth.py
ishaan-berri Apr 16, 2026
f768946
style: black format test_anthropic_common_utils.py
ishaan-berri Apr 16, 2026
fcd71e0
style: black format test_mcp_server_manager.py
ishaan-berri Apr 16, 2026
537e72c
style: black format test_mcp_server.py
ishaan-berri Apr 16, 2026
7a6b7ad
Merge pull request #25807 from BerriAI/litellm_fix_provider_headers_i…
ishaan-berri Apr 16, 2026
1013137
Merge pull request #25813 from BerriAI/litellm_ishaan_april15
ishaan-berri Apr 16, 2026
9977e63
Merge remote-tracking branch 'origin/main' into worktree-foamy-jumpin…
ishaan-berri Apr 16, 2026
47214be
fix(proxy): harden request parameter handling
stuxf Apr 16, 2026
a588f76
Litellm ishaan april15 2 (#25828)
ishaan-berri Apr 16, 2026
ae2aba0
Merge pull request #25622 from Sameerlite/litellm_docs_cost_discrepan…
ishaan-berri Apr 16, 2026
2613670
chore: trigger CI re-evaluation
ishaan-berri Apr 16, 2026
def9c4e
chore: merge litellm_internal_staging, resolve uv.lock conflict
ishaan-berri Apr 16, 2026
0b73352
Merge pull request #25699 from BerriAI/litellm_ishaan_april14
ishaan-berri Apr 16, 2026
9691649
fix(proxy): add shared path utilities, prevent directory traversal
stuxf Apr 16, 2026
278e3f4
refactor: harden path utils, move imports to module level
stuxf Apr 16, 2026
c2b3b62
test: add unit tests for path_utils safe_join and safe_filename
stuxf Apr 16, 2026
a44c4d0
style: fix import ordering in prompt_endpoints
stuxf Apr 16, 2026
a4faace
style: move import os to module level, fix import ordering
stuxf Apr 16, 2026
0c8b83c
Merge pull request #25827 from stuxf/fix/outbound-host-validation
yuneng-berri Apr 16, 2026
be1b802
Merge pull request #25834 from stuxf/fix/path-traversal-guardrail-yaml
yuneng-berri Apr 16, 2026
fdeeed6
fix(ci): resolve mypy and ruff lint failures
yuneng-berri Apr 16, 2026
070374d
fix(ci): authorize RestrictedPython in liccheck.ini
yuneng-berri Apr 16, 2026
f639769
fix(proxy): use flat soft_budget field for virtual key projected-spen…
ryan-crabbe-berri Apr 16, 2026
c8cfc5d
fix(httpx): set response.request and strip content-encoding in Masked…
yuneng-berri Apr 16, 2026
2dd060b
Merge pull request #25838 from BerriAI/litellm_fix-virtual-key-projec…
ryan-crabbe-berri Apr 16, 2026
bbf204e
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
ryan-crabbe-berri Apr 16, 2026
83095c2
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
ryan-crabbe-berri Apr 16, 2026
96415a5
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
ryan-crabbe-berri Apr 16, 2026
cf4f051
Merge pull request #25806 from BerriAI/litellm_fix_guardrail_optional…
ryan-crabbe-berri Apr 16, 2026
18c93e0
Merge pull request #25809 from BerriAI/litellm_fix_tool_test_panel_bo…
ryan-crabbe-berri Apr 16, 2026
ed0138b
Merge pull request #25812 from BerriAI/litellm_fix-invalidate-orgs-on…
ryan-crabbe-berri Apr 16, 2026
6b2973b
fix(vertex): strip version suffix from model name in count_tokens req…
dkindlund Apr 16, 2026
3cbb36a
fix(ollama): propagate done_reason='length' as finish_reason for max_…
jarsever Apr 16, 2026
265a960
fix(noma-v2): fall back to key_alias for application_id in Noma dashb…
bse-ai Apr 16, 2026
dd4a419
fix(utils): allowed_openai_params must not forward unset params as No…
xr843 Apr 16, 2026
d9a8a8a
fix(credentials): sync in-memory credential_list after update (#25758)
kuun993 Apr 16, 2026
baf19b4
Fix import error
Sameerlite Apr 16, 2026
4b5c86b
Fix code qa
Sameerlite Apr 16, 2026
26937a2
Merge pull request #25831 from BerriAI/litellm_oss_staging_04_15_2026_p1
Sameerlite Apr 16, 2026
0868a82
Add support for opus 4.7 with new effort levels
Sameerlite Apr 16, 2026
fb33daa
opus 4.7 doesn't support tool search
Sameerlite Apr 16, 2026
607412d
feat(bedrock): inject thinking for clear_thinking context_management …
Sameerlite Apr 16, 2026
a9ff4c6
Fix add leagcy support for claude code
Sameerlite Apr 16, 2026
b3d5ff5
Fix tests + add docs
Sameerlite Apr 16, 2026
dafa1bf
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
yuneng-berri Apr 16, 2026
f94c8dd
Fix model names
Sameerlite Apr 16, 2026
07d863b
Remove max support for opus 4.7
Sameerlite Apr 16, 2026
c294bbe
fix(deps): pin langgraph-prebuilt==1.0.8 to avoid broken 1.0.9
yuneng-berri Apr 16, 2026
b26f858
fix(ci): authorize langgraph-prebuilt in liccheck.ini
yuneng-berri Apr 16, 2026
44c9924
Merge pull request #25867 from BerriAI/litellm_day_0_opus_4.7_support
ishaan-berri Apr 16, 2026
b80bd9d
bump: version 1.83.8 → 1.83.9
yuneng-berri Apr 16, 2026
0736851
bump: version 0.4.65 → 0.4.66
yuneng-berri Apr 16, 2026
13522ff
Fix version in docs
Sameerlite Apr 16, 2026
21c0718
Merge pull request #25871 from BerriAI/litellm_yj_apr15
yuneng-berri Apr 16, 2026
6fab790
Merge pull request #25867 from BerriAI/litellm_day_0_opus_4.7_support
ishaan-berri Apr 16, 2026
fe6fef9
Fix version in docs
Sameerlite Apr 16, 2026
c6c970c
Merge pull request #25875 from BerriAI/litellm_docs_opus_4.7
Sameerlite Apr 16, 2026
72ba880
[Infra] Bump llm_translation_testing resource class to xlarge
yuneng-berri Apr 16, 2026
65717ad
Merge pull request #25887 from BerriAI/litellm_/vigilant-cannon
shin-berri Apr 16, 2026
c0fc4c4
Merge pull request #25876 from BerriAI/litellm_hotfix_opus_4.7
ishaan-berri Apr 16, 2026
ebac729
[Infra] CI: reduce llm_translation_testing parallelism and tolerate w…
yuneng-berri Apr 16, 2026
7279dca
Merge pull request #25898 from BerriAI/litellm_llmTranslationOomMitig…
shin-berri Apr 16, 2026
72ff989
[Test] Remove dead Bedrock clear_thinking interleaved-thinking-beta a…
yuneng-berri Apr 16, 2026
13108f3
Add docs announcement bar for Trivy compromise resolution (#25870)
krrish-berri-2 Apr 16, 2026
66f0d14
Merge pull request #25913 from BerriAI/litellm_dropDeadBedrockThinkin…
yuneng-berri Apr 16, 2026
35a186a
[Test] Mock live Bedrock Moonshot tests in llm_translation
yuneng-berri Apr 16, 2026
e1da27d
Merge remote-tracking branch 'origin/litellm_internal_staging' into l…
yuneng-berri Apr 16, 2026
95e1bab
[Fix] TogetherAIConfig.get_supported_openai_params recursion
yuneng-berri Apr 17, 2026
00bac08
[Test] Mock remaining live Bedrock Moonshot tests
yuneng-berri Apr 17, 2026
724926f
Merge pull request #25920 from BerriAI/litellm_/amazing-almeida
yuneng-berri Apr 17, 2026
f07aadc
Merge pull request #25873 from BerriAI/yj_extras_bump_apr16
yuneng-berri Apr 17, 2026
bf7b7f7
Merge pull request #25872 from BerriAI/yj_bump_apr16_2
yuneng-berri Apr 17, 2026
cd92b04
fix(ocr): add missing Mistral OCR params to allowlist (#25858)
michelligabriele Apr 17, 2026
f69b9d6
Add capability to override default GitHub Copilot authentication endp…
steromano87 Apr 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1,708 changes: 748 additions & 960 deletions .circleci/config.yml

Large diffs are not rendered by default.

21 changes: 0 additions & 21 deletions .circleci/requirements.txt

This file was deleted.

14 changes: 7 additions & 7 deletions .devcontainer/post-create.sh
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
#!/usr/bin/env bash
set -e

echo "[post-create] Installing poetry via pip"
python -m pip install --upgrade pip
python -m pip install poetry
echo "[post-create] Installing uv"
curl -LsSf https://astral.sh/uv/0.10.9/install.sh | env UV_NO_MODIFY_PATH=1 sh
export PATH="$HOME/.local/bin:$PATH"

echo "[post-create] Installing Python dependencies (poetry)"
poetry install --with dev --extras proxy
echo "[post-create] Installing Python dependencies (uv)"
uv sync --frozen --group proxy-dev --extra proxy

echo "[post-create] Generating Prisma client"
poetry run prisma generate
uv run --no-sync prisma generate

echo "[post-create] Installing npm dependencies"
cd ui/litellm-dashboard && npm ci

echo "[post-create] Done"
echo "[post-create] Done"
2 changes: 1 addition & 1 deletion .gitguardian.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ secret:
- "docs/**"
- "**/*.md"
- "**/*.lock"
- "poetry.lock"
- "uv.lock"
- "package-lock.json"

# Ignore security incidents with the SHA256 of the occurrence (false positives)
Expand Down
29 changes: 11 additions & 18 deletions .github/workflows/_test-unit-base.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,37 +51,30 @@ jobs:
with:
python-version: "3.12"

- name: Install Poetry
run: pip install 'poetry==2.3.2'
- name: Set up uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7
with:
version: "0.10.9"

- name: Cache Poetry dependencies
- name: Cache uv dependencies
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
path: |
~/.cache/pypoetry
~/.cache/pip
~/.cache/uv
.venv
key: ${{ runner.os }}-poetry-${{ hashFiles('poetry.lock') }}
key: ${{ runner.os }}-uv-${{ hashFiles('uv.lock') }}
restore-keys: |
${{ runner.os }}-poetry-
${{ runner.os }}-uv-

- name: Install dependencies
run: |
poetry config virtualenvs.in-project true
poetry install --with dev,proxy-dev --extras "proxy semantic-router"
poetry run pip install google-genai==1.22.0 \
google-cloud-aiplatform==1.115.0 fastapi-offline==1.7.3 python-multipart==0.0.22 openapi-core==0.23.0

- name: Setup litellm-enterprise
run: |
poetry run pip install --force-reinstall --no-deps -e enterprise/
uv sync --frozen --group ci --group proxy-dev --extra google --extra proxy --extra semantic-router

- name: Generate Prisma client
env:
PRISMA_BINARY_CACHE_DIR: ${{ runner.temp }}/prisma-cache
run: |
poetry run pip install nodejs-wheel-binaries==24.13.1
poetry run prisma generate --schema litellm/proxy/schema.prisma
uv run --no-sync prisma generate --schema litellm/proxy/schema.prisma

- name: Run tests
env:
Expand All @@ -90,7 +83,7 @@ jobs:
WORKERS: ${{ inputs.workers }}
RERUNS: ${{ inputs.reruns }}
run: |
poetry run pytest ${TEST_PATH:?} \
uv run --no-sync pytest ${TEST_PATH:?} \
--tb=short -vv \
--maxfail="${MAX_FAILURES}" \
-n "${WORKERS}" \
Expand Down
33 changes: 13 additions & 20 deletions .github/workflows/_test-unit-services-base.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,44 +86,37 @@ jobs:
with:
python-version: "3.12"

- name: Install Poetry
run: pip install 'poetry==2.3.2'
- name: Set up uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7
with:
version: "0.10.9"

- name: Cache Poetry dependencies
- name: Cache uv dependencies
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
path: |
~/.cache/pypoetry
~/.cache/pip
~/.cache/uv
.venv
key: ${{ runner.os }}-poetry-services-${{ hashFiles('poetry.lock') }}
key: ${{ runner.os }}-uv-services-${{ hashFiles('uv.lock') }}
restore-keys: |
${{ runner.os }}-poetry-services-
${{ runner.os }}-uv-services-

- name: Install dependencies
run: |
poetry config virtualenvs.in-project true
poetry install --with dev,proxy-dev --extras "proxy semantic-router"
poetry run pip install google-genai==1.22.0 \
google-cloud-aiplatform==1.115.0 fastapi-offline==1.7.3 python-multipart==0.0.22 openapi-core==0.23.0

- name: Setup litellm-enterprise
run: |
poetry run pip install --force-reinstall --no-deps -e enterprise/
uv sync --frozen --group ci --group proxy-dev --extra google --extra proxy --extra semantic-router

- name: Generate Prisma client
env:
PRISMA_BINARY_CACHE_DIR: ${{ runner.temp }}/prisma-cache
run: |
poetry run pip install nodejs-wheel-binaries==24.13.1
poetry run prisma generate --schema litellm/proxy/schema.prisma
uv run --no-sync prisma generate --schema litellm/proxy/schema.prisma

- name: Run Prisma migrations
if: ${{ inputs.enable-postgres }}
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
run: |
poetry run prisma db push --schema litellm/proxy/schema.prisma --accept-data-loss
uv run --no-sync prisma db push --schema litellm/proxy/schema.prisma --accept-data-loss

- name: Run tests
env:
Expand All @@ -134,7 +127,7 @@ jobs:
DATABASE_URL: ${{ inputs.enable-postgres && secrets.DATABASE_URL || '' }}
run: |
if [ "${WORKERS}" = "0" ]; then
poetry run pytest ${TEST_PATH:?} \
uv run --no-sync pytest ${TEST_PATH:?} \
--tb=short -vv \
--maxfail="${MAX_FAILURES}" \
--reruns "${RERUNS}" \
Expand All @@ -144,7 +137,7 @@ jobs:
--cov-report=xml:coverage.xml \
--cov-config=pyproject.toml
else
poetry run pytest ${TEST_PATH:?} \
uv run --no-sync pytest ${TEST_PATH:?} \
--tb=short -vv \
--maxfail="${MAX_FAILURES}" \
-n "${WORKERS}" \
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/auto_update_price_and_context_window.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,13 @@ jobs:
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
with:
persist-credentials: false
- name: Install Dependencies
run: |
pip install 'aiohttp==3.13.3'
- name: Set up uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7
with:
version: "0.10.9"
- name: Update JSON Data
run: |
python ".github/workflows/auto_update_price_and_context_window_file.py"
uv run --frozen --with 'aiohttp==3.13.3' python ".github/workflows/auto_update_price_and_context_window_file.py"
- name: Create Pull Request
run: |
git add model_prices_and_context_window.json
Expand Down
18 changes: 13 additions & 5 deletions .github/workflows/codspeed.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,21 @@ jobs:
with:
python-version: "3.12"

- name: Install dependencies
run: |
pip install -e "."
pip install pytest pytest-codspeed==4.3.0
- name: Set up uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7
with:
version: "0.10.9"

- name: Run benchmarks
uses: CodSpeedHQ/action@1c8ae4843586d3ba879736b7f6b7b0c990757fab # v4.12.1
with:
mode: simulation
run: pytest tests/benchmarks/ --codspeed
run: >
env PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
uv run --frozen --no-default-groups
--with pytest==8.3.5
--with pytest-codspeed==4.3.0
pytest
-p pytest_codspeed.plugin
tests/benchmarks/
--codspeed
42 changes: 42 additions & 0 deletions .github/workflows/guard-main-branch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Guard main branch

on:
pull_request:
branches:
- main
merge_group:

permissions: {}

# DO NOT RENAME the job's `name:` — it is referenced by GitHub branch
# protection as a required status check on `main`. Renaming silently
# breaks the gate.
jobs:
guard:
name: Verify PR source branch
runs-on: ubuntu-latest
timeout-minutes: 2
steps:
- name: Reject merge_group events
if: github.event_name == 'merge_group'
run: |
echo "::error::Merge queue is not supported for main. Disable merge queue or update this guard."
exit 1
- name: Check head branch name
env:
HEAD_REF: ${{ github.head_ref }}
HEAD_REPO: ${{ github.event.pull_request.head.repo.full_name }}
BASE_REPO: ${{ github.repository }}
run: |
echo "PR head repo: $HEAD_REPO"
echo "PR head branch: $HEAD_REF"
if [ "$HEAD_REPO" != "$BASE_REPO" ]; then
echo "::error::PRs to main must originate from the canonical repository ($BASE_REPO), not a fork ($HEAD_REPO). External contributors should open PRs against the 'litellm_oss_branch' branch instead."
exit 1
fi
if [ "$HEAD_REF" = "litellm_internal_staging" ] || [[ "$HEAD_REF" == litellm_hotfix_?* ]]; then
echo "Allowed source branch."
exit 0
fi
echo "::error::PRs to main must originate from 'litellm_internal_staging' or a 'litellm_hotfix_*' branch. Got: '$HEAD_REF'. If this is a contribution, retarget the PR against 'litellm_oss_branch' instead."
exit 1
23 changes: 11 additions & 12 deletions .github/workflows/llm-translation-testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,26 +31,25 @@ jobs:
with:
python-version: "3.11"

- name: Install Poetry
run: |
pip install 'poetry==2.3.2'
poetry config virtualenvs.create true
poetry config virtualenvs.in-project true
- name: Set up uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7
with:
version: "0.10.9"
enable-cache: false

- name: Restore Poetry dependencies cache
uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.0.0
- name: Restore uv dependencies cache
uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
path: |
~/.cache/pypoetry
~/.cache/uv
.venv
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
key: ${{ runner.os }}-uv-${{ hashFiles('uv.lock') }}
restore-keys: |
${{ runner.os }}-poetry-
${{ runner.os }}-uv-

- name: Install dependencies
run: |
poetry install --with dev
poetry run pip install 'pytest-xdist==3.8.0' 'pytest-timeout==2.4.0'
uv sync --frozen

- name: Create test results directory
run: mkdir -p test-results
Expand Down
Loading
Loading