1{ 2 lib, 3 beautifulsoup4, 4 buildPythonPackage, 5 click, 6 dataclasses-json, 7 fetchFromGitHub, 8 htmlmin, 9 jinja2, 10 markdown2, 11 poetry-core, 12 pygments, 13 pytestCheckHook, 14 pythonOlder, 15 pythonRelaxDepsHook, 16 pytz, 17 pyyaml, 18 requests, 19}: 20 21buildPythonPackage rec { 22 pname = "json-schema-for-humans"; 23 version = "1.0.2"; 24 pyproject = true; 25 26 disabled = pythonOlder "3.7"; 27 28 src = fetchFromGitHub { 29 owner = "coveooss"; 30 repo = "json-schema-for-humans"; 31 rev = "refs/tags/v${version}"; 32 hash = "sha256-SSMUHC4IsMIIhmRrG0ZWNO2MNKKvoBSybmEEibAY5q0="; 33 }; 34 35 pythonRelaxDeps = [ "dataclasses-json" ]; 36 37 build-system = [ poetry-core ]; 38 39 nativeBuildInputs = [ pythonRelaxDepsHook ]; 40 41 dependencies = [ 42 click 43 dataclasses-json 44 htmlmin 45 jinja2 46 markdown2 47 pygments 48 pytz 49 pyyaml 50 requests 51 ]; 52 53 nativeCheckInputs = [ 54 beautifulsoup4 55 pytestCheckHook 56 ]; 57 58 disabledTests = [ 59 # Tests require network access 60 "test_references_url" 61 # Tests are failing 62 "TestMdGenerate" 63 ]; 64 65 pythonImportsCheck = [ "json_schema_for_humans" ]; 66 67 meta = with lib; { 68 description = "Quickly generate HTML documentation from a JSON schema"; 69 homepage = "https://github.com/coveooss/json-schema-for-humans"; 70 changelog = "https://github.com/coveooss/json-schema-for-humans/releases/tag/v${version}"; 71 license = licenses.asl20; 72 maintainers = with maintainers; [ astro ]; 73 mainProgram = "generate-schema-doc"; 74 }; 75}