nodeSolidServer / nodeSolidServer/node-solid-server
Implement container deletion?
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 1.8k
- Forks
- 308
- PR merge metrics
- No merged PRs in 30d
Description
I had the following problem today: I was writing teardown tests for PUT operations. Currently, NSS doesn't check if LDP interaction models are inconsistent with the type of resource actually created, so it ends up creating resources that should have been rejected with 409. That's a very small issue, it probably doesn't happen in the wild anyway, we just want to tighten it up for the future.
Since the teardown tests are supposed to reset the state of the pod to the state it was before running the tests, I need to delete these falsely created resources, but that actually ends up failing the teardown.
I see many ways to fix this on my side, but the simplest would be if NSS was brought to where rough consensus on DELETE stands now, because then, my tests could simply be spec compliant, which is kinda the goal anyway :-)
In https://github.com/solid/specification/issues/41 we found that when deleting a container, the resources it contains should also be deleted if the user has permissions to do so, but it should not recurse and delete subdirectories, if those exist, it should fail.
So, I figured, perhaps I could ask you to do that?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the server's DELETE handling and read the linked Solid specification issue 41 for the expected container behavior. Confirm how permissions and contained resources are handled, including the non-recursive subdirectory case. Done means an authorized container deletion removes permitted contained resources, while deletion fails when subdirectories would require recursion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, nodejs
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100