All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Added "force-test-2022" action in health rules, some status names and string keys updated to keep consistency with previous "force-test" action #766.
- Revisions of translations of text strings -- Translation Studies Course #759.
- Added back location to Information Usage Disclosure #762.
- Android: Fix browser permissions for devices with API level >= 30 #756.
- Android: Update to API level 30 #752.
- Fixes, improvements and extensions of config notifications #744.
- Implemented config notifications #744.
- Removed Exposure plugins, service and related UI #742.
- Update encrypt plugin to latest available version #745.
- Handled exempt of vaccination and vaccintation suspended status in vaccination widget #739.
- Added vaccination exempt support in UIN Overrides #733.
- Check for expired vaccines in vaccination widget and isVaccinated getter #729.
- Simplify VaccineBoosterInterval logic until we really need different intervals for different manufacturers #737.
- Remove "max-weekdays-extent" from test monitor interval until it is required #737.
- Fixed null pointer crash #725.
- Added SECURITY.md.
- Added booster intervals for vaccines #729.
- Show when the vaccine will become effective in vaccination widget #720.
- Show upconing entries in history panel #723.
- Updated vaccination widget content and strings #711.
- Updated vaccination widget strings, load related values and URL from app config #708.
- "Feedback" section in Settings Home panel changed to "Get Help" #705.
- Fixed Health model classes equality operators.
- Fixed Storage.healthUserTestMonitorInterval to be able to read null values.
- Added HealthRulesSet.toJson() getter.
- Updated strings for vaccination effective status change #698.
- Updated strings for next step for vaccinated users in UIN override list who has fulfilled their tests #700.
- Defined notice, noticeHtml, reason and reasonHtml in health status definitions. Acknowledged for vaccination and vaccination suspension events. #702.
- Updated next step text for vaccinated users that are forced to resume testing #692.
- Added vaccination widget in Home panel #696.
- Disable vaccinated status if user has UserTestMonitorInterval defined #684.
- Android: CME crash when processing exposures #688.
- Android: RSE crash when scanning for exposures #690.
- Button text for requesting vaccine and latest test #680.
- Force onboarding from app config #681.
- Fire user updated notification when updating user's private RSA key.
- Added weekdays extension capability for health rule intervals #678.
- Updated test intervals for undergraduate students and others #676.
- Upgrade to Flutter 2.2.2 #664.
- Health rules updated to handle properly PCR positive event on vaccinated users #668.
- Added Consent Health Provider Vaccine Information flag and related UI #661.
- Changed testing interval to once-weekly for building access #655.
- Updated test.monitor.step to test.monitor.step.html with vaccination recommendation. Standardized Html widgets display used for health status content. #657.
- Vaccination event processing updated in health rules #651.
- Force onboarding if we are upgrading version lower than 2.10.28 #651.
- Control visibility of vaccination badge in HealthStatusPanel from FlexUI, set it currently disabled #647.
- Added vaccination information to consent texts for text results #649.
- Flutter 2.0 Integration #637.
- Add the External link icon to External links #635.
- Android: Fix for frequent notifications #641.
- Added Japanese language translation provided by @kamya-k
- Changed DefaultTestMonitorInterval to reflect production #624.
- Removed test result explanation disclaimers #626
- Android: Fix crash in exposures - processExposures #631.
- Android: Fix crash in exposures - onReceive #633.
- Android: Fix crash in exposures - removeExpiredTime #629.
- Fixed app misbehavior when system date time is much behind the current date time #615.
- Check server time before displaying StatusCardPanel #611.
- Show current date time under Building Access Status #604.
- Remove Covid-19 section from Settings panel if the user is not logged in, improved control of progress indicator inside #602.
- Indicate that location text is clickable in TestLocations panel #597.
- Fixed mailto and tel URLs in Wellness Center Panel #601.
Build number 1019 was taken by 2.9.22 release
- Update FlexUI content from app assets #595.
- Fixed family members scrolling #0.
- Updated vaccination event fields, updated vaccination display strings #583.
- Show Pending Family Member popup when loading FamilyMembers Settings panel #589.
- Many students and employees using phone verification #584.
- Added vaccination event #583.
- Disabled the new auth system #586.
- Added family members support #578.
- Unload web page when the app is in background #580.
- Cleaned up Covid19TestLocationsPanel.
- Apply WWCL.Disclaimers in Safer app #562
- Maine health history change #563
- Check for start/stop exposure native service on revoking from background.
- Ask for Bluetooth and Location services permisions in iOS when the user selects to participate to Exposure Notification system. Exclude the relevant onboarding panels from onboarding flow in iOS #573.
- YouTube videos plays when screen locked #580.
- Fixed days interval calculation when daylight saving is changed #572.
- Explore Shibboleth login failure due to deleted UUID #508
- OnBoardingHealthDisclosurePanel duplicated text #490
- Apply nextStepDate in local time when making the calculations for displayNextStepDate.
- Extend Auth OIDC processing to handle external configurations.
- Fixed Counseling Center url #512.
- Fixed priority of "PCR.invalid" and "out-of-test-compliance" rules #526.
- Fixed passing status param in Connectivity.notifyStatusChanged notification.
- Fixed "Remove My Information" processing #547.
- Updated app config format to refer 'oidc' instead of 'shibboleth', merge shibboleth url entries in app config into single one #501
- Do not edit straightly roles from user data #229.
- Increased connectivity plugin version #519.
- Updated spaces between texts in OnBoardingHealthDisclosurePanel #488.
- Make the points from the first section from OnBoardingHealthDisclosurePanel panel bold #489,
- Updated Positive IP & NIP step & explanation strings #529.
- Added camera usage mention in disclosure screen #530
- Updated PCR.positive-NIP test rule #532
- App Up time to exposure logs.
- Added progress indictors when processing QR image code from load/scan #495.
- Implemented PullToRefresh feature in Home panel #544.
- Changed interval between first and second test for Spring 2021 #482
- Updated Next Steps for Two Test Spring 2021 event #480.
- Updated PCR.positive rule #485.
- Hide groups in Safer Illinois 2.10 #475.
- Added Onboarding Disclosure Panel #477.
- Added 'warningHtml' field to HealthStatus #467.
- Added 'release' action and status to health rules #470.
- Added support of both authentication methods, use Rokmetro auth in Health BB API calls #396.
- Integrate Groups UI into the Safer app - Additional Fixes #455.
- Integrate Groups UI into the Safer app - Additional Fixes #455.
- Integrate Groups UI into the Safer app #455.
- Do not translate symptoms names transmitted to analytics #447.
- Added map directions feature in iOS app #446.
- Pass the right user UIN when creating debug events. #441.
- Fixed user details in Status panel when subaccount is selected. #442.
- Added user subaccounts feature #437.
- Update user PII data from authentication/roster data #432.
- Added login widget in Home panel when user is not connected #434.
- Fix FirebaseCrashlytics #428.
- CareTeamPanel fix semantics pronauncement for Mental Health button #422
- Removed unused images from application project #419.
- Health service reworked to permanantly cache all data necessary for status build.
- Use better naming in internal classes.
- Undo changing permission request buttons to "Continue" #560.
- YouTube videos plays when screen locked #580.
- Check for start/stop exposure native service on revoking from background.
- Ask for Bluetooth and Location services permisions in iOS when the user selects to participate to Exposure Notification system. Exclude the relevant onboarding panels from onboarding flow in iOS #573.
- Fixed days interval calculation when daylight saving is changed #572.
- Updated version number to 2.9.20+920 for resubmission.
- Disable Accept/Revoke buttons initially in Pending Family Members popup.
- Changed permission request buttons to "Continue" #560
- Apply WWCL.Disclaimers in Safer app #562
- Maine health history change #563
- Health rules file. #567
- Fire Analytics events in Pending Family Members popup.
- Added terms and conditions to Pending Family Members popup #557.
- Minor text changes in Pending Family Members popup.
- Added email or phone in Family Members list entry #549.
- Renamed all occurences of "Reject" with "Revoke" in Family Members panel #553.
- Fixed "Remove My Information" processing #547.
- Implemented PullToRefresh feature in Home panel #544.
- Load family member test price from health rules constants #542.
- Introduced Family members panel #537.
- Updated Positive IP & NIP step & explanation strings #529.
- Make POSITIVE-NIP COVID-19 PCR test result like the regular "PCR.negative" test result #532.
- Introduced Approve Family member panel #534.
- Increased connectivity plugin version #519.
- Do not edit straightly roles from user data #229.
- Fixed Counseling Center url #512.
- Additional fix for refresh token and logout on 400, 401 or 403 erresponse code. #508
- Additional fix for refresh token and logout on 401 or 403 erresponse code. #508
- Explore Shibboleth login failure due to deleted UUID #508
- Updated details of background permissions #506
- Updated details of background permissions Explore Shibboleth login failure due to deleted UUID #508
- Updated order of panel shown during onboarding #503
- Apply nextStepDate in local time when making the calculations for displayNextStepDate.
- Updated Onboarding Disclosure Panel text. #497
- Sync health.rules.json with latest 2.9 content on production
- Acknowledged "quarantine-on.reason" string entry in "health.rules.json".
- Port this fix as hotfix for 2.9 (Original title: Fix FirebaseCrashlytics) #428.
- Port fix: Added Onboarding Disclosure Panel #477.
- Port fix: fixed grammer in Status Update String #454
- Do not translate symptoms names transmitted to analytics #447.
- Error message cannot be read if keyboard is up - please hide the keyboard after a send - see error_message_hidden.png #414.
- Change everywhere we have "Capitol Staff" to "Non University Member" - on boarding roles, messages etc #412.
- Updated Updated capitol staff persona icons.
- Make sure to display localized symptom name everywhere #411.
- Implemented permanent muted audio playback in native iOS Exposure service #407.
- Show full name for Capitol Staff in the status card #401.
- iOS Crash while trying to retrieve device uuid from native part #397.
- Crashes with FCM notifications in Android #394.
- Do not show the wait time if the location is closed #398.
- Safer onboarding changes 11/12 #390.
- CareTeamPanel fix non student aditional message. #269.
- Build error related to ios app #374.
- Fixed the error related to app framework minimum os version #375.
- Pass application id as header field in FCM API calls from sports service #364.
- Fixed various string entry translations #364.
- Fixed Initial loading screen #366.
- CareTeamPanel: update link urls #269.
- User is not able to Sign out successfully by tapping the Sign-out button on Personal Info screen #303.
- Added ability to enable/disable capitol stuff from app config settings #353.
- Check if Capitol staff user has a roster UIN on app resume #355.
- Unable to save qr code during the onboarding process after fresh install #361.
- Send additional exposure stats with processed test result analytics event #332.
- Implemented exclusive selection by group in role selection panels #347.
- More precise adjusting phone numbers with "+1" prefix #350.
- Do not ignore unknown user roles #343.
- Prepare app for flexable health status codes, health status strings cleanup.
- Home panel is not refreshing after successful login and/or private key entrance #333.
- Added ability to refer local strings from rules and action texts.
- Fixed "force-test" rule behavior, step texts updated either.
- Enable again Talent Chooser for Safer app #306.
- Multilanguage support in Health rules and action events #308.
- Fixed miscellaneous strings translation, display dates localized #308.
- Added "force-test" rule status and action. #319.
- Added "referenceDate" origin when evaluating status. #319.
- Apply rule status priority on status downgrade. #319.
- Unable to log in with iOS Default Browser changed #315.
- Added ability to turn off multiple organizations support and build single organization app.
- Added backward support for single organization app upgrade.
- Log "exposure_score" in "check_exposures" analytics event #309.
- Multiple organizations support - cleanup.
- Multiple organizations support - first round.
- Covid19TestLocations panel: update unavailable waith time text #279
- Added encryption support to storage.
- Log user UUID un-anonymously when launching RootPanel #296
- Covid19TestLocations Update Wait time text #279
- Store RSA private key separately for organization and environment (Android).
- Add external link icon for SettingsHomePanel buttons #241
- Remove private params from the url. Additional fix #110.
- Add external link icon for SettingsHomePanel buttons 241.
- Add building access status to the Home Status widget #243
- Add building access status to the Home Status widget #269
- Store RSA private key separately for organization and environment (iOS only for now).
- Show authorization panels in onboarding only when needed.
- Upgrade Flutter to v1.22.1 #283.
- Fixed environmnets switching from Debug panel.
- Internal cleanup.
- Updated rules #281.
- Added "INCONCLUSIVE" and "REJECTED" results to "COVID-19 PCR" test #271.
- StatusPanel content improvement for Accessibility Large Text 275.
- Updated "PCR.positive-NIP" status rule #273.
- Added boolean getters for config environment #266.
- Added Debug button in Settings Home header bar for debug or dev builds only.
- Environment radio buttons in SettingsDebugPanel replaced by dropdown, prompt user before switching #266.
- Refresh UI on config environment change #266.
- Added "POSITIVE-IP" and "POSITIVE-NIP" results to "COVID-19 PCR" #256.
- Updated rules negative PCR test to turn off the red status #256.
- Possible PII leak in logging for Submit Feedback #110.
- Android: Request for location services is shown too early #261.
- Update styling - padding, sizes etc for Next steps panel - Part 2 #244.
- Removed antibody test types from rules #258.
- Do not keep in Storage location permision promot flag.
- All Health2 classes renamed to regular Health classes and merged in Health model.
- Update next steps styling #244.
- Show status card screen panel slides on both sides #239.
- Remove duplicate instance of links to home screen on status card #247.
- Added "PCR.positive-IP" and "PCR.positive-NIP" statuses to rules. #248.
- Added eventExplanation to rules & user statuses. #248.
- Removed fixed timezone output support
- Created "Dev" XCode build environment for dev builds.
- Enable http proxying in flutter env #234
- "ios/Runner/GoogleService-Info-Debug/Release.plist" secret file refs updated to "ios/Runner/GoogleService-Info-Dev/Prod.plist".
- Locale strings from net just override the built-in asset strings 236.
- Removed unused debug stuff from SettingsDebugPanel.
- Removed unused stuff from Storage.
- Update NextSteps html text style 231
- Added more parameters to analytics health events #178.
- Green status from antibody test rules replaced with yellow #227.
- Wrong friendly date (Today, Tomorrow, day of week etc) #229.
- Added back "No symptoms" group, implemented inclusive selection #213.
- Fill UserTestMonitorInterval in Covid19DebugRulesPanel #210.
- Log building access updates #208.
- Format the date for {next_step_date} as friendly eg: Tomorrow. #219
- Covid19GuidelinesPanel: Disable dropdown when single county available + color fix221
- StatusInfoDialog: fix close button + remove green status223
- Do not report user UUID in analytics #216.
- Display an error message to the user who submits the symptoms without checking any list on the Symptom Check-in #174
- Added analytics notifcation for processing test after exposure #198
- Rollback temporary flutter_html to 0.11.1 due to accessibility issue #195
- Update strings files #193
- Apply user's test monitor interval when evaluating status, rules format updates #192.
- Check for negative PCR tests when reporting TEKs #179
- Cache county rules #179
- Cache user history #179
- Removed unused rules v1 #179
- Add role & student_level in analytics #189
- Wrong phone auth after Student/Amployee selection during the onboarding flow #183
- Improved semantics for StatusInfoDialog button #157
- OnboardingGetStartedPanel: remove background image from the semantics tree #159
- StatusInfoDialog: improve semantics #155
- Fixed onboarding flow #180
- i-Card may not being updated if the last update time is greater than 24 hours #175
- Update "student_level" processing from AuthCard. #172
- Load symptoms and rules from the new Health API #152.
- Remove "ASAP" label in Next Steps panel #143.
- Remove restriction for taking screenshots in Android #138.
- Removed SAR status entries from sample health rules. Use PCR entries instead that actually contain the same status rules.
- Integrate maps for test locations #132.
- Use next step HTML in exposure rules #133.
- Fixed warnings.
- Various minor fixes.
- Added 'test-user' condition #125.
- Added 'next_step_html' to status rules and status blob. Acknowleged in Info and Next Steps panels. #128.
- Added 'warning' to status rules and status blob. Acknowleged in Info panel. #127.
- Updated health rules. #107
- Do not process pending events if we failed to load history. #94
- Mark pending event that persist in history table as processed.
- Add null check before using instance props. #119
- Fix issue with _determineIsOpen not checking weekDay. #111
- Prevent screenshots. #97
- Acknowledged "covid19ExposureExpireDays" and "covid19ExposureActiveDays" in Exposure service #100
- Remove GoogleMaps, MapsIndoors and MicroBlink Android native side (unused). #95
- New symptoms and rules. #84
- Acknowledged "covid19ReportExposuresWhilePositive" settings flag for reporting red users after the date of becoming red. #87
- Unlink GoogleMaps and MapsIndoors pods from iOS native side (unused). #90
- Unlink Microblink pod from iOS native side (unused). #92
- Fixed crash in Android #61
- Fixed crash in Android #68
- Fixed crash in Android when bluetooth is not turned on #70
- Fixed crash in Android - do not start exposure client service if it's not running #74
- SettingsNewHomePanel and related child panels moved to settings2 section, class names updated to indicate the different panel group.
- SettingsDebugPanel moved to debug section, MessagingPanel renamed to SettingsDebugMessagingPanel.
- SettingsPrivacyCenterPanel (unused)
- Covid19OnBoardingLoginNetIdPanel (unused)
- Covid19OnBoardingLoginPhonePanel (unused)
- Fixed Xcode name in README.md (#1)
- Update test interval from 4 to 5 days (#52)
- Change onboarding texts (#51)
- Fixed crash in Consent onboarding panel when Accessibility is on (#55)
- Introduced scopes in HealthRuleIntInterval (#47)
- Show alert on no result (#35)
- Info.plist permission strings (#40)
- Hide phone login from settings. (#39)
- Handle deeplinks when the app was previously terminated. (#43)
- Removed PrivacyData model class (unused).
- Fix/location weekday rollover (#37)
- Exposure iOS scanner updated into an intermittent scanner where the scanner works for at least 4 seconds and pause for 150 seconds and repeat.
- Process exposure is now called every time the scanner is paused or stopped rather than periodically.
- Ping exposure functionality is gone for iOS peripherals.
- Exposure Screen lighting is done every time the phone's screen is turned off and the scanner is/starts scanning.
- Handle TEKs without expirestamp in ExposurePlugin.java
- Updated "covid19ExposureServiceLogMinDuration" setting to default to 0.
- Update description for camera usage. #25
- Latest content from the private repository.
- GitHub Issue templates.