Files
nixpkgs/pkgs/development/python2-modules/mock/default.nix
Martin Weinelt ae4a1a485a treewide: add explicit format attribute for Python packages
If a Python package does not come with either `format` or `pyproject` we
consider it a setuptools build, that calls `setup.py` directly, which is
deprecated.

This change, as a first step, migrates a large chunk of these packages to
set setuptools as their explicit format

This is so we can unify the problem space for the next step of the
migration.
2025-07-02 05:56:47 +02:00

47 lines
1.0 KiB
Nix

{
lib,
buildPythonPackage,
fetchPypi,
isPy27,
funcsigs,
six,
pbr,
unittestCheckHook,
pytest,
}:
buildPythonPackage rec {
pname = "mock";
version = "3.0.5";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "83657d894c90d5681d62155c82bda9c1187827525880eda8ff5df4ec813437c3";
};
propagatedBuildInputs = [
six
pbr
] ++ lib.optionals isPy27 [ funcsigs ];
# On PyPy for Python 2.7 in particular, Mock's tests have a known failure.
# Mock upstream has a decoration to disable the failing test and make
# everything pass, but it is not yet released. The commit:
# https://github.com/testing-cabal/mock/commit/73bfd51b7185#diff-354f30a63fb0907d4ad57269548329e3L12
#doCheck = !(python.isPyPy && python.isPy27);
doCheck = false; # Infinite recursion pytest
nativeCheckInputs = [
unittestCheckHook
pytest
];
meta = with lib; {
description = "Mock objects for Python";
homepage = "http://python-mock.sourceforge.net/";
license = licenses.bsd2;
};
}