1{ lib
2, buildPythonPackage
3, pythonOlder
4, fetchFromGitHub
5, pyparsing
6, typing-extensions
7, pytestCheckHook
8}:
9
10buildPythonPackage rec {
11 version = "0.18.1";
12 pname = "ezdxf";
13 format = "setuptools";
14
15 disabled = pythonOlder "3.5";
16
17 src = fetchFromGitHub {
18 owner = "mozman";
19 repo = "ezdxf";
20 rev = "refs/tags/v${version}";
21 hash = "sha256-x1p9dWrbDtDreXdBuzOA4Za+ZC40y4xdEU7MGb9uUec=";
22 };
23
24 propagatedBuildInputs = [
25 pyparsing
26 typing-extensions
27 ];
28
29 nativeCheckInputs = [
30 pytestCheckHook
31 ];
32
33 disabledTests = [
34 # requires geomdl dependency
35 "TestNurbsPythonCorrectness"
36 "test_rational_spline_curve_points_by_nurbs_python"
37 "test_rational_spline_derivatives_by_nurbs_python"
38 "test_from_nurbs_python_curve_to_ezdxf_bspline"
39 "test_from_ezdxf_bspline_to_nurbs_python_curve_non_rational"
40 "test_from_ezdxf_bspline_to_nurbs_python_curve_rational"
41 # AssertionError: assert 44.99999999999999 == 45
42 "test_dimension_transform_interface"
43 ];
44
45 pythonImportsCheck = [
46 "ezdxf"
47 "ezdxf.addons"
48 ];
49
50 meta = with lib; {
51 description = "Python package to read and write DXF drawings (interface to the DXF file format)";
52 homepage = "https://github.com/mozman/ezdxf/";
53 license = licenses.mit;
54 maintainers = with maintainers; [ hodapp ];
55 platforms = platforms.unix;
56 };
57}