-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Switch to src/ layout #28
Comments
Since finding the discussion, I also found that both the Hypermodern Python package guide and Ionel’s blog (i.e. all places that I found that gives reasons for choosing a layout) picked this one. |
It may not have been clear due to the hybrid meeting (which we definitely didn't prepare well for), but I think everyone else was against this. I think I'm going to revert this, though we can always add it if it gets some support. |
You said “let’s try it”. Also the only argument against it was “familiarity”. When weighing that against the arguments above, I don’t see how it can possibly win out. |
Ah yeah, so what I had meant there (and I think was in response to others) was: "lets try it out for a project before making it a part of the template". |
Aah, I see! How far did you get with the stats package yesterday? |
The more I read about it the more convinced I become: Python adds an option to turn off adding the current directory to sys.path |
That was exactly my feeling, but Hynek makes a few good points. I think I'm slightly in favor of |
I guess it would imply that at some point would want to update all scverse
core packages
…On Fri, May 20, 2022, 10:59 Philipp A. ***@***.***> wrote:
whether it's worth the effort changing something
I don’t think I understand what kind of change you’re referring to.
For the code changes it’s mkdir src; git mv
'{{cookiecutter.package_name}}' src/
And what other kind of change is there?
—
Reply to this email directly, view it on GitHub
<#28 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABVZRV5YTFUST7V5MMBBRUDVK5H55ANCNFSM5U6H45EA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
idk, the disruption of breaking all PRs is high. We could just do all new ones that way and upgrade smaller ones |
Done in #79 |
See here for places recommending it:
PyPA discussion, protocol
(Note that “single module” uses official terminology in which “module” means
x.is_file() and x.suffix == '.py'
and “package” meansx.is_dir() and x.join('__init__.py').is_file()
.)Ionel’s blog
Hypermodern Python defers to Hynek’s blog
Furthermore I think:
ls *(/)
will yieldsrc
tests
docs
, package specific names start appearing inside of those{project}/src
to PYTHONPATH or doingpip install -e .
is safer than adding{project}
(Resolution: Try it out after all PRs touching the code got merged)
The text was updated successfully, but these errors were encountered: