Spaces:
Running
on
Zero
Running
on
Zero
File size: 1,453 Bytes
f16bb9f 520ee21 f16bb9f 520ee21 f16bb9f 520ee21 2b57c64 520ee21 f16bb9f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
"""
File: requirements_app.py
Author: Dmitry Ryumin, Maxim Markitantov, Elena Ryumina, Anastasia Dvoynikova, and Alexey Karpov
Description: Project requirements for the Gradio app.
License: MIT License
"""
import base64
import requests
import polars as pl
# Importing necessary components for the Gradio app
from app.config import config_data
def encode_image_to_base64(image_data: str) -> str:
return base64.b64encode(image_data).decode("utf-8")
def fetch_pypi_badge_base64(package_name: str) -> str:
url = f"https://img.shields.io/pypi/v/{package_name}"
response = requests.get(url)
response.raise_for_status()
base64_image = encode_image_to_base64(response.content)
return (
f"<a href='https://pypi.org/project/{package_name}' target='_blank'>"
f"<img src='data:image/svg+xml;base64,{base64_image}' alt='PyPI' /></a>"
)
def read_requirements(file_path="requirements.txt"):
with open(file_path, "r") as file:
lines = file.readlines()
data = [
{
config_data.Requirements_LIBRARY: split_line[0],
config_data.Requirements_RECOMMENDED_VERSION: split_line[1],
# config_data.Requirements_CURRENT_VERSION: fetch_pypi_badge_base64(
# split_line[0]
# ),
}
for line in lines
if (split_line := line.strip().split("==")) and len(split_line) == 2
]
df = pl.DataFrame(data)
return df
|