nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build-system
7 poetry-core,
8 setuptools,
9
10 # dependencies
11 jsonref,
12 jsonschema,
13 latex2mathml,
14 pandas,
15 pillow,
16 pydantic,
17 pyyaml,
18 semchunk,
19 tabulate,
20 transformers,
21 tree-sitter,
22 typer,
23 typing-extensions,
24
25 # tests
26 gitpython,
27 jsondiff,
28 pytestCheckHook,
29 requests,
30}:
31
32buildPythonPackage (finalAttrs: {
33 pname = "docling-core";
34 version = "2.64.0";
35 pyproject = true;
36
37 src = fetchFromGitHub {
38 owner = "docling-project";
39 repo = "docling-core";
40 tag = "v${finalAttrs.version}";
41 hash = "sha256-22UJuHKUKyaIXcFOJvBWZibxBpibENZqVVFmZalWGx0=";
42 };
43
44 build-system = [
45 poetry-core
46 setuptools
47 ];
48
49 dependencies = [
50 jsonref
51 jsonschema
52 latex2mathml
53 pandas
54 pillow
55 pydantic
56 pyyaml
57 semchunk
58 tabulate
59 transformers
60 tree-sitter
61 typer
62 typing-extensions
63 ];
64
65 pythonRelaxDeps = [
66 "pillow"
67 "typer"
68 ];
69
70 pythonImportsCheck = [
71 "docling_core"
72 ];
73
74 nativeCheckInputs = [
75 gitpython
76 jsondiff
77 pytestCheckHook
78 requests
79 ];
80
81 disabledTestPaths = [
82 # attempts to download models
83 "test/test_code_chunker.py"
84 "test/test_code_chunking_strategy.py"
85 "test/test_hybrid_chunker.py"
86 ];
87
88 meta = {
89 changelog = "https://github.com/docling-project/docling-core/blob/${finalAttrs.src.tag}/CHANGELOG.md";
90 description = "Python library to define and validate data types in Docling";
91 homepage = "https://github.com/docling-project/docling-core";
92 license = lib.licenses.mit;
93 maintainers = [ ];
94 };
95})