1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 httpx, 6 pydantic, 7 pytestCheckHook, 8 pythonOlder, 9 setuptools, 10}: 11 12buildPythonPackage rec { 13 pname = "pycfmodel"; 14 version = "0.22.0"; 15 pyproject = true; 16 17 disabled = pythonOlder "3.7"; 18 19 src = fetchFromGitHub { 20 owner = "Skyscanner"; 21 repo = "pycfmodel"; 22 rev = "refs/tags/v${version}"; 23 hash = "sha256-NLi94W99LhrBXNFItMfJczV9EZlgvmvkavrfDQJs0YU="; 24 }; 25 26 nativeBuildInputs = [ setuptools ]; 27 28 propagatedBuildInputs = [ pydantic ]; 29 30 nativeCheckInputs = [ 31 httpx 32 pytestCheckHook 33 ]; 34 35 disabledTests = [ 36 # Test require network access 37 "test_cloudformation_actions" 38 "test_auxiliar_cast" 39 "test_valid_es_domain_from_aws_documentation_examples_resource_can_be_built" 40 "test_valid_opensearch_domain_from_aws_documentation_examples_resource_can_be_built" 41 "test_resolve_booleans_different_properties_for_generic_resource" 42 ]; 43 44 pythonImportsCheck = [ "pycfmodel" ]; 45 46 meta = with lib; { 47 description = "Model for Cloud Formation scripts"; 48 homepage = "https://github.com/Skyscanner/pycfmodel"; 49 changelog = "https://github.com/Skyscanner/pycfmodel/releases/tag/v${version}"; 50 license = licenses.asl20; 51 maintainers = with maintainers; [ fab ]; 52 broken = versionAtLeast pydantic.version "2"; 53 }; 54}