[GHC] #10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object"

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Documentation | Version: 7.11 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: Compile-time Unknown/Multiple | crash Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | -------------------------------------+------------------------------------- During a recent validate with Sphinx (sphinx-build) 1.3.1 (as packaged by Arch Linux), I got this failure: {{{ reading sources... [ 33%] glasgow_exts Exception occurred: File "/usr/lib/python3.5/site-packages/sphinx/environment.py", line 863, in read_doc pickle.dump(doctree, f, pickle.HIGHEST_PROTOCOL) RecursionError: maximum recursion depth exceeded while pickling an object The full traceback has been saved in /tmp/sphinx-err-11x82xjc.log, if you want to report the issue to the developers. Please also report this if it was a user error, so that a better error message can be provided next time. A bug report can be filed in the tracker at <https://github.com/sphinx- doc/sphinx/issues>. Thanks! docs/users_guide/ghc.mk:30: recipe for target 'docs/users_guide/ghc.1' failed make[1]: *** [docs/users_guide/ghc.1] Error 1 Makefile:121: recipe for target 'all' failed make: *** [all] Error 2 }}} The contents of the referenced log: {{{ # Sphinx version: 1.3.1 # Python version: 3.5.0 (CPython) # Docutils version: 0.12 release # Jinja2 version: 2.8 # Last messages: # reading sources... [ 6%] bugs # reading sources... [ 9%] codegens # reading sources... [ 12%] debugging # reading sources... [ 15%] editing-guide # reading sources... [ 18%] extending_ghc # reading sources... [ 21%] ffi-chap # reading sources... [ 24%] flags # reading sources... [ 27%] ghc # reading sources... [ 30%] ghci # reading sources... [ 33%] glasgow_exts # Loaded extensions: # sphinx.ext.extlinks (1.3.1) from /usr/lib/python3.5/site- packages/sphinx/ext/extlinks.py # alabaster (0.7.6) from /usr/lib/python3.5/site- packages/alabaster/__init__.py Traceback (most recent call last): File "/usr/lib/python3.5/site-packages/sphinx/cmdline.py", line 245, in main app.build(opts.force_all, filenames) File "/usr/lib/python3.5/site-packages/sphinx/application.py", line 264, in build self.builder.build_update() File "/usr/lib/python3.5/site-packages/sphinx/builders/__init__.py", line 240, in build_update self.build(['__all__'], to_build) File "/usr/lib/python3.5/site-packages/sphinx/builders/__init__.py", line 259, in build self.doctreedir, self.app)) File "/usr/lib/python3.5/site-packages/sphinx/environment.py", line 618, in update self._read_serial(docnames, app) File "/usr/lib/python3.5/site-packages/sphinx/environment.py", line 638, in _read_serial self.read_doc(docname, app) File "/usr/lib/python3.5/site-packages/sphinx/environment.py", line 863, in read_doc pickle.dump(doctree, f, pickle.HIGHEST_PROTOCOL) RecursionError: maximum recursion depth exceeded while pickling an object }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an
object"
-------------------------------------+-------------------------------------
Reporter: ezyang | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Documentation | Version: 7.11
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
crash | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
-------------------------------------+-------------------------------------
Comment (by Ben Gamari

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by thomie): * status: new => closed * resolution: => fixed * milestone: => 8.0.1 Comment: Assuming this is fixed. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): I was waiting to hear back from ezyang before closing but it's quite likely that this is fixed. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by ezyang): Sorry! I haven't seen the error recently, so looks OK. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by olsner): * cc: olsner (added) Comment: I started getting this error when running validate today (I last ran validate sometime before the doc changes). This is with sphinx 1.2.2 from Ubuntu's python3-sphinx package. If you retry once or twice with `./validate --no-clean`, that usually gets past it though. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by ezyang): * status: closed => new * resolution: fixed => Comment: Yeah, I've seen it too. Reopening. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by olsner): Adding the `-E` option to sphinx ("don't use a saved environment, always read all files") seems to work around it for me, presumably because it disables the code that is trying to pickle stuff. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by slyfox): * cc: slyfox (added) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an
object"
-------------------------------------+-------------------------------------
Reporter: ezyang | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 8.0.1
Component: Documentation | Version: 7.11
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
crash | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Sergei Trofimovich

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by slyfox): * status: new => closed * resolution: => fixed Comment: I think empty link in form of {{{ `foo <>`__ }}} was able to make sphinx try to serialize bad parse state. Should be good now. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by slyfox): * status: closed => new * resolution: fixed => Comment: Issue still persists in -HEAD. I think it manifests better with unfixed warnings. Another stab at it: https://phabricator.haskell.org/D1809 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:11 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1809 Wiki Page: | -------------------------------------+------------------------------------- Changes (by slyfox): * differential: => Phab:D1809 -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an
object"
-------------------------------------+-------------------------------------
Reporter: ezyang | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 8.0.1
Component: Documentation | Version: 7.11
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
crash | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D1809
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Sergei Trofimovich

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: merge Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1809 Wiki Page: | -------------------------------------+------------------------------------- Changes (by slyfox): * status: new => merge -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:14 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#10950: Sphinx "RecursionError: maximum recursion depth exceeded while pickling an object" -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.0.1 Component: Documentation | Version: 7.11 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D1809 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: merge => closed * resolution: => fixed Comment: Merged to `ghc-8.0` as e6bbaefcf7d0aa9ce5d6845cf82329e473fd88c0. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10950#comment:15 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC