NRL-Plasma-Physics-Division / turbopy

A lightweight computational physics framework, based on the organization of turboWAVE. Implements a "Simulation, PhysicsModule, ComputeTool, Diagnostic" class hierarchy.
https://turbopy.readthedocs.io/
Creative Commons Zero v1.0 Universal
10 stars 18 forks source link

Is there a way to/do we want to hide files when we package turboPy? (.github, tests, docs) #125

Open GarethTMorgan opened 4 years ago

GarethTMorgan commented 4 years ago

Question Do we want to exclude the docs/tests from the packaged version of turboPy? If you see something online, drop the link in this issue.

padamson commented 4 years ago

For tests, I like this answer on SO. "It depends," but they give a few good options to consider.

I do think we should distribute unit tests. They are really helpful for understanding how the code works at the component level, and I for one like to run tests at least once for any package I'm going to use a lot.

In our case, I think we should strongly consider the plasmapy approach with unit tests embedded in the package hierarchy in tests folders in each subfolder of the package (in our case there are no subfolders, so we would have just one tests folder in the turbopy folder). (The tests folder would not be in the turbopy namespace of course.)

I don't think we should distribute integration tests. They can stay in a top-level tests folder for our use in CI. Often integration tests may use packages required by turbopy, so that allows us to have a "turbopy-dev" environment in environment.yml that differs from what is required by turbopy.

arichar6 commented 4 years ago

@GarethTMorgan So I just packaged up and released (on PyPI) a version of turboPy. Can you dig into that and see what's there?

I think if you pip install turbopy into a new env, the output of the command will include info about what files changed.

Also, if you pip uninstall turbopy, it will ask for confirmation before deleting them.

GarethTMorgan commented 4 years ago

Congratulations Steve! when I pip installed it gave the current version number and it looks like all the dependent packages are there!

GarethTMorgan commented 4 years ago

Successfully installed attrs-19.3.0 click-7.1.2 numpy-1.19.1 pandas-1.1.0 python-dateutil-2.8.1 pytz-2020.1 qtoml-0.3.0 scipy-1.5.2 six-1.15.0 turbopy-2020.8.5 xarray-0.16.0 Checking real quick if these are correct version numbers