1{ lib 2, buildPythonPackage 3, pythonOlder 4, fetchPypi 5, fetchpatch 6, setuptools 7, fields 8, process-tests 9, pytestCheckHook 10, tornado 11}: 12 13buildPythonPackage rec { 14 pname = "aspectlib"; 15 version = "2.0.0"; 16 17 disabled = pythonOlder "3.7"; 18 19 format = "pyproject"; 20 21 src = fetchPypi { 22 inherit pname version; 23 hash = "sha256-pLRhudoLUxrry5PvzePegIpyxgIm3Y2QLEZ9E/r3zpI="; 24 }; 25 26 patches = [ 27 # https://github.com/ionelmc/python-aspectlib/pull/25 28 (fetchpatch { 29 name = "darwin-compat.patch"; 30 url = "https://github.com/ionelmc/python-aspectlib/commit/ef2c12304f08723dc8e79d1c59bc32c946d758dc.patch"; 31 hash = "sha256-gtPFtwDsGIMkHTyuoiLk+SAGgB2Wyx/Si9HIdoIsvI8="; 32 }) 33 ]; 34 35 nativeBuildInputs = [ 36 setuptools 37 ]; 38 39 propagatedBuildInputs = [ 40 fields 41 ]; 42 43 pythonImportsCheck = [ 44 "aspectlib" 45 "aspectlib.contrib" 46 "aspectlib.debug" 47 "aspectlib.test" 48 ]; 49 50 checkInputs = [ 51 process-tests 52 pytestCheckHook 53 tornado 54 ]; 55 56 __darwinAllowLocalNetworking = true; 57 58 meta = { 59 changelog = "https://github.com/ionelmc/python-aspectlib/blob/v${version}/CHANGELOG.rst"; 60 description = "Aspect-oriented programming, monkey-patch and decorators library"; 61 homepage = "https://github.com/ionelmc/python-aspectlib"; 62 license = lib.licenses.bsd2; 63 maintainers = with lib.maintainers; [ dotlambda ]; 64 }; 65}