Closed larsoner closed 1 year ago
... assuming this is okay, it would be great to merge this and cut a release since 9.2.2 is on PyPi now. People are going to start having problems with pip install mayavi
soon I think :(
Bumping to a minimum of 3.7 here, too, since 3.6 is EOL and it's nice to be able to use f-strings
Okay finally all green, top comment updated with actual changes. Ready for review/merge from my end!
I'd recommend updating the branch protection rules before merging this PR both to make merging easier and ensure the rules are correct for future PRs.
I will take a look tonight. Many thanks!
@prabhuramachandran worth a quick 4.8.1 release for this? 9.2.2 is on PyPi so I think a lot of folks will be affected by this.
Yes, I can try to do this in a couple of days. I am primarily concerned about what we do regarding numpy distutils and other issues in the use of setup.py
. I have lost touch with these decisions. I am finding it hard to keep up with the packaging solutions today which more often than not (at least when I checked) are sub-optimal (no support for the corner cases that matter in scientific computing) but then are eventually forced on us. Do you have any recommendations so I can catch up or decide about this?
There is also this: https://github.com/enthought/mayavi/issues/969 which still needs resolution but I haven't had the time to look at this closely. The 9.2.2 issue is serious enough to warrant an emergency release.
I am primarily concerned about what we do regarding numpy distutils and other issues in the use of setup.py
For a couple of projects recently I've started using pyproject.toml
which seems like the way of the future (and I see it used by NumPy, SciPy, etc.) and it hasn't been too bad. But the Mayavi's build configuration is a bit more complex than those projects, so who knows.
There is also this: https://github.com/enthought/mayavi/issues/969 which still needs resolution but I haven't had the time to look at this closely.
That one is bigger/harder/more impactful I think. For that I'd bump to 4.9 or even 5.0 :)
Works around
Adds a
VTK_PARSER_VERBOSE
env var that can be set to1
ortrue
to get it to print instantiations/methods as they are tried. I am tired of uncommenting the debug lines, it would be nice just to set this in the conda-forge build and be an import and two calls away from a MWE next time (just from looking at thepip install -ve .
traceback)!Adds a
TVTK_VERBOSE
env var that enables printing during the TVTK tests (which were segfaulting at one point)Skips pyqt5+decorated-scene GC test until pyface 7.5 comes out, which should include https://github.com/enthought/pyface/pull/1161 (
hasattr
->RuntimeError bug causing segfaults)Sets Python min version to 3.7
Has CIs use 3.7 and now 3.10
Adds dependency on
packaging
(which should be fairly trivial/common anyway). We could loosen this and make it a test-only dependency, but again it's pretty easy to satisfy so seems okay to meCloses #1178