Prepare v1.0.3 release notes
This commit is contained in:
51
releases/v1.0.3/RELEASE_NOTES.md
Normal file
51
releases/v1.0.3/RELEASE_NOTES.md
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
# QuoteForge v1.0.3
|
||||||
|
|
||||||
|
Дата релиза: 2026-02-06
|
||||||
|
Тег: `v1.0.3`
|
||||||
|
Диапазон изменений: `v1.0.2..v1.0.3`
|
||||||
|
|
||||||
|
## Что нового
|
||||||
|
|
||||||
|
- Добавлена страница управления проектами `/projects` с:
|
||||||
|
- датой и временем создания проекта;
|
||||||
|
- сортировкой по названию и дате создания;
|
||||||
|
- серверной пагинацией;
|
||||||
|
- фильтром по автору в заголовке таблицы.
|
||||||
|
- Добавлена отдельная вкладка `Статус синхронизации` на уровне `Алерты / Компоненты / Прайслисты`.
|
||||||
|
- Во вкладке статуса синхронизации отображаются:
|
||||||
|
- пользователь;
|
||||||
|
- версия приложения;
|
||||||
|
- статус (`онлайн` или относительное время последней синхронизации).
|
||||||
|
|
||||||
|
## Изменения синхронизации
|
||||||
|
|
||||||
|
- Реализован heartbeat синхронизации пользователей в MariaDB: `qt_pricelist_sync_status`.
|
||||||
|
- Добавлен API `GET /api/sync/users-status` для UI статуса синхронизации.
|
||||||
|
- Логика онлайн-статуса рассчитана от интервала фоновой синхронизации: `5 минут + 10%`.
|
||||||
|
- В heartbeat фиксируется версия приложения (`app_version`).
|
||||||
|
|
||||||
|
## Важные исправления
|
||||||
|
|
||||||
|
- Исправлено восстановление отсутствующей серверной конфигурации при push обновлений.
|
||||||
|
- Исправлено экранирование паролей в MySQL DSN в setup.
|
||||||
|
- Улучшена логика запуска SQL-миграций на старте при отсутствии прав/необходимости.
|
||||||
|
- Обновлена логика пересчета прайслистов через админский price-refresh.
|
||||||
|
|
||||||
|
## Миграции и совместимость
|
||||||
|
|
||||||
|
Добавлены SQL-миграции:
|
||||||
|
|
||||||
|
- `migrations/010_add_pricelist_sync_status.sql`
|
||||||
|
- `migrations/011_add_app_version_to_pricelist_sync_status.sql`
|
||||||
|
|
||||||
|
Релиз совместим с предыдущей веткой `v1.0.x`; новая таблица синхронизации создается автоматически.
|
||||||
|
|
||||||
|
## Коммиты в релизе
|
||||||
|
|
||||||
|
- `b1b50ce` Add projects table controls and sync status tab with app version
|
||||||
|
- `6ab1e98` sync: recover missing server config during update push
|
||||||
|
- `a1d2192` Fix MySQL DSN escaping for setup passwords and clarify DB user setup
|
||||||
|
- `a90c07c` update stale files list
|
||||||
|
- `e9307c4` Apply remaining pricelist and local-first updates
|
||||||
|
- `1b48401` Use admin price-refresh logic for pricelist recalculation
|
||||||
|
- `4a86f7b` fix: skip startup sql migrations when not needed or no permissions
|
||||||
Reference in New Issue
Block a user