17
17
import sphinx
18
18
import six
19
19
from glob import glob
20
- from sphinx_gallery .sorting import ExplicitOrder
21
20
22
21
# If your extensions are in another directory, add it here. If the directory
23
22
# is relative to the documentation root, use os.path.abspath to make it
29
28
30
29
# Add any Sphinx extension module names here, as strings. They can be extensions
31
30
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
32
- extensions = ['matplotlib.sphinxext.mathmpl' , 'sphinxext.math_symbol_table' ,
33
- 'sphinx.ext.autodoc' , 'matplotlib.sphinxext.only_directives' ,
34
- 'sphinx.ext.doctest' , 'sphinx.ext.autosummary' ,
35
- 'sphinx.ext.inheritance_diagram' , 'sphinx.ext.intersphinx' ,
36
- 'sphinx_gallery.gen_gallery' ,
37
- 'matplotlib.sphinxext.plot_directive' ,
38
- 'sphinxext.github' , 'sphinxext.custom_roles' ,
39
- 'numpydoc' ]
31
+ extensions = [
32
+ 'sphinx.ext.autodoc' ,
33
+ 'sphinx.ext.autosummary' ,
34
+ 'sphinx.ext.doctest' ,
35
+ 'sphinx.ext.inheritance_diagram' ,
36
+ 'sphinx.ext.intersphinx' ,
37
+ 'IPython.sphinxext.ipython_console_highlighting' ,
38
+ 'IPython.sphinxext.ipython_directive' ,
39
+ 'numpydoc' , # Needs to be loaded *after* autodoc.
40
+ 'sphinx_gallery.gen_gallery' ,
41
+ 'matplotlib.sphinxext.mathmpl' ,
42
+ 'matplotlib.sphinxext.only_directives' ,
43
+ 'matplotlib.sphinxext.plot_directive' ,
44
+ 'sphinxext.custom_roles' ,
45
+ 'sphinxext.github' ,
46
+ 'sphinxext.math_symbol_table' ,
47
+ 'sphinxext.mock_gui_toolkits' ,
48
+ 'sphinxext.skip_deprecated' ,
49
+ ]
40
50
41
51
exclude_patterns = ['api/api_changes/*' , 'users/whats_new/*' ]
42
52
@@ -61,18 +71,10 @@ def _check_deps():
61
71
"The following dependencies are missing to build the "
62
72
"documentation: {}" .format (", " .join (missing )))
63
73
64
-
65
74
_check_deps ()
66
75
67
- try :
68
- from unittest .mock import MagicMock
69
- except ImportError :
70
- from mock import MagicMock
71
-
72
-
73
- # Use IPython's console highlighting by default
74
- extensions .extend (['IPython.sphinxext.ipython_console_highlighting' ,
75
- 'IPython.sphinxext.ipython_directive' ])
76
+ # Import only after checking for dependencies.
77
+ from sphinx_gallery .sorting import ExplicitOrder
76
78
77
79
if six .PY2 :
78
80
from distutils .spawn import find_executable
@@ -85,7 +87,6 @@ def _check_deps():
85
87
"No binary named dot - you need to install the Graph Visualization "
86
88
"software (usually packaged as 'graphviz') to build the documentation" )
87
89
88
-
89
90
autosummary_generate = True
90
91
91
92
autodoc_docstring_signature = True
@@ -334,146 +335,6 @@ def _check_deps():
334
335
1 ),
335
336
]
336
337
337
-
338
- class MyCairo (MagicMock ):
339
- version_info = (1 , 4 , 0 )
340
-
341
-
342
- class MyPyQt4 (MagicMock ):
343
- class QtGui (object ):
344
- # PyQt4.QtGui public classes.
345
- # Generated with
346
- # textwrap.fill([name for name in dir(PyQt4.QtGui)
347
- # if isinstance(getattr(PyQt4.QtGui, name), type)])
348
- _QtGui_public_classes = """\
349
- Display QAbstractButton QAbstractGraphicsShapeItem
350
- QAbstractItemDelegate QAbstractItemView QAbstractPrintDialog
351
- QAbstractProxyModel QAbstractScrollArea QAbstractSlider
352
- QAbstractSpinBox QAbstractTextDocumentLayout QAction QActionEvent
353
- QActionGroup QApplication QBitmap QBoxLayout QBrush QButtonGroup
354
- QCalendarWidget QCheckBox QClipboard QCloseEvent QColor QColorDialog
355
- QColumnView QComboBox QCommandLinkButton QCommonStyle QCompleter
356
- QConicalGradient QContextMenuEvent QCursor QDataWidgetMapper QDateEdit
357
- QDateTimeEdit QDesktopServices QDesktopWidget QDial QDialog
358
- QDialogButtonBox QDirModel QDockWidget QDoubleSpinBox QDoubleValidator
359
- QDrag QDragEnterEvent QDragLeaveEvent QDragMoveEvent QDropEvent
360
- QErrorMessage QFileDialog QFileIconProvider QFileOpenEvent
361
- QFileSystemModel QFocusEvent QFocusFrame QFont QFontComboBox
362
- QFontDatabase QFontDialog QFontInfo QFontMetrics QFontMetricsF
363
- QFormLayout QFrame QGesture QGestureEvent QGestureRecognizer QGlyphRun
364
- QGradient QGraphicsAnchor QGraphicsAnchorLayout QGraphicsBlurEffect
365
- QGraphicsColorizeEffect QGraphicsDropShadowEffect QGraphicsEffect
366
- QGraphicsEllipseItem QGraphicsGridLayout QGraphicsItem
367
- QGraphicsItemAnimation QGraphicsItemGroup QGraphicsLayout
368
- QGraphicsLayoutItem QGraphicsLineItem QGraphicsLinearLayout
369
- QGraphicsObject QGraphicsOpacityEffect QGraphicsPathItem
370
- QGraphicsPixmapItem QGraphicsPolygonItem QGraphicsProxyWidget
371
- QGraphicsRectItem QGraphicsRotation QGraphicsScale QGraphicsScene
372
- QGraphicsSceneContextMenuEvent QGraphicsSceneDragDropEvent
373
- QGraphicsSceneEvent QGraphicsSceneHelpEvent QGraphicsSceneHoverEvent
374
- QGraphicsSceneMouseEvent QGraphicsSceneMoveEvent
375
- QGraphicsSceneResizeEvent QGraphicsSceneWheelEvent
376
- QGraphicsSimpleTextItem QGraphicsTextItem QGraphicsTransform
377
- QGraphicsView QGraphicsWidget QGridLayout QGroupBox QHBoxLayout
378
- QHeaderView QHelpEvent QHideEvent QHoverEvent QIcon QIconDragEvent
379
- QIconEngine QIconEngineV2 QIdentityProxyModel QImage QImageIOHandler
380
- QImageReader QImageWriter QInputContext QInputContextFactory
381
- QInputDialog QInputEvent QInputMethodEvent QIntValidator QItemDelegate
382
- QItemEditorCreatorBase QItemEditorFactory QItemSelection
383
- QItemSelectionModel QItemSelectionRange QKeyEvent QKeyEventTransition
384
- QKeySequence QLCDNumber QLabel QLayout QLayoutItem QLineEdit
385
- QLinearGradient QListView QListWidget QListWidgetItem QMainWindow
386
- QMatrix QMatrix2x2 QMatrix2x3 QMatrix2x4 QMatrix3x2 QMatrix3x3
387
- QMatrix3x4 QMatrix4x2 QMatrix4x3 QMatrix4x4 QMdiArea QMdiSubWindow
388
- QMenu QMenuBar QMessageBox QMimeSource QMouseEvent
389
- QMouseEventTransition QMoveEvent QMovie QPageSetupDialog QPaintDevice
390
- QPaintEngine QPaintEngineState QPaintEvent QPainter QPainterPath
391
- QPainterPathStroker QPalette QPanGesture QPen QPicture QPictureIO
392
- QPinchGesture QPixmap QPixmapCache QPlainTextDocumentLayout
393
- QPlainTextEdit QPolygon QPolygonF QPrintDialog QPrintEngine
394
- QPrintPreviewDialog QPrintPreviewWidget QPrinter QPrinterInfo
395
- QProgressBar QProgressDialog QProxyModel QPushButton QPyTextObject
396
- QQuaternion QRadialGradient QRadioButton QRawFont QRegExpValidator
397
- QRegion QResizeEvent QRubberBand QScrollArea QScrollBar
398
- QSessionManager QShortcut QShortcutEvent QShowEvent QSizeGrip
399
- QSizePolicy QSlider QSortFilterProxyModel QSound QSpacerItem QSpinBox
400
- QSplashScreen QSplitter QSplitterHandle QStackedLayout QStackedWidget
401
- QStandardItem QStandardItemModel QStaticText QStatusBar
402
- QStatusTipEvent QStringListModel QStyle QStyleFactory QStyleHintReturn
403
- QStyleHintReturnMask QStyleHintReturnVariant QStyleOption
404
- QStyleOptionButton QStyleOptionComboBox QStyleOptionComplex
405
- QStyleOptionDockWidget QStyleOptionDockWidgetV2 QStyleOptionFocusRect
406
- QStyleOptionFrame QStyleOptionFrameV2 QStyleOptionFrameV3
407
- QStyleOptionGraphicsItem QStyleOptionGroupBox QStyleOptionHeader
408
- QStyleOptionMenuItem QStyleOptionProgressBar QStyleOptionProgressBarV2
409
- QStyleOptionRubberBand QStyleOptionSizeGrip QStyleOptionSlider
410
- QStyleOptionSpinBox QStyleOptionTab QStyleOptionTabBarBase
411
- QStyleOptionTabBarBaseV2 QStyleOptionTabV2 QStyleOptionTabV3
412
- QStyleOptionTabWidgetFrame QStyleOptionTabWidgetFrameV2
413
- QStyleOptionTitleBar QStyleOptionToolBar QStyleOptionToolBox
414
- QStyleOptionToolBoxV2 QStyleOptionToolButton QStyleOptionViewItem
415
- QStyleOptionViewItemV2 QStyleOptionViewItemV3 QStyleOptionViewItemV4
416
- QStylePainter QStyledItemDelegate QSwipeGesture QSyntaxHighlighter
417
- QSystemTrayIcon QTabBar QTabWidget QTableView QTableWidget
418
- QTableWidgetItem QTableWidgetSelectionRange QTabletEvent
419
- QTapAndHoldGesture QTapGesture QTextBlock QTextBlockFormat
420
- QTextBlockGroup QTextBlockUserData QTextBrowser QTextCharFormat
421
- QTextCursor QTextDocument QTextDocumentFragment QTextDocumentWriter
422
- QTextEdit QTextFormat QTextFragment QTextFrame QTextFrameFormat
423
- QTextImageFormat QTextInlineObject QTextItem QTextLayout QTextLength
424
- QTextLine QTextList QTextListFormat QTextObject QTextObjectInterface
425
- QTextOption QTextTable QTextTableCell QTextTableCellFormat
426
- QTextTableFormat QTimeEdit QToolBar QToolBox QToolButton QToolTip
427
- QTouchEvent QTransform QTreeView QTreeWidget QTreeWidgetItem
428
- QTreeWidgetItemIterator QUndoCommand QUndoGroup QUndoStack QUndoView
429
- QVBoxLayout QValidator QVector2D QVector3D QVector4D QWhatsThis
430
- QWhatsThisClickedEvent QWheelEvent QWidget QWidgetAction QWidgetItem
431
- QWindowStateChangeEvent QWizard QWizardPage QWorkspace
432
- QX11EmbedContainer QX11EmbedWidget QX11Info
433
- """
434
- for _name in _QtGui_public_classes .split ():
435
- locals ()[_name ] = type (_name , (), {})
436
- del _name
437
-
438
-
439
- class MySip (MagicMock ):
440
- def getapi (* args ):
441
- return 1
442
-
443
-
444
- class MyWX (MagicMock ):
445
- class Panel (object ):
446
- pass
447
-
448
- class ToolBar (object ):
449
- pass
450
-
451
- class Frame (object ):
452
- pass
453
-
454
- VERSION_STRING = '2.9'
455
-
456
-
457
- sys .modules ['cairo' ] = MyCairo ()
458
- sys .modules ['cairo' ].__name__ = 'cairocffi'
459
- sys .modules ['PyQt4' ] = MyPyQt4 ()
460
- sys .modules ['sip' ] = MySip ()
461
- sys .modules ['wx' ] = MyWX ()
462
- sys .modules ['wxversion' ] = MagicMock ()
463
-
464
338
# numpydoc config
465
339
466
340
numpydoc_show_class_members = False
467
-
468
- # Skip deprecated members
469
-
470
- def skip_deprecated (app , what , name , obj , skip , options ):
471
- if skip :
472
- return skip
473
- skipped = {"matplotlib.colors" : ["ColorConverter" , "hex2color" , "rgb2hex" ]}
474
- skip_list = skipped .get (getattr (obj , "__module__" , None ))
475
- if skip_list is not None :
476
- return getattr (obj , "__name__" , None ) in skip_list
477
-
478
- def setup (app ):
479
- app .connect ('autodoc-skip-member' , skip_deprecated )
0 commit comments