diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3c1ff9b9a0c17f3fca2df1554da00edd0e4f92e8..f03fa76468ed0b352847a52ed6a664e9161f2457 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -39,7 +39,16 @@ flake8:
 python-tests:
     stage: testing
     script:
-        - pytest -v tests/
+        - pip install pytest-cov
+        - >
+          pytest -v --cov=src --cov-report term
+          --cov-report xml:coverage.xml tests/
+    coverage: '/(?i)total.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/'
+    artifacts:
+        reports:
+            coverage_report:
+                coverage_format: cobertura
+                path: coverage.xml
 
 mypy:
     stage: static analysis
diff --git a/src/matplotlib-stubs/pyplot/__init__.pyi b/src/matplotlib-stubs/pyplot/__init__.pyi
index 0856da339c1e8e71074702294192a75fc1681821..d2c75a0d859d2943ba0145f79bab1e8a5534f202 100644
--- a/src/matplotlib-stubs/pyplot/__init__.pyi
+++ b/src/matplotlib-stubs/pyplot/__init__.pyi
@@ -261,6 +261,9 @@ class Axes:
 
     def pause(self, time: float) -> None: ...
 
+    def axvline(
+        self, x: float = 0, ymin: float = 0, ymax: float = 1) -> None: ...
+
 
 def figure(figsize: Optional[Tuple[float, float]] = None) -> Figure: ...
 
@@ -385,3 +388,13 @@ def grid(visible: Optional[bool] = None, which: str = "major")\
     -> None: ...
 
 def title(text: str) -> None: ...
+
+def axvline(x: float = 0, ymin: float = 0, ymax: float = 1) -> None: ...
+
+def fill_between(
+    x: In, y1: In, y2: Union[In, float] = 0,
+    where: Union[None, In] = None, alpha: Optional[float] = None,
+    color: Union[None, str, Tuple[float, float, float]] = None,
+    facecolor: Union[None, str, Tuple[float, float, float]] = None,
+    edgecolor: Union[
+        None, str, Tuple[float, float, float]] = None) -> None: ...
diff --git a/src/scientific_plots/__init__.py b/src/scientific_plots/__init__.py
index bcdfba4697ca550898a836497a3bf9c1ceca52ed..f41f4b394002079600e3d7a0b57d082181775c43 100644
--- a/src/scientific_plots/__init__.py
+++ b/src/scientific_plots/__init__.py
@@ -5,4 +5,4 @@ useful across several different projects and repositories. It also contains
 stub-files with several data-type annotations for scipy and matplot-lib
 functions."""
 
-__version__ = "1.7.15"
+__version__ = "1.7.16"
diff --git a/src/scipy-stubs/optimize.pyi b/src/scipy-stubs/optimize.pyi
index 775c05bfe10bfda877ab87d5a11abf334e7c0cf7..3589a34b69a1e4ce8b1a102a1a067b06edecbf0e 100644
--- a/src/scipy-stubs/optimize.pyi
+++ b/src/scipy-stubs/optimize.pyi
@@ -13,8 +13,8 @@ Input = TypeVar("Input", float, list[float], Matrix, Vector, Tensor)
 
 def curve_fit(
     func: Callable[..., Input],
-    x: Union[Vector, list[float]],
-    y: Union[Vector, list[float]],
+    xdata: Union[Vector, list[float]],
+    ydata: Union[Vector, list[float]],
     p0: Optional[Union[List[float], tuple[float]]] = None,
     bounds: Optional[Any] = None)\
     -> Tuple[Vector, Matrix]: ...
diff --git a/src/scipy-stubs/signal/__init__.pyi b/src/scipy-stubs/signal/__init__.pyi
index 3f744dfc1b8e16e4c2549966dbd319e71a70637e..348b837b06baf089c8faf22e647539ef8766cd87 100644
--- a/src/scipy-stubs/signal/__init__.pyi
+++ b/src/scipy-stubs/signal/__init__.pyi
@@ -31,24 +31,28 @@ Double = Union[tuple[Vector, Vector], tuple[list[float], list[float]]]
 
 @overload
 def savgol_filter(
-    values: Single, window: Union[int, float], order: int,
+    x: Single, window_length: Union[int, float], polyorder: int,
+    deriv: Optional[int] = None, delta: Optional[float] = None,
     mode: str = "nearest") -> Vector: ...
 
 
 @overload
 def savgol_filter(
-    values: Double, window: Union[int, float], order: int,
+    x: Double, window_length: Union[int, float], polyorder: int,
+    deriv: Optional[int] = None, delta: Optional[float] = None,
     mode: str = "nearest")\
         -> tuple[Vector, Vector]: ...
 
 
 def sosfilt(
-    sos: Single, x: Single, axis: int = -1, zi: Optional[Single] = None)\
+    sos: Single, x: Single, axis: int = -1, zi: Optional[Single] = None,
+    padtype: Optional[str] = "odd", padlen: Optional[int] = None)\
         -> Vector: ...
 
 
 def sosfiltfilt(
-    sos: Single, x: Single, axis: int = -1, zi: Optional[Single] = None)\
+    sos: Single, x: Single, axis: int = -1, zi: Optional[Single] = None,
+    padtype: Optional[str] = "odd", padlen: Optional[int] = None)\
         -> Vector: ...