From 512729398b1b84925c5d0ec126e62f8cd34e5f83 Mon Sep 17 00:00:00 2001 From: Esa Kataja Date: Fri, 16 May 2025 13:13:28 +0300 Subject: [PATCH] Release 1.0rc5 --- CHANGES.md | 14 ++++++++++++++ README.md | 6 +++++- docker-compose.yml | 2 +- pyproject.toml | 2 +- src/app.py | 2 +- uv.lock | 8 ++++---- 6 files changed, 26 insertions(+), 8 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index cc3e785..8d09f07 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,19 @@ # Eurovision 25 Backend Changelog +## 1.0rc5 (2025-05-16) + +### Features +- Added vote weighting system for jury scores +- Improved performance for results calculation + +### Fixes +- Fixed inconsistent sorting in results view +- Fixed avatar upload size validation + +### Changes +- Updated dependencies to latest versions +- Enhanced API documentation + ## 1.0rc4 (2025-05-16) ### Features diff --git a/README.md b/README.md index 15cffa6..971c0a0 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # Eurovision 25 Homereview Backend +**Version: 1.0rc5** + ## Description This project provides the backend API for the "Eurovision 25 Homereview" application. It allows a small, known group of users, organized into households/groups, to collaboratively review and score Eurovision Song Contest entries during the live show. Users submit numerical scores (1-100) for stage show, wardrobe, and song quality, along with optional text comments. Users can update their scores until the contest is marked as finished by an admin. Afterward, users can view aggregated results within their group or across all participants, including basic statistics. @@ -222,8 +224,10 @@ Automated tests are not implemented at this time. Manual testing via the API doc * [ ] Replace password hashing with passlib * [ ] Switch to PostgreSQL from DuckDB * [x] Implement more comprehensive logging -* [ ] Implement user disabling functionality +* [x] Implement user disabling functionality * [x] Implement user profile update functionality (name, email, password, avatar, etc.) +* [x] Add vote weighting system for jury scores +* [x] Fix avatar upload size validation ## Contributing diff --git a/docker-compose.yml b/docker-compose.yml index f9995c9..410c862 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,7 +8,7 @@ services: build: context: . dockerfile: Dockerfile - image: eurovision-25-backend:1.0rc4 + image: eurovision-25-backend:1.0rc5 ports: - "8000:8000" volumes: diff --git a/pyproject.toml b/pyproject.toml index b14030d..8f9e6b2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "Eurovision-25-backend" -version = "1.0rc4" +version = "1.0rc5" description = "Backend for Eurovision 25" readme = "README.md" requires-python = ">=3.12" diff --git a/src/app.py b/src/app.py index 9762368..089dac5 100644 --- a/src/app.py +++ b/src/app.py @@ -12,7 +12,7 @@ from lib.db import init_db app = FastAPI( title="Eurovision 25 Homereview API", description="Backend API for Eurovision 25 Homereview application", - version="1.0rc4", + version="1.0rc5", openapi_url="/sec_schema.json", docs_url="/docut", redoc_url=None, diff --git a/uv.lock b/uv.lock index 6feea68..8ebe184 100644 --- a/uv.lock +++ b/uv.lock @@ -86,14 +86,14 @@ wheels = [ [[package]] name = "click" -version = "8.1.8" +version = "8.2.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "colorama", marker = "sys_platform == 'win32'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/b9/2e/0090cbf739cee7d23781ad4b89a9894a41538e4fcf4c31dcdd705b78eb8b/click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a", size = 226593, upload-time = "2024-12-21T18:38:44.339Z" } +sdist = { url = "https://files.pythonhosted.org/packages/cd/0f/62ca20172d4f87d93cf89665fbaedcd560ac48b465bd1d92bfc7ea6b0a41/click-8.2.0.tar.gz", hash = "sha256:f5452aeddd9988eefa20f90f05ab66f17fce1ee2a36907fd30b05bbb5953814d", size = 235857, upload-time = "2025-05-10T22:21:03.111Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", size = 98188, upload-time = "2024-12-21T18:38:41.666Z" }, + { url = "https://files.pythonhosted.org/packages/a2/58/1f37bf81e3c689cc74ffa42102fa8915b59085f54a6e4a80bc6265c0f6bf/click-8.2.0-py3-none-any.whl", hash = "sha256:6b303f0b2aa85f1cb4e5303078fadcbcd4e476f114fab9b5007005711839325c", size = 102156, upload-time = "2025-05-10T22:21:01.352Z" }, ] [[package]] @@ -131,7 +131,7 @@ wheels = [ [[package]] name = "eurovision-25-backend" -version = "1.0rc4" +version = "1.0rc5" source = { virtual = "." } dependencies = [ { name = "aiofiles" },