{ lib , buildPythonPackage , fetchPypi , pytest , simplejson , mock , glibcLocales , html5lib , pythonOlder , enum34 , python , docutils , jinja2 , pygments , alabaster , Babel , snowballstemmer , six , whoosh , imagesize , requests , sphinxcontrib-applehelp , sphinxcontrib-devhelp , sphinxcontrib-htmlhelp , sphinxcontrib-jsmath , sphinxcontrib-qthelp , sphinxcontrib-serializinghtml , sphinxcontrib-websupport , typing , setuptools , packaging }: buildPythonPackage rec { pname = "sphinx"; version = "3.3.1"; src = fetchPypi { pname = "Sphinx"; inherit version; sha256 = "1e8d592225447104d1172be415bc2972bd1357e3e12fdc76edf2261105db4300"; }; LC_ALL = "en_US.UTF-8"; checkInputs = [ pytest ]; buildInputs = [ simplejson mock glibcLocales html5lib ] ++ lib.optional (pythonOlder "3.4") enum34; # Disable two tests that require network access. checkPhase = '' cd tests; ${python.interpreter} run.py --ignore py35 -k 'not test_defaults and not test_anchors_ignored' ''; propagatedBuildInputs = [ docutils jinja2 pygments alabaster Babel packaging setuptools snowballstemmer six whoosh imagesize requests sphinxcontrib-applehelp sphinxcontrib-devhelp sphinxcontrib-htmlhelp sphinxcontrib-jsmath sphinxcontrib-qthelp sphinxcontrib-serializinghtml sphinxcontrib-websupport ] ++ lib.optional (pythonOlder "3.5") typing; # Lots of tests. Needs network as well at some point. doCheck = false; meta = { description = "A tool that makes it easy to create intelligent and beautiful documentation for Python projects"; homepage = "http://sphinx.pocoo.org/"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ nand0p ]; }; }