83 Commits
Author SHA1 Message Date
vantablackTea 84da62c45d optimisation: baked jdk and sdk into runner v2026.10.08 2026-10-08 16:56:27 +03:00
Agzamus 57e5bd9af8 feat: department display 2026-10-08 02:10:26 +03:00
Agzamus c7298c0c84 fix: wrong parsed teacher schedule 2026-10-08 01:42:26 +03:00
Agzamus ae0fea1ea6 fix: ssl error & offline teacher schedule 2026-10-07 21:55:53 +03:00
Agzamus af1f374b95 Обновить README.md 2026-09-20 17:42:05 +03:00
Agzamus 4f191e9f2f ui: group display istead of teacher in teacher schedule v2026.09.20 2026-09-20 15:30:10 +03:00
Agzamus e16454a196 fix(teacher): group day slots by real lesson start time
slotIndex is a per-department index of non-empty intervals, not a time.
Merging all departments of a period by slotIndex and deriving the slot
time from the first inserted lesson produced shifted times (e.g. Meltsov
10:00 shown at 11:45) depending on sync order. Group by lesson start
minute instead so each department's real times are kept.

Add debug logging for teacher schedule sync/build and debounce teacher
search in picker.
2026-09-20 15:13:27 +03:00
Agzamus ef81659521 chore(http): log failed requests only
Per-request GET success logs (39 long URLs per teacher sync) flood the
2MB logcat buffer together with system ZeroHung spam, drowning the real
kill reason (am_proc_died / lowmemorykiller). Log only non-2xx responses.
2026-09-20 03:08:33 +03:00
Agzamus 6189540acf perf(teacher): lower sync memory footprint
- Reduce sync parallelism 5 -> 2 to cap peak heap while bulk-fetching
  all departments for a period
- Replace per-write rows (insert schedule/days/lessons separately) with a
  single @Transaction replaceSchedule() so Room invalidates observers once
  per department instead of ~4x each, cutting main-thread recompositions
  and intermediate allocations during the 38-department sync
2026-09-20 02:43:54 +03:00
Agzamus 1d55e84e96 fix(teacher): register migration, containment period queries, concurrency guards
- Register AppDatabase.MIGRATION_3_4 so v3 databases upgrade without data loss
- Query teacher schedule periods by containment (weekStart<=x AND weekEnd>=x)
  instead of exact weekStart, matching 2-week catalog windows
- Clip buildTeacherSchedule days to the requested week range
- Add weeksFor() to enumerate weeks of a catalog window for the UI selector
- Serialize syncPeriod body with a Mutex to protect the unique index
- Rethrow CancellationException before generic catch; version loadRevision
  checks so stale observers/loads are cancelled
- Sync job tracking in PickerViewModel; keep loading true while empty
- Drop dead selectTeacher helper
2026-09-19 23:32:09 +03:00
Agzamus 39e4f5a04f fix(remote): replace unsupported (?U)\b regex for Android runtime 2026-09-19 20:44:22 +03:00
Agzamus e1b2f05548 feat(ui): integrate teacher mode into AppRoot and Home 2026-09-19 20:28:13 +03:00
Agzamus f5696fbbd6 feat(ui): add combined group/teacher picker with segments 2026-09-19 20:16:41 +03:00
Agzamus b9b3a18f0c feat(di): wire teacher repositories into AppContainer 2026-09-19 19:37:56 +03:00
Agzamus 2dd8b8c469 feat(ui): add teacher schedule screen and view model 2026-09-19 19:12:19 +03:00
Agzamus 6c06892d9a feat(data): add TeacherScheduleRepositoryImpl with bulk period sync 2026-09-19 19:12:19 +03:00
Agzamus 9dce30931b feat(data): add TeacherRepositoryImpl 2026-09-19 15:59:25 +03:00
Agzamus 32c2b60afa feat(remote): add jsoup TeacherScheduleParser 2026-09-19 14:47:55 +03:00
Agzamus 458e4c4e69 feat(remote): add streaming TeachersParser 2026-09-19 14:47:46 +03:00
Agzamus 1a4bff73d0 feat(db): add teacher schedule tables and Room v4 migration 2026-09-19 14:47:35 +03:00
Agzamus a5ea516713 refactor(ui): extract shared schedule composables 2026-09-19 01:47:29 +03:00
Agzamus 17d437aace feat(domain): add teacher models and repository interfaces 2026-09-19 01:43:17 +03:00
vantablackTea 1077be1897 fix: possible moshi deleting due to proguard v2026.09.18.2 2026-09-18 11:36:25 +03:00
vantablackTea 96db4fa3a6 fix: reverting separate release versions by architecture v2026.09.18.1 2026-09-18 10:01:02 +03:00
vantablackTea 830b4664fb fix: added proguard rules v2026.09.18 2026-09-18 09:48:14 +03:00
vantablackTea dd4fb90dc4 fix: testing build optimisation 2026-09-18 09:30:19 +03:00
Agzamus a55fb0461c ci: debug build name 2026-09-18 02:30:56 +03:00
Agzamus e789729c76 ui: removed version info from buildings screen v2026.09.17.1 2026-09-18 02:16:46 +03:00
Agzamus 7e23895f0d fix: version check 2026-09-18 02:16:29 +03:00
Agzamus 708ad11dca ci: release same tag & version v2026.09.17 2026-09-18 01:28:48 +03:00
Agzamus b1418f79da fix: immediately scrolling 2026-09-18 01:25:00 +03:00
Agzamus d17c70e871 feat: schedule swiping 2026-09-18 01:20:47 +03:00
Agzamus 6cd211f744 fix: no more group prefix v2026.09.10.2 v2026.09.15 v2026.09.15.1 v2026.09.16 v2026.09.16.1 2026-09-11 02:34:30 +03:00
Agzamus 019cf5da21 feat: also refresh groups list in schedule v2026.09.10.1 2026-09-11 02:05:43 +03:00
Agzamus a24748ec04 ci: "debug" if no APP_VERSION 2026-09-11 02:04:36 +03:00
Agzamus caf3debb3f feat: 2-week select 2026-09-11 01:55:52 +03:00
Agzamus 1c5140d751 fix: streaming parsing to prevent crashes on low-end phones 2026-09-11 01:34:05 +03:00
Agzamus 65bb6cc7db fix: loading instead error screen 2026-09-11 00:18:23 +03:00
Agzamus 99e05e8232 ui: surfaceContainer background v2026.09.09.2 v2026.09.10 2026-09-10 01:36:24 +03:00
Agzamus c4ecc43597 ui: canged colors v2026.09.09.1 2026-09-10 01:01:57 +03:00
Agzamus 9a96bd3dac ci: installing from /github.com/adoptium v2026.09.09 2026-09-10 00:47:38 +03:00
Agzamus c4345f9dbe ci: bullseye repo archive mirror 2026-09-10 00:44:18 +03:00
Agzamus 4797811097 ci: ignore jdk Check-Valid-Until 2026-09-10 00:31:17 +03:00
Agzamus 2dfef426a7 ui: schedule striped copyable rows 2026-09-10 00:23:28 +03:00
Agzamus 97c19647cc ui: LessonSlot separator 2026-09-09 22:25:55 +03:00
Agzamus dea27bc8f1 ci: fixed workflow old apt jdk17 repo v2026.09.06 2026-09-07 00:35:50 +03:00
Agzamus bafebfd253 fix: no auto download if updated disabled 2026-09-07 00:31:34 +03:00
Agzamus f19d65abb5 feat: update request when need 2026-09-06 17:23:55 +03:00
Agzamus 889c57bbba feat: autoupdater 2026-09-06 12:38:00 +03:00
Agzamus ec6a7174e8 feat: icon & name 2026-09-06 02:47:40 +03:00