Remove blob_id from asset PUT/POST
- Dominant language
- Python
- Stars
- 26
- Forks
- 21
- Avg merge
- 4d 23h
- Merged PRs (30d)
- 15
Description
ATM to update metadata blob_id is needed, it shouldn't. Even to create a new asset we do not really need blob_id as there must be etag digest in metadata record, dandi-api can identify the blob from the etag digest and thus completely avoid requiring blob_id in the API call.
While addressing this issue, please do not just remove blob_id from the end point but allow for some deprecation cycle so already released clients remain functionable. Just needs to verify that blob_id provided matches the one detected I guess
PS from a discussion with @satra last week, but I think we forgot to file this isue.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the asset PUT/POST endpoints and the metadata validation that currently requires blob_id. Trace how the etag digest identifies a blob, then verify the compatibility behavior for clients that still provide blob_id. Done means new requests can omit blob_id, while supplied values are checked against the detected blob during the deprecation cycle.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- django, python
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100