Per-user libraries
This will be much more powerful than the current per-instance library, for various reasons:
- Users will have a configurable quota, and be able to upload content themselves, without needing specific permissions. This mean anybody can enjoy its own music on Funkwhale
- Users will decide if they want to share their libraries with their instance, followers, or keep those private (recommended for libraries that contain copyrighted content)
- It will be easier for creators to share their content on the network
- Instance owners will have more incentive to open their instance to signup, since users will be responsible for what is uploaded, and you can easily disable a user account or library
Possible issues with the change:
- Performance, as we have an intermediary level to manage (users -> libraries -> tracks)
- Metadata issues, since multiple users may upload the same tracks in different libraries, but we have to link them as the same track
- Increased load on instances
- Migration path (instance-level libraries to user-level libraries)