Skip to content
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

Include Python 3.11 in test suite #176

Closed
wants to merge 5 commits into from

Conversation

namurphy
Copy link
Contributor

@namurphy namurphy commented Nov 7, 2022

This PR makes two changes to tox.ini in preparation for a v0.1.0 release:

  • Add a test for Python 3.11 to the test suite
  • Change the Python 3.9 test to windows-latest

Because PlasmaPy depends on Numba (at least for now), and fiasco depends on PlasmaPy, it'll be necessary to wait until Numba works on Python 3.11.

@codecov-commenter
Copy link

Codecov Report

Base: 86.90% // Head: 86.90% // No change to project coverage 👍

Coverage data is based on head (45f0612) compared to base (7c118eb).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #176   +/-   ##
=======================================
  Coverage   86.90%   86.90%           
=======================================
  Files          22       22           
  Lines        1802     1802           
=======================================
  Hits         1566     1566           
  Misses        236      236           

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@wtbarnes
Copy link
Owner

wtbarnes commented Nov 7, 2022

Hmm it seems there are issues with both the Windows and 3.11 tests:

  • Windows test failure is because when reading the fiasco rc file, it is expected that the $HOME environment variable exists which is probably bad practice in general. Perhaps we could take a more general approach to reading this configuration file?
  • The 3.11 failure is because numba is being picked up as a dependency but numba is not yet compatible with 3.11. However, I'm not sure why numba is getting picked up as a dependency at all. It is not an explicit dependency of fiasco.

@namurphy
Copy link
Contributor Author

namurphy commented Nov 7, 2022

Windows test failure is because when reading the fiasco rc file, it is expected that the $HOME environment variable exists which is probably bad practice in general. Perhaps we could take a more general approach to reading this configuration file?

Agreed! I'll raise an issue on this.

The 3.11 failure is because numba is being picked up as a dependency but numba is not yet compatible with 3.11. However, I'm not sure why numba is getting picked up as a dependency at all. It is not an explicit dependency of fiasco.

That's PlasmaPy's fault here, since we have Numba as a requirement. I've been dreaming of dropping it because of how long it takes for Numba to get released after a few Python version. Hopefully before next year!

@wtbarnes
Copy link
Owner

wtbarnes commented Nov 7, 2022

Ah gotcha. I didn't realize it had been picked up as a dependency in plasmapy. Is there room to make it an optional dependency?

@namurphy
Copy link
Contributor Author

namurphy commented Nov 7, 2022

Ah gotcha. I didn't realize it had been picked up as a dependency in plasmapy. Is there room to make it an optional dependency?

We use it within some of our formulary functions, so we'd have to do some rewriting to make it optional. My own preference would be to cythonize the numba out of everything so that we drop it as a dependency entirely.

Given the performance improvements with Python 3.11 compared even to
just Python 3.10, we can probably save some time with documentation
builds and linter checks by switching to 3.11.
@namurphy namurphy changed the title Include Python 3.11 & windows-latest in test suite Include Python 3.11 in test suite Nov 21, 2022
@namurphy
Copy link
Contributor Author

namurphy commented Nov 21, 2022

Just downscoped this to remove the tests for Windows, which are going to be covered in a separate PR (see also #179).

And still waiting for Numba to work on Python 3.11...

downscope ← my new favorite word

@wtbarnes
Copy link
Owner

wtbarnes commented Jan 9, 2024

This is superseded by #245

@wtbarnes wtbarnes closed this Jan 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants