From 3c9e1eb9a2033538cbb019438a07483d39a97161 Mon Sep 17 00:00:00 2001
From: Benjamin Hipple <bhipple@protonmail.com>
Date: Mon, 7 Dec 2020 21:18:17 -0500
Subject: [PATCH 1/2] python3Packages.markdown-it-py: init at 0.5.6

---
 .../python-modules/markdown-it-py/default.nix | 49 +++++++++++++++++++
 pkgs/top-level/python-packages.nix            |  2 +
 2 files changed, 51 insertions(+)
 create mode 100644 pkgs/development/python-modules/markdown-it-py/default.nix

diff --git a/pkgs/development/python-modules/markdown-it-py/default.nix b/pkgs/development/python-modules/markdown-it-py/default.nix
new file mode 100644
index 00000000000..eb93f2a5320
--- /dev/null
+++ b/pkgs/development/python-modules/markdown-it-py/default.nix
@@ -0,0 +1,49 @@
+{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, pythonOlder
+, attrs
+, coverage
+, psutil
+, pytest
+, pytest-benchmark
+}:
+
+buildPythonPackage rec {
+  pname = "markdown-it-py";
+  version = "0.5.6";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "executablebooks";
+    repo = "markdown-it-py";
+    rev = "v${version}";
+    sha256 = "1m9g8xvd7jiz80x9hl8bw9x0ppndqq5nlcn5y8bjxnfj5s31vpbi";
+  };
+
+  propagatedBuildInputs = [ attrs ];
+
+  checkInputs = [
+    coverage
+    pytest-benchmark
+    psutil
+    pytest
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # Requires the unpackaged pytest-regressions fixture plugin
+    "test_amsmath"
+    "test_container"
+    "test_deflist"
+    "test_dollarmath"
+    "test_spec"
+    "test_texmath"
+  ];
+
+  meta = with lib; {
+    description = "Markdown parser done right";
+    homepage = "https://markdown-it-py.readthedocs.io/en/latest";
+    changelog = "https://github.com/executablebooks/markdown-it-py/blob/master/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ bhipple ];
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 34165a22dec..2ff6441631c 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -3703,6 +3703,8 @@ in {
   else
     callPackage ../development/python-modules/markdown/3_1.nix { };
 
+  markdown-it-py = callPackage ../development/python-modules/markdown-it-py { };
+
   markdown-macros = callPackage ../development/python-modules/markdown-macros { };
 
   markdownsuperscript = callPackage ../development/python-modules/markdownsuperscript { };

From b2d64e2c28417df522359b6bf0b3f140192aba26 Mon Sep 17 00:00:00 2001
From: Benjamin Hipple <bhipple@protonmail.com>
Date: Mon, 7 Dec 2020 21:19:14 -0500
Subject: [PATCH 2/2] python3Packages.jupytext: fix build by adding missing
 markdown-it-py dep; python3 only

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
Co-authored-by: Timo Kaufmann <timokau@zoho.com>
---
 pkgs/development/python-modules/jupytext/default.nix     | 9 ++++++---
 .../python-modules/markdown-it-py/default.nix            | 4 +---
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/python-modules/jupytext/default.nix b/pkgs/development/python-modules/jupytext/default.nix
index 6f4c188c2f7..ba627449c12 100644
--- a/pkgs/development/python-modules/jupytext/default.nix
+++ b/pkgs/development/python-modules/jupytext/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
-, mock
+, markdown-it-py
 , nbformat
 , pytest
 , pyyaml
@@ -10,16 +10,19 @@ buildPythonPackage rec {
   pname = "jupytext";
   version = "1.7.1";
 
+  disabled = isPy27;
+
   src = fetchPypi {
     inherit pname version;
     sha256 = "23123b90c267c67716fe6a022dfae49b84fd3809370d83211f2920eb3106bf40";
   };
 
   propagatedBuildInputs = [
-    pyyaml
+    markdown-it-py
     nbformat
+    pyyaml
     toml
-  ] ++ lib.optionals isPy27 [ mock ]; # why they put it in install_requires, who knows
+  ];
 
   checkInputs = [
     pytest
diff --git a/pkgs/development/python-modules/markdown-it-py/default.nix b/pkgs/development/python-modules/markdown-it-py/default.nix
index eb93f2a5320..2d915762fca 100644
--- a/pkgs/development/python-modules/markdown-it-py/default.nix
+++ b/pkgs/development/python-modules/markdown-it-py/default.nix
@@ -2,7 +2,6 @@
 , attrs
 , coverage
 , psutil
-, pytest
 , pytest-benchmark
 }:
 
@@ -25,7 +24,6 @@ buildPythonPackage rec {
     coverage
     pytest-benchmark
     psutil
-    pytest
     pytestCheckHook
   ];
 
@@ -42,7 +40,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Markdown parser done right";
     homepage = "https://markdown-it-py.readthedocs.io/en/latest";
-    changelog = "https://github.com/executablebooks/markdown-it-py/blob/master/CHANGELOG.md";
+    changelog = "https://github.com/executablebooks/markdown-it-py/blob/${src.rev}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ bhipple ];
   };