-
Notifications
You must be signed in to change notification settings - Fork 1
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
Derek furst/exclude results #738
Conversation
…-allow-non-donors Added a bypass in metadata_constraints.py for any non-donor entries i…
Karlburke/bump docker to ubi9
…oval and replaced with a recursive function
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
-
get_fields_to_exclude()
, no need to check Activity section. We haven't had the need to return Activity properties. -
With or without token,
/documents/<id>
returns the same fields. There's a bug on the access check. -
Add function doc comments to
get_fields_to_exclude()
andexclude_properties_from_response()
. -
Rename the function parameter
json_body
inexclude_properties_from_response()
because it's a Python dict instead of a json string. -
dict.copy() used in
exclude_properties_from_response()
is a shallow copy.
It works because it returned the modifiedfinal_result
directly rather than something else based on the original dict. We should not use shallow copy, but keep in mind copy.deepcopy isn't thread safe, and deepcopy is very slow. -
In
app.py
, I see different usages of the check, keep consistent:
- if public_entity and not user_in_hubmap_read_group(request):
- if public_entity and user_in_hubmap_read_group(request) is False:
- if public_entity and has_access is False:
…t) is false rather than if not user_in_hubmap_read_group(request) to be consistent
implemented field exclusion for public datasets when user not in hubmap read group. Was able to remove sub fields (such as ingest_metadata.metadata.lab_id) through use of a recursive function. Certain endpoints unaffected because they are either not publicly accessible or are otherwise exceptions