Skip to content

Releases: whatrushki/schedule

v1.3.12

Choose a tag to compare

@topanim topanim released this 25 Sep 00:16

What's Changed

⚡ Performance & Architecture

  • gh-pages as primary data source: Schedule data, groups, and teachers are now fetched directly from pre-parsed snapshots on GitHub Pages / raw CDN for near-instant loading (~50–150ms) across all supported institutions (РКСИ, ДГТУ, ИУБиП, РИНХ, ЮФУ).
  • Resilient live parser fallback: Automatic fallback to full live parsing if cloud data is unavailable or empty.
  • Force live support: Added forceLive parameter to bypass cloud data and directly scrape university websites when needed.

🔧 Bug Fixes

  • Favorites in Search: Fixed issue where groups/teachers were not being added to favorites on long press in ScheduleSearchPane due to Compose equality checking in ScheduleSearch.
  • Web avatar: Fixed GitHub profile avatar failing to load on Web due to CORS redirects by using direct CDN URL.

🧹 Refactoring

  • Renamed project from WHAT-Schedule to Schedule across all platforms, configs, and UI.
  • Unified web client into common CloudScheduleClient in :data:commonMain.

Full Changelog: v1.3.11...v1.3.12

v1.3.11

Choose a tag to compare

@topanim topanim released this 23 Sep 22:13

What's Changed

🎨 Theme

  • Default theme changed to navy blue (#1F2137)

🔧 Bug Fixes

  • Auto-update: added User-Agent header, redirect following for GitHub downloads, strict RuStore install source detection, update check on settings screen open
  • Web: virtual keyboard now opens on mobile browsers (workaround for Compose Multiplatform CMP-7836)
  • Web: avatar loading fixed (CORS) — switched to direct CDN URL
  • Favorites: chip now updates immediately on long press toggle without needing to reopen the sheet

🏗️ CI/CD

  • macOS DMG & iOS framework now properly attach to releases
    • Added XCFramework support for iOS (universal framework)
    • Fixed wrong zip paths that prevented iOS artifacts from uploading
    • Removed silent error swallowing in build steps

Full Changelog: v1.3.10...v1.3.11

v1.3.10

Choose a tag to compare

@github-actions github-actions released this 22 Sep 21:45
Release 1.3.10

v1.3.9

Choose a tag to compare

@github-actions github-actions released this 22 Sep 09:51

Что нового в v1.3.9:

🕒 Хронологическая сортировка пар по времени (startTime)

  • Заменена сортировка по номеру пары на хронологическую по реальному времени начала: compareBy({ it.startTime }, { it.number }).
  • Исправлено: Классный час РКСИ (номер 0, время 13:05–14:05) больше не выскакивает в самое начало дня перед первой парой (08:00), а корректно располагается между 3-й и 4-й парами.
  • Аналогичная хронологическая сортировка применена во всех клиентах расписания (РКСИ, ДГТУ, ЮФУ, ИУБиП).

👥 Корректное объединение подгрупп

  • Добавлено автоматическое объединение уроков с одинаковым временем и предметом в единый LessonDto со списком всех преподавателей и аудиторий (otUnits).
  • Предотвращено дублирование карточек уроков по иностранному языку и затирание подгрупп при наложении замен.

🔄 Полная унификация алгоритмов Android и Web (schedule-sync)

  • В RKSIScheduleClient добавлен потокобезопасный in-memory кэш распарсенных планшеток замен Google Drive: файлы скачиваются и парсятся ровно один раз.
  • Из tools:schedule-sync полностью удалена дублирующая самодельная логика наложения замен: теперь генератор статики для веб-версии вызывает тот же самый RKSIScheduleClient, что гарантирует 100% идентичность расписания на Android и Web.
  • Корректно сохраняются названия заменяемых предметов с использованием RKSITeacherSubjectCache.

v1.3.8

Choose a tag to compare

@github-actions github-actions released this 22 Sep 08:24

🚀 Что нового в WHAT Schedule v1.3.8

🐛 Исправления ошибок и стабильность (Android & Desktop)

  • Устранён фатальный краш при запуске приложения: исправлена ошибка инжекции зависимостей Koin (No definition found for type 'java.util.List'), возникавшая из-за попытки разрешить дефолтный аргумент конструктора InstitutionManager через рефлексию.

🌐 Оптимизация и автономность веб-версии (Web Wasm)

  • Идеальная посадка в экран без F11: холст <canvas id="ComposeTarget"> теперь привязан к границам окна браузера (100vw / 100vh), предотвращая вылезание элементов за пределы вкладки и необходимость включения полноэкранного режима.
  • Корректные клики и отсутствие геометрических смещений: настроен мета-тег viewport, устраняющий размытие растра и рассинхронизацию координат курсора мыши при масштабировании.
  • Поддержка CDN через gh-pages: веб-клиент переведён на чтение данных напрямую из ветки gh-pages.

⚡ Синхронизация расписания (tools:schedule-sync)

  • Однократная выгрузка и парсинг замен РКСИ: планшетки замен из Google Drive теперь скачиваются и парсятся ровно 1 раз в оперативную память в начале синка. Это полностью устранило таймауты (25с), блокировки (429 Too Many Requests) и снизило время обработки РКСИ в десятки раз.
  • Снятие тестовых лимитов для всех вузов:
    • ДГТУ: убраны заглушки (ранее скачивалась лишь 1 группа и 1 преподаватель), теперь скачиваются расписания всех групп и преподавателей университета.
    • ЮФУ: сняты ограничения на 30 групп и 50 преподавателей.
    • РИНХ: снято ограничение на 50 преподавателей.
  • Отказ от тяжелых файлов data.json: прекращена генерация склеенных файлов по 50 МБ, что исключило риск превышения лимитов GitHub.
  • Изоляция в ветке gh-pages: синк расписания теперь публикует данные напрямую в ветку gh-pages с сохранением существующих файлов (keep_files: true). Ветка master полностью очищена от локальной базы данных расписания и защищена через .gitignore.

v1.3.7

Choose a tag to compare

@github-actions github-actions released this 18 Sep 18:49
🔖 chore: bump version to 1.3.7

v1.3.6

Choose a tag to compare

@github-actions github-actions released this 18 Sep 17:53
🔖 chore: bump version to 1.3.6

v1.3.5

Choose a tag to compare

@github-actions github-actions released this 18 Sep 16:34
Release v1.3.5: Web fixes (realtime resizing, CORS-free synced schedu…

v1.3.4

Choose a tag to compare

@topanim topanim released this 18 Sep 10:46

What's Changed

  • ✨ feat(web): restore authentic WHAT Schedule UI via composeApp and decouple database with AppDatabaseSource
  • 🚀 release: 1.3.4

Full Changelog: v1.3.3...v1.3.4

1.3.4

Choose a tag to compare

@github-actions github-actions released this 18 Sep 11:21
🐛 fix(nav): register explicit screen factories for all features on no…