diff --git a/pkgs/development/python-modules/myst-nb/default.nix b/pkgs/development/python-modules/myst-nb/default.nix index a5694987abd..6ede481fba8 100644 --- a/pkgs/development/python-modules/myst-nb/default.nix +++ b/pkgs/development/python-modules/myst-nb/default.nix @@ -2,6 +2,7 @@ , buildPythonPackage , pythonOlder , fetchPypi +, fetchpatch , flit-core , importlib-metadata , ipython @@ -30,6 +31,27 @@ buildPythonPackage rec { hash = "sha256-D2E4ZRX6sHxzZGrcqX//L2n0HpDTE6JgIXxbvkGdhYs="; }; + patches = [ + # Fix compatiblity with myst-parser 1.0. Remove with the next release. + (fetchpatch { + url = "https://github.com/executablebooks/MyST-NB/commit/48c45c6a8c4501005766c2d821b5e9ddfbedd5fa.patch"; + hash = "sha256-jGL2MjZArvPtbiaR/rRGCIi0QwYO0iTIK26GLuTrBM8="; + excludes = [ + "myst_nb/__init__.py" + "docs/authoring/custom-formats.Rmd" + "docs/authoring/jupyter-notebooks.md" + "docs/index.md" + "pyproject.toml" + "tests/nb_fixtures/reporter_warnings.txt" + ]; + }) + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace "myst-parser~=0.18.0" "myst-parser" + ''; + nativeBuildInputs = [ flit-core pythonRelaxDepsHook @@ -53,7 +75,10 @@ buildPythonPackage rec { "myst-parser" ]; - pythonImportsCheck = [ "myst_nb" ]; + pythonImportsCheck = [ + "myst_nb" + "myst_nb.sphinx_ext" + ]; meta = with lib; { description = "A Jupyter Notebook Sphinx reader built on top of the MyST markdown parser";