1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 setuptools,
8 setuptools-scm,
9
10 # dependencies
11 typing-extensions,
12
13 # checks
14 pytestCheckHook,
15 pytest-mpl,
16 pytest-subtests,
17}:
18
19buildPythonPackage rec {
20 pname = "flexparser";
21 version = "0.4";
22 pyproject = true;
23
24 src = fetchFromGitHub {
25 owner = "hgrecco";
26 repo = "flexparser";
27 rev = version;
28 hash = "sha256-0Ocp4GsrnzkpSqnP+AK5OxJ3KyUf5Uc6CegDXpRYRqo=";
29 };
30
31 build-system = [
32 setuptools
33 setuptools-scm
34 ];
35
36 dependencies = [ typing-extensions ];
37
38 nativeCheckInputs = [
39 pytestCheckHook
40 pytest-mpl
41 pytest-subtests
42 ];
43
44 pythonImportsCheck = [ "flexparser" ];
45
46 meta = with lib; {
47 description = "Parsing made fun ... using typing";
48 homepage = "https://github.com/hgrecco/flexparser";
49 changelog = "https://github.com/hgrecco/flexparser/blob/${src.rev}/CHANGES";
50 license = licenses.bsd3;
51 maintainers = with maintainers; [ doronbehar ];
52 };
53}