Repository: zincware/MDSuite (language: python)

Issue:
tests fail on main
Tests fail because DataHub has changed.

Possible solution: Make it such that you can use specific versions of DataHub and MDSuite says which version it needs.
With that you can change Datahub (and reflect the update with a version change in a PR on mdsuite) without affecting any other branch of mdsuite.



Discussion / hints:
Will be fixed by introducing `tag` in https://github.com/zincware/ZincHub/pull/3

This will require the keyword `tag` on all occurrences of `zinchub`. It will also prohibit using data straight from main and instead require a new tag for all changes, ideally providing a description on why the data was updated.

Fix patch:
diff --git a/examples/notebooks/Mapping_Molecules.ipynb b/examples/notebooks/Mapping_Molecules.ipynb
index 9635e733..e04be8d9 100644
--- a/examples/notebooks/Mapping_Molecules.ipynb
+++ b/examples/notebooks/Mapping_Molecules.ipynb
@@ -61,7 +61,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "water = DataHub(url=\"https://github.com/zincware/DataHub/tree/main/Water_14_Gromacs\")\n",
+    "water = DataHub(url=\"https://github.com/zincware/DataHub/tree/main/Water_14_Gromacs\", tag=\"v0.1.0\")\n",
     "water.get_file('./')\n",
     "file_paths = [\n",
     "        f for f in water.file_raw\n",
@@ -4229,7 +4229,7 @@
    "outputs": [],
    "source": [
     "bmim_bf4 = DataHub(\n",
-    "    url=\"https://github.com/zincware/DataHub/tree/main/Bmim_BF4\"\n",
+    "    url=\"https://github.com/zincware/DataHub/tree/main/Bmim_BF4\", tag=\"v0.1.0\"\n",
     ")\n",
     "bmim_bf4.get_file()\n",
     "bmim_file = bmim_bf4.file_raw"
@@ -5178,4 +5178,4 @@
  },
  "nbformat": 4,
  "nbformat_minor": 5
-}
+}
\ No newline at end of file
diff --git a/examples/notebooks/NaCl_walkthrough.ipynb b/examples/notebooks/NaCl_walkthrough.ipynb
index c060d15d..f1ef1e6c 100644
--- a/examples/notebooks/NaCl_walkthrough.ipynb
+++ b/examples/notebooks/NaCl_walkthrough.ipynb
@@ -46,7 +46,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "NaCl = DataHub(url=\"https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q\")\n",
+    "NaCl = DataHub(url=\"https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q\", tag=\"v0.1.0\")\n",
     "NaCl.get_file(path=\".\")"
    ]
   },


Test patch:
diff --git a/CI/functional_tests/test_molten_salts.py b/CI/functional_tests/test_molten_salts.py
index 6e37a99f..e22c2476 100644
--- a/CI/functional_tests/test_molten_salts.py
+++ b/CI/functional_tests/test_molten_salts.py
@@ -38,11 +38,15 @@ def traj_files(tmp_path_factory) -> Tuple[str, str]:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl_file = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_rnd_md")
+    NaCl_file = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_rnd_md", tag="v0.1.0"
+    )
     NaCl_file.get_file(temporary_path)
     NaCl_out = (temporary_path / NaCl_file.file_raw).as_posix()
 
-    KCl_file = DataHub(url="https://github.com/zincware/DataHub/tree/main/KCl_rnd_md")
+    KCl_file = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/KCl_rnd_md", tag="v0.1.0"
+    )
     KCl_file.get_file(temporary_path)
     KCl_out = (temporary_path / KCl_file.get_file(temporary_path)).as_posix()
 
diff --git a/CI/functional_tests/test_water_study.py b/CI/functional_tests/test_water_study.py
index a2dcda75..c2f2aea2 100644
--- a/CI/functional_tests/test_water_study.py
+++ b/CI/functional_tests/test_water_study.py
@@ -40,7 +40,9 @@ def traj_files(tmp_path_factory) -> List[str]:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    water = DataHub(url="https://github.com/zincware/DataHub/tree/main/Water_14_Gromacs")
+    water = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/Water_14_Gromacs", tag="v0.1.0"
+    )
     water.get_file(temporary_path)
     file_paths = [(temporary_path / f).as_posix() for f in water.file_raw]
     return file_paths
diff --git a/CI/integration_tests/calculators/__test_structure_factor.py b/CI/integration_tests/calculators/__test_structure_factor.py
index c1ae0b34..ea8caac6 100644
--- a/CI/integration_tests/calculators/__test_structure_factor.py
+++ b/CI/integration_tests/calculators/__test_structure_factor.py
@@ -40,7 +40,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -49,7 +51,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="StructureFactor.json")
 
 
diff --git a/CI/integration_tests/calculators/_test_coordination_numbers.py b/CI/integration_tests/calculators/_test_coordination_numbers.py
index ca7d459b..df2e89c0 100644
--- a/CI/integration_tests/calculators/_test_coordination_numbers.py
+++ b/CI/integration_tests/calculators/_test_coordination_numbers.py
@@ -38,7 +38,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -47,7 +49,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="CoordinationNumbers.json")
 
 
diff --git a/CI/integration_tests/calculators/_test_einstein_helfand_thermal_kinaci.py b/CI/integration_tests/calculators/_test_einstein_helfand_thermal_kinaci.py
index 4ea79349..e7863f43 100644
--- a/CI/integration_tests/calculators/_test_einstein_helfand_thermal_kinaci.py
+++ b/CI/integration_tests/calculators/_test_einstein_helfand_thermal_kinaci.py
@@ -41,7 +41,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -50,7 +52,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="EinsteinHelfandThermanKinaci.json")
 
 
diff --git a/CI/integration_tests/calculators/_test_green_kubo_thermal_conductivity.py b/CI/integration_tests/calculators/_test_green_kubo_thermal_conductivity.py
index 975ae440..ebe09bf1 100644
--- a/CI/integration_tests/calculators/_test_green_kubo_thermal_conductivity.py
+++ b/CI/integration_tests/calculators/_test_green_kubo_thermal_conductivity.py
@@ -40,7 +40,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -49,7 +51,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="GreenKuboThermalConductivity.json")
 
 
diff --git a/CI/integration_tests/calculators/_test_green_kubo_viscosity.py b/CI/integration_tests/calculators/_test_green_kubo_viscosity.py
index 5e6fcbb3..cf41b522 100644
--- a/CI/integration_tests/calculators/_test_green_kubo_viscosity.py
+++ b/CI/integration_tests/calculators/_test_green_kubo_viscosity.py
@@ -40,7 +40,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -49,7 +51,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="GreenKuboViscosity.json")
 
 
diff --git a/CI/integration_tests/calculators/_test_green_kubo_viscosity_flux.py b/CI/integration_tests/calculators/_test_green_kubo_viscosity_flux.py
index 2b661e45..e25c0831 100644
--- a/CI/integration_tests/calculators/_test_green_kubo_viscosity_flux.py
+++ b/CI/integration_tests/calculators/_test_green_kubo_viscosity_flux.py
@@ -41,7 +41,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -50,7 +52,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="GreenKuboViscosityFlux.json")
 
 
diff --git a/CI/integration_tests/calculators/_test_nernst_einstein_ionic_conductivity.py b/CI/integration_tests/calculators/_test_nernst_einstein_ionic_conductivity.py
index 7b792cb2..447f60ed 100644
--- a/CI/integration_tests/calculators/_test_nernst_einstein_ionic_conductivity.py
+++ b/CI/integration_tests/calculators/_test_nernst_einstein_ionic_conductivity.py
@@ -40,7 +40,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -49,7 +51,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="NernstEinsteinIonicConductivity.json")
 
 
diff --git a/CI/integration_tests/calculators/test_angular_distribution_function.py b/CI/integration_tests/calculators/test_angular_distribution_function.py
index c065f6c9..05a2afa8 100644
--- a/CI/integration_tests/calculators/test_angular_distribution_function.py
+++ b/CI/integration_tests/calculators/test_angular_distribution_function.py
@@ -38,7 +38,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -47,7 +49,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="AngularDistributionFunction.json")
 
 
diff --git a/CI/integration_tests/calculators/test_einstein_diffusion_coefficients.py b/CI/integration_tests/calculators/test_einstein_diffusion_coefficients.py
index 5b598c3f..4949164e 100644
--- a/CI/integration_tests/calculators/test_einstein_diffusion_coefficients.py
+++ b/CI/integration_tests/calculators/test_einstein_diffusion_coefficients.py
@@ -38,7 +38,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -47,7 +49,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="EinsteinDiffusionCoefficients.json")
 
 
diff --git a/CI/integration_tests/calculators/test_einstein_distinct_diffusion_coefficients.py b/CI/integration_tests/calculators/test_einstein_distinct_diffusion_coefficients.py
index 185a01d2..54c15958 100644
--- a/CI/integration_tests/calculators/test_einstein_distinct_diffusion_coefficients.py
+++ b/CI/integration_tests/calculators/test_einstein_distinct_diffusion_coefficients.py
@@ -43,7 +43,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -52,7 +54,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="RadialDistributionFunction.json")
 
 
diff --git a/CI/integration_tests/calculators/test_einstein_helfand_ionic_conductivity.py b/CI/integration_tests/calculators/test_einstein_helfand_ionic_conductivity.py
index 88f1e5c5..83149d99 100644
--- a/CI/integration_tests/calculators/test_einstein_helfand_ionic_conductivity.py
+++ b/CI/integration_tests/calculators/test_einstein_helfand_ionic_conductivity.py
@@ -37,7 +37,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -46,7 +48,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="EinsteinHelfandIonicConductivity.json")
 
 
diff --git a/CI/integration_tests/calculators/test_green_kubo_distinct_diffusion_coefficients.py b/CI/integration_tests/calculators/test_green_kubo_distinct_diffusion_coefficients.py
index 8994fe36..143c3152 100644
--- a/CI/integration_tests/calculators/test_green_kubo_distinct_diffusion_coefficients.py
+++ b/CI/integration_tests/calculators/test_green_kubo_distinct_diffusion_coefficients.py
@@ -37,7 +37,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -46,7 +48,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="RadialDistributionFunction.json")
 
 
diff --git a/CI/integration_tests/calculators/test_green_kubo_ionic_conductivity.py b/CI/integration_tests/calculators/test_green_kubo_ionic_conductivity.py
index a0ff8a93..d0d66e4c 100644
--- a/CI/integration_tests/calculators/test_green_kubo_ionic_conductivity.py
+++ b/CI/integration_tests/calculators/test_green_kubo_ionic_conductivity.py
@@ -38,7 +38,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -47,7 +49,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="GreenKuboIonicConductivity.json")
 
 
diff --git a/CI/integration_tests/calculators/test_kirkwood_buff_integrals.py b/CI/integration_tests/calculators/test_kirkwood_buff_integrals.py
index 8ce68b35..73632489 100644
--- a/CI/integration_tests/calculators/test_kirkwood_buff_integrals.py
+++ b/CI/integration_tests/calculators/test_kirkwood_buff_integrals.py
@@ -24,12 +24,13 @@
 Summary
 -------
 """
+import os
+
 import pytest
 from zinchub import DataHub
 
-# import os
-# import mdsuite as mds
-# from mdsuite.utils.testing import assertDeepAlmostEqual
+import mdsuite as mds
+from mdsuite.utils.testing import assertDeepAlmostEqual
 
 
 @pytest.fixture(scope="session")
@@ -37,7 +38,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -46,18 +49,20 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="KirkwoodBuffIntegral.json")
 
 
-# def test_project(traj_file, true_values, tmp_path):
-#     """Test the kbi called from the project class"""
-#     os.chdir(tmp_path)
-#     project = mds.Project()
-#     project.add_experiment(
-#         "NaCl", simulation_data=traj_file, timestep=0.002, temperature=1400
-#     )
-#
-#     computation = project.run.KirkwoodBuffIntegral(plot=False)
-#
-#     assertDeepAlmostEqual(computation["NaCl"].data_dict, true_values, decimal=1)
+def test_project(traj_file, true_values, tmp_path):
+    """Test the kbi called from the project class"""
+    os.chdir(tmp_path)
+    project = mds.Project()
+    project.add_experiment(
+        "NaCl", simulation_data=traj_file, timestep=0.002, temperature=1400
+    )
+
+    computation = project.run.KirkwoodBuffIntegral(plot=False)
+
+    assertDeepAlmostEqual(computation["NaCl"].data_dict, true_values, decimal=1)
diff --git a/CI/integration_tests/calculators/test_potential_of_mean_force.py b/CI/integration_tests/calculators/test_potential_of_mean_force.py
index 6e2babd1..3599e42b 100644
--- a/CI/integration_tests/calculators/test_potential_of_mean_force.py
+++ b/CI/integration_tests/calculators/test_potential_of_mean_force.py
@@ -24,13 +24,13 @@
 Summary
 -------
 """
-# import os
+import os
 
 import pytest
 from zinchub import DataHub
 
-# import mdsuite as mds
-# from mdsuite.utils.testing import assertDeepAlmostEqual
+import mdsuite as mds
+from mdsuite.utils.testing import assertDeepAlmostEqual
 
 
 @pytest.fixture(scope="session")
@@ -38,7 +38,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -47,31 +49,33 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="PotentialOfMeanForce.json")
 
 
-# def test_project(traj_file, true_values, tmp_path):
-#     """Test the pomf called from the project class"""
-#     os.chdir(tmp_path)
-#     project = mds.Project()
-#     project.add_experiment(
-#         "NaCl", simulation_data=traj_file, timestep=0.002, temperature=1400
-#     )
-#
-#     computation = project.run.PotentialOfMeanForce(plot=False)
-#
-#     assertDeepAlmostEqual(computation["NaCl"].data_dict, true_values, decimal=-0)
-#
-#
-# def test_experiment(traj_file, true_values, tmp_path):
-#     """Test the pomf called from the experiment class"""
-#     os.chdir(tmp_path)
-#     project = mds.Project()
-#     project.add_experiment(
-#         "NaCl", simulation_data=traj_file, timestep=0.002, temperature=1400
-#     )
-#
-#     computation = project.experiments["NaCl"].run.PotentialOfMeanForce(plot=False)
-#
-#     assertDeepAlmostEqual(computation.data_dict, true_values, decimal=0)
+def test_project(traj_file, true_values, tmp_path):
+    """Test the pomf called from the project class"""
+    os.chdir(tmp_path)
+    project = mds.Project()
+    project.add_experiment(
+        "NaCl", simulation_data=traj_file, timestep=0.002, temperature=1400
+    )
+
+    computation = project.run.PotentialOfMeanForce(plot=False)
+
+    assertDeepAlmostEqual(computation["NaCl"].data_dict, true_values, decimal=-0)
+
+
+def test_experiment(traj_file, true_values, tmp_path):
+    """Test the pomf called from the experiment class"""
+    os.chdir(tmp_path)
+    project = mds.Project()
+    project.add_experiment(
+        "NaCl", simulation_data=traj_file, timestep=0.002, temperature=1400
+    )
+
+    computation = project.experiments["NaCl"].run.PotentialOfMeanForce(plot=False)
+
+    assertDeepAlmostEqual(computation.data_dict, true_values, decimal=0)
diff --git a/CI/integration_tests/calculators/test_radial_distribution_function.py b/CI/integration_tests/calculators/test_radial_distribution_function.py
index c7e09167..1a24f5e1 100644
--- a/CI/integration_tests/calculators/test_radial_distribution_function.py
+++ b/CI/integration_tests/calculators/test_radial_distribution_function.py
@@ -38,7 +38,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
@@ -47,7 +49,9 @@ def traj_file(tmp_path_factory) -> str:
 @pytest.fixture(scope="session")
 def true_values() -> dict:
     """Example fixture for downloading analysis results from github"""
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     return NaCl.get_analysis(analysis="RadialDistributionFunction.json")
 
 
diff --git a/CI/integration_tests/project/test_run_load_multiple_experiments.py b/CI/integration_tests/project/test_run_load_multiple_experiments.py
index 013ff10e..cac4c3ea 100644
--- a/CI/integration_tests/project/test_run_load_multiple_experiments.py
+++ b/CI/integration_tests/project/test_run_load_multiple_experiments.py
@@ -50,7 +50,7 @@ def traj_files(tmp_path_factory) -> list:
     for fname in files_to_load:
         folder = fname.split(".")[0]
         url = f"{base_url}/{folder}"
-        dhub_file = DataHub(url=url)
+        dhub_file = DataHub(url=url, tag="v0.1.0")
         dhub_file.get_file(temporary_path)
         file_paths.append((temporary_path / dhub_file.file_raw).as_posix())
 
diff --git a/CI/integration_tests/transformations/test_molecular_mapping_results.py b/CI/integration_tests/transformations/test_molecular_mapping_results.py
index ebeda86e..5f73833a 100644
--- a/CI/integration_tests/transformations/test_molecular_mapping_results.py
+++ b/CI/integration_tests/transformations/test_molecular_mapping_results.py
@@ -42,11 +42,15 @@ def traj_files(tmp_path_factory) -> Tuple[List[str], str]:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    water = DataHub(url="https://github.com/zincware/DataHub/tree/main/Water_14_Gromacs")
+    water = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/Water_14_Gromacs", tag="v0.1.0"
+    )
     water.get_file(temporary_path)
     file_paths = [(temporary_path / f).as_posix() for f in water.file_raw]
 
-    bmim_bf4 = DataHub(url="https://github.com/zincware/DataHub/tree/main/Bmim_BF4")
+    bmim_bf4 = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/Bmim_BF4", tag="v0.1.0"
+    )
     bmim_bf4.get_file(path=temporary_path)
 
     return file_paths, (temporary_path / bmim_bf4.file_raw).as_posix()
diff --git a/CI/integration_tests/transformations/test_transformation_run_options.py b/CI/integration_tests/transformations/test_transformation_run_options.py
index d0b0ac06..f2f171a2 100644
--- a/CI/integration_tests/transformations/test_transformation_run_options.py
+++ b/CI/integration_tests/transformations/test_transformation_run_options.py
@@ -21,7 +21,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
diff --git a/CI/integration_tests/visualizer/znvis_visualizer.py b/CI/integration_tests/visualizer/znvis_visualizer.py
index d3ec48fa..0f3bc30c 100644
--- a/CI/integration_tests/visualizer/znvis_visualizer.py
+++ b/CI/integration_tests/visualizer/znvis_visualizer.py
@@ -78,7 +78,9 @@ def _run_app():
         """
         temp_dir = tempfile.TemporaryDirectory()
         os.chdir(temp_dir.name)
-        argon = DataHub(url="https://github.com/zincware/DataHub/tree/main/Ar/Ar_dft")
+        argon = DataHub(
+            url="https://github.com/zincware/DataHub/tree/main/Ar/Ar_dft", tag="v0.1.0"
+        )
         argon.get_file(path=".")
         project = mds.Project("Ar_test")
         project.add_experiment(
diff --git a/CI/unit_tests/database/test_experiment_database.py b/CI/unit_tests/database/test_experiment_database.py
index c4eba56b..3bda5cfa 100644
--- a/CI/unit_tests/database/test_experiment_database.py
+++ b/CI/unit_tests/database/test_experiment_database.py
@@ -41,7 +41,9 @@ def traj_file(tmp_path_factory) -> str:
     """Download trajectory file into a temporary directory and keep it for all tests"""
     temporary_path = tmp_path_factory.getbasetemp()
 
-    NaCl = DataHub(url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q")
+    NaCl = DataHub(
+        url="https://github.com/zincware/DataHub/tree/main/NaCl_gk_i_q", tag="v0.1.0"
+    )
     NaCl.get_file(path=temporary_path)
 
     return (temporary_path / NaCl.file_raw).as_posix()
diff --git a/CI/unit_tests/project/test_project_add_experiment.py b/CI/unit_tests/project/test_project_add_experiment.py
index cadacbf4..925d5be6 100644
--- a/CI/unit_tests/project/test_project_add_experiment.py
+++ b/CI/unit_tests/project/test_project_add_experiment.py
@@ -102,8 +102,7 @@ def traj_files(tmp_path_factory) -> dict:
     for fname in files_to_load:
         folder = fname.split(".")[0]
         url = f"{base_url}/{folder}"
-        print(url)
-        dhub_file = DataHub(url=url)
+        dhub_file = DataHub(url=url, tag="v0.1.0")
         dhub_file.get_file(temporary_path)
         if isinstance(dhub_file.file_raw, list):
             file_paths[fname] = [