Replies: 1 comment
-
We do have that! Only conditionally, though, on tagged commits: PlasmaPy/.github/workflows/testing.yml Lines 160 to 175 in fc08f03
Would be nice to have be helpful, but is blocked on #1413.
That'd be neat to have. The manual web interface is meh at best. The rest seem like they wouldn't help much... |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I listened to a podcast recently on "hypermodern" Python which was a really interesting discussion on a lot of the packaging & testing packages and infrastructure that we depend on. There's also a hypermodern Python package template which I played around with a little bit. There are a bunch of things that we use already (like pre-commit, plus a few new things.
Some of the most interesting possibilities were...
poetry
for dependency management and packaging.nox
instead of tox for testing environments. The main difference is that the testing configuration is in a regular Python file fornox
while it's in atox.ini
file fortox
.src
layout for the package (i.e. moveplasmapy/
tosrc/plasmapy
)Admittedly their list is pretty opinionated, but I was wondering if any of these would be worth trying out. Some of the things might be relatively quick. Switching from
tox
→nox
might be ∼2 days of work, including updating the documentation and testing guide. On the other hand, the type checking stuff would be really helpful in the long run but also a huge amount of work, since we'd need to change how to use our annotations for units and particles.My reason for considering this now is that I've been dealing with a lot of packaging/testing/documentation infrastructure stuff for a couple of packages besides PlasmaPy, and in the long run it'd be easier to change things up sooner rather than later. On the other hand, some of these changes might not be improvements given the tradeoffs, or worth the effort, or just low priority. In any case, it is worth considering these different possibilities since some of them might really make code development easier in the long run.
Beta Was this translation helpful? Give feedback.
All reactions