Release 1.0rc5

This commit is contained in:
Esa Kataja
2025-05-16 13:13:28 +03:00
parent 3f7b6d10f9
commit 512729398b
6 changed files with 26 additions and 8 deletions
+14
View File
@@ -1,5 +1,19 @@
# Eurovision 25 Backend Changelog # 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) ## 1.0rc4 (2025-05-16)
### Features ### Features
+5 -1
View File
@@ -1,5 +1,7 @@
# Eurovision 25 Homereview Backend # Eurovision 25 Homereview Backend
**Version: 1.0rc5**
## Description ## 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. 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 * [ ] Replace password hashing with passlib
* [ ] Switch to PostgreSQL from DuckDB * [ ] Switch to PostgreSQL from DuckDB
* [x] Implement more comprehensive logging * [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] 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 ## Contributing
+1 -1
View File
@@ -8,7 +8,7 @@ services:
build: build:
context: . context: .
dockerfile: Dockerfile dockerfile: Dockerfile
image: eurovision-25-backend:1.0rc4 image: eurovision-25-backend:1.0rc5
ports: ports:
- "8000:8000" - "8000:8000"
volumes: volumes:
+1 -1
View File
@@ -1,6 +1,6 @@
[project] [project]
name = "Eurovision-25-backend" name = "Eurovision-25-backend"
version = "1.0rc4" version = "1.0rc5"
description = "Backend for Eurovision 25" description = "Backend for Eurovision 25"
readme = "README.md" readme = "README.md"
requires-python = ">=3.12" requires-python = ">=3.12"
+1 -1
View File
@@ -12,7 +12,7 @@ from lib.db import init_db
app = FastAPI( app = FastAPI(
title="Eurovision 25 Homereview API", title="Eurovision 25 Homereview API",
description="Backend API for Eurovision 25 Homereview application", description="Backend API for Eurovision 25 Homereview application",
version="1.0rc4", version="1.0rc5",
openapi_url="/sec_schema.json", openapi_url="/sec_schema.json",
docs_url="/docut", docs_url="/docut",
redoc_url=None, redoc_url=None,
Generated
+4 -4
View File
@@ -86,14 +86,14 @@ wheels = [
[[package]] [[package]]
name = "click" name = "click"
version = "8.1.8" version = "8.2.0"
source = { registry = "https://pypi.org/simple" } source = { registry = "https://pypi.org/simple" }
dependencies = [ dependencies = [
{ name = "colorama", marker = "sys_platform == 'win32'" }, { 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 = [ 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]] [[package]]
@@ -131,7 +131,7 @@ wheels = [
[[package]] [[package]]
name = "eurovision-25-backend" name = "eurovision-25-backend"
version = "1.0rc4" version = "1.0rc5"
source = { virtual = "." } source = { virtual = "." }
dependencies = [ dependencies = [
{ name = "aiofiles" }, { name = "aiofiles" },