-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathpyproject.toml
123 lines (117 loc) · 3.24 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
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
[tool.poetry]
name = "ex2mcmc"
version = "0.0.4"
description = "Local-Global MCMC kernels: the best of both worlds (NeurIPS 2022)"
authors = [
"Sergey Samsonov <svsamsonov@hse.ru>",
"Evgeny Lagutin <lagutin.em@phystech.edu>",
"Marylou Gabrié", "Alain Durmus", "Alexey Naumov", "Eric Moulines"
]
maintainers = [
"Evgeny Lagutin <lagutin.em@phystech.edu>", "Sergey Samsonov <svsamsonov@hse.ru>"
]
readme = "README.md"
repository = "http://github.com/svsamsonov/ex2mcmc_new.git"
documentation = "http://github.com/svsamsonov/ex2mcmc_new/blob/master/README.md"
license = "MIT"
keywords = ["mcmc", "adaptive mcmc", "ex2mcmc", "sampling", "normalizing flow"]
[tool.poetry.dependencies]
python = ">= 3.8"
torch = ">= 1.8.0"
torchvision = "*"
seaborn = "*"
pyro-ppl = "*"
pot = "*"
jaxlib = "*"
jax = "*"
gdown = "*"
"ruamel.yaml" = "*"
easydict = "*"
[tool.poetry.group.dev.dependencies]
tensorflow = {version = "~2.11.1", python = "~3.8"}
black = {extras = ["jupyter"], version = "^23.3.0"}
isort = "^5.12.0"
flake8 = "5.0.4"
pre-commit = "*"
docker = "^6.0.1"
jupyter = "*"
ipykernel = "*"
ipython = "*"
pytest = "*"
[tool.black]
target-version = ["py38"]
line-length = 88
include = '\.pyi?$'
exclude = '''
/(
\.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
| thirdparty
)/
'''
[tool.isort]
src_paths = ["."]
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
use_parentheses = true
line_length = 88
lines_after_imports = 2
skip_glob = 'thirdparty'
known_third_party = ["PIL", "gdown", "imageio", "matplotlib", "numpy", "ruamel", "scipy", "seaborn",
"skimage", "sklearn", "tensorflow", "torch", "torchvision", "torch_mimicry"
]
[tool.flake8]
min_python_version = "3.8.0"
max-line-length = 88
# ban-relative-imports = true
# flake8-use-fstring: https://github.com/MichaelKim0407/flake8-use-fstring#--percent-greedy-and---format-greedy
format-greedy = 1
inline-quotes = "double"
# Allow omission of a return type hint for __init__ if at least one argument is annotated
# used by flake8-annotations
mypy-init-return = true
#enable-extensions = TC, TC2
#type-checking-exempt-modules = typing, typing-extensions
eradicate-whitelist-extend = "^-.*;"
extend-ignore = """
# E203: Whitespace before ':' (pycqa/pycodestyle#373)
E203,
# SIM106: Handle error-cases first
SIM106,
# ANN101: Missing type annotation for self in method
ANN101,
# ANN102: Missing type annotation for cls in classmethod
ANN102,
# E402: module level import not at top of file
E402,
"""
per-file-ignores = """
# F401: Module imported by unused (non-implicit modules)
# TC002: Move third-party import '...' into a type-checking block
__init__.py:F401,TC002,
# ANN201: Missing return type annotation for public function
tests/test_*:ANN201
tests/**/test_*:ANN201
"""
extend-exclude = """
# Frozen and not subject to change in this repo:
thirdparty/*,
# # External to the project's coding standards:
"""
[tool.vulture]
exclude = ["*file*.py", "dir/"]
ignore_decorators = ["@app.route", "@require_*"]
ignore_names = ["visit_*", "do_*"]
make_whitelist = true
min_confidence = 80
paths = ["ex2mcmc"]
sort_by_size = true
verbose = false