Added comprehensive release notes including: - Summary of the v1.2.1 patch release - Bug fix details for configurator component substitution - API price loading implementation - Testing verification - Installation instructions for all platforms - Migration notes (no DB migration required) Release notes now provide full context for end users and developers. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
90 lines
3.4 KiB
Markdown
90 lines
3.4 KiB
Markdown
# QuoteForge v1.2.1
|
||
|
||
**Дата релиза:** 2026-02-09
|
||
**Тег:** `v1.2.1`
|
||
**GitHub:** https://git.mchus.pro/mchus/QuoteForge/releases/tag/v1.2.1
|
||
|
||
## Резюме
|
||
|
||
Быстрый патч-релиз, исправляющий регрессию в конфигураторе после рефактора v1.2.0. После удаления поля `CurrentPrice` из компонентов, autocomplete перестал показывать компоненты. Теперь используется на-demand загрузка цен через API.
|
||
|
||
## Что исправлено
|
||
|
||
### 🐛 Configurator Component Substitution (acf7c8a)
|
||
- **Проблема:** После рефактора в v1.2.0, autocomplete фильтровал ВСЕ компоненты, потому что проверял удаленное поле `current_price`
|
||
- **Решение:** Загрузка цен на-demand через `/api/quote/price-levels`
|
||
- Добавлен `componentPricesCache` для кэширования цен в памяти
|
||
- Функция `ensurePricesLoaded()` загружает цены при фокусе на поле поиска
|
||
- Все 3 режима autocomplete (single, multi, section) обновлены
|
||
- Компоненты без цен по-прежнему фильтруются (как требуется), но проверка использует API
|
||
- **Затронутые файлы:** `web/templates/index.html` (+66 строк, -12 строк)
|
||
|
||
## История v1.2.0 → v1.2.1
|
||
|
||
Всего коммитов: **2**
|
||
|
||
| Хеш | Автор | Сообщение |
|
||
|-----|-------|-----------|
|
||
| `acf7c8a` | Claude | fix: load component prices via API instead of removed current_price field |
|
||
| `5984a57` | Claude | refactor: remove CurrentPrice from local_components and transition to pricelist-based pricing |
|
||
|
||
## Тестирование
|
||
|
||
✅ Configurator component substitution работает
|
||
✅ Цены загружаются корректно из pricelist
|
||
✅ Offline режим поддерживается (цены кэшируются после первой загрузки)
|
||
✅ Multi-pricelist поддержка функциональна (estimate/warehouse/competitor)
|
||
|
||
## Breaking Changes
|
||
|
||
Нет критических изменений для конечных пользователей.
|
||
|
||
⚠️ **Для разработчиков:** `ComponentView` API больше не возвращает `CurrentPrice`.
|
||
|
||
## Миграция
|
||
|
||
Не требуется миграция БД — все миграции были применены в v1.2.0.
|
||
|
||
## Установка
|
||
|
||
### macOS
|
||
|
||
```bash
|
||
# Скачать и распаковать
|
||
tar xzf qfs-v1.2.1-darwin-arm64.tar.gz # для Apple Silicon
|
||
# или
|
||
tar xzf qfs-v1.2.1-darwin-amd64.tar.gz # для Intel Mac
|
||
|
||
# Снять ограничение Gatekeeper (если требуется)
|
||
xattr -d com.apple.quarantine ./qfs
|
||
|
||
# Запустить
|
||
./qfs
|
||
```
|
||
|
||
### Linux
|
||
|
||
```bash
|
||
tar xzf qfs-v1.2.1-linux-amd64.tar.gz
|
||
./qfs
|
||
```
|
||
|
||
### Windows
|
||
|
||
```bash
|
||
# Распаковать qfs-v1.2.1-windows-amd64.zip
|
||
# Запустить qfs.exe
|
||
```
|
||
|
||
## Известные проблемы
|
||
|
||
Нет известных проблем на момент релиза.
|
||
|
||
## Поддержка
|
||
|
||
По вопросам обращайтесь: [@mchus](https://git.mchus.pro/mchus)
|
||
|
||
---
|
||
|
||
*Отправлено с ❤️ через Claude Code*
|