Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Put mypy, coverage.py, pytest in pyproject #1273

Merged
merged 2 commits into from
Dec 5, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
14 changes: 0 additions & 14 deletions .coveragerc

This file was deleted.

24 changes: 0 additions & 24 deletions mypy.ini

This file was deleted.

45 changes: 45 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,48 @@
[tool.coverage.run]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to depend on coverage[toml] with this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I think so -- I'm kind of surprised this passed as-is, but maybe it's because the coverage on the 3.11+ jobs (where [toml] isn't needed) was sufficient?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably a bunch of other stuff depends on toml so it's implicitly there.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

branch = true
source = ["OpenSSL", "tests/"]

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

[tool.coverage.report]
show_missing = true

[tool.mypy]
warn_unused_configs = true
follow_imports = "skip"
strict = true
exclude = ['SSL\.py$']
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need for the (?x)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope, should be fine without: (?x) enables re.VERBOSE, which doesn't have any effect here (since there's no comments or significant whitespace in the regexp itself).


[[tool.mypy.overrides]]
module = "OpenSSL.crypto"
warn_return_any = false
disallow_any_expr = false

[[tool.mypy.overrides]]
module = "OpenSSL.rand"
warn_return_any = false

[[tool.mypy.overrides]]
module = "OpenSSL._util"
warn_return_any = false

[[tool.mypy.overrides]]
module = "cryptography.*"
ignore_missing_imports = true

[[tool.mypy.overrides]]
module = "cffi.*"
ignore_missing_imports = true

[tool.pytest.ini_options]
addopts = "-r s --strict-markers"
testpaths = ["tests"]

[tool.ruff]
select = ['E', 'F', 'I', 'W', 'UP', 'RUF']
line-length = 79
Expand Down
4 changes: 0 additions & 4 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
[tool:pytest]
addopts = "-r s --strict-markers"
testpaths = tests

[metadata]
# Ensure LICENSE is included in wheels.
license_file = LICENSE
Expand Down
2 changes: 1 addition & 1 deletion tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ commands =
sphinx-build -W -b html doc doc/_build/html {posargs}

[testenv:coverage-report]
deps = coverage>=4.2
deps = coverage[toml]>=4.2
skip_install = true
commands =
coverage combine
Expand Down