Skip to content
Snippets Groups Projects
Commit cf1a2e3f authored by Gregory Ashton's avatar Gregory Ashton Committed by Moritz Huebner
Browse files

Add a loaded_modules dictionary to the meta_data

All results will be stored with a dictionary of the modules and versions
if available loaded at runtime.
parent 9dff9cfb
No related branches found
No related tags found
No related merge requests found
...@@ -4,7 +4,7 @@ import datetime ...@@ -4,7 +4,7 @@ import datetime
from collections import OrderedDict from collections import OrderedDict
import bilby import bilby
from ..utils import command_line_args, logger from ..utils import command_line_args, logger, loaded_modules_dict
from ..prior import PriorDict, DeltaFunction from ..prior import PriorDict, DeltaFunction
from .base_sampler import Sampler, SamplingMarginalisedParameterError from .base_sampler import Sampler, SamplingMarginalisedParameterError
...@@ -141,6 +141,7 @@ def run_sampler(likelihood, priors=None, label='label', outdir='outdir', ...@@ -141,6 +141,7 @@ def run_sampler(likelihood, priors=None, label='label', outdir='outdir',
if meta_data is None: if meta_data is None:
meta_data = dict() meta_data = dict()
meta_data['likelihood'] = likelihood.meta_data meta_data['likelihood'] = likelihood.meta_data
meta_data["loaded_modules"] = loaded_modules_dict()
if command_line_args.bilby_zero_likelihood_mode: if command_line_args.bilby_zero_likelihood_mode:
from bilby.core.likelihood import ZeroLikelihood from bilby.core.likelihood import ZeroLikelihood
......
...@@ -4,6 +4,7 @@ from distutils.spawn import find_executable ...@@ -4,6 +4,7 @@ from distutils.spawn import find_executable
import logging import logging
import os import os
import shutil import shutil
import sys
from math import fmod from math import fmod
import argparse import argparse
import inspect import inspect
...@@ -1269,6 +1270,15 @@ def get_function_path(func): ...@@ -1269,6 +1270,15 @@ def get_function_path(func):
return func return func
def loaded_modules_dict():
module_names = sys.modules.keys()
vdict = {}
for key in module_names:
if "." not in key:
vdict[key] = str(getattr(sys.modules[key], "__version__", "N/A"))
return vdict
class IllegalDurationAndSamplingFrequencyException(Exception): class IllegalDurationAndSamplingFrequencyException(Exception):
pass pass
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment