Skip to content

Release v2.3 (Verawood.1) - #497

Merged
edschema merged 16 commits into
mainfrom
develop
Sep 1, 2026
Merged

Release v2.3 (Verawood.1)#497
edschema merged 16 commits into
mainfrom
develop

Conversation

@edschema

@edschema edschema commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Merges develop into main for the Verawood release.

This fixes the Android Verawood release branch. The previous Verawood branch was missing several PRs. Existing main-only CI and workflow updates are preserved by the merge.

Highlights

  • App-level Dates page (FC-0078)
  • Google Calendar synchronization fixes
  • Browser-based SSO support and clearer handling for unregistered social-login accounts
  • HTML unit file chooser support
  • Migration to Material 3
  • Migration from SharedPreferences to Jetpack DataStore with Android Keystore-backed encryption for sensitive values
  • Course request, download, assignment-progress, and logout-crash fixes

Tests Done

  • Detekt, unit tests, English string validation, and CLA checks pass.
  • Commitlint is the only failing check. It fails on the historical squash commit 4c59055dccd2f2f815733c4c9f62212288a5861f (Chore: Migration to maretial3 (#475)). The commits in PR Chore: Migration to maretial3 #475 passed commitlint before merge; GitHub then generated this subject from the PR title when squash-merging it. Correcting the published subject would require rewriting shared develop history. Commitlint is not a required main status check, and the required openedx/cla check passes, so this known historical failure does not block the release merge.

AI Assistance

AI tools were used to aid release-history diagnosis and drafting. The release boundary, pull request, and release notes were checked and reviewed manually.

PavloNetrebchuk and others added 16 commits October 30, 2025 17:42
* feat: google calendar sync

* fix: deleting not courses events

* fix: switching between local and google calendars. Google calendars options.
* feat: dates tab UI

* feat: added config flag for enabling/disabling dates screen

* feat: pull to refresh

* feat: offline mode dialog

* feat: added dates request

* feat: paging and caching

* feat: navigating to block

* feat: reuse dates UI from CourseDatesScreen

* feat: shift due date card

* feat: shift due date request

* feat: junit tests

* feat: junit tests and analytics

* fix: changes according detekt warnings

* feat: pagination

* fix: pagination bugs

* feat: cache-first logic

* fix: changes according code review

* feat: according designer feedback

* fix: assignment default color fix

* fix: empty state icon

* fix: string

* feat: colors update

* fix: fixes according PR review feedback
* feat: dates tab UI

* feat: added config flag for enabling/disabling dates screen

* feat: paging and caching

* feat: navigating to block

* feat: reuse dates UI from CourseDatesScreen

* feat: shift due date card

* feat: shift due date request

* fix: changes according detekt warnings

* feat: pagination

* fix: pagination bugs

* feat: cache-first logic

* fix: changes according code review

* feat: according designer feedback

* fix: empty state icon

* chore: refactor uiMessage flow

* feat: dates tab UI

* feat: added config flag for enabling/disabling dates screen

* feat: paging and caching

* feat: navigating to block

* feat: reuse dates UI from CourseDatesScreen

* feat: shift due date card

* feat: shift due date request

* fix: changes according detekt warnings

* feat: pagination

* fix: pagination bugs

* feat: cache-first logic

* fix: changes according code review

* feat: according designer feedback
…477)

* feat: Migrate PreferencesManager to DataStore with Encrypted Storage

* fix: according to PR review
* fix: removed requests duplication

* feat: CoalescingCache

* fix: offline fix

* feat: Removes all cached values
* revert: Support for login and registration via a browser custom tab (#371) This reverts commit 4566b1a

* feat: add saml sso

* fix: resolve conflicts and unit test

* fix: unit test issues

* fix: sso login flow and other fixes

* fix: sso login unit tests

* fix: sso login flow handle cookies error and display a message and other fixes

* fix: fixing detekt issues

* fix: merge fixes

* fix: fix detekt and unit tests issues

* fix: fix detekt issues

* fix: fix detekt issues

* fix: fix detekt issues
The mobile access-token exchange endpoint (AUTH_ENTRY_LOGIN_API) only signs
in an already existing/linked account; a first-time or unlinked social
identity returns invalid_grant. The Sign In screen previously surfaced this
as a generic "Something went wrong". It now shows a specific
"This <method> account is not linked with any <platform> account. Please
register." message (matching iOS), guiding new users to the
Register -> Continue with Google flow that creates and links the account.

Also fix the Google OAuth scope requested in GoogleAuthHelper: it was a
malformed, email-only string ("oauth2: .../userinfo.email") and is now
"oauth2:openid .../userinfo.email .../userinfo.profile", matching the
iOS/web clients and the server-side google-oauth2 DEFAULT_SCOPE.
@openedx-webhooks openedx-webhooks added the open-source-contribution PR author is not from Axim or 2U label Aug 24, 2026
@openedx-webhooks

openedx-webhooks commented Aug 24, 2026

Copy link
Copy Markdown

Thanks for the pull request, @edschema!

This repository is currently maintained by @openedx/openedx-mobile-maintainers.

Once you've gone through the following steps feel free to tag them in a comment and let them know that your changes are ready for engineering review.

🔘 Get product approval

If you haven't already, check this list to see if your contribution needs to go through the product review process.

  • If it does, you'll need to submit a product proposal for your contribution, and have it reviewed by the Product Working Group.
    • This process (including the steps you'll need to take) is documented here.
  • If it doesn't, simply proceed with the next step.
🔘 Provide context

To help your reviewers and other members of the community understand the purpose and larger context of your changes, feel free to add as much of the following information to the PR description as you can:

  • Dependencies

    This PR must be merged before / after / at the same time as ...

  • Blockers

    This PR is waiting for OEP-1234 to be accepted.

  • Timeline information

    This PR must be merged by XX date because ...

  • Partner information

    This is for a course on edx.org.

  • Supporting documentation
  • Relevant Open edX discussion forum threads
🔘 Get a green build

If one or more checks are failing, continue working on your changes until this is no longer the case and your build turns green.

Details
Where can I find more information?

If you'd like to get more details on all aspects of the review process for open source pull requests (OSPRs), check out the following resources:

When can I expect my changes to be merged?

Our goal is to get community contributions seen and reviewed as efficiently as possible.

However, the amount of time that it takes to review and merge a PR can vary significantly based on factors such as:

  • The size and impact of the changes that it introduces
  • The need for product review
  • Maintenance status of the parent repository

💡 As a result it may take up to several weeks or months to complete a review and merge your PR.

@github-project-automation github-project-automation Bot moved this to Needs Triage in Contributions Aug 24, 2026
@edschema edschema moved this from Needs Triage to Ready for Review in Contributions Aug 24, 2026
@edschema
edschema marked this pull request as ready for review August 24, 2026 17:04
@edschema
edschema merged commit 241b0da into main Sep 1, 2026
7 of 8 checks passed
@github-project-automation github-project-automation Bot moved this from Ready for Review to Done in Contributions Sep 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

open-source-contribution PR author is not from Axim or 2U

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

5 participants