Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
1.7 kB · 70 lines
Nix
at litex
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071{ lib, buildPythonPackage, pythonOlder, fetchFromGitHub, astor, asttokens, asyncstdlib, deal, dpcontracts, numpy, pytestCheckHook, typing-extensions}:
buildPythonPackage rec { pname = "icontract"; version = "2.6.2"; format = "setuptools"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { owner = "Parquery"; repo = pname; rev = "refs/tags/v${version}"; hash = "sha256-NUgMt/o9EpSQyOiAhYBVJtQKJn0Pd2lI45bKlo2z7mk="; };
preCheck = '' # we don't want to use the precommit.py script to build the package. # For the tests to succeed, "ICONTRACT_SLOW" needs to be set. # see https://github.com/Parquery/icontract/blob/aaeb1b06780a34b05743377e4cb2458780e808d3/precommit.py#L57 export ICONTRACT_SLOW=1 '';
propagatedBuildInputs = [ asttokens typing-extensions ];
nativeCheckInputs = [ astor asyncstdlib deal dpcontracts numpy pytestCheckHook ];
disabledTestPaths = [ # mypy decorator checks don't pass. For some reason mypy # doesn't check the python file provided in the test. "tests/test_mypy_decorators.py" ];
# Upstream adds some plain text files direct to the package's root directory # https://github.com/Parquery/icontract/blob/master/setup.py#L63 postInstall = '' rm -f $out/{LICENSE.txt,README.rst,requirements.txt} '';
pythonImportsCheck = [ "icontract" ];
meta = with lib; { description = "Provide design-by-contract with informative violation messages"; homepage = "https://github.com/Parquery/icontract"; changelog = "https://github.com/Parquery/icontract/blob/v${version}/CHANGELOG.rst"; license = licenses.mit; maintainers = with maintainers; [ gador thiagokokada ]; };}