From 64518bfe9290f6a8a78d549edd963edaa9f4917e Mon Sep 17 00:00:00 2001
From: Colm Talbot <colm.talbot@ligo.org>
Date: Thu, 31 Mar 2022 20:42:51 +0000
Subject: [PATCH] Fix CI failures

---
 .gitlab-ci.yml                                    | 2 +-
 .pre-commit-config.yaml                           | 2 +-
 bilby/bilby_mcmc/sampler.py                       | 2 +-
 examples/core_examples/conditional_prior.py       | 4 ++--
 examples/core_examples/gaussian_example.py        | 2 +-
 examples/core_examples/hyper_parameter_example.py | 4 ++--
 examples/core_examples/occam_factor_example.py    | 2 +-
 examples/core_examples/slabspike_example.py       | 4 ++--
 test/integration/example_test.py                  | 6 +++++-
 9 files changed, 16 insertions(+), 12 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index af5b26774..564c714f9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -213,7 +213,7 @@ docs:
   image: containers.ligo.org/lscsoft/bilby/v2-bilby-python39
   before_script:
     - conda install -c conda-forge pandoc -y
-    - python -m pip install ipykernel ipython jupyter
+    - python -m pip install --upgrade ipykernel ipython jupyter nbconvert
     - python -m ipykernel install
   script:
     # Make the documentation
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 137e5813c..14215c6f1 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -5,7 +5,7 @@ repos:
     -   id: check-merge-conflict # prevent committing files with merge conflicts
     -   id: flake8 # checks for flake8 errors
 -   repo: https://github.com/psf/black
-    rev: 21.12b0
+    rev: 22.3.0
     hooks:
       - id: black
         language_version: python3
diff --git a/bilby/bilby_mcmc/sampler.py b/bilby/bilby_mcmc/sampler.py
index 9ea0671e5..9f7925bf3 100644
--- a/bilby/bilby_mcmc/sampler.py
+++ b/bilby/bilby_mcmc/sampler.py
@@ -614,7 +614,7 @@ class BilbyPTMCMCSampler(object):
         elif pt_inputs.Tmax_from_SNR is not None:
             ndim = len(_priors.non_fixed_keys)
             target_hot_likelihood = ndim / 2
-            Tmax = pt_inputs.Tmax_from_SNR ** 2 / (2 * target_hot_likelihood)
+            Tmax = pt_inputs.Tmax_from_SNR**2 / (2 * target_hot_likelihood)
             betas = np.logspace(0, -np.log10(Tmax), pt_inputs.ntemps)
         else:
             raise SamplerError("Unable to set temperature ladder from inputs")
diff --git a/examples/core_examples/conditional_prior.py b/examples/core_examples/conditional_prior.py
index aef3d91cf..9dc236a87 100644
--- a/examples/core_examples/conditional_prior.py
+++ b/examples/core_examples/conditional_prior.py
@@ -23,14 +23,14 @@ class ZeroLikelihood(bilby.core.likelihood.Likelihood):
 def condition_func_y(reference_params, x):
     """Condition function for our p(y|x) prior."""
     radius = 0.5 * (reference_params["maximum"] - reference_params["minimum"])
-    y_max = np.sqrt(radius ** 2 - x ** 2)
+    y_max = np.sqrt(radius**2 - x**2)
     return dict(minimum=-y_max, maximum=y_max)
 
 
 def condition_func_z(reference_params, x, y):
     """Condition function for our p(z|x, y) prior."""
     radius = 0.5 * (reference_params["maximum"] - reference_params["minimum"])
-    z_max = np.sqrt(radius ** 2 - x ** 2 - y ** 2)
+    z_max = np.sqrt(radius**2 - x**2 - y**2)
     return dict(minimum=-z_max, maximum=z_max)
 
 
diff --git a/examples/core_examples/gaussian_example.py b/examples/core_examples/gaussian_example.py
index da7f252ab..8e28bf3fe 100644
--- a/examples/core_examples/gaussian_example.py
+++ b/examples/core_examples/gaussian_example.py
@@ -39,7 +39,7 @@ class SimpleGaussianLikelihood(bilby.Likelihood):
         sigma = self.parameters["sigma"]
         res = self.data - mu
         return -0.5 * (
-            np.sum((res / sigma) ** 2) + self.N * np.log(2 * np.pi * sigma ** 2)
+            np.sum((res / sigma) ** 2) + self.N * np.log(2 * np.pi * sigma**2)
         )
 
 
diff --git a/examples/core_examples/hyper_parameter_example.py b/examples/core_examples/hyper_parameter_example.py
index 44c8825ca..638d47eda 100644
--- a/examples/core_examples/hyper_parameter_example.py
+++ b/examples/core_examples/hyper_parameter_example.py
@@ -78,8 +78,8 @@ fig2.savefig("outdir/hyper_parameter_combined_posteriors.png")
 
 def hyper_prior(dataset, mu, sigma):
     return (
-        np.exp(-((dataset["c0"] - mu) ** 2) / (2 * sigma ** 2))
-        / (2 * np.pi * sigma ** 2) ** 0.5
+        np.exp(-((dataset["c0"] - mu) ** 2) / (2 * sigma**2))
+        / (2 * np.pi * sigma**2) ** 0.5
     )
 
 
diff --git a/examples/core_examples/occam_factor_example.py b/examples/core_examples/occam_factor_example.py
index e7ebb38a5..a112015c2 100644
--- a/examples/core_examples/occam_factor_example.py
+++ b/examples/core_examples/occam_factor_example.py
@@ -85,7 +85,7 @@ class Polynomial(bilby.Likelihood):
         res = self.y - self.polynomial(self.x, self.parameters)
         return -0.5 * (
             np.sum((res / self.sigma) ** 2)
-            + self.N * np.log(2 * np.pi * self.sigma ** 2)
+            + self.N * np.log(2 * np.pi * self.sigma**2)
         )
 
 
diff --git a/examples/core_examples/slabspike_example.py b/examples/core_examples/slabspike_example.py
index cca1a880e..21df0790f 100644
--- a/examples/core_examples/slabspike_example.py
+++ b/examples/core_examples/slabspike_example.py
@@ -27,8 +27,8 @@ bilby.utils.check_directory_exists_and_if_not_mkdir(outdir)
 def gaussian(xs, amplitude, mu, sigma):
     return (
         amplitude
-        / np.sqrt(2 * np.pi * sigma ** 2)
-        * np.exp(-0.5 * (xs - mu) ** 2 / sigma ** 2)
+        / np.sqrt(2 * np.pi * sigma**2)
+        * np.exp(-0.5 * (xs - mu) ** 2 / sigma**2)
     )
 
 
diff --git a/test/integration/example_test.py b/test/integration/example_test.py
index efd65bf83..b9df79121 100644
--- a/test/integration/example_test.py
+++ b/test/integration/example_test.py
@@ -26,10 +26,14 @@ gw_args = [(fname.split("/")[-1][:-3], fname) for fname in gw_examples]
 
 
 def _execute_file(name, fname):
-    print("Running {}".format(fname))
+    dname, fname = os.path.split(fname)
+    old_directory = os.getcwd()
+    os.chdir(dname)
+    print(f"Running {fname} from {dname}")
     spec = importlib.util.spec_from_file_location(name, fname)
     foo = importlib.util.module_from_spec(spec)
     spec.loader.exec_module(foo)
+    os.chdir(old_directory)
 
 
 class ExampleTest(unittest.TestCase):
-- 
GitLab