Ports currently has scikit-learn 0.20.3, which is incompatible with Python 3.8. Unfortunately there are no versions that support both Python 2 and 3.8: the last to support Python 2 is 0.20.0, and the Python 3.8 issue wasn't fixed until later.
I don't think any other ports depend on scikit-learn (based on running git grep scikit-learn). Is it okay to drop Python 2 support? Alternatively I could try to write a patch to fix the problem. (The Python 3.8 incompatibility is described at https://github.com/cloudpipe/cloudpickle/issues/266 . It affects old scikit-learn versions because scikit-learn used to "vendor" joblib, which in turn vendors cloudpickle. Recent scikit-learn versions take joblib as an external dependency.) -- James