dipzza / ultrastar-song2txt

Tools that automate parts of making a song in the ultrastar txt format
GNU Affero General Public License v3.0
1 stars 0 forks source link

Decide project layout #38

Closed dipzza closed 2 years ago

dipzza commented 2 years ago

Relevant to organize the packages with #10 in mind. Also basic to develop apps to fulfill #7, #8 and #11.

In https://setuptools.pypa.io/en/latest/userguide/package_discovery.html there is two popular layouts defined, src layout and flat layout.

The flat layout is more practical (Simple structure, less folder levels, easy for imports / executing with REPL) but it may lead to problems when building packages if you have python files in the repository root.

Poetry uses the flat layout by default (https://python-poetry.org/docs/master/cli/) and detects source folder by name, avoiding distribution or test problems. Also it would require manual configuration for other layouts (https://python-poetry.org/docs/pyproject/) For this reasons this is the chosen layout.