Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CEP] Allow deprecating unused case properties #30724

Open
ctsims opened this issue Nov 11, 2021 · 1 comment
Open

[CEP] Allow deprecating unused case properties #30724

ctsims opened this issue Nov 11, 2021 · 1 comment
Labels
CEP CommCare Enhancement Proposal

Comments

@ctsims
Copy link
Member

ctsims commented Nov 11, 2021

Abstract
Allow project spaces to specify that case properties are deprecated and should not longer appear as options in predictive lists of properties

Motivation
Forum Link: https://forum.dimagi.com/t/export-case-data-unable-to-remove-old-case-properties/8569

It's common for app builders to rename or change what properties they intend to associate with a Case Type, but currently those older unused properties continue to appear everywhere that properties are listed (Exports, Form Builder, etc), which can be potentially error inducing (say, a property was mis-spelled initially and now both are listed) or just cumbersome.

Specification
The system should provide a UI or other mechanism to visualize what model properties are inferred about a case type, and allow tagging metadata on them as deprecated. Deprecated properties shouldn't appear in UI's unless they are actively used by the config. IE: If an export currently includes a deprecated property, it should continue to appear on the config page as an option, but if the export does not currently include a deprecated property it should not.

Impact on users
End users will be able to configure a more streamlined experience, but will also have a more "complex" experience since there will be additional factors impacting how the interface functions. During implementation, we should explore options to mitigate the latter, say by introducing "alternative" views of pages with a "Not showing 23 deprecated properties... [View all properties]" type option at the bottom of the export view to provide transparency about state and an alternative workflow when needed.

Impact on hosting
N/A

Backwards compatibility
N/A

Release Timeline

Open questions and issues

@ctsims ctsims added the CEP CommCare Enhancement Proposal label Nov 11, 2021
@millerdev
Copy link
Contributor

👍 Good idea.

Deprecated properties shouldn't appear in UI's unless they are actively used by the config.

I agree, but this could be frustrating. The system should provide a way to see why deprecated properties are not hidden. This could be something like displaying (as a build warning) modules/forms/questions that reference deprecated properties when generating a new app build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CEP CommCare Enhancement Proposal
Projects
None yet
Development

No branches or pull requests

2 participants