-
Notifications
You must be signed in to change notification settings - Fork 136
Expand file tree
/
Copy pathpyproject.toml
More file actions
96 lines (87 loc) · 2.16 KB
/
pyproject.toml
File metadata and controls
96 lines (87 loc) · 2.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
[project]
name = 'dify_plugin'
version = '0.8.0'
description = 'Dify Plugin SDK'
authors = [{ name = 'langgenius', email = 'hello@dify.ai' }]
dependencies = [
'Flask>=3.1.3',
'Werkzeug>=3.1.8',
'dpkt>=1.9.8',
'gevent>=26.4.0',
'httpx>=0.28.1',
'pydantic_settings>=2.14.1',
'pydantic>=2.13.4',
'pyyaml>=6.0.3',
'requests>=2.33.1',
'socksio>=1.0.0',
'tiktoken>=0.12.0',
'yarl>=1.23.0',
'packaging>=26.2',
]
requires-python = '>=3.12'
readme = 'README.md'
license = 'Apache-2.0'
license-files = ['LICENSE']
keywords = ['dify', 'plugin', 'sdk']
[project.urls]
source = 'https://github.com/langgenius/dify-plugin-sdks'
homepage = 'https://github.com/langgenius/dify-plugin-sdks'
issues = 'https://github.com/langgenius/dify-plugin-sdks/issues'
[build-system]
requires = ['uv_build>=0.11,<0.12']
build-backend = 'uv_build'
[dependency-groups]
dev = [
'prek',
'pytest',
'pytest-cov',
'pytest-mock',
'pytest-xprocess',
'ruff',
'ty',
]
[tool.uv]
default-groups = ['dev']
[tool.pytest]
minversion = '9.0'
testpaths = ['tests']
[tool.ruff]
fix = true
preview = true
required-version = '>=0.15'
[tool.ruff.lint]
select = ['ALL']
ignore = [
'S104',
'PLR0911',
'T201',
'FIX002',
'TD002',
'TD003',
'PLR0915', # Too broad for orchestration-heavy SDK/example functions.
'ERA001', # False positives are common.
'PLR0912',
'PLR0914',
'S101',
'TRY002',
'BLE001',
'TRY301',
'PLR0913', # Explicit is better than implicit.
'PLR0917', # Complex is better than complicated.
'C901',
'FBT', # Too strict.
'TC', # Runtime use of typing constructs is common now.
'TID252', # Too absolute.
'PLR6301', # Violates the usual practice.
'COM812', # Conflicts with `ruff format`.
'CPY', # Covered by the standalone LICENSE file.
'D', # Too verbose.
]
[tool.ruff.lint.pydoclint]
ignore-one-line-docstrings = true
[tool.ruff.lint.per-file-ignores]
'tests/**/*.py' = [
'S101', # Assert statements used for pytest.
'SLF001', # Tests may inspect private implementation details.
'PLR2004', # Magic value used in test cases.
]