| # Pinned to Gradio 5.x because gr.Dataframe in Gradio 6.14 silently | |
| # drops all updates after the first render: server-side load_leaderboard | |
| # runs (and yields under demo.load), but the rendered DOM never picks | |
| # up the new rows. Reproduced locally with a row-growing fixture, then | |
| # verified to work cleanly with gradio_leaderboard.Leaderboard on | |
| # Gradio 5. The reference HF leaderboards (open-llm-leaderboard, | |
| # DABstep, bigcodebench) all run on this stack. Revisit once a | |
| # Gradio 6-compatible gradio_leaderboard ships AND the underlying | |
| # Dataframe-update bug is fixed upstream. | |
| # OAuth extras (authlib + itsdangerous) are required by gr.LoginButton | |
| # + gr.OAuthProfile, which gate the Submit tab on HF login. | |
| gradio[oauth]==5.50.0 | |
| gradio-leaderboard==0.0.14 | |
| pandas>=2.0 | |
| # huggingface_hub >=1.16 for the Jobs Python API plus the bucket API | |
| # (sync_bucket / list_bucket_tree / batch_bucket_files). Used by submit.py | |
| # to dispatch + poll per-submission GPU evals and to stage/merge sharded | |
| # artifacts through an HF Storage Bucket (no volume mounts). | |
| huggingface_hub>=1.16.0 | |
| datasets>=3.0 | |
| requests>=2.31 | |
| # tasks.py parses each fixture's description.yaml (prompt + task_type + | |
| # input_files) to build the Task-browser tab. Pinned explicitly even | |
| # though it rides in transitively via gradio/huggingface_hub. | |
| pyyaml>=6.0 | |