1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 click,
7 requests,
8 ruamel-yaml,
9 pykwalify,
10 jsonschema,
11 pytestCheckHook,
12 pytest-cov-stub,
13}:
14
15buildPythonPackage rec {
16 pname = "cffconvert";
17 version = "2.0.0-unstable-2024-02-12";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "citation-file-format";
22 repo = "cffconvert";
23 rev = "5295f87c0e261da61a7b919fc754e3a77edd98a7";
24 hash = "sha256-/2qhWVNylrqPSf1KmuZQahzq+YH860cohVSfJsDm1BE=";
25 };
26
27 build-system = [ setuptools ];
28
29 dependencies = [
30 click
31 requests
32 ruamel-yaml
33 pykwalify
34 jsonschema
35 ];
36
37 nativeCheckInputs = [
38 pytestCheckHook
39 pytest-cov-stub
40 ];
41
42 disabledTestPaths = [
43 # requires network access
44 "tests/cli/test_rawify_url.py"
45 ];
46
47 pythonImportsCheck = [ "cffconvert" ];
48
49 meta = {
50 changelog = "https://github.com/citation-file-format/cffconvert/blob/${src.rev}/CHANGELOG.md";
51 description = "Command line program to validate and convert CITATION.cff files";
52 homepage = "https://github.com/citation-file-format/cffconvert";
53 license = lib.licenses.asl20;
54 mainProgram = "cffconvert";
55 maintainers = with lib.maintainers; [ ];
56 };
57}