1{
2 lib,
3 fetchPypi,
4 pythonOlder,
5 buildPythonPackage,
6 pyvisa,
7 pyyaml,
8 stringparser,
9 typing-extensions,
10 pytestCheckHook,
11 setuptools,
12 setuptools-scm,
13 wheel,
14}:
15
16buildPythonPackage rec {
17 pname = "pyvisa-sim";
18 version = "0.6.0";
19 format = "pyproject";
20
21 disabled = pythonOlder "3.8";
22
23 src = fetchPypi {
24 pname = "PyVISA-sim";
25 inherit version;
26 hash = "sha256-kHahaRKoEUtDxEsdMolPwfEy1DidiytxmvYiQeQhYcE=";
27 };
28
29 nativeBuildInputs = [
30 setuptools
31 setuptools-scm
32 wheel
33 ];
34
35 propagatedBuildInputs = [
36 pyvisa
37 pyyaml
38 stringparser
39 typing-extensions
40 ];
41
42 nativeCheckInputs = [ pytestCheckHook ];
43
44 pythonImportsCheck = [ "pyvisa_sim" ];
45
46 # should be fixed after 0.5.1, remove at next release
47 disabledTestPaths = [ "pyvisa_sim/testsuite/test_all.py" ];
48
49 meta = with lib; {
50 description = "Simulated backend for PyVISA implementing TCPIP, GPIB, RS232, and USB resources";
51 homepage = "https://pyvisa.readthedocs.io/projects/pyvisa-sim/en/latest/";
52 license = licenses.mit;
53 maintainers = with maintainers; [ evilmav ];
54 };
55}