Skip to content

Replace asynctask uploader with viewmodel#7008

Merged
grzesiek2010 merged 44 commits intogetodk:masterfrom
grzesiek2010:COLLECT-6827
Apr 10, 2026
Merged

Replace asynctask uploader with viewmodel#7008
grzesiek2010 merged 44 commits intogetodk:masterfrom
grzesiek2010:COLLECT-6827

Conversation

@grzesiek2010
Copy link
Copy Markdown
Member

@grzesiek2010 grzesiek2010 commented Dec 27, 2025

Closes #6827

Why is this the best possible solution? Were any other approaches considered?

The issue itself was not significant and could be fixed without major changes. However, it was based on a long-deprecated AsyncTask, so it was a good opportunity to replace it with modern architecture components, which I did while also ensuring the issue was properly addressed.

How does this change affect users? Describe intentional changes to behavior and behavior that could have accidentally been affected by code changes. In other words, what are the regression risks?

We need to carefully test the entire process of manually uploading finalized forms (from the list of forms to send), as this functionality has been refactored.

Do we need any specific form for testing your changes? If so, please attach one.

No.

Does this change require updates to documentation? If so, please file an issue here and include the link below.

No.

Before submitting this PR, please make sure you have:

  • added or modified tests for any new or changed behavior
  • run ./gradlew connectedAndroidTest (or ./gradlew testLab) and confirmed all checks still pass
  • added a comment above any new strings describing it for translators
  • added any new strings with date formatting to DateFormatsTest
  • verified that any code or assets from external sources are properly credited in comments and/or in the about file.
  • verified that any new UI elements use theme colors. UI Components Style guidelines

@grzesiek2010 grzesiek2010 marked this pull request as ready for review December 29, 2025 09:21
@grzesiek2010 grzesiek2010 requested a review from seadowg December 29, 2025 09:21
@grzesiek2010 grzesiek2010 force-pushed the COLLECT-6827 branch 2 times, most recently from 0bc07f7 to b2d5dac Compare March 6, 2026 12:10
@grzesiek2010 grzesiek2010 requested a review from seadowg March 6, 2026 12:56
Copy link
Copy Markdown
Member

@seadowg seadowg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just posting another structural change I think would be good here!

Comment thread collect_app/src/main/java/org/odk/collect/android/application/Collect.java Outdated
Copy link
Copy Markdown
Member

@seadowg seadowg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Member

@seadowg seadowg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Member

@seadowg seadowg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you also update the STATE.md with decision around using coroutines in Kotlin code?

@grzesiek2010 grzesiek2010 requested a review from seadowg April 8, 2026 10:02
Comment thread docs/STATE.md
@grzesiek2010 grzesiek2010 merged commit 7c43d35 into getodk:master Apr 10, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

A form doesn’t get auto deleted after canceling sending a finalized form and opening it

3 participants