summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/tools/third_party/websockets/pyproject.toml
blob: f24616dd7ea14aba7f07a18b09bd1cf78f5e94e0 (plain)
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
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"

[project]
name = "websockets"
description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
requires-python = ">=3.8"
license = { text = "BSD-3-Clause" }
authors = [
    { name = "Aymeric Augustin", email = "aymeric.augustin@m4x.org" },
]
keywords = ["WebSocket"]
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Environment :: Web Environment",
    "Intended Audience :: Developers",
    "License :: OSI Approved :: BSD License",
    "Operating System :: OS Independent",
    "Programming Language :: Python",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.8",
    "Programming Language :: Python :: 3.9",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
]
dynamic = ["version", "readme"]

[project.urls]
Homepage = "https://github.com/python-websockets/websockets"
Changelog = "https://websockets.readthedocs.io/en/stable/project/changelog.html"
Documentation = "https://websockets.readthedocs.io/"
Funding = "https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme"
Tracker = "https://github.com/python-websockets/websockets/issues"

# On a macOS runner, build Intel, Universal, and Apple Silicon wheels.
[tool.cibuildwheel.macos]
archs = ["x86_64", "universal2", "arm64"]

# On an Linux Intel runner with QEMU installed, build Intel and ARM wheels.
[tool.cibuildwheel.linux]
archs = ["auto", "aarch64"]

[tool.coverage.run]
branch = true
omit = [
    # */websockets matches src/websockets and .tox/**/site-packages/websockets
    "*/websockets/__main__.py",
    "*/websockets/legacy/async_timeout.py",
    "*/websockets/legacy/compatibility.py",
    "tests/maxi_cov.py",
]

[tool.coverage.paths]
source = [
    "src/websockets",
   ".tox/*/lib/python*/site-packages/websockets",
]

[tool.coverage.report]
exclude_lines = [
    "except ImportError:",
    "if self.debug:",
    "if sys.platform != \"win32\":",
    "if typing.TYPE_CHECKING:",
    "pragma: no cover",
    "raise AssertionError",
    "raise NotImplementedError",
    "self.fail\\(\".*\"\\)",
    "@unittest.skip",
]

[tool.ruff]
select = [
    "E",  # pycodestyle
    "F",  # Pyflakes
    "W",  # pycodestyle
    "I",  # isort
]
ignore = [
    "F403",
    "F405",
]

[tool.ruff.isort]
combine-as-imports = true
lines-after-imports = 2