Skip to content

Releases: RiddimSoftware/epac

v1.10

15 May 06:09

Choose a tag to compare

What's Changed

  • Remove isCurrentUser from ParliamentMember domain model by @sunnypurewal in #2
  • Rename SittingViewModel to MemberDownloadCoordinator by @sunnypurewal in #3
  • CI: Build and deploy to App Store Connect on push to main by @sunnypurewal in #4
  • Extract MemberResolver from SpeechViewModel.nextMessage by @sunnypurewal in #5
  • Unit tests for SpeechViewModel by @sunnypurewal in #6
  • Subject search in SittingView by @sunnypurewal in #7
  • Error states with retry for ExpendituresView and SittingCalendarView by @sunnypurewal in #8
  • Accessibility pass 1: VoiceOver labels, semantic fonts, decorative elements by @sunnypurewal in #9
  • iPad layout with NavigationSplitView; restore Members tab by @sunnypurewal in #10
  • French/English bilingual localization by @sunnypurewal in #11
  • Member comparison: side-by-side expenditure breakdown by @sunnypurewal in #12
  • Complete ExpenditureDetailView localization (EPAC-49) by @sunnypurewal in #13
  • Offline indicator via NWPathMonitor by @sunnypurewal in #14
  • Full-text search across fetched Hansard sittings by @sunnypurewal in #16
  • Push notification permission and routing infrastructure by @sunnypurewal in #17
  • WidgetKit extension code and App Group data layer by @sunnypurewal in #18
  • MP contact directory: tap-to-call and tap-to-email on member profiles (EPAC-35) by @sunnypurewal in #19
  • Voting records data pipeline: RecordedVote + MemberVote models (EPAC-23) by @sunnypurewal in #20
  • Add @mainactor to MembersViewModel, ExpendituresViewModel, ExpenditureDetailViewModel by @sunnypurewal in #23
  • Voting record tab on MP profile: Yea/Nay history (EPAC-24) by @sunnypurewal in #22
  • Voting record tab on member profile by @sunnypurewal in #21
  • NSCache in-memory layer for member photos by @sunnypurewal in #24
  • Party-line voting score on MP profile (EPAC-25) by @sunnypurewal in #25
  • My MP tab: unified activity feed for your representative (EPAC-28) by @sunnypurewal in #26
  • Vote-speech cross-reference: link votes to Hansard debates (EPAC-26) by @sunnypurewal in #27
  • Debate activity view: speech contribution history on MP profile by @sunnypurewal in #28
  • MetricKit subscriber for performance baseline by @sunnypurewal in #31
  • Contact your MP: pre-populated email template from vote context by @sunnypurewal in #29
  • Follow a member: bell button, notification prefs, unified feed (EPAC-34) by @sunnypurewal in #30
  • Paginate large SwiftData fetches; fetchCount for existence checks by @sunnypurewal in #32
  • e-Petitions tracker: browse, filter, and sign House of Commons petitions (EPAC-61) by @sunnypurewal in #33
  • Bill tracker: LEGISinfo stage timeline with vote and debate cross-references (EPAC-30) by @sunnypurewal in #34
  • Follow a bill: stage-change and vote-result notifications (EPAC-33) by @sunnypurewal in #35
  • Share a vote with verified source citation by @sunnypurewal in #36
  • Order Paper: upcoming sitting schedule with official source link by @sunnypurewal in #37
  • Riding election history with Elections Canada deep-links by @sunnypurewal in #38
  • Topic following: controlled vocabulary, bell per topic, Hansard + bill notifications (EPAC-37) by @sunnypurewal in #39
  • Political donation disclosure: contribution limits and Elections Canada links by @sunnypurewal in #40
  • Government public consultations surfaced in My MP tab by @sunnypurewal in #41
  • Navigation ADR + 5-tab restructure: Home/Parliament/Members/Accountability/Search (EPAC-47) by @sunnypurewal in #42
  • Personalized Home feed: Today/My MP/Followed Bills+Topics/Recent Debates (EPAC-50) by @sunnypurewal in #43
  • Design token system: party colours, semantic surfaces, ballot/bill/font tokens (EPAC-48) by @sunnypurewal in #44
  • Design system: party colour tokens, adaptive dark mode, typography scale by @sunnypurewal in #45
  • Lobbyist connections: Commissioner of Lobbying registry on MP profiles (EPAC-31) by @sunnypurewal in #46
  • ReviewRequestManager: App Store review prompt at 3 high-engagement moments (EPAC-76) by @sunnypurewal in #47
  • PBO independent cost card on bill detail — Parliamentary Budget Officer analysis (EPAC-44) by @sunnypurewal in #48
  • Fix CI code signing: explicit xcodebuild auth flags + remove premature App Group by @sunnypurewal in #49
  • App Store Optimization: English + French metadata by @sunnypurewal in #50
  • App Clip: 'Who is my MP?' postal code lookup by @sunnypurewal in #51
  • Website: comprehensive features section by @sunnypurewal in #52
  • App Clip: "Who is my MP?" postal code lookup with recent bills + install prompt (EPAC-75) by @sunnypurewal in #53
  • CIHI health wait times: provincial wait time data on riding statistics view (EPAC-67) by @sunnypurewal in #54
  • Blog: 3 initial posts, RSS feed, sitemap (EPAC-57) by @sunnypurewal in #55
  • Press page (EPAC-74) + 595 riding landing pages with generation script (EPAC-73) by @sunnypurewal in #56
  • Election readiness: Apple pitch, press outreach list, 3 surge posts (EPAC-78) by @sunnypurewal in #57
  • SEO infrastructure: OG tags, structured data, robots.txt, sitemap lastmod by @sunnypurewal in #58
  • Federal project cost lifecycle view by @sunnypurewal in #59
  • Senate coverage: senator profiles and My Senators section on Home tab (EPAC-65) by @sunnypurewal in #60
  • Election readiness: voter resources view + election blog post (EPAC-78) by @sunnypurewal in #61
  • Committee transcripts: standing committee meetings and evidence from OurCommons API (EPAC-29) by @sunnypurewal in #62
  • Install attribution: UTM links, Universal Links AASA, share funnel (EPAC-79) by @sunnypurewal in #63
  • Committee transcripts: accessible from Accountability Hub (EPAC-29) by @sunnypurewal in #65
  • Ontario Legislature: MPP profiles, Queen's Park debates, My MPP section (EPAC-70) by @sunnypurewal in #64
  • iOS Spotlight Search: index MPs for system-wide search (EPAC-82) by @sunnypurewal in #66
  • Siri App Intents: Parliament Today + Open MP Profile (EPAC-83) by @sunnypurewal in #67
  • Wire WidgetDataWriter: feed sitting dates and debate subjects to home-screen widgets (EPAC-84) by @sunnypurewal in #68
  • fix: scope model*/ gitignore to repo root by @sunnypurewal in #69
  • Extend Search to cover MPs, votes, and debates in sectioned results (EPAC-85) by @sunnypurewal in #70
  • Share bill with verified source links from BillDetailView (EPAC-86) by @sunnypurewal in #72
  • Extend Search to cover MPs, votes, and bills alongside debates (EPAC-85) by @sunnypurewal in #71
  • Perf: decode member portrait JPEGs off the main thread (EPAC-87) by @sunnypurewal in #73
  • Perf: decode SwiftData portrait JPEGs off main thread in MemberAvatar (EPAC-87) by @sunnypurewal in #74
  • Perf: parallelize initial data downloads to cut cold-launch sync time (EPAC-88) by @sunnypurewal in #75
  • Write to MP directly from BillDetailView (EPAC-89) by @sunnypurewal in #76
  • Two SEO blog ...
Read more