Skip to content

Conversation

@KernelDeimos
Copy link
Contributor

No description provided.

@KernelDeimos
Copy link
Contributor Author

KernelDeimos commented Oct 27, 2025

GitHub is erroneously showing repeated changes from the last PR. I need to investigate why this is happening.

update: that was worth investigating; this branch had the wrong base

Accessing the storage object directly duplicates effort of locating the
correct filesystem provider based on the mountpoint of the file with the
contents being requested; an effort that file.js did not perform which
made it incompatible with filesystem mountpoints.

This change has been made to make it easier to move filesystem type
implementations to extensions, because accessing storage directly will
not be supported after puterfs is an extension.
The previous implementation of deleteUser was hard-coded to use the
PuterFSProvider file system type's storage implementation specifically,
even if a different filesystem type is mounted as root or for a
particular user.

This change was tested by creating a user, adding some fsentries, and
then deleting that user. The following classes of filesystem entry were
checked:
- [x] user created directory (with contents)
  - [x] directory fsentry was deleted
- [x] user created directory (empty)
  - [x] directory fsentry was deleted
- [x] immutable directory
  - [x] directory fsentry was deleted
- [x] user created file
  - [x] file fsentry was deleted
  - [x] file storage was deleted
- [x] user created file in trash
  - [x] file fsentry was deleted
  - [x] file storage was deleted
The PR I merged before putting this one up had my changes to api.d.ts
which I thought where on this branch - turns out I only thought that
because this branch had that one as a parent.

However #1818 has a simplification that this change overwrites. I'd like
to keep this simplification so this commit is restoring it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants