1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 attrs,
6 pytest-benchmark,
7 pytestCheckHook,
8 setuptools-scm,
9 six,
10}:
11
12let
13 automat = buildPythonPackage rec {
14 version = "22.10.0";
15 format = "setuptools";
16 pname = "automat";
17
18 src = fetchPypi {
19 pname = "Automat";
20 inherit version;
21 hash = "sha256-5WvrhO2tGdzBHTDo2biV913ute9elrhKRnBms7hLsE4=";
22 };
23
24 nativeBuildInputs = [ setuptools-scm ];
25
26 propagatedBuildInputs = [
27 six
28 attrs
29 ];
30
31 nativeCheckInputs = [
32 pytest-benchmark
33 pytestCheckHook
34 ];
35
36 # escape infinite recursion with twisted
37 doCheck = false;
38
39 passthru.tests = {
40 check = automat.overridePythonAttrs (_: {
41 doCheck = true;
42 });
43 };
44
45 meta = with lib; {
46 homepage = "https://github.com/glyph/Automat";
47 description = "Self-service finite-state machines for the programmer on the go";
48 mainProgram = "automat-visualize";
49 license = licenses.mit;
50 maintainers = with maintainers; [ ];
51 };
52 };
53in
54automat