- Добавлены библиотеки pre-commit и CI Workflow.
- Обновлен список зависимостей в requirements.txt.
- Добавлены посты об улучшениях функциональности FastAPI.
- Обновлена секция Установки проекта.
- Создан новый модуль `handlers.py` для управления аутентификацией.
- Добавлена класс `AuthHandler` с методом для генерации хэшей паролей.
- Использование библиотеки `passlib` для обеспечения безопасного хранения паролей.
- Создан новый файл managers.py в директории lkeep/apps/auth.
- Внутри файла создан класс UserManager с методом create_user для создания пользователей.
- Метод create_user использует SQLAlchemy для взаимодействия с базой данных и обрабатывает исключения при добавлении существующего пользователя.
- Создан новый файл `schemas.py` в директории `lkeep/apps/auth`.
- Внутри файла определены несколько классов Pydantic для обработки различных сценариев работы с пользователями (получение по ID, электронной почте, регистрация и создание).
- Каждый класс имеет соответствующие поля и типы данных, а также документации в формате docstring.
- Добавлены комментарии к файлу для описания проекта, автора, года создания и специализации.
- Созданы новые файлы `__init__.py` в директориях `lkeep/apps` и `lkeep/apps/auth`.
- Добавлены комментарии с метаданными о проекте, авторе, годе и цели.
- Добавлен атрибут `secret_key` для хранения секретного ключа.
- Обновлён класс `Settings` с использованием `SecretStr`.
- Изменены параметры конструктора в классе `DBDependency`, теперь они инициализируются через настройки.
- Добавлена зависимость `pydantic[email]` для поддержки Email в схемах модели данных.
- Добавлена зависимость `passlib` для упрощения процесса создания паролей.
- Добавлена зависимость `bcrypt` для безопасного хеширования паролей.
- Обновлен `.env.example` файл, добавлен параметр `SECRET_KEY` для настройки секретного ключа.
- Добавлены строки документации к модулю `main.py`.
- Добавлены строки документации к модулю `__init__.py`.
- Обновлена заголовочная информация для проекта.
- Создан файл `__init__.py` в папке `lkeep/database/models` для инициализации модуля.
- Создан класс `Base` в `base.py` как базовый класс для всех ORM-моделей.
- Добавлена модель `User` в `user.py`, представляющая пользователя с необходимыми атрибутами.
- Создан файл `__init__.py` в пакете `lkeep.database.mixins`.
- Добавлен класс `IDMixin` для генерации уникальных идентификаторов.
- Создан файл `id_mixins.py` с реализацией миксина `IDMixin`.
- Добавлены классы `CreatedAtMixin`, `UpdatedAtMixin` и `TimestampsMixin` для управления временными метками в моделях SQLAlchemy.
- Добавлены заголовочные комментарии в файлы settings.py и __init__.py.
- Обновлена метаинформация о проекте, авторе и году.
- Добавлена ссылка на специальный проект "Код на салфетке".
- Созданы новые файлы alembic/versions/2025_01_10_1706-ccf7560dd457_create_user_table.py, alembic/env.py, alembic/README.
- Добавлен новый конфигурационный файл alembic.ini для настройки Alembic.
- Создан шаблон для генерации миграционных скриптов в файле script.py.mako.
- Создан класс `DBSettings` в модуле `settings.py` для хранения параметров подключения к базе данных.
- Добавлен класс `DBDependency` в модуль `db_dependency.py`, который управляет взаимодействием с асинхронной базой данных с использованием SQLAlchemy.
- Обновлен модуль `__init__.py` для инициализации новых компонентов.
- Добавлена подробная документация сервиса Lkeep.
- Описаны основные технологии и зависимости проекта.
- Включены инструкции по установке и запуску приложения.
- Добавлены ссылки на статьи для новичков.
- Добавлена поддержка утилиты uvicorn для запуска приложения FastAPI.
- Создан новый модуль `settings.py` в пакете `core`, содержащий настройки базы данных.
- Обновлена секция `dependencies` в pyproject.toml: добавлены sqlalchemy, asyncpg и pydantic-settings.
- Добавлены переменные окружения в .env.example для настройки базы данных.
- Создан файл .gitignore для исключения IDE и файла с токенами.
- Обновлена секция [project.scripts] в pyproject.toml: добавлен скрипт app для запуска приложения.
- Обновлена версия `poetry` до 2.0.0 в файлах `.gitea/workflows/lint.yaml` и `.github/workflows/lint.yaml`.
- Удалены неиспользуемые переменные окружения: `RUNNER_TOOL_CACHE`, `AGENT_TOOLSDIRECTORY`.
feat: обновлены версии зависимостей и линтеров
- Обновлена версия `poetry` до 2.0.0 в файлах `.gitea/workflows/lint.yaml` и `.github/workflows/lint.yaml`.
- Удалены неиспользуемые переменные окружения: `RUNNER_TOOL_CACHE`, `AGENT_TOOLSDIRECTORY`.
- Создан файл `.gitea/workflows/lint.yaml` для настройки проверок в Gitea.
- Добавлен файл `.pre-commit-config.yaml` с конфигурацией pre-commit hooks.
- Создан файл `.github/workflows/lint.yaml` для линтинга кода при push в GitHub.