PEP about recommended project folder layout
Weatherby,Gerard
gweatherby at uchc.edu
Sun Jul 31 06:16:35 EDT 2022
I’m not aware of any standard convention for laying out packages.
PEP 8 (https://peps.python.org/pep-0008/) specifies conventions for how to write Python, so a standard layout PEP would not be inconsistent.
—
Gerard Weatherby | Application Architect NMRbox | NAN | Department of Molecular Biology and Biophysics
UConn Health 263 Farmington Avenue, Farmington, CT 06030-6406 uchc.edu
On Jul 30, 2022, 4:37 PM -0400, Barry <barry at barrys-emacs.org>, wrote:
*** Attention: This is an external email. Use caution responding, opening attachments or clicking on links. ***
On 30 Jul 2022, at 13:52, c.buhtz at posteo.jp wrote:
Isn't there a PEP?
PEP are for improving python. They are not for telling people how to use python.
I would be surprised to fine a PEP that addressed this.
Barry
On 2022-07-26 07:14 c.buhtz at posteo.jp wrote:
Hello,
I am not sure if I looked into the correct sources. I was looking in
"PEP 609 – Python Packaging Authority (PyPA) Governance" [1] and the
"PyPA specifications" [2].
My question in short: Is there an official document (e.g. a PEP)
about a recommended layout for project folders.
Looking into the wild and past there are a lot of variations of such
layouts. I am far away from being a pro but depending on experience
in my own projects and what I have learned from others (e.g. in
blog-posts/tutorials) I recommend to have the "test" folder and the
package folder side by side on the same level in the project folder
(the root).
my_project
|- tests
| └ test_*.py
|- my_package
| └ __init__.py
└-- README.md
I sometimes add to it the so called "src"-Layout where the package
folder is one level deeper in an extra "src" folder.
my_project
|- tests
| └ test_*.py
|- src
| └- my_package
| └ __init__.py
└-- README.md
I don't want to discuss the pros and cons of all variations. What I
need is an official document I can use in discussions with other
maintainers. If there is a PEP/document against my current
recommendation I am also fine with this. ;)
Kind
Christian
[1] -- <https://urldefense.com/v3/__https://peps.python.org/pep-0609/__;!!Cn_UX_p3!ipqSQS5_ZFxO37h5h5XALf2DxE3eV-x6qNSrVnKJU3cLZIkLfKhuTzSxi1fb-BvYNVPXeT-nYFX8ogu6BLuJjA$ >
[2] -- <https://urldefense.com/v3/__https://packaging.python.org/en/latest/specifications__;!!Cn_UX_p3!ipqSQS5_ZFxO37h5h5XALf2DxE3eV-x6qNSrVnKJU3cLZIkLfKhuTzSxi1fb-BvYNVPXeT-nYFX8oguyjbg15g$ >
--
https://urldefense.com/v3/__https://mail.python.org/mailman/listinfo/python-list__;!!Cn_UX_p3!ipqSQS5_ZFxO37h5h5XALf2DxE3eV-x6qNSrVnKJU3cLZIkLfKhuTzSxi1fb-BvYNVPXeT-nYFX8ogse6_J2Hg$
--
https://urldefense.com/v3/__https://mail.python.org/mailman/listinfo/python-list__;!!Cn_UX_p3!ipqSQS5_ZFxO37h5h5XALf2DxE3eV-x6qNSrVnKJU3cLZIkLfKhuTzSxi1fb-BvYNVPXeT-nYFX8ogse6_J2Hg$
More information about the Python-list
mailing list