From b1725dc19ec7af95ca2522cc4f0cc5b12c7b8e6f Mon Sep 17 00:00:00 2001
From: Frederik Hennig <frederik.hennig@fau.de>
Date: Tue, 10 Dec 2024 11:49:07 +0100
Subject: [PATCH] delete redudant code and remove deprecated stuff from
 coverage

---
 pytest.ini                           |  4 ++++
 src/pystencils/_deprecation.py       |  1 +
 src/pystencils/codegen/config.py     |  4 ++--
 src/pystencils/codegen/driver.py     | 25 -------------------------
 src/pystencils/codegen/kernel.py     |  8 ++++----
 src/pystencils/codegen/parameters.py |  8 ++++----
 6 files changed, 15 insertions(+), 35 deletions(-)

diff --git a/pytest.ini b/pytest.ini
index b43b0f00c..281eaa21e 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -40,6 +40,7 @@ omit = doc/*
        src/pystencils/cache.py
        src/pystencils/pacxx/benchmark.py
        src/pystencils/_version.py
+       src/pystencils/_deprecation.py
        src/pystencils/old
        venv/
 
@@ -62,6 +63,9 @@ exclude_lines =
        if False:
        if __name__ == .__main__.:
 
+       # Don't cover type checking imports
+       if TYPE_CHECKING:
+
 skip_covered = True
 fail_under = 80
 
diff --git a/src/pystencils/_deprecation.py b/src/pystencils/_deprecation.py
index 29ee648a7..68218f0ae 100644
--- a/src/pystencils/_deprecation.py
+++ b/src/pystencils/_deprecation.py
@@ -5,4 +5,5 @@ def _deprecated(feature, instead, version="2.1"):
         f"{feature} is deprecated and will be removed in pystencils {version}."
         f"Use {instead} instead.",
         DeprecationWarning,
+        stacklevel=2
     )
diff --git a/src/pystencils/codegen/config.py b/src/pystencils/codegen/config.py
index b6567e74a..9bd9cc9a3 100644
--- a/src/pystencils/codegen/config.py
+++ b/src/pystencils/codegen/config.py
@@ -428,7 +428,7 @@ class CreateKernelConfig:
         cpu_openmp: bool | int | None,
         cpu_vectorize_info: dict | None,
         gpu_indexing_params: dict | None,
-    ):
+    ):  # pragma: no cover
         optim: CpuOptimConfig | None = None
 
         if data_type is not None:
@@ -527,7 +527,7 @@ class CreateKernelConfig:
             )
 
 
-def _deprecated_option(name, instead):
+def _deprecated_option(name, instead):  # pragma: no cover
     from warnings import warn
 
     warn(
diff --git a/src/pystencils/codegen/driver.py b/src/pystencils/codegen/driver.py
index f7836ea79..62a3f44db 100644
--- a/src/pystencils/codegen/driver.py
+++ b/src/pystencils/codegen/driver.py
@@ -371,31 +371,6 @@ class DefaultKernelCreationDriver:
             f"Code generation for target {self._target} not implemented"
         )
 
-    def _get_function_params(self, symbols: Iterable[PsSymbol]):
-        params: list[Parameter] = []
-
-        from pystencils.backend.memory import BufferBasePtr
-
-        for symb in symbols:
-            props: set[PsSymbolProperty] = set()
-            for prop in symb.properties:
-                match prop:
-                    case FieldShape() | FieldStride():
-                        props.add(prop)
-                    case BufferBasePtr(buf):
-                        field = self._ctx.find_field(buf.name)
-                        props.add(FieldBasePtr(field))
-            params.append(Parameter(symb.name, symb.get_dtype(), props))
-
-        params.sort(key=lambda p: p.name)
-        return params
-
-    def _get_headers(self, body: PsBlock):
-        req_headers = collect_required_headers(body)
-        req_headers |= self._platform.required_headers
-        req_headers |= self._ctx.required_headers
-        return req_headers
-
 
 def create_cpu_kernel_function(
     ctx: KernelCreationContext,
diff --git a/src/pystencils/codegen/kernel.py b/src/pystencils/codegen/kernel.py
index c4ad860b6..3adc47876 100644
--- a/src/pystencils/codegen/kernel.py
+++ b/src/pystencils/codegen/kernel.py
@@ -62,12 +62,12 @@ class Kernel:
         self._name = n
 
     @property
-    def function_name(self) -> str:
+    def function_name(self) -> str:  # pragma: no cover
         _deprecated("function_name", "name")
         return self._name
 
     @function_name.setter
-    def function_name(self, n: str):
+    def function_name(self, n: str):  # pragma: no cover
         _deprecated("function_name", "name")
         self._name = n
 
@@ -75,7 +75,7 @@ class Kernel:
     def parameters(self) -> tuple[Parameter, ...]:
         return self._params
 
-    def get_parameters(self) -> tuple[Parameter, ...]:
+    def get_parameters(self) -> tuple[Parameter, ...]:  # pragma: no cover
         _deprecated("Kernel.get_parameters", "Kernel.parameters")
         return self.parameters
 
@@ -83,7 +83,7 @@ class Kernel:
         return set(chain.from_iterable(p.fields for p in self._params))
 
     @property
-    def fields_accessed(self) -> set[Field]:
+    def fields_accessed(self) -> set[Field]:  # pragma: no cover
         warn(
             "`fields_accessed` is deprecated and will be removed in a future version of pystencils. "
             "Use `get_fields` instead.",
diff --git a/src/pystencils/codegen/parameters.py b/src/pystencils/codegen/parameters.py
index d40eae220..d8411266e 100644
--- a/src/pystencils/codegen/parameters.py
+++ b/src/pystencils/codegen/parameters.py
@@ -97,7 +97,7 @@ class Parameter:
     #   These are kept mostly for the legacy waLBerla code generation system
 
     @property
-    def is_field_pointer(self) -> bool:
+    def is_field_pointer(self) -> bool:  # pragma: no cover
         warn(
             "`is_field_pointer` is deprecated and will be removed in a future version of pystencils. "
             "Use `param.get_properties(FieldBasePtr)` instead.",
@@ -106,7 +106,7 @@ class Parameter:
         return bool(self.get_properties(FieldBasePtr))
 
     @property
-    def is_field_stride(self) -> bool:
+    def is_field_stride(self) -> bool:  # pragma: no cover
         warn(
             "`is_field_stride` is deprecated and will be removed in a future version of pystencils. "
             "Use `param.get_properties(FieldStride)` instead.",
@@ -115,7 +115,7 @@ class Parameter:
         return bool(self.get_properties(FieldStride))
 
     @property
-    def is_field_shape(self) -> bool:
+    def is_field_shape(self) -> bool:  # pragma: no cover
         warn(
             "`is_field_shape` is deprecated and will be removed in a future version of pystencils. "
             "Use `param.get_properties(FieldShape)` instead.",
@@ -124,7 +124,7 @@ class Parameter:
         return bool(self.get_properties(FieldShape))
 
     @property
-    def field_name(self) -> str:
+    def field_name(self) -> str:  # pragma: no cover
         warn(
             "`field_name` is deprecated and will be removed in a future version of pystencils. "
             "Use `param.fields[0].name` instead.",
-- 
GitLab