Commit Graph

8 Commits

Author SHA1 Message Date
Matthieu B
73c29458fe fix: resolve all test failures, linting errors, and type errors
- Fix 55 test failures caused by missing request contexts and incorrect
  session_transaction() usage across 8 test files
- Fix ruff import sorting errors and unused imports
- Fix 122 type errors: rename method override parameters to match base
  classes, add None guards for fetchone()/datetime, widen dict type
  annotations, add type: ignore for SQLAlchemy stub limitations
- Add [tool.ty.rules] config to suppress unsupported-base warnings
- Fix _ variable shadowing gettext in wizard routes
- Add noqa: ARG002 for unused method arguments required by base class
2026-03-29 16:20:23 +02:00
Matthieu B
9b5aa0972a refactor: remove slop from media and new linting rules 2025-10-23 18:33:50 +02:00
Matthieu B
65d0548a85 fix: prevent unlimited invitation users from being incorrectly linked by identity
The bug occurred in InvitationManager.ensure_invitation_identity() which was
creating shared identities for all multi-server invitations regardless of type.

This caused different users using the same unlimited invitation code to be
incorrectly linked together in the admin interface, even though they were
completely separate people.

The fix implements proper invitation type checking:
- Limited invitations: Always link users with same code (same person across servers)
- Unlimited invitations: Only link users with same code AND same email (same person)
- Unlimited invitations with different emails remain separate (different people)

This preserves the intended multi-server functionality while preventing the
identity linking bug for unlimited invitations.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 19:36:06 +02:00
Matthieu B
486e40e202 fixes and closes #784 #772 #795 2025-08-27 22:08:37 +02:00
Matthieu B
b6e54adbe0 Enhance invitation flow by marking invitations as used and syncing users in background threads 2025-08-14 18:13:11 +02:00
Matthieu B
02126de7b8 Add ty dependency and pre-push hook for type checking
- Added `ty` version 0.0.1a14 to dependencies in `pyproject.toml`.
- Updated `.pre-commit-config.yaml` to include a pre-push hook for type checking using `ty`.
- Made minor adjustments in various files to ensure compatibility with type checking.
2025-07-15 21:32:43 +02:00
Matthieu B
7b8f64af7d Fix SQLAlchemy model constructors to accept keyword arguments
- Added __init__ constructors to all SQLAlchemy models
- Fixed pyright 'No parameter named' errors across the codebase
- Fixed various ruff linting issues (SIM108, E741, E402, SIM102, B904, SIM105)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-15 13:52:15 +02:00
Matthieu B
dd8da235ee Enhance media server support by adding Kavita integration and updating existing routes. Refactor Audiobookshelf, Emby, Jellyfin, and Romm blueprints to utilize a common media blueprint factory. Implement unified invitation processing and improve wizard migration handling. Update templates and forms to accommodate new server types and ensure backward compatibility. 2025-07-12 21:29:13 +02:00