1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pytestCheckHook,
6 pythonOlder,
7 setuptools,
8 wheel,
9}:
10
11buildPythonPackage rec {
12 pname = "polyline";
13 version = "2.0.1";
14 format = "pyproject";
15
16 disabled = pythonOlder "3.7";
17
18 src = fetchFromGitHub {
19 owner = "frederickjansen";
20 repo = pname;
21 tag = "v${version}";
22 hash = "sha256-fbGGfZdme4OiIGNlXG1uVl1xP+rPVI9l5hjHM0gwAsE=";
23 };
24
25 postPatch = ''
26 substituteInPlace pyproject.toml \
27 --replace " --cov=polyline --cov-report term-missing" ""
28 '';
29
30 nativeBuildInputs = [
31 setuptools
32 wheel
33 ];
34
35 nativeCheckInputs = [ pytestCheckHook ];
36
37 pythonImportsCheck = [ "polyline" ];
38
39 meta = with lib; {
40 description = "Python implementation of Google's Encoded Polyline Algorithm Format";
41 longDescription = ''
42 polyline is a Python implementation of Google's Encoded Polyline Algorithm Format. It is
43 essentially a port of https://github.com/mapbox/polyline.
44 '';
45 homepage = "https://github.com/frederickjansen/polyline";
46 changelog = "https://github.com/frederickjansen/polyline/releases/tag/${version}";
47 license = licenses.mit;
48 maintainers = with maintainers; [ ersin ];
49 };
50}