/assets and /paths -- add 'include=["metadata", "validation"]' option
- Dominant language
- Python
- Stars
- 26
- Forks
- 21
- Avg merge
- 4d 23h
- Merged PRs (30d)
- 15
Description
Generalization of the #100 , inspired by https://github.com/dandi/dandi-cli/issues/699 , and somewhat of an "extension" to https://github.com/dandi/dandi-api/pull/312 .
If we (user, web-ui, dandi-cli) could optionally request extra information from per-asset end-points, this would
- avoid necessity to bombard API server with per-asset requests (e.g. for metadata and/or `/validation`). We can easily implement that in client (as we already do for `metadata`) but IMHO it should be done within API to actually reduce load on the server and make it a better UX since would not require thousands of requests to be sent to the API server
- make it possible for web UI to display that information without incurring significant cost/delay as what #312 is trying to avoid for one particular aspect -- download URL.
- both `/assets` and `/paths` are very similar in this respect, only that `/paths` would provide an "aggregate" across underlying a "directory" assets. It would be IMHO a really nice UX to be able to see that there are problems with assets under a given "directory" and what they are.
This issue is quite broad, and should be treated as an "epic" consisting of the following smaller, more tightly scoped issues:
- [x] #1217
- [ ] #1218
- [ ] #1219
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the completed #1217 and the remaining child issues #1218 and #1219, then inspect the /assets and /paths endpoints. Treat this issue as an epic: it is done only when the smaller scopes are resolved and both endpoints have an agreed optional include mechanism for metadata and validation, including aggregation for paths.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- django, python
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100