Skip to content

Conversation

jnothman
Copy link
Member

@jnothman jnothman commented Jul 3, 2018

This is to check how easy it would be to release a version 0.19.2 with Python 3.7 support. Is it just a matter of regenerating the C code with a more recent Cython?

@rth
Copy link
Member

rth commented Jul 4, 2018

Is it just a matter of regenerating the C code with a more recent Cython?

It needs to be cython >=0.27.3,<0.28 I think (#11320 (comment))

There will be several test failures that would need to be solved I think (cf link above). Backporting #11256 might help with a few.

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

Without yet looking at the logs, I'm going to assume that conda can't find appropriate dependencies and I need to use dev wheels

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

I'd not seen your comment @rth. My conjectures were wrong? Good. I'll add the baxkport

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

(it seems our Cron Travis should use python RCs so that we can anticipate this issue better)

@jnothman jnothman changed the title MNT Try upgrading python version requirements in CI MNT Release 0.19.2 with python 3.7 support Jul 4, 2018
@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

Circle fails due to lack of py 3.7 matplotlib release

@rth
Copy link
Member

rth commented Jul 4, 2018

Circle fails due to lack of py 3.7 matplotlib release

It's being worked on in matplotlib/matplotlib#11533

MacPython/scikit-learn-wheels#5 would also be needed to make a release with Py 3.7..

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

I have recently fixed wheelhouse-uploader to work with Python 3.7 on appveyor. So if we have numpy and scipy wheels for Python 3.7 on all platforms we should be able to use MacPython/scikit-learn-wheels to generate the scikit-learn 0.19.2 wheels.

.travis.yml Outdated
@@ -42,9 +42,9 @@ matrix:
CYTHON_VERSION="0.25.2" COVERAGE=true
# This environment use pytest to run the tests. It uses the newest
# supported Anaconda release (4.4.0). It also runs tests requiring Pandas.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should remove "(4.4.0)" from the comment.

appveyor.yml Outdated
@@ -26,11 +26,11 @@ environment:
PYTHON_ARCH: "64"

- PYTHON: "C:\\Python35"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

C:\\Python35 needs to be changed to C:\\Python37 otherwise the preinstalled folder is used IIRC.

appveyor.yml Outdated
@@ -26,11 +26,11 @@ environment:
PYTHON_ARCH: "64"

- PYTHON: "C:\\Python35"
PYTHON_VERSION: "3.5.0"
PYTHON_VERSION: "3.7.0"
PYTHON_ARCH: "32"

- PYTHON: "C:\\Python35-x64"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

C:\\Python37-x64

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

BTW, I am +1 to release a minimal 0.19.2 to add support for Python 3.7.

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

I do not understand why we get a cython error on travis for the old configurations that have not changed (Python 2.7 and such). We did not have that error at the time of the 0.19.1 release.

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

export CYTHON_VERSION="0.23.4" is ignored for the first entry of the build matrix: 0.28 is installed with pip instead.

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

Appveyor is failing while trying to install numpy with a rather mysterious error:

        libraries)
      File "c:\python37\lib\site-packages\setuptools\msvc.py", line 199, in msvc14_gen_lib_options
        if LegacyVersion(np.__version__) < LegacyVersion('1.11.2'):
    AttributeError: module 'numpy' has no attribute '__version__'

I'll change the numpy dependency to the most recent version...

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

Thanks I was about to do it :)

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

The failure in test_logistic.test_max_iter on appveyor with Python 2.7 is fishy:

https://ci.appveyor.com/project/sklearn-ci/scikit-learn/build/1.0.23007/job/gexvcabi6n396fdt#L4021

We did not change anything for this specific environment, right?

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

Actually this could be caused by the change in the version of scipy on appveyor. Maybe we would reproduce the issue on master if we bumbed up the versions of the dependencies on appveyor. Let's ignore this issue for now.

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

Yes, there was a change in the number of iterations reported by fmin_l_bfgs_b. We can probably ignore that assertion and leave a note in what's new. Or try find the right commit to cherry-pick.

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

Here: #10723 / 2aba6e2

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

Great, let's cherry-pick that.

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

Actually this is not exactly the same problem: it says n_iter_ might exceed max_iter which is not what we observe in the failure message.

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018 via email

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

Okay. That's a pain. Doctests will fail for the version of numpy that supports Python 3.7. Just as we disable doctests for earlier versions of numpy in master, we should disable doctests here for recent versions of numpy...

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

FYI I have opened #11425: we will see if the test_logistic.test_max_iter failure is still there on master or not.

@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

I'm leaving this alone for the night. Feel free to hack it if something turns up.

@sklearn-lgtm
Copy link

This pull request fixes 1 alert when merging 857ccd9 into a24c8b4 - view on LGTM.com

fixed alerts:

  • 1 for Except block handles 'BaseException'

Comment posted by LGTM.com

@ogrisel
Copy link
Member

ogrisel commented Jul 4, 2018

Appveyor looks good. Let's merge and I will try to generate the wheels.

@ogrisel ogrisel merged commit 7c3944f into scikit-learn:0.19.X Jul 4, 2018
@jnothman
Copy link
Member Author

jnothman commented Jul 4, 2018

We'll need to fix circle if we want the docs to upload themselves...

@ogrisel
Copy link
Member

ogrisel commented Jul 5, 2018

I won't have time to fix circle today but I would like to try to get the wheels up and running. I pushed a stopgap to try to get them to build:

1d3bf73

I will be off-line this tonight and this WE and then be traveling to Austin for scipy. Feel free (@jnothman or someone else) to do the 0.19.2 release without me in the meantime.

@amueller
Copy link
Member

What's the status on this now?

@rth
Copy link
Member

rth commented Jul 12, 2018

Can't comment on the overall status, but for my part,

I haven't got a chance to get to it yet, but will try later today.

@rth
Copy link
Member

rth commented Jul 14, 2018

Some updates on this,

yarikoptic added a commit to yarikoptic/scikit-learn that referenced this pull request Jul 27, 2018
* tag '0.19.2':
  Release 0.19.2
  [MRG] Fix collections.abc deprecations with Python 3.7 (0.19.X backport) (scikit-learn#11509)
  FIX need to explicitly raise SkipTest
  MAINT disabled some tests failing under macOS and 32-bit Python on windows.
  MNT Release 0.19.2 with python 3.7 support (scikit-learn#11422)
  DOC previous versions -> all available versions (scikit-learn#10179)
  MAINT only build versions list on master branch
  [MRG+1] MAINT Use magic to list documentation versions (scikit-learn#9841)
  DOC Add Examples heading
  minor fixes to whatsnew
  fix release 0.19.1 whatsnew link (scikit-learn#9981)
yarikoptic added a commit to yarikoptic/scikit-learn that referenced this pull request Jul 27, 2018
* releases:
  Release 0.19.2
  [MRG] Fix collections.abc deprecations with Python 3.7 (0.19.X backport) (scikit-learn#11509)
  FIX need to explicitly raise SkipTest
  MAINT disabled some tests failing under macOS and 32-bit Python on windows.
  MNT Release 0.19.2 with python 3.7 support (scikit-learn#11422)
  DOC previous versions -> all available versions (scikit-learn#10179)
  MAINT only build versions list on master branch
  [MRG+1] MAINT Use magic to list documentation versions (scikit-learn#9841)
  DOC Add Examples heading
  minor fixes to whatsnew
  fix release 0.19.1 whatsnew link (scikit-learn#9981)
yarikoptic added a commit to yarikoptic/scikit-learn that referenced this pull request Jul 27, 2018
* dfsg:
  Release 0.19.2
  [MRG] Fix collections.abc deprecations with Python 3.7 (0.19.X backport) (scikit-learn#11509)
  FIX need to explicitly raise SkipTest
  MAINT disabled some tests failing under macOS and 32-bit Python on windows.
  MNT Release 0.19.2 with python 3.7 support (scikit-learn#11422)
  DOC previous versions -> all available versions (scikit-learn#10179)
  MAINT only build versions list on master branch
  [MRG+1] MAINT Use magic to list documentation versions (scikit-learn#9841)
  DOC Add Examples heading
  minor fixes to whatsnew
  fix release 0.19.1 whatsnew link (scikit-learn#9981)
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.

6 participants