Skip to content

travis sphinx build failing due to WCSBase pickling issues #934

Closed
eteq opened this Issue Apr 2, 2013 · 2 comments

2 participants

@eteq
The Astropy Project member
eteq commented Apr 2, 2013

For the last few days, the Travis sphinx build on master has been failing. It first started when #908 was merged in, although I don't see how that could possibly have anything to do with it. Thus far I've also been unable to reproduce the failure locally.

For an example failing log, see https://s3.amazonaws.com/archive.travis-ci.org/jobs/5958983/log.txt

That log indicates the following problem:

ERROR: PicklingError: Can't pickle <type 'astropy.wcs.WCSBase'>: attribute lookup astropy.wcs.WCSBase failed [sphinx.environment]
Traceback (most recent call last):
  File "<stdin>", line 29, in <module>
  File "/home/travis/virtualenv/python2.7/local/lib/python2.7/site-packages/sphinx/application.py", line 207, in build
    self.builder.build_all()
  File "/home/travis/virtualenv/python2.7/local/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 174, in build_all
    self.build(None, summary='all source files', method='all')
  File "/home/travis/virtualenv/python2.7/local/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 231, in build
    purple, length):
  File "/home/travis/virtualenv/python2.7/local/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 131, in status_iterator
    for item in iterable:
  File "/home/travis/virtualenv/python2.7/local/lib/python2.7/site-packages/sphinx/environment.py", line 458, in update_generator
    self.read_doc(docname, app=app)
  File "/home/travis/virtualenv/python2.7/local/lib/python2.7/site-packages/sphinx/environment.py", line 677, in read_doc
    pickle.dump(doctree, f, pickle.HIGHEST_PROTOCOL)
cPickle.PicklingError: Can't pickle <type 'astropy.wcs.WCSBase'>: attribute lookup astropy.wcs.WCSBase failed

I've tested locally, and I do find that WCSBase (which is actually in the C extension astropy._wcs._Wcs) gives the same error if you try to pickle it. What I'm not understanding is why travis suddenly started trying to do this when it didn't before (and doesn't do so locally).

I'm investigating this now, but thought I should note my findings thus far here.

@eteq
The Astropy Project member
eteq commented Apr 2, 2013

Aha! Cause discovered: the pip version of sphinx recently changed to 1.2b1 - a quick-fix for this right now is to just make Travis use the known-good sphinx 1.1.3 (I think - the tests are running right now on a branch in eteq/astropy). We'll need to figure out why the build is now breaking in Sphinx 1.2, but I'll make a separate issue for that.

@eteq eteq added a commit that closed this issue Apr 3, 2013
@eteq eteq Force travis to use sphinx v1.1.3
Closes #934
28cc507
@eteq eteq closed this in 28cc507 Apr 3, 2013
@embray
The Astropy Project member
embray commented Apr 3, 2013

Probably because the Sphinx people put a beta release on PyPI. They should know better--even PyPI says not to do that.
(Though I did needle Richard Jones about that at PyCon, and I'm sure others did too--I think at some point that will be fixed.)

@shimizukawa shimizukawa referenced this issue in sphinx-doc/sphinx Jan 3, 2015
Closed

inheritance-diagram -- graphviz issue #1131

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.