-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
71 lines (59 loc) · 1.73 KB
/
pyproject.toml
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
[tool.poetry]
name = "qa-generator"
version = "0.0.1"
description = "This is a Streamlit application that generates questions and answers from an uploaded PDF document. It is useful for teachers, professors, or event organizers who need to prepare exam questions or quick tests."
authors = ["NanthagopalEswaran <nanthagopaleswaran@gmail.com>"]
license = "MIT"
readme = "README.md"
packages = [{ include = "qa_generator", from = "." }]
[tool.poetry.dependencies]
python = ">=3.10,<3.12"
streamlit = "^1.30.0"
langchain = "^0.1.4"
langchain-openai = "^0.0.5"
llama-index = "^0.10.30"
docx2txt = "^0.8"
[tool.poetry.group.test.dependencies]
pytest = "^8.1.1"
pytest-cov = "^5.0.0"
delayed-assert = "^0.3.6"
pytest-html = "^4.1.1"
python-dotenv = "^1.0.1"
[tool.poetry.group.dev.dependencies]
ruff = "^0.4.1"
mypy = "^1.9.0"
pre-commit = "^3.7.0"
[tool.ruff]
# Allow lines to be as long as 100.
line-length = 100
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # pyflakes
"B", # flake8-bugbear
"I", # isort
"C", # pylint convention
"A", # flake8-builtins
"N", # pep8-naming
"ASYNC", # flake8-async
"C4", # flake8-comprehensions
]
ignore = [
"E501", # line too long, handled by formatter
"W191", # indentation contains tabs
]
[tool.ruff.pydocstyle]
convention = "google"
[tool.pytest.ini_options]
addopts = [
"--verbose",
"--cov=qa_generator",
"--cov-report=html:.pytest_results/coverage_report",
"--cov-report=xml:.pytest_results/coverage_report/coverage.xml",
"--html=.pytest_results/test_report.html",
"--self-contained-html"
]
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"