Все заметные изменения проекта перечисляются в этом файле.
- данные с устаревшей или неправдоподобно будущей датой больше не считаются актуальными;
- сетевые ответы ограничены по размеру, разрешены только HTTPS-переходы, XML ЦБ разбирается с защитой от внешних сущностей;
- точки графика размещаются по реальным календарным датам, а пропуски данных явно обозначаются;
- кэш истории ограничен, загрузка имеет общий отменяемый тайм-аут, а при ошибке используется сохранённый график;
- резервные адреса текущих и исторических курсов проверяются не только по HTTP-ответу, но и по содержимому данных;
- статус курса учитывает только реально используемые автоматические источники, включая смешанные наборы ЦБ и ручных курсов;
- после перезапуска восстанавливаются последний открытый экран, валютная пара, период и сумма графика;
- смена источника во время обновления не теряет последующий запрос;
- график получил действия для TalkBack;
- проект переведён на Android API 36, Gradle 8.14.5, Android Gradle Plugin 8.11.1 и согласованный Compose BOM;
- CI проверяет релизную сборку и запуск на Android 15, раздельно сохраняет APK и таблицу деобфускации и подтверждает происхождение APK из тегов;
- добавлены Dependabot, инструкция проверяемого выпуска и сведения о происхождении звука.
- мировой курс переведён на открытый источник
exchange-apiс лицензией CC0 1.0; - добавлен резервный адрес загрузки текущих курсов;
- сырой снимок ExchangeRate-API исключён из распространяемого проекта;
- добавлена локализованная политика конфиденциальности внутри приложения;
- подготовлены публичная документация, лицензия и безопасные правила Git;
- версии сетевых запросов автоматически совпадают с версией приложения.
- отдельно показываются дата курса и время последней успешной проверки;
- сохраняются активная валюта, сумма и выражение калькулятора;
- график по умолчанию начинается с единицы;
- исправлено воспроизведение звука клавиш на устройствах и эмуляторе.