getodk / collect

ODK Collect is an Android app for filling out forms. It's been used to collect billions of data points in challenging environments around the world. Contribute and make the world a better place! ✨📋✨
https://docs.getodk.org/collect-intro
Other
718 stars 1.38k forks source link

Fix list names with special characters #6520

Closed seadowg closed 5 days ago

seadowg commented 6 days ago

Fixes this crash

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

I've just opted to quote the list names. I think a good follow up would be to use a safer mechanism to build SQL queries. Sadly, there's very little support for building complex queries with dynamic table/column names in the Android SDK itself, and I also haven't seen much in the way of third party libraries. We might have to roll our own solution.

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?.

Should just allow list names with special characters (like favourite-films). It'd be good to do a full sweep of both dataset and property names to check that anything that can be created on Central is supported by Collect.

Before submitting this PR, please make sure you have:

WKobus commented 5 days ago

Tested with Success!

Verified on device with Android 15, 10

Verified cases:

srujner commented 5 days ago

Tested with Success!

Verified on device with Android 14