Skip to content

Conversation

@eteq
Copy link
Member

@eteq eteq commented Oct 6, 2015

This is a first cut at the changes that I think make sense for the testing suite for astropy v1.2 . It probably makes sense to merge these into master as soon as is reasonable so that we don't have to spend time testing versions we are no longer supporting. This will not work right now, because there's issues with numpy 1.10 (#3854 and, for that matter, I think it's not even in conda yet), but once that's working I can rebase.

The following key changes are made:

  • Main tests use numpy 1.10
  • Drop testing of py 2.6 (although not actually removing all the compatibility code - that belongs in Remove any Python 2.6-specific code and workarounds #3780 )
  • Drop testing of numpy 1.6 (do we want to do this? I think it's pretty aged, but I'm not sure exactly what the usage level is. @astrofrog, was this on one of your surveys?)

@eteq eteq added the testing label Oct 6, 2015
@eteq eteq added this to the v1.2.0 milestone Oct 6, 2015
@mhvk
Copy link
Contributor

mhvk commented Oct 7, 2015

python 3.5 is out too.... Is it possible to move the "main" tests to python3.4, including doc build & coverage?

@astrofrog
Copy link
Member

@eteq - I'll try and dig out the Numpy 1.6 stats later this week.

@astrofrog
Copy link
Member

@eteq - the AppVeyor build can be updated from 2.6 to 2.7

@embray
Copy link
Member

embray commented Oct 7, 2015

I'd like to keep Numpy 1.6 testing for now but would be happy to move toward deprecating support for it.

@eteq
Copy link
Member Author

eteq commented Oct 7, 2015

Ah, good point on py 3.x additions, @mhvk . Although that makes me even more inclined to drop numpy 1.6 so as to reduce our test load... (Will wait on making changes until @astrofrog reports back re the numpy 1.6 stats)

@embray
Copy link
Member

embray commented Oct 7, 2015

If need be we could drop general testing against Numpy 1.6. But we should continue supporting it at least through 1.2, (even if marked deprecated), and so there should be a note somewhere to test against Numpy 1.6 before making any releases until support is officially fully dropped...

@astrofrog
Copy link
Member

Amongst astronomers:

numpy

@mhvk
Copy link
Contributor

mhvk commented Oct 7, 2015

@eteq - just to be sure, I meant to replace the python2 documentation, coverage, pep8, numpy-dev tests with python3 ones (and arguably also replace the mac-os one with python3), so that shouldn't lead to additional test load (though adding python3.5 obviously does).

@embray
Copy link
Member

embray commented Oct 7, 2015

Still some 1.6 users around. If we raise a deprecation warning when astropy is used with Numpy 1.6 that will probably also motivate the 1.6 users to get their upgrades going :)

@astrofrog
Copy link
Member

I agree, let's deprecate Numpy 1.6 in 1.1 and remove in 1.2

@astrofrog
Copy link
Member

Regarding 3.5 - if we test with 3.3 and 3.5, do we need 3.4?

@MSeifert04
Copy link
Contributor

If you really want to deprecate numpy 1.6 with almost as many users as numpy 1.7 - and 5% is quite a few depending on astrofrogs sample size - why not deprecate both of them? This is just a question to satisfy my curiosity not meant seriously.

@embray
Copy link
Member

embray commented Oct 8, 2015

Should have 3.4. In fact should have 3.4 over 3.3 probably. Preferably all 3 though.

@embray
Copy link
Member

embray commented Oct 8, 2015

@MSeifert04 has a good point. There are a number of workarounds we can also drop if we deprecate support for Numpy 1.7 as well. I suppose one could argue that the combined total of 1.6 and 1.7 is a more significant slice of the population, but even that number has probably gone down since that survey was taken...

@embray
Copy link
Member

embray commented Oct 8, 2015

Just to add a sort of heuristic data point, the last two LTS releases of Ubuntu are 14.04 and 12.04. Ubuntu LTSs are supported for 3 years for desktop users and 5 years for server users. The Numpy package in 12.04 is v1.6.1. For desktop users that support has already ended (yikes, time flies!) For server users it's supported until 2017. Astropy v1.0 (which supports Numpy 1.6--in fact it's the minimum version) came out February 2015, and as an LTS of Astropy will be supported according to APE-2 "at least" until February 2017. So technically there's a two month gap were an Astropy that works on Ubuntu 12.04 wouldn't be supported while Ubuntu 12.04 is still supported. However, APE-2 is deliberately flexible--the words "at least" are deliberate. In the very remote chance someone needed extended support for a little while they could get it. (I'm also not saying there's any reason Astropy LTSs have to track with Ubuntu LTSs--I'm just using it as a reference point).

Meanwhile, the Numpy version in the most recent Ubuntu LTS, 14.04, is Numpy v1.8.1. So deprecating support for Numpy 1.7 would have little impact in that regard.

@mhvk
Copy link
Contributor

mhvk commented Oct 8, 2015

It would seem reasonable not to support numpy 1.6 and 1.7 for our next long-term support version, and to assume that anybody who can install astropy >=1.2 can also install a more recent version of numpy.

That said, we could also follow a more simplistic scheme, where we just follow what scipy and/or matplotlib do. Both seem to support numpy >=1.6 as of now.

@astrofrog
Copy link
Member

@eteq - this will need rebasing following the ci-helpers change

Copy link
Member

Choose a reason for hiding this comment

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

I would maybe change this to stable to avoid having to update the default in future

Copy link
Member

Choose a reason for hiding this comment

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

One counterargument could be that one should add a test at the bottom against the (stable-1) version once there is a new release. Using stable here probably makes that update a tiny bit less likely.

@astrofrog
Copy link
Member

@eteq - this will need a rebase. Can you send an email to the astropy-dev list to ask if there are any objections to removing support for 1.6 and 1.7? (noting that the bug fix releases for 1.0 and 1.1 will continue to support those versions).

@crawfordsm
Copy link
Member

I'm not sure if this is appropriate to bring up here, but I am wandering if it would not be good to include testing on different scipy versions as well. Unless I am reading the .travis.yml file wrong, I do not believe there are any travis tests that include a scipy install.

Although this is not currently a dependency of astropy, it is imported roughly ~30x in the package and I could imagine things could start breaking if we aren't regularly checking that those tests aren't failing (or maybe they have been failing and we just haven't been checking them). Scipy is at least used in the stats, cosmology, modeling and convolution packages.

Another question for a different thread would be whether scipy should just be made a dependancy.

@astrofrog
Copy link
Member

@crawfordsm - any test that includes $CONDA_ALL_DEPENDENCIES does include scipy, so we are testing it in some configurations. However, it's a valid question as to whether we should test different versions.

@crawfordsm
Copy link
Member

@astrofrog ah thanks!

@embray
Copy link
Member

embray commented Jan 7, 2016

@crawfordsm I think it would make the test matrix too expansive to test against different scipy versions as well. (And even if we did I would maybe want to test only the tests that explicitly require scipy.)

It would be nice if we had some Jenkins instances to run more expansive tests again, but someone has to maintain that which becomes time consuming (which is why we stopped doing it).

@mhvk
Copy link
Contributor

mhvk commented Jan 7, 2016

Just as a reminder: do move the sphinx, pep8, coverage, and numpy-dev tests to python 3.4 or 3.5 instead of python 2.7 (in preparation for #4454)

@saimn
Copy link
Contributor

saimn commented Apr 15, 2016

Up: Python 2.6 was removed, but Numpy 1.6 is still there and bothers me for #4776.
(and Numpy 1.11 is out, so 1.10 should be added to the list of old versions to test)
I think everybody here agree that Numpy 1.6 (and 1.7 ?) support can be remove in Astropy 1.2 ?

@astrofrog
Copy link
Member

@saimn - no objections from me, now that 1.11 is out, we'd still be supporting the last 4 versions.

@pllim
Copy link
Member

pllim commented Apr 15, 2016

This needs rebasing.

@saimn
Copy link
Contributor

saimn commented Apr 15, 2016

@pllim - Actually this PR could be closed: Python 2.6 was removed, and the default numpy version was changed to stable. I am preparing another one to remove Numpy 1.6 & 1.7 and the compatibility code.

@pllim
Copy link
Member

pllim commented Apr 15, 2016

@eteq , can you confirm that it is okay to close this?

@astrofrog astrofrog closed this Jun 3, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants