chore(deps): update pre-commit hooks (#5350)

* chore(deps): update pre-commit hooks

updates:
- [github.com/astral-sh/ruff-pre-commit: v0.5.6 → v0.6.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.5.6...v0.6.3)
- [github.com/pre-commit/mirrors-mypy: v1.11.1 → v1.11.2](https://github.com/pre-commit/mirrors-mypy/compare/v1.11.1...v1.11.2)
- [github.com/sirosen/texthooks: 0.6.6 → 0.6.7](https://github.com/sirosen/texthooks/compare/0.6.6...0.6.7)
- [github.com/PyCQA/pylint: v3.2.6 → v3.2.7](https://github.com/PyCQA/pylint/compare/v3.2.6...v3.2.7)
- [github.com/python-jsonschema/check-jsonschema: 0.29.1 → 0.29.2](https://github.com/python-jsonschema/check-jsonschema/compare/0.29.1...0.29.2)

* style: pre-commit fixes

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index ecac1cb..a8190df 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -32,7 +32,7 @@
 
 # Ruff, the Python auto-correcting linter/formatter written in Rust
 - repo: https://github.com/astral-sh/ruff-pre-commit
-  rev: v0.5.6
+  rev: v0.6.3
   hooks:
   - id: ruff
     args: ["--fix", "--show-fixes"]
@@ -40,7 +40,7 @@
 
 # Check static types with mypy
 - repo: https://github.com/pre-commit/mirrors-mypy
-  rev: "v1.11.1"
+  rev: "v1.11.2"
   hooks:
   - id: mypy
     args: []
@@ -93,7 +93,7 @@
 
 # Avoid directional quotes
 - repo: https://github.com/sirosen/texthooks
-  rev: "0.6.6"
+  rev: "0.6.7"
   hooks:
   - id: fix-ligatures
   - id: fix-smartquotes
@@ -142,14 +142,14 @@
 
 # PyLint has native support - not always usable, but works for us
 - repo: https://github.com/PyCQA/pylint
-  rev: "v3.2.6"
+  rev: "v3.2.7"
   hooks:
   - id: pylint
     files: ^pybind11
 
 # Check schemas on some of our YAML files
 - repo: https://github.com/python-jsonschema/check-jsonschema
-  rev: 0.29.1
+  rev: 0.29.2
   hooks:
   - id: check-readthedocs
   - id: check-github-workflows
diff --git a/tests/conftest.py b/tests/conftest.py
index 7de6c2a..c40b112 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -136,7 +136,7 @@
         return Output(self.err)
 
 
-@pytest.fixture()
+@pytest.fixture
 def capture(capsys):
     """Extended `capsys` with context manager and custom equality operators"""
     return Capture(capsys)
@@ -172,7 +172,7 @@
     return _sanitize_general(s)
 
 
-@pytest.fixture()
+@pytest.fixture
 def doc():
     """Sanitize docstrings and add custom failure explanation"""
     return SanitizedString(_sanitize_docstring)
@@ -184,7 +184,7 @@
     return _hexadecimal.sub("0", s)
 
 
-@pytest.fixture()
+@pytest.fixture
 def msg():
     """Sanitize messages and add custom failure explanation"""
     return SanitizedString(_sanitize_message)
diff --git a/tests/test_async.py b/tests/test_async.py
index 1705196..64f4d6a 100644
--- a/tests/test_async.py
+++ b/tests/test_async.py
@@ -11,7 +11,7 @@
     pytest.skip("Can't run a new event_loop in pyodide", allow_module_level=True)
 
 
-@pytest.fixture()
+@pytest.fixture
 def event_loop():
     loop = asyncio.new_event_loop()
     yield loop
diff --git a/tests/test_custom_type_setup.py b/tests/test_custom_type_setup.py
index 56922c6..ca3340b 100644
--- a/tests/test_custom_type_setup.py
+++ b/tests/test_custom_type_setup.py
@@ -9,7 +9,7 @@
 from pybind11_tests import custom_type_setup as m
 
 
-@pytest.fixture()
+@pytest.fixture
 def gc_tester():
     """Tests that an object is garbage collected.
 
diff --git a/tests/test_numpy_array.py b/tests/test_numpy_array.py
index 4726a8e..bc7b3d5 100644
--- a/tests/test_numpy_array.py
+++ b/tests/test_numpy_array.py
@@ -24,7 +24,7 @@
             )
 
 
-@pytest.fixture()
+@pytest.fixture
 def arr():
     return np.array([[1, 2, 3], [4, 5, 6]], "=u2")