junifer 0.0.4.dev831__py3-none-any.whl → 0.0.5.dev11__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.4.dev831'
16
- __version_tuple__ = version_tuple = (0, 0, 4, 'dev831')
15
+ __version__ = version = '0.0.5.dev11'
16
+ __version_tuple__ = version_tuple = (0, 0, 5, 'dev11')
@@ -43,7 +43,8 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
43
43
  Raises
44
44
  ------
45
45
  ValueError
46
- If``env`` is invalid.
46
+ If ``env.kind`` is invalid or
47
+ if ``env.shell`` is invalid.
47
48
 
48
49
  See Also
49
50
  --------
@@ -110,13 +111,22 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
110
111
  f"must be one of {valid_env_kinds}"
111
112
  )
112
113
  else:
114
+ # Check shell
115
+ shell = env.get("shell", "bash")
116
+ valid_shells = ["bash", "zsh"]
117
+ if shell not in valid_shells:
118
+ raise_error(
119
+ f"Invalid value for `env.shell`: {shell}, "
120
+ f"must be one of {valid_shells}"
121
+ )
122
+ self._shell = shell
113
123
  # Set variables
114
124
  if env["kind"] == "local":
115
125
  # No virtual environment
116
126
  self._executable = "junifer"
117
127
  self._arguments = ""
118
128
  else:
119
- self._executable = f"run_{env['kind']}.sh"
129
+ self._executable = f"run_{env['kind']}.{self._shell}"
120
130
  self._arguments = f"{env['name']} junifer"
121
131
  self._exec_path = self._job_dir / self._executable
122
132
 
@@ -135,7 +145,7 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
135
145
  def pre_run(self) -> str:
136
146
  """Return pre-run commands."""
137
147
  fixed = (
138
- "#!/usr/bin/env bash\n\n"
148
+ f"#!/usr/bin/env {self._shell}\n\n"
139
149
  "# This script is auto-generated by junifer.\n\n"
140
150
  "# Force datalad to run in non-interactive mode\n"
141
151
  "DATALAD_UI_INTERACTIVE=false\n"
@@ -146,7 +156,7 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
146
156
  def run(self) -> str:
147
157
  """Return run commands."""
148
158
  return (
149
- "#!/usr/bin/env bash\n\n"
159
+ f"#!/usr/bin/env {self._shell}\n\n"
150
160
  "# This script is auto-generated by junifer.\n\n"
151
161
  "# Run pre_run.sh\n"
152
162
  f"sh {self._pre_run_path.resolve()!s}\n\n"
@@ -166,7 +176,7 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
166
176
  def pre_collect(self) -> str:
167
177
  """Return pre-collect commands."""
168
178
  fixed = (
169
- "#!/usr/bin/env bash\n\n"
179
+ f"#!/usr/bin/env {self._shell}\n\n"
170
180
  "# This script is auto-generated by junifer.\n"
171
181
  )
172
182
  var = self._pre_collect or ""
@@ -175,7 +185,7 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
175
185
  def collect(self) -> str:
176
186
  """Return collect commands."""
177
187
  return (
178
- "#!/usr/bin/env bash\n\n"
188
+ f"#!/usr/bin/env {self._shell}\n\n"
179
189
  "# This script is auto-generated by junifer.\n\n"
180
190
  "# Run pre_collect.sh\n"
181
191
  f"sh {self._pre_collect_path.resolve()!s}\n\n"
@@ -126,7 +126,8 @@ class HTCondorAdapter(QueueContextAdapter):
126
126
  Raises
127
127
  ------
128
128
  ValueError
129
- If ``env.kind`` is invalid.
129
+ If ``env.kind`` is invalid or
130
+ if ``env.shell`` is invalid.
130
131
 
131
132
  """
132
133
  # Set env related variables
@@ -140,13 +141,22 @@ class HTCondorAdapter(QueueContextAdapter):
140
141
  f"must be one of {valid_env_kinds}"
141
142
  )
142
143
  else:
144
+ # Check shell
145
+ shell = env.get("shell", "bash")
146
+ valid_shells = ["bash", "zsh"]
147
+ if shell not in valid_shells:
148
+ raise_error(
149
+ f"Invalid value for `env.shell`: {shell}, "
150
+ f"must be one of {valid_shells}"
151
+ )
152
+ self._shell = shell
143
153
  # Set variables
144
154
  if env["kind"] == "local":
145
155
  # No virtual environment
146
156
  self._executable = "junifer"
147
157
  self._arguments = ""
148
158
  else:
149
- self._executable = f"run_{env['kind']}.sh"
159
+ self._executable = f"run_{env['kind']}.{self._shell}"
150
160
  self._arguments = f"{env['name']} junifer"
151
161
  self._exec_path = self._job_dir / self._executable
152
162
 
@@ -181,7 +191,7 @@ class HTCondorAdapter(QueueContextAdapter):
181
191
  def pre_run(self) -> str:
182
192
  """Return pre-run commands."""
183
193
  fixed = (
184
- "#!/bin/bash\n\n"
194
+ f"#!/usr/bin/env {self._shell}\n\n"
185
195
  "# This script is auto-generated by junifer.\n\n"
186
196
  "# Force datalad to run in non-interactive mode\n"
187
197
  "DATALAD_UI_INTERACTIVE=false\n"
@@ -225,12 +235,13 @@ class HTCondorAdapter(QueueContextAdapter):
225
235
  def pre_collect(self) -> str:
226
236
  """Return pre-collect commands."""
227
237
  fixed = (
228
- "#!/bin/bash\n\n" "# This script is auto-generated by junifer.\n"
238
+ f"#!/usr/bin/env {self._shell}\n\n"
239
+ "# This script is auto-generated by junifer.\n"
229
240
  )
230
241
  var = self._pre_collect or ""
231
242
  # Add commands if collect="yes"
232
243
  if self._collect == "yes":
233
- var += 'if [ "${1}" == "4" ]; then\n' " exit 1\n" "fi\n"
244
+ var += 'if [ "${1}" == "4" ]; then\n exit 1\nfi\n'
234
245
  return fixed + "\n" + var
235
246
 
236
247
  def collect(self) -> str:
@@ -12,11 +12,11 @@ import pytest
12
12
  from junifer.api.queue_context import GnuParallelLocalAdapter
13
13
 
14
14
 
15
- def test_GnuParallelLocalAdapter_env_error() -> None:
15
+ def test_GnuParallelLocalAdapter_env_kind_error() -> None:
16
16
  """Test error for invalid env kind."""
17
17
  with pytest.raises(ValueError, match="Invalid value for `env.kind`"):
18
18
  GnuParallelLocalAdapter(
19
- job_name="check_env",
19
+ job_name="check_env_kind",
20
20
  job_dir=Path("."),
21
21
  yaml_config_path=Path("."),
22
22
  elements=["sub01"],
@@ -24,6 +24,18 @@ def test_GnuParallelLocalAdapter_env_error() -> None:
24
24
  )
25
25
 
26
26
 
27
+ def test_GnuParallelLocalAdapter_env_shell_error() -> None:
28
+ """Test error for invalid env shell."""
29
+ with pytest.raises(ValueError, match="Invalid value for `env.shell`"):
30
+ GnuParallelLocalAdapter(
31
+ job_name="check_env_shell",
32
+ job_dir=Path("."),
33
+ yaml_config_path=Path("."),
34
+ elements=["sub01"],
35
+ env={"kind": "conda", "shell": "fish"},
36
+ )
37
+
38
+
27
39
  @pytest.mark.parametrize(
28
40
  "elements, expected_text",
29
41
  [
@@ -55,14 +67,18 @@ def test_GnuParallelLocalAdapter_elements(
55
67
 
56
68
 
57
69
  @pytest.mark.parametrize(
58
- "pre_run, expected_text",
70
+ "pre_run, expected_text, shell",
59
71
  [
60
- (None, "# Force datalad"),
61
- ("# Check this out\n", "# Check this out"),
72
+ (None, "# Force datalad", "bash"),
73
+ (None, "# Force datalad", "zsh"),
74
+ ("# Check this out\n", "# Check this out", "bash"),
75
+ ("# Check this out\n", "# Check this out", "zsh"),
62
76
  ],
63
77
  )
64
78
  def test_GnuParallelLocalAdapter_pre_run(
65
- pre_run: Optional[str], expected_text: str
79
+ pre_run: Optional[str],
80
+ expected_text: str,
81
+ shell: str,
66
82
  ) -> None:
67
83
  """Test GnuParallelLocalAdapter pre_run().
68
84
 
@@ -72,6 +88,8 @@ def test_GnuParallelLocalAdapter_pre_run(
72
88
  The parametrized pre run text.
73
89
  expected_text : str
74
90
  The parametrized expected text.
91
+ shell : str
92
+ The parametrized expected shell.
75
93
 
76
94
  """
77
95
  adapter = GnuParallelLocalAdapter(
@@ -79,21 +97,26 @@ def test_GnuParallelLocalAdapter_pre_run(
79
97
  job_dir=Path("."),
80
98
  yaml_config_path=Path("."),
81
99
  elements=["sub01"],
100
+ env={"kind": "conda", "name": "junifer", "shell": shell},
82
101
  pre_run=pre_run,
83
102
  )
103
+ assert shell in adapter.pre_run()
84
104
  assert expected_text in adapter.pre_run()
85
105
 
86
106
 
87
107
  @pytest.mark.parametrize(
88
- "pre_collect, expected_text",
108
+ "pre_collect, expected_text, shell",
89
109
  [
90
- (None, "# This script"),
91
- ("# Check this out\n", "# Check this out"),
110
+ (None, "# This script", "bash"),
111
+ (None, "# This script", "zsh"),
112
+ ("# Check this out\n", "# Check this out", "bash"),
113
+ ("# Check this out\n", "# Check this out", "zsh"),
92
114
  ],
93
115
  )
94
116
  def test_GnuParallelLocalAdapter_pre_collect(
95
117
  pre_collect: Optional[str],
96
118
  expected_text: str,
119
+ shell: str,
97
120
  ) -> None:
98
121
  """Test GnuParallelLocalAdapter pre_collect().
99
122
 
@@ -103,6 +126,8 @@ def test_GnuParallelLocalAdapter_pre_collect(
103
126
  The parametrized pre collect text.
104
127
  expected_text : str
105
128
  The parametrized expected text.
129
+ shell : str
130
+ The parametrized expected shell.
106
131
 
107
132
  """
108
133
  adapter = GnuParallelLocalAdapter(
@@ -110,8 +135,10 @@ def test_GnuParallelLocalAdapter_pre_collect(
110
135
  job_dir=Path("."),
111
136
  yaml_config_path=Path("."),
112
137
  elements=["sub01"],
138
+ env={"kind": "venv", "name": "junifer", "shell": shell},
113
139
  pre_collect=pre_collect,
114
140
  )
141
+ assert shell in adapter.pre_collect()
115
142
  assert expected_text in adapter.pre_collect()
116
143
 
117
144
 
@@ -140,8 +167,10 @@ def test_GnuParallelLocalAdapter_collect() -> None:
140
167
  @pytest.mark.parametrize(
141
168
  "env",
142
169
  [
143
- {"kind": "conda", "name": "junifer"},
144
- {"kind": "venv", "name": "./junifer"},
170
+ {"kind": "conda", "name": "junifer", "shell": "bash"},
171
+ {"kind": "conda", "name": "junifer", "shell": "zsh"},
172
+ {"kind": "venv", "name": "./junifer", "shell": "bash"},
173
+ {"kind": "venv", "name": "./junifer", "shell": "zsh"},
145
174
  ],
146
175
  )
147
176
  def test_GnuParallelLocalAdapter_prepare(
@@ -177,7 +206,7 @@ def test_GnuParallelLocalAdapter_prepare(
177
206
  adapter.prepare()
178
207
 
179
208
  assert "GNU parallel" in caplog.text
180
- assert f"Copying run_{env['kind']}" in caplog.text
209
+ assert f"Copying run_{env['kind']}.{env['shell']}" in caplog.text
181
210
  assert "Writing pre_run.sh" in caplog.text
182
211
  assert "Writing run_test_prepare.sh" in caplog.text
183
212
  assert "Writing pre_collect.sh" in caplog.text
@@ -12,11 +12,11 @@ import pytest
12
12
  from junifer.api.queue_context import HTCondorAdapter
13
13
 
14
14
 
15
- def test_HTCondorAdapter_env_error() -> None:
15
+ def test_HTCondorAdapter_env_kind_error() -> None:
16
16
  """Test error for invalid env kind."""
17
17
  with pytest.raises(ValueError, match="Invalid value for `env.kind`"):
18
18
  HTCondorAdapter(
19
- job_name="check_env",
19
+ job_name="check_env_kind",
20
20
  job_dir=Path("."),
21
21
  yaml_config_path=Path("."),
22
22
  elements=["sub01"],
@@ -24,6 +24,18 @@ def test_HTCondorAdapter_env_error() -> None:
24
24
  )
25
25
 
26
26
 
27
+ def test_HTCondorAdapter_env_shell_error() -> None:
28
+ """Test error for invalid env shell."""
29
+ with pytest.raises(ValueError, match="Invalid value for `env.shell`"):
30
+ HTCondorAdapter(
31
+ job_name="check_env_shell",
32
+ job_dir=Path("."),
33
+ yaml_config_path=Path("."),
34
+ elements=["sub01"],
35
+ env={"kind": "conda", "shell": "fish"},
36
+ )
37
+
38
+
27
39
  def test_HTCondorAdapter_collect_error() -> None:
28
40
  """Test error for invalid collect option."""
29
41
  with pytest.raises(ValueError, match="Invalid value for `collect`"):
@@ -37,14 +49,18 @@ def test_HTCondorAdapter_collect_error() -> None:
37
49
 
38
50
 
39
51
  @pytest.mark.parametrize(
40
- "pre_run, expected_text",
52
+ "pre_run, expected_text, shell",
41
53
  [
42
- (None, "# Force datalad"),
43
- ("# Check this out\n", "# Check this out"),
54
+ (None, "# Force datalad", "bash"),
55
+ (None, "# Force datalad", "zsh"),
56
+ ("# Check this out\n", "# Check this out", "bash"),
57
+ ("# Check this out\n", "# Check this out", "zsh"),
44
58
  ],
45
59
  )
46
60
  def test_HTCondorAdapter_pre_run(
47
- pre_run: Optional[str], expected_text: str
61
+ pre_run: Optional[str],
62
+ expected_text: str,
63
+ shell: str,
48
64
  ) -> None:
49
65
  """Test HTCondorAdapter pre_run().
50
66
 
@@ -54,6 +70,8 @@ def test_HTCondorAdapter_pre_run(
54
70
  The parametrized pre run text.
55
71
  expected_text : str
56
72
  The parametrized expected text.
73
+ shell : str
74
+ The parametrized expected shell.
57
75
 
58
76
  """
59
77
  adapter = HTCondorAdapter(
@@ -61,22 +79,31 @@ def test_HTCondorAdapter_pre_run(
61
79
  job_dir=Path("."),
62
80
  yaml_config_path=Path("."),
63
81
  elements=["sub01"],
82
+ env={"kind": "conda", "name": "junifer", "shell": shell},
64
83
  pre_run=pre_run,
65
84
  )
85
+ assert shell in adapter.pre_run()
66
86
  assert expected_text in adapter.pre_run()
67
87
 
68
88
 
69
89
  @pytest.mark.parametrize(
70
- "pre_collect, expected_text, collect",
90
+ "pre_collect, expected_text, collect, shell",
71
91
  [
72
- (None, "exit 1", "yes"),
73
- (None, "# This script", "on_success_only"),
74
- ("# Check this out\n", "# Check this out", "yes"),
75
- ("# Check this out\n", "# Check this out", "on_success_only"),
92
+ (None, "exit 1", "yes", "bash"),
93
+ (None, "exit 1", "yes", "zsh"),
94
+ (None, "# This script", "on_success_only", "bash"),
95
+ (None, "# This script", "on_success_only", "zsh"),
96
+ ("# Check this out\n", "# Check this out", "yes", "bash"),
97
+ ("# Check this out\n", "# Check this out", "yes", "zsh"),
98
+ ("# Check this out\n", "# Check this out", "on_success_only", "bash"),
99
+ ("# Check this out\n", "# Check this out", "on_success_only", "zsh"),
76
100
  ],
77
101
  )
78
102
  def test_HTCondorAdapter_pre_collect(
79
- pre_collect: Optional[str], expected_text: str, collect: str
103
+ pre_collect: Optional[str],
104
+ expected_text: str,
105
+ collect: str,
106
+ shell: str,
80
107
  ) -> None:
81
108
  """Test HTCondorAdapter pre_collect().
82
109
 
@@ -88,6 +115,8 @@ def test_HTCondorAdapter_pre_collect(
88
115
  The parametrized expected text.
89
116
  collect : str
90
117
  The parametrized collect parameter.
118
+ shell : str
119
+ The parametrized expected shell.
91
120
 
92
121
  """
93
122
  adapter = HTCondorAdapter(
@@ -95,9 +124,11 @@ def test_HTCondorAdapter_pre_collect(
95
124
  job_dir=Path("."),
96
125
  yaml_config_path=Path("."),
97
126
  elements=["sub01"],
127
+ env={"kind": "venv", "name": "junifer", "shell": shell},
98
128
  pre_collect=pre_collect,
99
129
  collect=collect,
100
130
  )
131
+ assert shell in adapter.pre_collect()
101
132
  assert expected_text in adapter.pre_collect()
102
133
 
103
134
 
@@ -177,8 +208,10 @@ def test_HTCondor_dag(
177
208
  @pytest.mark.parametrize(
178
209
  "env",
179
210
  [
180
- {"kind": "conda", "name": "junifer"},
181
- {"kind": "venv", "name": "./junifer"},
211
+ {"kind": "conda", "name": "junifer", "shell": "bash"},
212
+ {"kind": "conda", "name": "junifer", "shell": "zsh"},
213
+ {"kind": "venv", "name": "./junifer", "shell": "bash"},
214
+ {"kind": "venv", "name": "./junifer", "shell": "zsh"},
182
215
  ],
183
216
  )
184
217
  def test_HTCondorAdapter_prepare(
@@ -215,7 +248,7 @@ def test_HTCondorAdapter_prepare(
215
248
 
216
249
  assert "Creating HTCondor job" in caplog.text
217
250
  assert "Creating logs directory" in caplog.text
218
- assert f"Copying run_{env['kind']}" in caplog.text
251
+ assert f"Copying run_{env['kind']}.{env['shell']}" in caplog.text
219
252
  assert "Writing pre_run.sh" in caplog.text
220
253
  assert "Writing run_test_prepare.submit" in caplog.text
221
254
  assert "Writing pre_collect.sh" in caplog.text
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
2
 
3
3
  if [ $# -lt 2 ]; then
4
4
  echo "This script is meant to run a command within a conda environment."
@@ -0,0 +1,23 @@
1
+ #!/usr/bin/env zsh
2
+
3
+ if [ $# -lt 2 ]; then
4
+ echo "This script is meant to run a command within a conda environment."
5
+ echo "It needs at least 2 parameters."
6
+ echo "The first one must be the environment name."
7
+ echo "The rest will be the command."
8
+ exit 255
9
+ fi
10
+
11
+ eval "$(conda shell.zsh hook)"
12
+ env_name=$1
13
+ echo "Activating ${env_name}"
14
+ conda activate "${env_name}"
15
+ shift 1
16
+
17
+ if [ -f "pre_run.sh" ]; then
18
+ echo "Sourcing pre_run.sh"
19
+ . ./pre_run.sh
20
+ fi
21
+
22
+ echo "Running ${*} in conda environment"
23
+ "$@"
@@ -0,0 +1,22 @@
1
+ #!/usr/bin/env bash
2
+
3
+ if [ $# -lt 2 ]; then
4
+ echo "This script is meant to run a command within a Python virtual environment."
5
+ echo "It needs at least 2 parameters."
6
+ echo "The first one must be the virtualenv path."
7
+ echo "The rest will be the command."
8
+ exit 255
9
+ fi
10
+
11
+ env_path=$1
12
+ echo "Activating ${env_path}"
13
+ source "${env_path}"/bin/activate
14
+ shift 1
15
+
16
+ if [ -f "pre_run.sh" ]; then
17
+ echo "Sourcing pre_run.sh"
18
+ . ./pre_run.sh
19
+ fi
20
+
21
+ echo "Running ${*} in Python virtual environment"
22
+ "$@"
@@ -1,4 +1,4 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env zsh
2
2
 
3
3
  if [ $# -lt 2 ]; then
4
4
  echo "This script is meant to run a command within a Python virtual environment."
@@ -32,9 +32,7 @@ class JuselessDataladAOMICID1000VBM(PatternDataladDataGrabber):
32
32
  replacements = ["subject"]
33
33
  patterns = {
34
34
  "VBM_GM": {
35
- "pattern": (
36
- "{subject}/mri/mwp1{subject}_run-2_T1w.nii.gz"
37
- ),
35
+ "pattern": ("{subject}/mri/mwp1{subject}_run-2_T1w.nii.gz"),
38
36
  "space": "IXI549Space",
39
37
  },
40
38
  }
@@ -44,9 +44,7 @@ class JuselessDataladIXIVBM(PatternDataladDataGrabber):
44
44
  replacements = ["site", "subject"]
45
45
  patterns = {
46
46
  "VBM_GM": {
47
- "pattern": (
48
- "{site}/{subject}/mri/m0wp1{subject}.nii.gz"
49
- ),
47
+ "pattern": ("{site}/{subject}/mri/m0wp1{subject}.nii.gz"),
50
48
  "space": "IXI549Space",
51
49
  },
52
50
  }
@@ -33,8 +33,7 @@ def test_DataladAOMICID1000() -> None:
33
33
  assert "BOLD" in out
34
34
 
35
35
  assert (
36
- out["BOLD"]["path"].name
37
- == f"{test_element}_task-moviewatching_"
36
+ out["BOLD"]["path"].name == f"{test_element}_task-moviewatching_"
38
37
  "space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
39
38
  )
40
39
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: junifer
3
- Version: 0.0.4.dev831
3
+ Version: 0.0.5.dev11
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=x1UR2jUcrUdm2HNl-3Qvyi4UUrU6ms5qm2qcmNY7zZk,391
2
- junifer/_version.py,sha256=49QCIbmjequispHfWYN5Texe7FGM_le9CtB5yJ62hJg,428
2
+ junifer/_version.py,sha256=xeIK04I17yA6IG0RaXK-CTIfLYsUKbym6bUXa6zjvRg,426
3
3
  junifer/stats.py,sha256=sU5IZ2qFZWbzgSutQS_z42miIVItpSGmQYBn6KkD5fA,6162
4
4
  junifer/api/__init__.py,sha256=YILu9M7SC0Ri4CVd90fELH2OnK_gvCYAXCoqBNCFE8E,257
5
5
  junifer/api/cli.py,sha256=_fC35jp0YzqNIpO5yvTb_5QBmUpw6sRFgVjBeoRbhO8,13627
@@ -8,13 +8,15 @@ junifer/api/functions.py,sha256=N59KM2GqxIwMU2tXc44oYCqogclgqD45qI_ULrfGYDQ,1161
8
8
  junifer/api/parser.py,sha256=a3SSC2xO-PF1pqXZXFq8Sh9aVd-dmHolJbCkGyOUTAM,4416
9
9
  junifer/api/utils.py,sha256=dyjTdPMwX9qeCrn8SQT2Pjshfnu-y1FEyujV7lCzvm0,3333
10
10
  junifer/api/queue_context/__init__.py,sha256=x0fT0ax-jPI0Fefg2quJ6VCIwhJ9rUQEjCNqxDXw7WM,287
11
- junifer/api/queue_context/gnu_parallel_local_adapter.py,sha256=53zwa95agzx3hM1PMmHlOaApZ-SQpbQjVuac9vbpTLk,9113
12
- junifer/api/queue_context/htcondor_adapter.py,sha256=rsVwXP1crkopdwIKVU369crX7WCTr63iE8WpQEX8e9M,12785
11
+ junifer/api/queue_context/gnu_parallel_local_adapter.py,sha256=x2eQRVkhwJKd-Kx8AYia4F8nYnOLJrFzMGMjcwUygEc,9561
12
+ junifer/api/queue_context/htcondor_adapter.py,sha256=92pt4M_r52inBVlQ2M8Di6quEKW4Xcq3qVNRXaV4rGY,13233
13
13
  junifer/api/queue_context/queue_context_adapter.py,sha256=a6UE8xavDfuaZbkWYsayVs6l-rwIrbpFSpqSyHsEeYY,1577
14
- junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py,sha256=HD_fD-nNm77EVjNpcZ968fqYUWNzylkHvFH7sFEFXN4,5393
15
- junifer/api/queue_context/tests/test_htcondor_adapter.py,sha256=XmtdqoUmYTdkwGqRvIX52_n-vaVnPfvz81K4iSc6P0c,7255
16
- junifer/api/res/run_conda.sh,sha256=eskIn-fotITOlh--IUQKXh-SBOZkDkK8QvDcdQsyJ0M,509
17
- junifer/api/res/run_venv.sh,sha256=OF-LOdOdpjCU0JX6Dz1boG4ErPutTiVVD_N7j520Fvk,499
14
+ junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py,sha256=BPoewP50mfFPubRfcMYvEydIpW8k4p4T7NzRy8tAe1A,6604
15
+ junifer/api/queue_context/tests/test_htcondor_adapter.py,sha256=1vDAyIYQj_sFEhSC76duK7u6sd7K3kGFC-pfpjJNLYg,8619
16
+ junifer/api/res/run_conda.bash,sha256=Axm0xTsP6doUV0X0k6nUP_UJr_2GzA8CPvulQZ01Uno,517
17
+ junifer/api/res/run_conda.zsh,sha256=32Sm1VNjsrpdH_Wi46jGhPbrJjrmNlPIHtkQ6cHVUkU,515
18
+ junifer/api/res/run_venv.bash,sha256=aynMRwBgFzYc4CAWbnne_A0UPD5ZFd81w62u22IXzPo,507
19
+ junifer/api/res/run_venv.zsh,sha256=PaZJ5444TBdM3XntUETyxyngQ9xtjiq7I6hhHQev2Hc,506
18
20
  junifer/api/res/afni/3dAFNItoNIFTI,sha256=Fsy5S5rwIBb1MepLfl_5FQhE7gv6NDwNyAR_k036NmM,51
19
21
  junifer/api/res/afni/3dRSFC,sha256=MkPtS_nKEoJOHDAT3ZP9IA-SvMdhyzZDiyxObV_XI3g,44
20
22
  junifer/api/res/afni/3dReHo,sha256=Jb5B97iPPPQ14zAz7tK5BVG4jPZyOe9c6kgM6ixKaY8,44
@@ -39,9 +41,9 @@ junifer/api/tests/data/partly_cloudy_agg_mean_tian.yml,sha256=nS8K_R1hEuV71Vv-i9
39
41
  junifer/configs/__init__.py,sha256=r6BU6vW7FVapSD81j24QeQiZe1oKspsJJRRPjXnCk00,120
40
42
  junifer/configs/juseless/__init__.py,sha256=Ws98DvlLEMHfwW6BjmvHQmqTlFRDps9r4pLAfNjfEiM,149
41
43
  junifer/configs/juseless/datagrabbers/__init__.py,sha256=tqCLmelWqB1xfElvknnaJ5oVRPp9XVXtZLzIpxYIghg,452
42
- junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py,sha256=vY4xfZA1v_6zdCELoG9hHpe6BHfumEJGTvLxMUaX9Uw,1466
44
+ junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py,sha256=4Vf1AC6WSDkCaYXKJXEkJHS2UsdON57wdhj_oqpK-vw,1428
43
45
  junifer/configs/juseless/datagrabbers/camcan_vbm.py,sha256=GXnDML55kKEGSb38olRUWL_AFdN9IvPViEGP9CaDTUQ,1497
44
- junifer/configs/juseless/datagrabbers/ixi_vbm.py,sha256=HvRQWGIdoNX47Sr13GCyhNFG318Ii1GUktvePNyVN6o,2301
46
+ junifer/configs/juseless/datagrabbers/ixi_vbm.py,sha256=mCuv-27AsN9bReoq3Fo7CJaC2Jkmd5Y1sFEk5ExGqUo,2263
45
47
  junifer/configs/juseless/datagrabbers/ucla.py,sha256=C14OW7eI2kruJIqgAsd_PtJTyW5R8wp9lDOpQOnfarM,4843
46
48
  junifer/configs/juseless/datagrabbers/ukb_vbm.py,sha256=d2N3X1OVrcmkKNVkruNDKzU2iqBH9oGUnhfxkg0-7aw,1485
47
49
  junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py,sha256=Y_npFmmj0MN0TYv8jaxVMgFHLMQLZ8vXl8lWQKvOYbc,1001
@@ -94,7 +96,7 @@ junifer/datagrabber/aomic/__init__.py,sha256=R7yrRVBWsBW25CH0fw-KHpFwb_EC-MlPKDz
94
96
  junifer/datagrabber/aomic/id1000.py,sha256=hvi-25NWeakUX4Pu1YDjxfKbo6U4WUjw-I9c2kGmgnk,6005
95
97
  junifer/datagrabber/aomic/piop1.py,sha256=ivQ1wjYAR1qb-fN13NWA-69iS8XvgMMUCwQR5fBh2n0,8428
96
98
  junifer/datagrabber/aomic/piop2.py,sha256=LuYQL4t4k-K_74Gd8zVnV7Y5W6tt1krBpk0a7D5LQ9Q,8047
97
- junifer/datagrabber/aomic/tests/test_id1000.py,sha256=Rk14VsWOp36D2_JXxFswKXNYQfc1UbVAQxDpq5qJHCs,4712
99
+ junifer/datagrabber/aomic/tests/test_id1000.py,sha256=cA329VAbZ9mY89vi756xqq1p4LHkBp4e7d_OZJOLsGk,4700
98
100
  junifer/datagrabber/aomic/tests/test_piop1.py,sha256=Faqmya-OisThPom1nooxlacaCD4afLFSw03Wn58gK6g,5466
99
101
  junifer/datagrabber/aomic/tests/test_piop2.py,sha256=8emWWImX-ltUHJtEFWo8Jng_0kK-Yz66RyA7ddt-By4,5265
100
102
  junifer/datagrabber/hcp1200/__init__.py,sha256=zy4Qq1_m3vECEhioG-UDteco2b5cni_8xuElICaRtt4,189
@@ -248,10 +250,10 @@ junifer/utils/logging.py,sha256=furcU3XIUpUvnpe4PEwzWWIWgmH4j2ZA4MQdvSGWjj0,9216
248
250
  junifer/utils/tests/test_fs.py,sha256=WQS7cKlKEZ742CIuiOYYpueeAhY9PqlastfDVpVVtvE,923
249
251
  junifer/utils/tests/test_helpers.py,sha256=k5qqfxK8dFyuewTJyR1Qn6-nFaYNuVr0ysc18bfPjyU,929
250
252
  junifer/utils/tests/test_logging.py,sha256=l8oo-AiBV7H6_IzlsNcj__cLeZBUvgIGoaMszD9VaJg,7754
251
- junifer-0.0.4.dev831.dist-info/AUTHORS.rst,sha256=rmULKpchpSol4ExWFdm-qu4fkpSZPYqIESVJBZtGb6E,163
252
- junifer-0.0.4.dev831.dist-info/LICENSE.md,sha256=MqCnOBu8uXsEOzRZWh9EBVfVz-kE9NkXcLCrtGXo2yU,34354
253
- junifer-0.0.4.dev831.dist-info/METADATA,sha256=Jd7BAiWWLytawTNB3q4m5LVdTrhyY3RzRY6xEVjqNRE,8235
254
- junifer-0.0.4.dev831.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
255
- junifer-0.0.4.dev831.dist-info/entry_points.txt,sha256=DxFvKq0pOqRunAK0FxwJcoDfV1-dZvsFDpD5HRqSDhw,48
256
- junifer-0.0.4.dev831.dist-info/top_level.txt,sha256=4bAq1R2QFQ4b3hohjys2JBvxrl0GKk5LNFzYvz9VGcA,8
257
- junifer-0.0.4.dev831.dist-info/RECORD,,
253
+ junifer-0.0.5.dev11.dist-info/AUTHORS.rst,sha256=rmULKpchpSol4ExWFdm-qu4fkpSZPYqIESVJBZtGb6E,163
254
+ junifer-0.0.5.dev11.dist-info/LICENSE.md,sha256=MqCnOBu8uXsEOzRZWh9EBVfVz-kE9NkXcLCrtGXo2yU,34354
255
+ junifer-0.0.5.dev11.dist-info/METADATA,sha256=M7Ha4lejBN2oMO2awvM7hGccPNH-aTvVDVk5GIxtOxs,8234
256
+ junifer-0.0.5.dev11.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
257
+ junifer-0.0.5.dev11.dist-info/entry_points.txt,sha256=DxFvKq0pOqRunAK0FxwJcoDfV1-dZvsFDpD5HRqSDhw,48
258
+ junifer-0.0.5.dev11.dist-info/top_level.txt,sha256=4bAq1R2QFQ4b3hohjys2JBvxrl0GKk5LNFzYvz9VGcA,8
259
+ junifer-0.0.5.dev11.dist-info/RECORD,,