-
Notifications
You must be signed in to change notification settings - Fork 32
Description
Currently ckanext-validation doesn't allow uploading resources which don’t pass validation. If the validation fails the extension tries to remove a failed resource file. But there are cases where CKAN should be allowed to store invalid data. In cases like asynchronous bulk upload or large tabular data compiled by multiple parties the validation report is important for data curators to know what’s going on in the system.
This could be solved by adding extra configuration option:
ckanext.validation.allow_invalid_data = False
This would let us to modify logic in ckanext/validation/logic.py (https://github.com/frictionlessdata/ckanext-validation/blob/1073c80dace453a404df3d5f1ac1ae86a88b5029/ckanext/validation/logic.py#L665) to preserve data file in case of validation error e.g:
allow_invalid_data = bool(t.config.get(
'ckanext.validation.allow_invalid_data'
))
if not report['valid'] and not allow_invalid_data:
...
I’ll gladly provide a PR for this if you think this is something useful. It’s a requirement of our users, so we’re currently using it in a forked version of ckanext-validation