Skip to content

Releases: MorrisXDS/CanvasAssistant

v1.1.9

Choose a tag to compare

@github-actions github-actions released this 08 Jun 14:56
0bda4ff

What's Changed

  • fix(sync): record sync_update for new announcements (canvas source_type) by @MorrisXDS in #156
  • fix(courses): first focus press selects index 0, not 1 by @MorrisXDS in #157
  • fix(grades): unify past-term null bucket label to "Unknown term" by @MorrisXDS in #158
  • fix(notifications): persist due-date reminder dedup across restarts by @MorrisXDS in #159
  • fix(files): reuse existing resource copy for duplicate attachment downloads by @MorrisXDS in #160
  • docs(courses): cross-reference the no-term label between reader and drawer by @MorrisXDS in #161
  • feat(sync): surface edited announcements in the updates feed by @MorrisXDS in #162
  • test(sync): un-skip and de-flake the concurrent-sync guard test by @MorrisXDS in #163
  • chore: bump version to 1.1.9 by @MorrisXDS in #164

Full Changelog: v1.1.8...v1.1.9

v1.1.8

Choose a tag to compare

@github-actions github-actions released this 07 Jun 21:47
309cfcf

What's Changed

  • test: verify Settings change behavior (not just persist) + e2e UI-actuation by @MorrisXDS in #152
  • test: exhaustive settings behavior + e2e UI-actuation sweep by @MorrisXDS in #153
  • fix(sync): honor the Sync-files / Sync-announcements toggles by @MorrisXDS in #154
  • feat(notifications): make notification settings real + remove dead settings (ADR-0016) by @MorrisXDS in #155

Full Changelog: v1.1.6...v1.1.8

v1.1.6

Choose a tag to compare

@github-actions github-actions released this 06 Jun 19:20
5180429

What's Changed

  • feat(grades): term-aware grade history — past terms, credit-weighted cumulative, archived-by-term by @MorrisXDS in #151

Full Changelog: v1.1.5...v1.1.6

v1.1.5

Choose a tag to compare

@github-actions github-actions released this 06 Jun 05:48
2f9b9dd

What's Changed

  • fix(settings): re-measure accordion content so async-grown sections aren't clipped by @MorrisXDS in #149
  • fix(courses): size grid cards by 4:3 aspect-ratio instead of stretching to fill by @MorrisXDS in #150

Full Changelog: v1.1.4...v1.1.5

v1.1.4

Choose a tag to compare

@github-actions github-actions released this 06 Jun 04:53
c1705db

What's Changed

  • docs(readme): macOS Gatekeeper + Linux AppImage/deb/keychain install notes by @MorrisXDS in #145
  • refactor: unify app name to canvas-assistant with first-run data migration by @MorrisXDS in #146
  • feat(packaging): add Linux rpm + pacman targets and per-package-manager uninstall command by @MorrisXDS in #147
  • fix(packaging): correct pacman artifact extension to .pacman by @MorrisXDS in #148

Full Changelog: v1.1.3...v1.1.4

v1.1.3

Choose a tag to compare

@github-actions github-actions released this 06 Jun 02:43
07c57d0

What's Changed

  • feat(uninstaller): separate keep choices for downloads vs settings by @MorrisXDS in #139
  • fix(sidebar): don't show "Not Synced" after sync when all courses hidden/archived by @MorrisXDS in #140
  • feat(updates): opt-in update channel with interval + compatibility warning (ADR-0012) by @MorrisXDS in #141
  • fix(downloads): user-writable downloads dir when packaged; don't crash startup if unwritable by @MorrisXDS in #142
  • feat(auth): validity-based token checking with deferrable re-auth and app-wide sync gating by @MorrisXDS in #143
  • fix(lifecycle): force-exit on quit so the app terminates cleanly on Linux by @MorrisXDS in #144

Full Changelog: v1.1.2...v1.1.3

v1.1.2

Choose a tag to compare

@github-actions github-actions released this 05 Jun 21:55
69c738d

What's Changed

Full Changelog: v1.1.1...v1.1.2

v1.1.1

Choose a tag to compare

@github-actions github-actions released this 05 Jun 21:17
680a31a

What's Changed

  • Add Course Detail keyboard navigation by @MorrisXDS in #3
  • Drop unrunnable CI test step; fix unused-var lint errors by @MorrisXDS in #4
  • Ci/clean lint baseline by @MorrisXDS in #5
  • Chore/secret scan skill by @MorrisXDS in #6
  • Expand e2e harness (pages + Calendar); fix Updates focus indicator by @MorrisXDS in #8
  • Wire Calendar quick-filter keyboard shortcuts by @MorrisXDS in #7
  • Chore/remove dead calendar pages by @MorrisXDS in #9
  • Track tests + gate CI on them; fix ambiguous title-merge by @MorrisXDS in #10
  • Add sync pipeline integration tests (30 scenarios, A–G) by @MorrisXDS in #11
  • Chore/tests in ci and merge fix by @MorrisXDS in #12
  • Keyboard scope architecture: useKeymap + Files nav + registry by @MorrisXDS in #13
  • Scope-aware two-tab help modal + Settings shortcuts by @MorrisXDS in #15
  • Refactor remaining pages onto useKeymap by @MorrisXDS in #14
  • Per-field merge selection + keyboard scoping in duplicate-warning modal by @MorrisXDS in #16
  • Migrate ConfirmDialog to Modal primitive + delete dead TaskMergeDialog by @MorrisXDS in #17
  • Add gitleaks CI workflow as secret-scan safety net by @MorrisXDS in #18
  • Add 8 project skills covering common CanvasAssistant workflows by @MorrisXDS in #19
  • Migrate shared modals to Modal primitive (FOLLOWUPS #2 batch 1) by @MorrisXDS in #20
  • Fix state-duplication in CourseDetail (FOLLOWUPS #1) by @MorrisXDS in #21
  • Migrate handwritten modals to Modal primitive (FOLLOWUPS — batch 2) by @MorrisXDS in #22
  • Refactor TaskLinkDialog to Modal primitive + FieldMergeEditor (FOLLOWUPS batch 3 / final) by @MorrisXDS in #23
  • Add test-matrix project skill by @MorrisXDS in #24
  • Enrich canvas_data JSON in manual-test seed scripts by @MorrisXDS in #25
  • Modal-stack-aware keyboard shortcuts (ADR-0006) by @MorrisXDS in #26
  • Fix TaskLinkDialog regressions (recovery from PR #23) by @MorrisXDS in #27
  • docs: add CONTEXT.md domain glossary by @MorrisXDS in #30
  • refactor: rename VisibleDataProvider to VisibilityOracle by @MorrisXDS in #31
  • fix(ipc): close visibility-bypass bugs via CourseReader (ADR-0007 PR-B) by @MorrisXDS in #32
  • test(ipc): recover orphaned PR-B TDD tests by @MorrisXDS in #34
  • refactor(store): centralize visibility-defense filter in selectors (ADR-0007 PR-C) by @MorrisXDS in #33
  • test(selectors): cover mixed and empty states for visibleNotifications/visibleTasks (ADR-0007 PR-T1) by @MorrisXDS in #35
  • test(coreDataSlice): regression coverage for PR-B's fetchCourses simplification (ADR-0007 PR-T3) by @MorrisXDS in #36
  • feat(test-utils): createStore() factory + setupTestEnv() for component-integration tests (ADR-0007 PR-T4) by @MorrisXDS in #37
  • test(Dashboard): real-store integration test for visibility selector (ADR-0007 PR-T5) by @MorrisXDS in #38
  • test(Dashboard): IPC → store → component full chain (ADR-0007 PR-T6) by @MorrisXDS in #39
  • ci: enforce per-PR test coverage via diff-coverage check (PR-Gate-1) by @MorrisXDS in #40
  • ci(husky): enforce Conventional Commits + test-deletion acknowledgment (PR-Gate-2) by @MorrisXDS in #42
  • feat(ipc-contract): FileEntity unified read contract (ADR-0008 PR-F.1) by @MorrisXDS in #43
  • feat(l1-persistence): FileEntityProvider + readers + index migration (ADR-0008 PR-F.2) by @MorrisXDS in #44
  • feat(ipc): FileEntity IPC channels + getAttachments migration (ADR-0008 PR-F.3) by @MorrisXDS in #45
  • feat(ipc): TaskReader + CanvasTaskQueueReader + taskDataHandlers migration (ADR-0007 PR-D) by @MorrisXDS in #46
  • feat(ipc): NotificationReader + notificationDataHandlers migration (ADR-0007 PR-E) by @MorrisXDS in #47
  • chore(skills): add wait-for-pr skill by @MorrisXDS in #48
  • feat(ipc): PolicyReader + policyHandlers migration (ADR-0007 PR-H) by @MorrisXDS in #49
  • feat(arch): ADR-0007 enforcement via ratchet ceiling (Final PR) by @MorrisXDS in #50
  • feat(ipc): migrate taskTypesHandlers off raw SQL (ADR-0007) by @MorrisXDS in #51
  • feat(ipc): migrate taskLinkHandlers off raw SQL (ADR-0007) by @MorrisXDS in #52
  • feat(ipc): migrate settingsHandlers off raw SQL (ADR-0007) by @MorrisXDS in #53
  • feat(ipc): migrate csvExportHandlers off raw SQL (ADR-0007) by @MorrisXDS in #54
  • feat(ipc): migrate exportHandlers off raw SQL (ADR-0007) by @MorrisXDS in #55
  • feat(ipc): migrate htmlExportHandlers off raw SQL (ADR-0007) by @MorrisXDS in #56
  • feat(ipc): migrate courseExportHandlers import pipeline (ADR-0007) by @MorrisXDS in #57
  • feat(ipc): migrate courseAuthorityHandlers off raw SQL (ADR-0007) by @MorrisXDS in #58
  • feat(ipc): migrate databaseExportHandlers off raw SQL (ADR-0007) by @MorrisXDS in #59
  • refactor(calendar): relocate recomputeCalendarHashes out of ipc-handlers (ADR-0007) by @MorrisXDS in #60
  • feat(ipc): migrate backupScheduleHandlers off raw SQL (ADR-0007) by @MorrisXDS in #61
  • feat(ipc): migrate calendarEventHandlers off raw SQL (ADR-0007) by @MorrisXDS in #62
  • feat(ipc): migrate calendarCrudHandlers off raw SQL (ADR-0007) by @MorrisXDS in #63
  • feat(ipc): migrate pagesHandlers off raw SQL (ADR-0007) by @MorrisXDS in #64
  • feat(ipc): migrate resourceHandlers off raw SQL (ADR-0007) by @MorrisXDS in #65
  • feat(ipc): migrate syncUpdatesHandlers off raw SQL (ADR-0007) by @MorrisXDS in #66
  • chore(test): cap jest at 2 workers to contain memory use by @MorrisXDS in #67
  • feat(ipc): migrate htmlDependencyHandlers off raw SQL (ADR-0007) by @MorrisXDS in #68
  • feat(ipc): migrate fileHandlers off raw SQL (ADR-0007) by @MorrisXDS in #69
  • feat(ipc): migrate syncHandlers off raw SQL (ADR-0007 — final handler) by @MorrisXDS in #70
  • feat(ipc): migrate courseExportHandlers export reads off raw SQL (ADR-0007) by @MorrisXDS in #71
  • feat(ipc): migrate courseDataHandlers enrollment-terms read off raw SQL (ADR-0007) by @MorrisXDS in #72
  • feat(ipc): migrate courseContentHandlers off raw SQL (ADR-0007) by @MorrisXDS in #73
  • feat(ipc): migrate fileDataHandlers + flip enforcement test to hard-zero (ADR-0007 closeout) by @MorrisXDS in #74
  • chore(db): drop 11 dead zombie tables (ADR-0003 cleanup, migration 105) by @MorrisXDS in #75
  • refactor(sync): drop orphaned policy_announcements table (migration 106) by @MorrisXDS in #76
  • feat(sync): record grade_history points so the grade-trend chart works by @MorrisXDS in #77
  • refactor(ipc): remove dead course_policies read chain (ADR-0003) by @MorrisXDS in #78
  • refactor(db): drop 6 vestigial scoring columns (migration 107, ADR-0003) by @MorrisXDS in ...
Read more

v1.0.2

Choose a tag to compare

@github-actions github-actions released this 16 Feb 01:06

Full Changelog: v1.0.1...v1.0.2

v1.0.1

Choose a tag to compare

@github-actions github-actions released this 10 Feb 00:33

What's Changed

New Contributors

Full Changelog: v1.0.0...v1.0.1

Full Changelog: v1.0.0...v1.0.1