Repository: EIT-ALIVE/eitprocessing (language: python)

Issue:
Github release suggestion
! This is untested


Discussion / hints:

Fix patch:
diff --git a/.editorconfig b/.editorconfig
index 0f1deb21e..632190e80 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -21,6 +21,5 @@ indent_style = space
 indent_size = 2
 
 [*.{md,Rmd,rst}]
-trim_trailing_whitespace = false
 indent_style = space
 indent_size = 2
diff --git a/.github/actions/install_eitprocessing/action.yml b/.github/actions/install_eitprocessing/action.yml
index ab0d71003..71efad28c 100644
--- a/.github/actions/install_eitprocessing/action.yml
+++ b/.github/actions/install_eitprocessing/action.yml
@@ -8,7 +8,7 @@ inputs:
   dependencies:
     description: "The optional dependencies of eitprocessing to install"
     required: false
-  extract-data: 
+  extract-data:
     description: "Whether to extract testing data"
     required: false
     default: "false"
@@ -21,7 +21,7 @@ inputs:
     default: ${{ github.workspace }}/../eitprocessing_data/
 
 runs:
-  using: 'composite'
+  using: "composite"
   steps:
     - uses: actions/setup-python@v5
       with:
@@ -47,7 +47,3 @@ runs:
       if: steps.cache-python-env.outputs.cache-hit != 'true'
       run: python3 -m pip install -e ".[${{ inputs.dependencies }}]"
       shell: bash
-
-  
-
-
diff --git a/.github/workflows/cffconvert.yml b/.github/workflows/cffconvert.yml
index 9f1b9ae56..1843d4cee 100644
--- a/.github/workflows/cffconvert.yml
+++ b/.github/workflows/cffconvert.yml
@@ -2,23 +2,18 @@ name: Citation file
 
 on:
   push:
-    branches:
-      - main
-      - develop
-  pull_request:
-    types: [opened, synchronize, reopened, ready_for_review]
-    branches:
-      - main
-      - develop
+    paths:
+      - CITATION.cff
 
 jobs:
-  verify:
-    if: github.event.pull_request.draft == false
-    name: "cffconvert"
+  validate:
+    name: "validate"
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v4
-        name: Check out a copy of the repository
+      - name: Check out a copy of the repository
+        uses: actions/checkout@v4
 
-      - uses: citation-file-format/cffconvert-github-action@main
-        name: Check whether the citation metadata from CITATION.cff is equivalent to that in .zenodo.json
+      - name: Check whether the citation metadata from CITATION.cff is valid
+        uses: citation-file-format/cffconvert-github-action@2.0.0
+        with:
+          args: "--validate"
diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml
index f5805bc90..99e3bd750 100644
--- a/.github/workflows/coverage.yml
+++ b/.github/workflows/coverage.yml
@@ -15,7 +15,7 @@ jobs:
       matrix:
         os: ["ubuntu-latest"]
         python-version: ["3.10"]
-    env: 
+    env:
       EIT_PROCESSING_TEST_DATA: ${{ github.workspace }}/../eitprocessing_data/
       GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
       COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e09302d35..964c99e55 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,5 @@
 # Changelog
+
 All notable changes to this project will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
diff --git a/CITATION.cff b/CITATION.cff
index 090d18381..a5b693786 100644
--- a/CITATION.cff
+++ b/CITATION.cff
@@ -1,5 +1,3 @@
-# YAML 1.2
----
 cff-version: 1.2.0
 title: "eitprocessing"
 authors:
diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
index 11f5ffd45..cf27e0c5d 100644
--- a/CODE_OF_CONDUCT.md
+++ b/CODE_OF_CONDUCT.md
@@ -14,21 +14,21 @@ religion, or sexual identity and orientation.
 Examples of behavior that contributes to creating a positive environment
 include:
 
-* Using welcoming and inclusive language
-* Being respectful of differing viewpoints and experiences
-* Gracefully accepting constructive criticism
-* Focusing on what is best for the community
-* Showing empathy towards other community members
+- Using welcoming and inclusive language
+- Being respectful of differing viewpoints and experiences
+- Gracefully accepting constructive criticism
+- Focusing on what is best for the community
+- Showing empathy towards other community members
 
 Examples of unacceptable behavior by participants include:
 
-* The use of sexualized language or imagery and unwelcome sexual attention or
+- The use of sexualized language or imagery and unwelcome sexual attention or
   advances
-* Trolling, insulting/derogatory comments, and personal or political attacks
-* Public or private harassment
-* Publishing others' private information, such as a physical or electronic
+- Trolling, insulting/derogatory comments, and personal or political attacks
+- Public or private harassment
+- Publishing others' private information, such as a physical or electronic
   address, without explicit permission
-* Other conduct which could reasonably be considered inappropriate in a
+- Other conduct which could reasonably be considered inappropriate in a
   professional setting
 
 ## Our Responsibilities
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 01ca437cf..95100ae0b 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -21,9 +21,9 @@ The sections below outline the steps in each case.
 
 1. use the search functionality [here](git@github.com:EIT-ALIVE/eitprocessing/issues) to see if someone already filed the same issue;
 1. if your issue search did not yield any relevant results, make a new issue, making sure to provide enough information to the rest of the community to understand the cause and context of the problem. Depending on the issue, you may want to include:
-    - the [SHA hashcode](https://help.github.com/articles/autolinked-references-and-urls/#commit-shas) of the commit that is causing your problem;
-    - some identifying information (name and version number) for dependencies you're using;
-    - information about the operating system;
+   - the [SHA hashcode](https://help.github.com/articles/autolinked-references-and-urls/#commit-shas) of the commit that is causing your problem;
+   - some identifying information (name and version number) for dependencies you're using;
+   - information about the operating system;
 1. apply relevant labels to the newly created issue.
 
 ## You want to make some kind of change to the code base
diff --git a/README.md b/README.md
index 0e00c2ed9..d81b58edc 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,13 @@
 # Badges <!-- omit in toc -->
 
-| Badges         |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
-| :------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| Registry       | [![RSD](https://img.shields.io/badge/rsd-eitprocessing-00a3e3.svg)](https://www.research-software.nl/software/eitprocessing) [![workflow pypi badge](https://img.shields.io/pypi/v/eitprocessing.svg?colorB=blue)](https://pypi.python.org/project/eitprocessing/) [![github repo badge](https://img.shields.io/badge/github-repo-000.svg?logo=github&labelColor=gray&color=blue)](git@github.com:EIT-ALIVE/eitprocessing)                                                                                   |
-| License        | [![github license badge](https://img.shields.io/github/license/EIT-ALIVE/eitprocessing)](git@github.com:EIT-ALIVE/eitprocessing)                                                                                                                                                                                                                                                                                                                                                                             |
-| Citation       | [![DOI](https://zenodo.org/badge/617944717.svg)](https://zenodo.org/badge/latestdoi/617944717)                                                                                                                                                                                                                                                                                                                                                                                                               |
-| Fairness       | [![OpenSSF Best Practices](https://www.bestpractices.dev/projects/9147/badge)](https://www.bestpractices.dev/projects/9147) [![fair-software badge](https://img.shields.io/badge/fair--software.eu-%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8B-yellow)](https://fair-software.eu)                                                                                                                                                                                                  |
+| Badges         |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
+| :------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Registry       | [![RSD](https://img.shields.io/badge/rsd-eitprocessing-00a3e3.svg)](https://www.research-software.nl/software/eitprocessing) [![workflow pypi badge](https://img.shields.io/pypi/v/eitprocessing.svg?colorB=blue)](https://pypi.python.org/project/eitprocessing/) [![github repo badge](https://img.shields.io/badge/github-repo-000.svg?logo=github&labelColor=gray&color=blue)](git@github.com:EIT-ALIVE/eitprocessing)                                                                                                                                                 |
+| License        | [![github license badge](https://img.shields.io/github/license/EIT-ALIVE/eitprocessing)](git@github.com:EIT-ALIVE/eitprocessing)                                                                                                                                                                                                                                                                                                                                                                                                                                           |
+| Citation       | [![DOI](https://zenodo.org/badge/617944717.svg)](https://zenodo.org/badge/latestdoi/617944717)                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
+| Fairness       | [![OpenSSF Best Practices](https://www.bestpractices.dev/projects/9147/badge)](https://www.bestpractices.dev/projects/9147) [![fair-software badge](https://img.shields.io/badge/fair--software.eu-%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8B-yellow)](https://fair-software.eu)                                                                                                                                                                                                                                                                |
 | GitHub Actions | ![build](https://github.com/EIT-ALIVE/eitprocessing/actions/workflows/build.yml/badge.svg) ![lint](https://github.com/EIT-ALIVE/eitprocessing/actions/workflows/lint.yml/badge.svg) ![documentation](https://github.com/EIT-ALIVE/eitprocessing/actions/workflows/documentation.yml/badge.svg) ![cffconvert](https://github.com/EIT-ALIVE/eitprocessing/actions/workflows/cffconvert.yml/badge.svg) [![Coverage Status](https://coveralls.io/repos/github/EIT-ALIVE/eitprocessing/badge.svg?branch=main)](https://coveralls.io/github/EIT-ALIVE/eitprocessing?branch=main) |
-| Python         | ![Python](https://img.shields.io/badge/python-3.10-blue.svg) ![Python](https://img.shields.io/badge/python-3.11-blue.svg) ![Python](https://img.shields.io/badge/python-3.12-blue.svg) ![Python](https://img.shields.io/badge/python-3.13-blue.svg)                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
+| Python         | ![Python](https://img.shields.io/badge/python-3.10-blue.svg) ![Python](https://img.shields.io/badge/python-3.11-blue.svg) ![Python](https://img.shields.io/badge/python-3.12-blue.svg) ![Python](https://img.shields.io/badge/python-3.13-blue.svg)                                                                                                                                                                                                                                                                                                                        |
 
 # Contents <!-- omit in toc -->
 
@@ -34,8 +34,6 @@ and Timpel, as well as data from other sources. Several pre-processing tools and
 
 [eit_dash](https://github.com/EIT-ALIVE/eit_dash) provides an accompanying GUI.
 
-
-
 # Installation
 
 It is advised to install eitprocessing in a dedicated virtual environment. See e.g. [Install packages in a virtual
@@ -52,7 +50,8 @@ pip install eitprocessing
 ```
 
 ### Developer install
-For full developer options (testing, etc): 
+
+For full developer options (testing, etc):
 
 ```
 git clone git@github.com:EIT-ALIVE/eitprocessing.git
diff --git a/mkdocs.yml b/mkdocs.yml
index e995a264e..21a190af9 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -3,22 +3,22 @@ site_description: ALIVE project
 strict: false
 
 theme:
-  name: 'material'
+  name: "material"
   palette:
-  - media: "(prefers-color-scheme: light)"
-    scheme: default
-    primary: darkblue
-    accent: pink
-    toggle:
-      icon: material/weather-sunny
-      name: "Switch to dark mode"
-  - media: "(prefers-color-scheme: dark)"
-    scheme: slate
-    primary: darkblue
-    accent: pink
-    toggle:
-      icon: material/weather-night
-      name: "Switch to light mode"
+    - media: "(prefers-color-scheme: light)"
+      scheme: default
+      primary: darkblue
+      accent: pink
+      toggle:
+        icon: material/weather-sunny
+        name: "Switch to dark mode"
+    - media: "(prefers-color-scheme: dark)"
+      scheme: slate
+      primary: darkblue
+      accent: pink
+      toggle:
+        icon: material/weather-night
+        name: "Switch to light mode"
   features:
     - announce.dismiss
     - content.action.view
@@ -31,36 +31,35 @@ theme:
     - navigation.tabs
     - navigation.tabs.sticky
   icon:
-    logo: 'material/home'
+    logo: "material/home"
     next: fontawesome/solid/angle-right
     previous: fontawesome/solid/angle-left
     repo: fontawesome/brands/github-alt
     view: material/eye
 
-
 repo_url: https://github.com/EIT-ALIVE/eitprocessing
 repo_name: EIT-ALIVE/eitprocessing
 edit_uri: edit/main/docs/
 
 # Page tree
 nav:
-- Home: index.md
-- Getting started:
-  - installation.md
-  - basic_example.md
-- API Documentation: 
-  - api/loading.md
-  - api/datacontainers.md
-  - api/filters.md
-  - api/features.md
-  - api/parameters.md
-  - api/categories.md
-  - api/mixins.md
-- About:
-  - Contributing: contributing_doc.md
-  - Code of Conduct: code_of_conduct_doc.md
-  - license_doc.md
-  - team.md
+  - Home: index.md
+  - Getting started:
+      - installation.md
+      - basic_example.md
+  - API Documentation:
+      - api/loading.md
+      - api/datacontainers.md
+      - api/filters.md
+      - api/features.md
+      - api/parameters.md
+      - api/categories.md
+      - api/mixins.md
+  - About:
+      - Contributing: contributing_doc.md
+      - Code of Conduct: code_of_conduct_doc.md
+      - license_doc.md
+      - team.md
 
 extra:
   version:
@@ -73,62 +72,62 @@ validation:
   unrecognized_links: warn
 
 markdown_extensions:
-- tables
-- toc:
-    permalink: true
-    title: Page contents
-- admonition
-- pymdownx.details
-- pymdownx.superfences
-- pymdownx.highlight:
-    anchor_linenums: true
-    pygments_lang_class: true
-    default_lang: "py"
-- pymdownx.extra
-- pymdownx.tabbed:
-    alternate_style: true
-- pymdownx.magiclink
-- pymdownx.snippets:
-      base_path: ["docs","."]
+  - tables
+  - toc:
+      permalink: true
+      title: Page contents
+  - admonition
+  - pymdownx.details
+  - pymdownx.superfences
+  - pymdownx.highlight:
+      anchor_linenums: true
+      pygments_lang_class: true
+      default_lang: "py"
+  - pymdownx.extra
+  - pymdownx.tabbed:
+      alternate_style: true
+  - pymdownx.magiclink
+  - pymdownx.snippets:
+      base_path: ["docs", "."]
 
 watch:
-- docs
+  - docs
 
 plugins:
-- mike:
-    alias_type: symlink
-    canonical_version: latest
-- search
-- exclude:
-    glob:
-    - __pycache__/*
-- mkdocstrings:
-    handlers:
-      python:
-        paths: [src]
-        import:
-          - https://docs.python.org/3/objects.inv
-          - https://numpy.org/doc/stable/objects.inv
-          - https://docs.scipy.org/doc/scipy/objects.inv
-          - https://pandas.pydata.org/docs/objects.inv
-        options:
-          members_order: source
-          inherited_members: true
-          filters: ["!^_"]
-          merge_init_into_class: true
-          show_root_heading: true
-          show_root_full_path: true
-          show_signature_annotations: true
-          signature_crossrefs: true
-          separate_signature: true
-          show_symbol_type_heading: true
-          show_symbol_type_toc: true
-          show_submodules: true
-          heading_level: 2
-          show_bases: false
-          show_source: false
-          docstring_section_style: spacy
-          line_length: 80
+  - mike:
+      alias_type: symlink
+      canonical_version: latest
+  - search
+  - exclude:
+      glob:
+        - __pycache__/*
+  - mkdocstrings:
+      handlers:
+        python:
+          paths: [src]
+          import:
+            - https://docs.python.org/3/objects.inv
+            - https://numpy.org/doc/stable/objects.inv
+            - https://docs.scipy.org/doc/scipy/objects.inv
+            - https://pandas.pydata.org/docs/objects.inv
+          options:
+            members_order: source
+            inherited_members: true
+            filters: ["!^_"]
+            merge_init_into_class: true
+            show_root_heading: true
+            show_root_full_path: true
+            show_signature_annotations: true
+            signature_crossrefs: true
+            separate_signature: true
+            show_symbol_type_heading: true
+            show_symbol_type_toc: true
+            show_submodules: true
+            heading_level: 2
+            show_bases: false
+            show_source: false
+            docstring_section_style: spacy
+            line_length: 80
 
 extra_css:
-- css/material.css
+  - css/material.css
diff --git a/project_setup.md b/project_setup.md
index 0b64d8a3d..104da031c 100644
--- a/project_setup.md
+++ b/project_setup.md
@@ -13,7 +13,6 @@ This repository is set up with Python versions:
 
 - 3.10
 
-
 ## Package management and dependencies
 
 You can use either pip or conda for installing dependencies and package management. This repository does not force you
diff --git a/pyproject.toml b/pyproject.toml
index 7d9351fb7..a59ca2008 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -17,10 +17,10 @@ keywords = [
 authors = [
     { name = "Dani Bodor", email = "d.bodor@esciencecenter.nl" },
     { name = "Peter Somhorst", email = "p.somhorst@erasmusmc.nl" },
-    { name = "Annemijn Jonkman", email= "a.jonkman@erasmusmc.nl"}, 
+    { name = "Annemijn Jonkman", email = "a.jonkman@erasmusmc.nl" },
     { name = "Walter Baccinelli", email = "w.baccinelli@esciencecenter.nl" },
-    { name = "Jantine Wisse-Smit", email = "j.j.smit@erasmusmc.nl"},
-    { name = "Juliette Francovich", email = "j.francovich@erasmusmc.nl"}
+    { name = "Jantine Wisse-Smit", email = "j.j.smit@erasmusmc.nl" },
+    { name = "Juliette Francovich", email = "j.francovich@erasmusmc.nl" },
 ]
 license = { text = "Apache-2.0 license" }
 classifiers = [
@@ -56,11 +56,7 @@ dev = [
     "coveralls",
     "ruff == 0.6.9",
 ]
-testing = [
-    "pytest >= 7.4.0",
-    "pytest-cov",
-    "coveralls",
-]
+testing = ["pytest >= 7.4.0", "pytest-cov", "coveralls"]
 docs = [
     "mkdocs",
     "mkdocs-material",
@@ -75,7 +71,7 @@ notebooks = [
     "jupyter >= 1.0.0",
     "jupytext >= 1.14.5",
     "tqdm >= 4.65.0",
-    "ipympl"
+    "ipympl",
 ]
 publishing = ["build"]
 


Test patch:
diff --git a/.github/workflows/test_build_documentation.yml b/.github/workflows/test_build_documentation.yml
index ad2000097..a53aafe6c 100644
--- a/.github/workflows/test_build_documentation.yml
+++ b/.github/workflows/test_build_documentation.yml
@@ -1,8 +1,8 @@
 name: Test build documentation
 
-on: 
+on:
   push:
-    branches: 
+    branches:
       - main
       - develop
   pull_request:
@@ -10,7 +10,7 @@ on:
     branches:
       - main
       - develop
-    
+
 jobs:
   build-docs:
     if: github.event.pull_request.draft == false
@@ -29,6 +29,6 @@ jobs:
           python-version: "3.10"
       - name: Build documentation
         run: mkdocs build
-      - name: Deploy documentation 
+      - name: Deploy documentation
         if: ${{ github.event.action == 'push' && github.action_ref == 'main' }}
         run: mkdocs gh-deploy
diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml
index 7ca039d17..746f58947 100644
--- a/.github/workflows/testing.yml
+++ b/.github/workflows/testing.yml
@@ -25,7 +25,7 @@ jobs:
         os: ["ubuntu-latest"]
         python-version: ["3.10"]
     name: Test and build for ${{ matrix.python-version }}, ${{ matrix.os }}
-    env: 
+    env:
       EIT_PROCESSING_TEST_DATA: ${{ github.workspace }}/../eitprocessing_data/
     steps:
       - uses: actions/checkout@v4