Something went wrong. Try again.
lol
Something went wrong. Try again.
2.7 kB · 144 lines
Nix
at master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145{ lib, aiohttp, buildPythonPackage, cbor2, certifi, click, fastapi, fetchFromGitHub, flaky, grpcio-tools, grpclib, httpx, invoke, ipython, mypy, mypy-protobuf, protobuf, pyjwt, pytest-asyncio, pytest-env, pytest-markdown-docs, pytest-timeout, pytestCheckHook, python-dotenv, rich, ruff, setuptools, six, synchronicity, toml, typer, types-certifi, types-toml, typing-extensions, watchfiles,}:
buildPythonPackage (finalAttrs: { pname = "modal"; version = "1.4.1"; pyproject = true;
src = fetchFromGitHub { owner = "modal-labs"; repo = "modal-client"; tag = "py/v${finalAttrs.version}"; hash = "sha256-Ol6KYncP1F9EHbcyJmScuBwev79/vxrKWlO/ZkoxOhQ="; }; sourceRoot = "${finalAttrs.src.name}/py";
postPatch = '' substituteInPlace pyproject.toml --replace-fail 'setuptools~=77.0.3' setuptools patchShebangs protoc_plugin/plugin.py inv protoc inv type-stubs '';
build-system = [ setuptools ];
nativeBuildInputs = [ invoke ipython grpcio-tools grpclib synchronicity mypy-protobuf ruff ] ++ synchronicity.optional-dependencies.compile;
pythonRelaxDeps = [ "protobuf" ];
dependencies = [ aiohttp cbor2 certifi click grpclib protobuf rich synchronicity toml typer types-certifi types-toml typing-extensions watchfiles ];
nativeCheckInputs = [ fastapi flaky httpx mypy pyjwt pytest-asyncio pytest-env pytest-markdown-docs pytest-timeout pytestCheckHook python-dotenv six ];
disabledTestPaths = [ # Fail due to not finding /bin/bash "test/app_composition_test.py" "test/cli_shell_test.py" "test/cli_test.py" "test/container_test.py" "test/mounted_files_test.py"
# Needs unpackaged pythonjsonlogger "test/logging_test.py"
# Matches against error messages of a specific mypy version "test/static_types_test.py"
# Fails due to "Jupyter is migrating its paths to use standard platformdirs" "test/notebook_test.py" ]; disabledTests = [ # Non-deterministic "test_queue_blocking_put" ];
__darwinAllowLocalNetworking = true;
pythonImportsCheck = [ "modal" ];
meta = { description = "Python client library for Modal (serverless compute provider)"; homepage = "https://github.com/modal-labs/modal-client"; changelog = "https://github.com/modal-labs/modal-client/blob/${finalAttrs.src.tag}/py/CHANGELOG.md"; mainProgram = "modal"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ Kharacternyk ]; };})