Re:An analysis of module names inside top PyPI packages
by jononor on Thursday July 11, 2024 @05:48AM
(#40935002)
Ah, right you are. Yeah, then packages really should not ship such directories.
The practice of having tests inside the package being tested I remember as being discouraged, because it makes it hard to run one version of tests against another of the package. Which I guess can be useful for regression testing, though I have not really used it. An alternative layout that would preserve that be a mypackage_tests top-level.
Re:An analysis of module names inside top PyPI packages
by formerly_proven on Thursday July 11, 2024 @05:52AM
(#40935019)
That's another good option, though I guess yodafying that (tests_mypackage) would have the added benefit that downstream consumers don't get mypackage_tests as an autocomplete suggestion.
I think that's just a misconfiguration due to the relatively common layout of
Depending on how you configure stuff you might accidentally include the tests directory as a separate top-level package next to all packages under "src". If you stick to the legacy ways, this does not happen if you just used the usual I think this is the default behavior of setuptools nowadays if you do not say anything at all in any of the config files about where your code is.If you actually intend to ship the tests, because they don't require a specialized environment to run, then the project layout should really be
Downstream consumers who might want to ship this as part of something larger should ideally be able to just delete mypackage/tests without anything breaking.