Well, really depends what are you after. Not seeking for a module.
Actually i'm working on a ftp-like file browser and i wonder if the file browsing could be possible by just querying the DB. Drupal DB has the files but not the directories.
In core only upload deals with files, facing a user. And upload doesn't need directories. The functionality it provides is similar to email attachments. What i was thinking about is a {directories} table and an additional
"directory" field in {files} table in order to get the files per directory. We should also change the file_check_directory() function to make it insert the directories it creates to the DB.
No we shouldn't - the fileapi is concerned itself with physical files and their locations. All db logic should go in extra modules. There are too many different use cases to satisfy all needs acceptably. With the current file management in drupal a file browser gets files
from DB and requires to scan all files and folders by a physical disk access in order to get directories only. A physical disk access plus a DB hit! I cant think of any other way.
Not exactly.The directory/file check is just that a check for its existance, no more. The db logic in core is upload's. What do you think?
while( true ) { Having directories in db? Maybe, or maybe not. How do you maintain the consistency of the structure in db and the filesystem? What if your filesystem is remote? like S3, ftp, ...? How would you maintain the mapping of permissions to files and directories without db? Whould you allow non-drupal access to the directory structure? via ftp, ssh, webdav, .... } You can see that a single solution to solve all problems is tough. Your suggestions have merit, but their are one of the solutions. I believe there are modules in contrib which do nearly that. They do make compromises, because they target specific use cases. I do believe there will be change in that space with D6. It is too early to tell though.