Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
1.7 kB · 95 lines
Nix
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596{ lib, stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder,
# build-system rustPlatform, cffi,
# native dependencies libiconv,
# tests numpy, psutil, pytestCheckHook, python-dateutil, pytz, xxhash, python,
# for passthru.tests falcon, fastapi, gradio, mashumaro, ufolib2,}:
buildPythonPackage rec { pname = "orjson"; version = "3.10.6"; pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub { owner = "ijl"; repo = "orjson"; rev = "refs/tags/${version}"; hash = "sha256-K3wCzwaGOsaiCm2LW4Oc4XOnp6agrdTxCxqEIMq0fuU="; };
cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; hash = "sha256-SNdwqb47dJ084TMNsm2Btks1UCDerjSmSrQQUiGbx50="; };
maturinBuildFlags = [ "--interpreter ${python.executable}" ];
nativeBuildInputs = [ cffi ] ++ (with rustPlatform; [ cargoSetupHook maturinBuildHook ]);
buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
nativeCheckInputs = [ numpy psutil pytestCheckHook python-dateutil pytz xxhash ];
pythonImportsCheck = [ "orjson" ];
passthru.tests = { inherit falcon fastapi gradio mashumaro ufolib2 ; };
meta = with lib; { description = "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"; homepage = "https://github.com/ijl/orjson"; changelog = "https://github.com/ijl/orjson/blob/${version}/CHANGELOG.md"; license = with licenses; [ asl20 mit ]; platforms = platforms.unix; maintainers = with maintainers; [ misuzu ]; };}