junifer 0.0.6.dev44__py3-none-any.whl → 0.0.6.dev51__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
junifer/_version.py CHANGED
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.0.6.dev44'
16
- __version_tuple__ = version_tuple = (0, 0, 6, 'dev44')
15
+ __version__ = version = '0.0.6.dev51'
16
+ __version_tuple__ = version_tuple = (0, 0, 6, 'dev51')
junifer/cli/parser.py CHANGED
@@ -18,7 +18,7 @@ from ..utils import logger, raise_error, warn_with_log, yaml
18
18
  __all__ = ["parse_yaml", "parse_elements"]
19
19
 
20
20
 
21
- def parse_yaml(filepath: Union[str, Path]) -> Dict:
21
+ def parse_yaml(filepath: Union[str, Path]) -> Dict: # noqa: C901
22
22
  """Parse YAML.
23
23
 
24
24
  Parameters
@@ -65,14 +65,35 @@ def parse_yaml(filepath: Union[str, Path]) -> Dict:
65
65
  raise_error(
66
66
  f"File in 'with' section does not exist: {file_path}"
67
67
  )
68
+ # Add the parent directory to the sys.path so that the
69
+ # any imports from this module work correctly
70
+ t_path = str(file_path.parent)
71
+ if t_path not in sys.path:
72
+ sys.path.append(str(file_path.parent))
73
+
68
74
  spec = importlib.util.spec_from_file_location(
69
75
  t_module, file_path
70
76
  )
71
77
  module = importlib.util.module_from_spec(spec) # type: ignore
72
78
  sys.modules[t_module] = module
73
79
  spec.loader.exec_module(module) # type: ignore
80
+
74
81
  # Add absolute path to final list
75
82
  final_to_load.append(str(file_path.resolve()))
83
+
84
+ # Check if the module has junifer_module_deps function
85
+ if hasattr(module, "junifer_module_deps"):
86
+ logger.debug(
87
+ f"Module {t_module} has junifer_module_deps function"
88
+ )
89
+ # Get the dependencies
90
+ deps = module.junifer_module_deps()
91
+ # Add the dependencies to the final list
92
+ for dep in deps:
93
+ if dep not in final_to_load:
94
+ final_to_load.append(
95
+ str((file_path.parent / dep).resolve())
96
+ )
76
97
  else:
77
98
  logger.info(f"Importing module: {t_module}")
78
99
  importlib.import_module(t_module)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: junifer
3
- Version: 0.0.6.dev44
3
+ Version: 0.0.6.dev51
4
4
  Summary: JUelich NeuroImaging FEature extractoR
5
5
  Author-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
6
6
  Maintainer-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
@@ -1,5 +1,5 @@
1
1
  junifer/__init__.py,sha256=qlrkRK5qZYHkYG6B4tLA7cvrQsgyCunNRv1Oz4FBWlQ,624
2
- junifer/_version.py,sha256=f_7PpeTq7RhL4LDqP4GsHG_7wtw50-GPyv61VUYab2Y,426
2
+ junifer/_version.py,sha256=wxfrOd7_CEPqj_M0iVbFwX_dk3Cf85sB-l-MFRD_h1o,426
3
3
  junifer/stats.py,sha256=BjQb2lfTGDP9l4UuQYmJFcJJNRfbJDGlNvC06SJaDDE,6237
4
4
  junifer/api/__init__.py,sha256=JYZLJe8oEnJpNpq0RrhEGP6Tj5GP2DHlixFwJtTcV0Y,324
5
5
  junifer/api/decorators.py,sha256=SkQjDYcB_cwG7AS5Q_BU1-T3b38T5RHzbW3aQHP-NzM,2723
@@ -36,7 +36,7 @@ junifer/api/res/fsl/std2imgcoord,sha256=-X5wRH6XMl0yqnTACJX6MFhO8DFOEWg42MHRxGvi
36
36
  junifer/api/tests/test_functions.py,sha256=JjtdB_dFnikGdgkhtvzoJsV_jbW0X1cNRqjFk2jJmLI,17747
37
37
  junifer/cli/__init__.py,sha256=nrv2l2-t0kLWtNoqmjJKPM0_FP7BvuA_Qc3_GjHBWpM,128
38
38
  junifer/cli/cli.py,sha256=8emD8-GZzeXyY6mPw3WUYWllConuzLOZLAacYtNgqJw,12981
39
- junifer/cli/parser.py,sha256=YxpP-s3Jrpb1_ZepcLN8Gc6S0dbKM_i72RENBLtyLOU,7390
39
+ junifer/cli/parser.py,sha256=oZf0oiFcp7vTTMFmFv9qcIqnKMS5wZSCqBmKggN_F0c,8355
40
40
  junifer/cli/utils.py,sha256=uA_MaPuZe8qFxxF0hM5iWNL6rLwbYN2mAPXcWm7YxcM,3140
41
41
  junifer/cli/tests/test_cli.py,sha256=DEgjdnGu0r1UmCcu6DavwRuN2i6tZpAs-sYxgoAF7oo,10995
42
42
  junifer/cli/tests/test_cli_utils.py,sha256=dGHuH-86_vhvqhEmWsoM2ujT31n6I535OutiafFKoHo,2700
@@ -269,10 +269,10 @@ junifer/utils/logging.py,sha256=ardaiJkDfZMYvak5UIL5Etxg5Ii7inmVQSBdFLdgtb8,9781
269
269
  junifer/utils/tests/test_fs.py,sha256=WQS7cKlKEZ742CIuiOYYpueeAhY9PqlastfDVpVVtvE,923
270
270
  junifer/utils/tests/test_helpers.py,sha256=k5qqfxK8dFyuewTJyR1Qn6-nFaYNuVr0ysc18bfPjyU,929
271
271
  junifer/utils/tests/test_logging.py,sha256=duO4ou365hxwa_kwihFtKPLaL6LC5XHiyhOijrrngbA,8009
272
- junifer-0.0.6.dev44.dist-info/AUTHORS.rst,sha256=rmULKpchpSol4ExWFdm-qu4fkpSZPYqIESVJBZtGb6E,163
273
- junifer-0.0.6.dev44.dist-info/LICENSE.md,sha256=MqCnOBu8uXsEOzRZWh9EBVfVz-kE9NkXcLCrtGXo2yU,34354
274
- junifer-0.0.6.dev44.dist-info/METADATA,sha256=owlzDJooA_9WpQpqgdFERu2iH1uHbXXPUS1wE8Tn48o,8398
275
- junifer-0.0.6.dev44.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
276
- junifer-0.0.6.dev44.dist-info/entry_points.txt,sha256=6O8ru0BP-SP7YMUZiizFNoaZ2HvJpadO2G7nKk4PwjI,48
277
- junifer-0.0.6.dev44.dist-info/top_level.txt,sha256=4bAq1R2QFQ4b3hohjys2JBvxrl0GKk5LNFzYvz9VGcA,8
278
- junifer-0.0.6.dev44.dist-info/RECORD,,
272
+ junifer-0.0.6.dev51.dist-info/AUTHORS.rst,sha256=rmULKpchpSol4ExWFdm-qu4fkpSZPYqIESVJBZtGb6E,163
273
+ junifer-0.0.6.dev51.dist-info/LICENSE.md,sha256=MqCnOBu8uXsEOzRZWh9EBVfVz-kE9NkXcLCrtGXo2yU,34354
274
+ junifer-0.0.6.dev51.dist-info/METADATA,sha256=6-2OPunBbAYeN-FI86ZEc6XN9VHLKliwndVyE4Y3tPA,8398
275
+ junifer-0.0.6.dev51.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
276
+ junifer-0.0.6.dev51.dist-info/entry_points.txt,sha256=6O8ru0BP-SP7YMUZiizFNoaZ2HvJpadO2G7nKk4PwjI,48
277
+ junifer-0.0.6.dev51.dist-info/top_level.txt,sha256=4bAq1R2QFQ4b3hohjys2JBvxrl0GKk5LNFzYvz9VGcA,8
278
+ junifer-0.0.6.dev51.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (74.1.2)
2
+ Generator: setuptools (75.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5