forked from kakao/buffalo
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpyproject.toml
More file actions
82 lines (71 loc) · 2.65 KB
/
Copy pathpyproject.toml
File metadata and controls
82 lines (71 loc) · 2.65 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
[tool.poetry]
name = "buffalo"
version = "2.0.1"
description = "TOROS Buffalo: A fast and scalable production-ready open source project for recommender systems"
authors = ["recoteam <recoteam@kakaocorp.com>"]
license = "Apache2"
readme = "README.md"
include = [
"3rd/",
"lib/",
"include/",
"poetry.lock",
"pyproject.toml",
"cuda_extension.py",
"build_extension.py",
]
classifiers = [
"Programming Language :: C++",
"Programming Language :: Cython",
"Programming Language :: Python",
"Operating System :: POSIX :: Linux",
"Operating System :: Unix",
"Operating System :: MacOS",
"License :: OSI Approved :: Apache Software License",
]
[tool.poetry.dependencies]
python = "^3.8.1"
numpy = "^1.21.6"
h5py = "^3.7.0"
psutil = "^5.9.4"
fire = "^0.4.0"
absl-py = "^1.3.0"
scipy = "^1.7.1"
[tool.poetry.group.dev.dependencies]
pytest = "^7.2.0"
poethepoet = "^0.16.5"
isort = "^5.10.1"
flake8 = "^6.0.0"
cpplint = "^1.6.1"
codespell = "^2.2.2"
[tool.poetry.scripts]
Buffalo = "buffalo.cli:_cli_buffalo"
[tool.poetry.build]
script = "build_extension.py"
generate-setup-file = true
[tool.poe.tasks]
[tool.poe.tasks.codespell]
help = "Run codespell on the code base"
cmd = "codespell --skip=*egg-info,3rd,build,.git,_*.cpp,ext --ignore-words-list=als,ALS,coo"
[tool.poe.tasks.isort]
help = "Run isort on the code base"
cmd = "isort . -p=buffalo --skip=3rd/ --skip=docs/ --skip=build/ --skip=tests/ --skip=.pyx --check-only"
[tool.poe.tasks.flake8-py]
help = "Run flake8 on the code base"
cmd = "flake8 ./ --filename=*.py --ignore=E402,E501,E731,E741 --exclude=__init__.py,setup.py,3rd/,build/"
[tool.poe.tasks.flake8-pyx]
help = "Run flake8 on the code base"
cmd = "flake8 ./ --filename=*.pyx --ignore=E225,E731,E226,E227,E402,E501,E741,E901,E999 --exclude=__init__.py,3rd/,build/"
[tool.poe.tasks.cpplint]
help = "Run cpplint on the code base"
cmd = """cpplint --linelength=140 --headers=hpp,h --extensions=cc,cpp \
--filter=-runtime/int,-build/include_subdir,-legal/copyright,-readability/namespace,-readability/todo,-build/namespaces,-whitespace/comments,-readability/casting,-runtime/references,-whitespace/braces,-whitespace/forcolon,-build/include_order,-build/c++11 \
--exclude=include/buffalo/cuda/als/als.hpp \
--exclude=include/buffalo/cuda/bpr/bpr.hpp \
--recursive ./lib ./include"""
[tool.poe.tasks.lint]
help = "Run linting tools on the code base"
sequence = ["isort", "flake8-py", "flake8-pyx", "cpplint"]
[build-system]
requires = ["poetry-core==1.5.0", "setuptools", "wheel", "numpy>=1.21.6", "Cython>=0.29.32", "packaging>=22.0"]
build-backend = "poetry.core.masonry.api"