files-community / Files

A modern file manager that helps users organize their files and folders.
https://files.community
MIT License
34.22k stars 2.18k forks source link

Code Quality: Update folder structure to match solution configuration #16353

Open Lamparter opened 2 days ago

Lamparter commented 2 days ago

Description

It would make more sense for the folder structure of the app to match that of the solution configuration (nested folders) in the Solution Explorer:

Image

Although the more generic src and tests folders are used, the platforms and core folders don't quite match the repository folder structure.

Concerned code

The src directory.

Gains

N/A Self-explanatory

Requirements

No response

Comments

This might not be so possible for the Files.Package project due to the problems with it outlined in #16350

0x5bfa commented 1 day ago

Since I've organized the solution structure and standardized the naming of the projects, I don't see any issue around the structures (rather far better than before and almost best now), and don't see benefits that can be gained by nesting just to create just two folders in the src folder.

Lamparter commented 1 day ago

It's bad code style to have nested folders in Solution Explorer that don't actually exist.

(rather far better than before and almost best now)

You're absolutely right, it has been far improved but strangely exactly like FluentHub idk why from when I last saw the codebase which would have looked like this:

Image

Youch, look at the mix of Pascal case and lower case

Lamparter commented 1 day ago

Wait, Files used to use Directory.Build.props??

Just saw that in the image.

0x5bfa commented 1 day ago

I can say it's not bad with definite confidence since the solution file is virtualized and serialized folder structure which VS can deserialize, and so many solution files should customize the structure to be convenient.

but strangely exactly like FluentHub idk why

FluentHub has worked like an infrastructure playground of Files repo. For example, it has the exact same CI infra as Files.

Wait, Files used to use Directory.Build.props??

Can you send the committish url?

Lamparter commented 1 day ago

FluentHub has worked like an infrastructure playground of Files repo. For example, it has the exact same CI infra as Files.

Yes, you've said. 😄

Wait, Files used to use Directory.Build.props??

Can you send the committish url?

265b46e20d4f2f06c02a63bfdbfff55232fc61e8