mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-02-01 01:33:20 +00:00
Merge pull request #173140 from gador/init-icontract
This commit is contained in:
commit
05bacb0c30
31
pkgs/development/python-modules/dpcontracts/default.nix
Normal file
31
pkgs/development/python-modules/dpcontracts/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dpcontracts";
|
||||
version = "unstable-2018-11-20";
|
||||
format = "setuptools";
|
||||
disabled = pythonOlder "3.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "deadpixi";
|
||||
repo = "contracts";
|
||||
rev = "45cb8542272c2ebe095c6efb97aa9407ddc8bf3c";
|
||||
hash = "sha256-FygJPXo7lZ9tlfqY6KmPJ3PLIilMGLBr3013uj9hCEs=";
|
||||
};
|
||||
|
||||
# package does not have any tests
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [ "dpcontracts" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Provides a collection of decorators that makes it easy to write software using contracts";
|
||||
homepage = "https://github.com/deadpixi/contracts";
|
||||
license = licenses.lgpl3Only;
|
||||
maintainers = with maintainers; [ gador ];
|
||||
};
|
||||
}
|
78
pkgs/development/python-modules/icontract/default.nix
Normal file
78
pkgs/development/python-modules/icontract/default.nix
Normal file
@ -0,0 +1,78 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
, asttokens
|
||||
, typing-extensions
|
||||
, pytestCheckHook
|
||||
, yapf
|
||||
, docutils
|
||||
, pygments
|
||||
, dpcontracts
|
||||
, tabulate
|
||||
, py-cpuinfo
|
||||
, typeguard
|
||||
, astor
|
||||
, numpy
|
||||
, asyncstdlib
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "icontract";
|
||||
version = "2.6.1";
|
||||
format = "setuptools";
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Parquery";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-QyuegyjVyRLQS0DjBJXpTDNeBM7LigGJ5cztVOO7e3Y=";
|
||||
};
|
||||
|
||||
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
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
yapf
|
||||
docutils
|
||||
pygments
|
||||
dpcontracts
|
||||
tabulate
|
||||
py-cpuinfo
|
||||
typeguard
|
||||
astor
|
||||
numpy
|
||||
asyncstdlib
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# needs an old version of deal to comply with the tests
|
||||
# see https://github.com/Parquery/icontract/issues/244
|
||||
"tests_with_others/test_deal.py"
|
||||
# mypy decorator checks don't pass. For some reaseon mypy
|
||||
# doesn't check the python file provided in the test.
|
||||
"tests/test_mypy_decorators.py"
|
||||
];
|
||||
|
||||
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/master/CHANGELOG.rst";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ gador ];
|
||||
};
|
||||
}
|
@ -2544,6 +2544,8 @@ in {
|
||||
|
||||
dpath = callPackage ../development/python-modules/dpath { };
|
||||
|
||||
dpcontracts = callPackage ../development/python-modules/dpcontracts { };
|
||||
|
||||
dpkt = callPackage ../development/python-modules/dpkt { };
|
||||
|
||||
dragonfly = callPackage ../development/python-modules/dragonfly { };
|
||||
@ -4103,6 +4105,8 @@ in {
|
||||
|
||||
idasen = callPackage ../development/python-modules/idasen { };
|
||||
|
||||
icontract = callPackage ../development/python-modules/icontract { };
|
||||
|
||||
identify = callPackage ../development/python-modules/identify { };
|
||||
|
||||
idna = callPackage ../development/python-modules/idna { };
|
||||
|
Loading…
Reference in New Issue
Block a user