1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 6 # build-system 7 hatchling, 8 9 # dependencies 10 anyio, 11 asyncpg, 12 click, 13 cryptography, 14 fsspec, 15 httpx, 16 jinja2, 17 litestar-htmx, 18 mako, 19 msgspec, 20 multidict, 21 picologging, 22 polyfactory, 23 psutil, 24 psycopg, 25 pyyaml, 26 redis, 27 rich, 28 rich-click, 29 time-machine, 30 trio, 31 typing-extensions, 32 33 # tests 34 pytestCheckHook, 35 pytest-lazy-fixtures, 36 pytest-xdist, 37 pytest-mock, 38 pytest-asyncio, 39 pytest-timeout, 40 pytest-rerunfailures, 41 versionCheckHook, 42}: 43 44buildPythonPackage rec { 45 pname = "litestar"; 46 version = "2.13.0"; 47 pyproject = true; 48 49 src = fetchFromGitHub { 50 owner = "litestar-org"; 51 repo = "litestar"; 52 tag = "v${version}"; 53 hash = "sha256-PR2DVNRtILHs7XwVi9/ZCVRJQFqfGLn1x2gpYtYjHDo="; 54 }; 55 56 build-system = [ 57 hatchling 58 ]; 59 60 dependencies = [ 61 anyio 62 asyncpg 63 click 64 cryptography 65 fsspec 66 httpx 67 jinja2 68 litestar-htmx 69 mako 70 msgspec 71 multidict 72 picologging 73 polyfactory 74 psutil 75 psycopg 76 pyyaml 77 redis 78 rich 79 rich-click 80 time-machine 81 trio 82 typing-extensions 83 ]; 84 85 nativeCheckInputs = [ 86 pytestCheckHook 87 pytest-lazy-fixtures 88 pytest-xdist 89 pytest-mock 90 pytest-asyncio 91 pytest-timeout 92 pytest-rerunfailures 93 versionCheckHook 94 ]; 95 versionCheckProgramArg = "version"; 96 97 __darwinAllowLocalNetworking = true; 98 99 pytestFlagsArray = [ 100 # Follow github CI 101 "docs/examples/" 102 ]; 103 104 meta = { 105 homepage = "https://litestar.dev/"; 106 platforms = lib.platforms.unix; 107 maintainers = with lib.maintainers; [ bot-wxt1221 ]; 108 changelog = "https://github.com/litestar-org/litestar/releases/tag/v${version}"; 109 description = "Production-ready, Light, Flexible and Extensible ASGI API framework"; 110 license = lib.licenses.mit; 111 mainProgram = "litestar"; 112 }; 113}