We've been making good progress on the migration implementation.
@danbjoseph thanks for your response and for the enthusiasm around getting some of the current OpenMapKit functionality into Collect.
I've also put some thought into designing an official API for external apps to supply form definitions and form submissions to Collect or to get XML form definitions or submissions from Collect. Some questions I am wrestling with and am interested in feedback about:
- should we immediately replace existing access to form and submission XML? We could say e.g. we don't have clear demand for a replacement API since we don't yet have examples of actively deployed apps that are requesting this continued support. (I lean towards providing a replacement API but it's not entirely trivial and it does mean another integration point to support moving forward)
- if we do, whether this replacement needs to be announced and perhaps released BEFORE users start having file migrations so that folks with app integrations can react
- should we bump the version to Collect 2.0 when we start rolling out the file migration? For developers, this will make it very clear that there are breaking changes. For most users, this would seem confusing because there won't be major visible changes. Since folks generally auto-upgrade through the Play Store, the more significant version change probably wouldn't make a difference for most.
I have identified two other applications with integrations that will be affected:
- OpenHDS @aurdipas do you know of active deployments? The only one I am aware of is the one @Batkinson works on but they have now forked both the OpenHDS mobile client and Collect. @Batkinson do you expect to stay on your forks indefinitely? Do you expect to address the scoped storage requirement or deliver outside of the Play Store once it is enforced?
- Project Buendia I've been talking to @zestyping and he has agreed to review a new API. The project uses a Collect fork currently so would not be immediately affected.
Both are examples of applications that improve longitudinal data workflows and add communication with some custom source of entity (patient) data. I'm certain there are many other such applications out there but the big questions is whether they are in active use and would leverage a new API if one were introduced.
@TSC-1, I think this is something you will likely want to discuss during your next meeting.