{ lib, buildPythonPackage, pythonOlder, fetchFromGitHub, fetchpatch, importlib-metadata, pyyaml, setuptools, unittestCheckHook, }: buildPythonPackage rec { pname = "markdown"; version = "3.8.2"; pyproject = true; disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "Python-Markdown"; repo = "markdown"; tag = version; hash = "sha256-L5OTjllMUrpsKZbK+EHcqlua/6I4onJvRC3povbHgfY="; }; patches = [ (fetchpatch { url = "https://github.com/Python-Markdown/markdown/commit/23c301de28e12426408656efdfa153b11d4ff558.patch"; hash = "sha256-85HP97iL1umG60jwUgfnHvKHYmws5FSL0xfgZF95aiQ="; }) ]; build-system = [ setuptools ]; dependencies = lib.optionals (pythonOlder "3.10") [ importlib-metadata ]; nativeCheckInputs = [ unittestCheckHook pyyaml ]; pythonImportsCheck = [ "markdown" ]; meta = with lib; { changelog = "https://github.com/Python-Markdown/markdown/blob/${src.tag}/docs/changelog.md"; description = "Python implementation of John Gruber's Markdown"; mainProgram = "markdown_py"; homepage = "https://github.com/Python-Markdown/markdown"; license = licenses.bsd3; maintainers = with maintainers; [ dotlambda ]; }; }