Open ocefpaf opened 1 week ago
There are other Fortran functions in addition to OA that are used throughout seapy. In addition, OA is scattered throughout a number of routines. So, elimination of the fortran code is not a trivial task. We try to use a number of ROMS fortran routines directly to ensure correct calculations (previous Python attempts didn't match perfectly).
Moving away from distutils has been on the priority, but since we haven't upgraded our cluster beyond Python 3.11 it hasn't hit the top yet. Over the next couple of months I had planned to examine the replacement for distutils. It seems it isn't too onerous.
In addition, OA is scattered throughout a number of routines.
This factored out package would still be a dependency here and that would not change. The idea would be to make a build migration easier by having it in its own package.
Building Fortran extensions in Python became quite a nightmare with Python dropping distutils, numpy dropping numpy.distutils, setuptools >=65 dropping the vendored distutils, etc. Also There is no clear substitute (meson? cmake?). Factoring out the OA part will allow the rest of the package be noarch, easy to build and maintain, while depending on an optional OA Fortran extension that, can evolve faster outside of this package, maybe even get a re-write in another language.
If that is something of interest please let me know and I can help with the re-factor.