-
Notifications
You must be signed in to change notification settings - Fork 86
Expand file tree
/
Copy pathpyproject.toml
More file actions
160 lines (151 loc) · 5.04 KB
/
pyproject.toml
File metadata and controls
160 lines (151 loc) · 5.04 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
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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
[build-system]
requires = ['setuptools>=68.0.0', 'wheel']
build-backend = 'setuptools.build_meta'
[project]
name = 'synapse'
version = '2.238.0'
authors = [
{ name = 'The Vertex Project LLC', email = 'root@vertex.link'},
]
description = 'Synapse Intelligence Analysis Framework'
readme = 'README.rst'
requires-python = '>=3.11'
license = 'Apache-2.0'
classifiers = [
'Development Status :: 5 - Production/Stable',
'Topic :: Database :: Database Engines/Servers',
'Topic :: System :: Clustering',
'Topic :: System :: Distributed Computing',
'Topic :: System :: Software Distribution',
'Programming Language :: Python :: 3.11',
'Operating System :: POSIX :: Linux',
]
dependencies = [
'cryptography>=46.0.7,<47.0.0',
'msgpack>=1.0.5,<1.2.0',
'xxhash>=1.4.4,<3.7.0',
'lmdb>=1.7.0,<1.8.0',
'tornado>=6.2.0,<7.0.0',
'regex>=2022.9.11',
'PyYAML>=5.4,<6.1.0',
'aiohttp>=3.10.0,<4.0',
'aiohttp-socks>=0.9.0,<0.11.0',
'aiosmtplib>=3.0.0,<3.1.0',
'prompt_toolkit>=3.0.29,<3.1.0',
'lark==1.3.1',
'Pygments>=2.7.4,<2.21.0',
'packaging>=20.0,<27.0',
'fastjsonschema>=2.20.0,<2.22.0',
'stix2-validator>=3.2.0,<4.0.0',
'vcrpy>=4.3.1,<5.2.0',
'base58>=2.1.0,<2.2.0',
'python-bitcoinlib>=0.11.0,<0.13.0',
'pycryptodome>=3.11.0,<3.24.0',
'typing-extensions>=3.7.4,<5.0.0', # synapse.vendor.xrpl req
'scalecodec>=1.0.2,<1.3.0', # synapse.vendor.substrateinterface req
'cbor2>=5.4.1,<5.10.0',
'bech32==1.2.0',
'oauthlib>=3.2.1,<4.0.0',
'idna>=3.6,<3.12',
'python-dateutil>=2.8,<3.0',
'pytz>=2023.3,<2025.3',
'beautifulsoup4[html5lib]>=4.11.1,<5.0',
'vtx-yyjson>=4.3.0,<5.0.0',
]
[project.optional-dependencies]
dev = [
'ruff>0.15.0,<1.0.0',
'pytest>=7.2.0,<8.0.0',
'autopep8>=2.0.4,<3.0.0',
'pytest-cov>=4.0.0,<5.0.0',
'bump2version>=1.0.1,<1.1.0',
'pytest-xdist>=3.0.2,<4.0.0',
'coverage>=7.0.0,<8.0.0',
'setproctitle>=1.0.0,<2.0.0',
]
docs = [
'sphinx>=8.0.0,<9.0.0',
'sphinx-rtd-theme>=3.0.0,<4.0.0',
'sphinx-notfound-page>=1.0.4,<2.0.0',
'jinja2>=3.1.4,<4.0.0',
]
[project.urls]
Homepage = 'https://vertex.link'
Documentation = 'https://synapse.docs.vertex.link'
Repository = 'https://github.com/vertexproject/synapse'
Changelog = 'https://synapse.docs.vertex.link/en/latest/synapse/changelog.html'
[tool.setuptools]
include-package-data = true
[tool.setuptools.package-data]
'synapse' = [
'data/*.mpk',
'data/certs/**',
'data/lark/*.lark',
'data/attack-flow/**',
'data/jsonschemas/**',
'tests/files/**',
'vendor/*/LICENSE'
]
[tool.setuptools.packages.find]
include = ["synapse*"]
[tool.ruff]
include = [
'synapse/*.py',
'scripts/*.py',
'examples/*.py',
]
exclude = [
'synapse/vendor/*',
]
target-version = "py311"
line-length = 120
[tool.ruff.lint]
select = [
"E101", # Indentation is not a multiple of {indent_width}
"E111", # Indentation is not a multiple of {indent_width}
"E114", # Indentation is not a multiple of {indent_width} (comment)
"E201", # Whitespace after '{symbol}'
"E202", # Whitespace before '{symbol}'
"E203", # Whitespace before '{symbol}'
"E204", # Whitespace after decorator
"E221", # Multiple spaces before operator
"E222", # Multiple spaces after operator
"E223", # Tab before operator
"E224", # Tab after operator
"E225", # Missing whitespace around operator
"E226", # Missing whitespace around arithmetic operator
"E227", # Missing whitespace around bitwise or shift operator
"E228", # Missing whitespace around modulo operator
"E231", # Missing whitespace after {}
"E241", # Multiple spaces after comma
"E242", # Tab after comma
"E251", # Unexpected spaces around keyword / parameter equals
"E265", # Block comment should start with #
"E303", # Too many blank lines
"E304", # Blank lines found after function decorator
"E502", # Redundant backslash,
"E703", # Statement ends with an unnecessary semicolon
"E711", # Comparison to None should be cond is None
"E712", # Avoid equality comparisons to True; use {cond}: for truth checks
"E713", # Test for membership should be not in
"E714", # Test for object identity should be is not
"E721", # Use is and is not for type comparisons, or isinstance() for isinstance checks
"E741", # Ambiguous variable name: {name}
"E742", # Ambiguous class name: {name}
"E743", # Ambiguous function name: {name}
"F401", # Unused imports
"F541", # f-string without any placeholders
"F601", # Dictionary key literal repeated
"F811", # Redefined while unused
"F821", # Undefined name {name}. {tip}
"RUF006", # Store a reference to the return value of {expr}.{method}
"W191", # Indentation contains tabs
"W291", # Trailing whitespace
"W292", # No newline at end of file
"W293", # Blank line contains whitespace
"W391", # Too many newlines at end of {domain}
"W605", # Invalid escape sequence: {ch}
]
preview = true
[tool.ruff.lint.per-file-ignores]
"synapse/tests/test_lib_scrape.py" = ["W291"]