Re: pandas: Python 2 removal, 0.23 -> 0.25 transition

2019-10-27 Thread Mo Zhou
Hi Rebecca,

Personally I fully support the option (a). Afterall nobody likes
taking extra burden especially when there is no upstream support
anymore. (b) is for good wish but impractical. (c) means we just
let pandas package rot and die.

Even if some portion of users still need the python2 package,
they could still rely on pypi for some time.

On 2019-10-27 11:01, Rebecca N. Palmer wrote:
> Python 3.8 is being added (#942106). pandas <0.25 does not support
> Python 3.8[0] (when Ubuntu tried they got 268 test failures [1]),
> while pandas>=0.25 does not support Python 2.
> 
> Hence, our options are:
> (a) Remove python-pandas and upgrade pandas to 0.25
> (b) Split pandas into two source packages (like matplotlib) so we can
> have python-pandas 0.23 and python3-pandas 0.25
> (c) Let pandas be broken on 3.8 for now
> I currently favour (a), but this is still open for discussion.
> 
> pandas is currently in a big strongly connected component [2], but it
> looks possible to cut it out of that tangle without actually breaking
> anything, by removing these 2 build-dependencies:
> matplotlib2 (only uses pandas in examples/tests)
> python-apptools (only uses pandas in H5TableNode which (according to
> codesearch) nothing uses)
> 
> This leaves the following needing to drop Python 2 before pandas can:
> 
> Already supports Python 3:
> bcolz
> mdp
> patsy
> python-biom-format
> scikit-learn
> statsmodels (my package, will deal with it when its dependencies are cleared)
> 
> Need a new upstream version to support Python 3:
> metaphlan2
> psychopy
> pymvpa2 (upstream say they don't test this, but the package already
> fails its tests)
> stimfit
> tnseq-transit (needs new dependency pypubsub, in NEW)
> 
> Also, the move from pandas 0.23 to 0.25 involves API changes [3], and
> hence may break some reverse dependencies.  I haven't tested this yet,
> but if you maintain a pandas reverse dependency that has a newer
> upstream version available, this might be a good time to package it.
> 
> To simplify such testing, I hope to upload pandas 0.25 to experimental today.
> 
> [0] https://github.com/pandas-dev/pandas/issues/29043
> [1]
> https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/amd64/p/pandas/20191024_181815_7c017@/log.gz
> [2] https://lists.debian.org/debian-python/2019/10/msg00092.html (not
> quite that big since we started ignoring Suggests, but still not
> something to remove just yet)
> [3] https://pandas.pydata.org/pandas-docs/stable/whatsnew/index.html#release



Re: pandas: Python 2 removal, 0.23 -> 0.25 transition

2019-10-27 Thread Ondrej Novy
Hi,

ne 27. 10. 2019 v 12:33 odesílatel Rebecca N. Palmer <
rebecca_pal...@zoho.com> napsal:

> Hence, our options are:
> (a) Remove python-pandas and upgrade pandas to 0.25
> (b) Split pandas into two source packages (like matplotlib) so we can
> have python-pandas 0.23 and python3-pandas 0.25
> (c) Let pandas be broken on 3.8 for now
> I currently favour (a), but this is still open for discussion.
>

+1 for (a). Imho we are still far away from next stable release a this
breakage is feasible.

-- 
Best regards
 Ondřej Nový


pandas: Python 2 removal, 0.23 -> 0.25 transition

2019-10-27 Thread Rebecca N. Palmer
Python 3.8 is being added (#942106). pandas <0.25 does not support 
Python 3.8[0] (when Ubuntu tried they got 268 test failures [1]), while 
pandas>=0.25 does not support Python 2.


Hence, our options are:
(a) Remove python-pandas and upgrade pandas to 0.25
(b) Split pandas into two source packages (like matplotlib) so we can 
have python-pandas 0.23 and python3-pandas 0.25

(c) Let pandas be broken on 3.8 for now
I currently favour (a), but this is still open for discussion.

pandas is currently in a big strongly connected component [2], but it 
looks possible to cut it out of that tangle without actually breaking 
anything, by removing these 2 build-dependencies:

matplotlib2 (only uses pandas in examples/tests)
python-apptools (only uses pandas in H5TableNode which (according to 
codesearch) nothing uses)


This leaves the following needing to drop Python 2 before pandas can:

Already supports Python 3:
bcolz
mdp
patsy
python-biom-format
scikit-learn
statsmodels (my package, will deal with it when its dependencies are 
cleared)


Need a new upstream version to support Python 3:
metaphlan2
psychopy
pymvpa2 (upstream say they don't test this, but the package already 
fails its tests)

stimfit
tnseq-transit (needs new dependency pypubsub, in NEW)

Also, the move from pandas 0.23 to 0.25 involves API changes [3], and 
hence may break some reverse dependencies.  I haven't tested this yet, 
but if you maintain a pandas reverse dependency that has a newer 
upstream version available, this might be a good time to package it.


To simplify such testing, I hope to upload pandas 0.25 to experimental 
today.


[0] https://github.com/pandas-dev/pandas/issues/29043
[1] 
https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-focal/focal/amd64/p/pandas/20191024_181815_7c017@/log.gz
[2] https://lists.debian.org/debian-python/2019/10/msg00092.html (not 
quite that big since we started ignoring Suggests, but still not 
something to remove just yet)

[3] https://pandas.pydata.org/pandas-docs/stable/whatsnew/index.html#release