mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-27 07:32:02 +00:00
Merge branch 'pybind:master' into master
This commit is contained in:
commit
8b4623b73b
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
@ -36,6 +36,7 @@ jobs:
|
|||||||
- '3.9'
|
- '3.9'
|
||||||
- '3.10'
|
- '3.10'
|
||||||
- '3.11'
|
- '3.11'
|
||||||
|
- '3.12'
|
||||||
- 'pypy-3.7'
|
- 'pypy-3.7'
|
||||||
- 'pypy-3.8'
|
- 'pypy-3.8'
|
||||||
- 'pypy-3.9'
|
- 'pypy-3.9'
|
||||||
@ -74,6 +75,7 @@ jobs:
|
|||||||
uses: actions/setup-python@v4
|
uses: actions/setup-python@v4
|
||||||
with:
|
with:
|
||||||
python-version: ${{ matrix.python }}
|
python-version: ${{ matrix.python }}
|
||||||
|
allow-prereleases: true
|
||||||
|
|
||||||
- name: Setup Boost (Linux)
|
- name: Setup Boost (Linux)
|
||||||
# Can't use boost + define _
|
# Can't use boost + define _
|
||||||
|
@ -54,6 +54,7 @@ repos:
|
|||||||
- markdown-it-py<3 # Drop this together with dropping Python 3.7 support.
|
- markdown-it-py<3 # Drop this together with dropping Python 3.7 support.
|
||||||
- nox
|
- nox
|
||||||
- rich
|
- rich
|
||||||
|
- types-setuptools
|
||||||
|
|
||||||
# CMake formatting
|
# CMake formatting
|
||||||
- repo: https://github.com/cheshirekow/cmake-format-precommit
|
- repo: https://github.com/cheshirekow/cmake-format-precommit
|
||||||
|
@ -66,8 +66,8 @@ try:
|
|||||||
from setuptools import Extension as _Extension
|
from setuptools import Extension as _Extension
|
||||||
from setuptools.command.build_ext import build_ext as _build_ext
|
from setuptools.command.build_ext import build_ext as _build_ext
|
||||||
except ImportError:
|
except ImportError:
|
||||||
from distutils.command.build_ext import build_ext as _build_ext
|
from distutils.command.build_ext import build_ext as _build_ext # type: ignore[assignment]
|
||||||
from distutils.extension import Extension as _Extension
|
from distutils.extension import Extension as _Extension # type: ignore[assignment]
|
||||||
|
|
||||||
import distutils.ccompiler
|
import distutils.ccompiler
|
||||||
import distutils.errors
|
import distutils.errors
|
||||||
@ -84,7 +84,7 @@ STD_TMPL = "/std:c++{}" if WIN else "-std=c++{}"
|
|||||||
# directory into your path if it sits beside your setup.py.
|
# directory into your path if it sits beside your setup.py.
|
||||||
|
|
||||||
|
|
||||||
class Pybind11Extension(_Extension): # type: ignore[misc]
|
class Pybind11Extension(_Extension):
|
||||||
"""
|
"""
|
||||||
Build a C++11+ Extension module with pybind11. This automatically adds the
|
Build a C++11+ Extension module with pybind11. This automatically adds the
|
||||||
recommended flags when you init the extension and assumes C++ sources - you
|
recommended flags when you init the extension and assumes C++ sources - you
|
||||||
@ -266,7 +266,7 @@ def auto_cpp_level(compiler: Any) -> Union[str, int]:
|
|||||||
raise RuntimeError(msg)
|
raise RuntimeError(msg)
|
||||||
|
|
||||||
|
|
||||||
class build_ext(_build_ext): # type: ignore[misc] # noqa: N801
|
class build_ext(_build_ext): # noqa: N801
|
||||||
"""
|
"""
|
||||||
Customized build_ext that allows an auto-search for the highest supported
|
Customized build_ext that allows an auto-search for the highest supported
|
||||||
C++ level for Pybind11Extension. This is only needed for the auto-search
|
C++ level for Pybind11Extension. This is only needed for the auto-search
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
requires = ["setuptools>=42", "cmake>=3.18", "ninja"]
|
requires = ["setuptools>=42", "cmake>=3.18", "ninja"]
|
||||||
build-backend = "setuptools.build_meta"
|
build-backend = "setuptools.build_meta"
|
||||||
|
|
||||||
|
|
||||||
[tool.check-manifest]
|
[tool.check-manifest]
|
||||||
ignore = [
|
ignore = [
|
||||||
"tests/**",
|
"tests/**",
|
||||||
@ -15,6 +16,7 @@ ignore = [
|
|||||||
"noxfile.py",
|
"noxfile.py",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
[tool.mypy]
|
[tool.mypy]
|
||||||
files = ["pybind11"]
|
files = ["pybind11"]
|
||||||
python_version = "3.6"
|
python_version = "3.6"
|
||||||
@ -24,7 +26,7 @@ enable_error_code = ["ignore-without-code", "redundant-expr", "truthy-bool"]
|
|||||||
warn_unreachable = true
|
warn_unreachable = true
|
||||||
|
|
||||||
[[tool.mypy.overrides]]
|
[[tool.mypy.overrides]]
|
||||||
module = ["ghapi.*", "setuptools.*"]
|
module = ["ghapi.*"]
|
||||||
ignore_missing_imports = true
|
ignore_missing_imports = true
|
||||||
|
|
||||||
|
|
||||||
@ -55,10 +57,11 @@ messages_control.disable = [
|
|||||||
"unused-argument", # covered by Ruff ARG
|
"unused-argument", # covered by Ruff ARG
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
[tool.ruff]
|
[tool.ruff]
|
||||||
select = [
|
select = [
|
||||||
"E", "F", "W", # flake8
|
"E", "F", "W", # flake8
|
||||||
"B", "B904", # flake8-bugbear
|
"B", # flake8-bugbear
|
||||||
"I", # isort
|
"I", # isort
|
||||||
"N", # pep8-naming
|
"N", # pep8-naming
|
||||||
"ARG", # flake8-unused-arguments
|
"ARG", # flake8-unused-arguments
|
||||||
@ -77,14 +80,13 @@ select = [
|
|||||||
"YTT", # flake8-2020
|
"YTT", # flake8-2020
|
||||||
]
|
]
|
||||||
ignore = [
|
ignore = [
|
||||||
"PLR", # Design related pylint
|
"PLR", # Design related pylint
|
||||||
"E501", # Line too long (Black is enough)
|
"E501", # Line too long (Black is enough)
|
||||||
"PT011", # Too broad with raises in pytest
|
"PT011", # Too broad with raises in pytest
|
||||||
"PT004", # Fixture that doesn't return needs underscore (no, it is fine)
|
"PT004", # Fixture that doesn't return needs underscore (no, it is fine)
|
||||||
"SIM118",# iter(x) is not always the same as iter(x.keys())
|
"SIM118", # iter(x) is not always the same as iter(x.keys())
|
||||||
]
|
]
|
||||||
target-version = "py37"
|
target-version = "py37"
|
||||||
typing-modules = ["scikit_build_core._compat.typing"]
|
|
||||||
src = ["src"]
|
src = ["src"]
|
||||||
unfixable = ["T20"]
|
unfixable = ["T20"]
|
||||||
exclude = []
|
exclude = []
|
||||||
|
@ -20,6 +20,7 @@ classifiers =
|
|||||||
Programming Language :: Python :: 3.9
|
Programming Language :: Python :: 3.9
|
||||||
Programming Language :: Python :: 3.10
|
Programming Language :: Python :: 3.10
|
||||||
Programming Language :: Python :: 3.11
|
Programming Language :: Python :: 3.11
|
||||||
|
Programming Language :: Python :: 3.12
|
||||||
License :: OSI Approved :: BSD License
|
License :: OSI Approved :: BSD License
|
||||||
Programming Language :: Python :: Implementation :: PyPy
|
Programming Language :: Python :: Implementation :: PyPy
|
||||||
Programming Language :: Python :: Implementation :: CPython
|
Programming Language :: Python :: Implementation :: CPython
|
||||||
|
2
setup.py
2
setup.py
@ -96,7 +96,7 @@ def get_and_replace(
|
|||||||
|
|
||||||
# Use our input files instead when making the SDist (and anything that depends
|
# Use our input files instead when making the SDist (and anything that depends
|
||||||
# on it, like a wheel)
|
# on it, like a wheel)
|
||||||
class SDist(setuptools.command.sdist.sdist): # type: ignore[misc]
|
class SDist(setuptools.command.sdist.sdist):
|
||||||
def make_release_tree(self, base_dir: str, files: List[str]) -> None:
|
def make_release_tree(self, base_dir: str, files: List[str]) -> None:
|
||||||
super().make_release_tree(base_dir, files)
|
super().make_release_tree(base_dir, files)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user