junifer 0.0.6.dev317__py3-none-any.whl → 0.0.6.dev324__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 +2 -2
- junifer/markers/falff/_afni_falff.py +32 -35
- junifer/markers/falff/_junifer_falff.py +10 -11
- junifer/markers/falff/falff_base.py +1 -1
- junifer/markers/falff/tests/test_falff_spheres.py +3 -1
- junifer/markers/reho/_afni_reho.py +23 -25
- junifer/markers/reho/_junifer_reho.py +7 -6
- junifer/markers/reho/reho_base.py +1 -1
- {junifer-0.0.6.dev317.dist-info → junifer-0.0.6.dev324.dist-info}/METADATA +1 -1
- {junifer-0.0.6.dev317.dist-info → junifer-0.0.6.dev324.dist-info}/RECORD +15 -15
- {junifer-0.0.6.dev317.dist-info → junifer-0.0.6.dev324.dist-info}/AUTHORS.rst +0 -0
- {junifer-0.0.6.dev317.dist-info → junifer-0.0.6.dev324.dist-info}/LICENSE.md +0 -0
- {junifer-0.0.6.dev317.dist-info → junifer-0.0.6.dev324.dist-info}/WHEEL +0 -0
- {junifer-0.0.6.dev317.dist-info → junifer-0.0.6.dev324.dist-info}/entry_points.txt +0 -0
- {junifer-0.0.6.dev317.dist-info → junifer-0.0.6.dev324.dist-info}/top_level.txt +0 -0
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.
|
16
|
-
__version_tuple__ = version_tuple = (0, 0, 6, '
|
15
|
+
__version__ = version = '0.0.6.dev324'
|
16
|
+
__version_tuple__ = version_tuple = (0, 0, 6, 'dev324')
|
@@ -50,7 +50,7 @@ class AFNIALFF(metaclass=Singleton):
|
|
50
50
|
@lru_cache(maxsize=None, typed=True)
|
51
51
|
def compute(
|
52
52
|
self,
|
53
|
-
|
53
|
+
input_path: Path,
|
54
54
|
highpass: float,
|
55
55
|
lowpass: float,
|
56
56
|
tr: Optional[float],
|
@@ -59,8 +59,8 @@ class AFNIALFF(metaclass=Singleton):
|
|
59
59
|
|
60
60
|
Parameters
|
61
61
|
----------
|
62
|
-
|
63
|
-
|
62
|
+
input_path : pathlib.Path
|
63
|
+
Path to the input data.
|
64
64
|
highpass : positive float
|
65
65
|
Highpass cutoff frequency.
|
66
66
|
lowpass : positive float
|
@@ -82,19 +82,17 @@ class AFNIALFF(metaclass=Singleton):
|
|
82
82
|
"""
|
83
83
|
logger.debug("Creating cache for ALFF computation via AFNI")
|
84
84
|
|
85
|
-
# Create
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
nifti_in_file_path = tempdir / "input.nii" # needs to be .nii
|
90
|
-
nib.save(data, nifti_in_file_path)
|
85
|
+
# Create element-scoped tempdir
|
86
|
+
element_tempdir = WorkDirManager().get_element_tempdir(
|
87
|
+
prefix="afni_lff"
|
88
|
+
)
|
91
89
|
|
92
90
|
# Set 3dRSFC command
|
93
|
-
|
91
|
+
lff_out_path_prefix = element_tempdir / "output"
|
94
92
|
bp_cmd = [
|
95
93
|
"3dRSFC",
|
96
|
-
f"-prefix {
|
97
|
-
f"-input {
|
94
|
+
f"-prefix {lff_out_path_prefix.resolve()}",
|
95
|
+
f"-input {input_path.resolve()}",
|
98
96
|
f"-band {highpass} {lowpass}",
|
99
97
|
"-no_rsfa -nosat -nodetrend",
|
100
98
|
]
|
@@ -104,49 +102,48 @@ class AFNIALFF(metaclass=Singleton):
|
|
104
102
|
# Call 3dRSFC
|
105
103
|
run_ext_cmd(name="3dRSFC", cmd=bp_cmd)
|
106
104
|
|
107
|
-
#
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
105
|
+
# Read header to get output suffix
|
106
|
+
niimg = nib.load(input_path)
|
107
|
+
header = niimg.header
|
108
|
+
sform_code = header.get_sform(coded=True)[1]
|
109
|
+
if sform_code == 4:
|
110
|
+
output_suffix = "tlrc"
|
111
|
+
else:
|
112
|
+
output_suffix = "orig"
|
113
|
+
# Set params suffix
|
114
114
|
params_suffix = f"_{highpass}_{lowpass}_{tr}"
|
115
115
|
|
116
116
|
# Convert alff afni to nifti
|
117
|
-
|
118
|
-
element_tempdir / f"
|
117
|
+
alff_nifti_out_path = (
|
118
|
+
element_tempdir / f"output_alff{params_suffix}.nii"
|
119
119
|
) # needs to be .nii
|
120
120
|
convert_alff_cmd = [
|
121
121
|
"3dAFNItoNIFTI",
|
122
|
-
f"-prefix {
|
123
|
-
f"{
|
122
|
+
f"-prefix {alff_nifti_out_path.resolve()}",
|
123
|
+
f"{lff_out_path_prefix}_ALFF+{output_suffix}.BRIK",
|
124
124
|
]
|
125
125
|
# Call 3dAFNItoNIFTI
|
126
126
|
run_ext_cmd(name="3dAFNItoNIFTI", cmd=convert_alff_cmd)
|
127
127
|
|
128
128
|
# Convert falff afni to nifti
|
129
|
-
|
130
|
-
element_tempdir / f"
|
129
|
+
falff_nifti_out_path = (
|
130
|
+
element_tempdir / f"output_falff{params_suffix}.nii"
|
131
131
|
) # needs to be .nii
|
132
132
|
convert_falff_cmd = [
|
133
133
|
"3dAFNItoNIFTI",
|
134
|
-
f"-prefix {
|
135
|
-
f"{
|
134
|
+
f"-prefix {falff_nifti_out_path.resolve()}",
|
135
|
+
f"{lff_out_path_prefix}_fALFF+{output_suffix}.BRIK",
|
136
136
|
]
|
137
137
|
# Call 3dAFNItoNIFTI
|
138
138
|
run_ext_cmd(name="3dAFNItoNIFTI", cmd=convert_falff_cmd)
|
139
139
|
|
140
140
|
# Load nifti
|
141
|
-
alff_data = nib.load(
|
142
|
-
falff_data = nib.load(
|
143
|
-
|
144
|
-
# Delete tempdir
|
145
|
-
WorkDirManager().delete_tempdir(tempdir)
|
141
|
+
alff_data = nib.load(alff_nifti_out_path)
|
142
|
+
falff_data = nib.load(falff_nifti_out_path)
|
146
143
|
|
147
144
|
return (
|
148
145
|
alff_data,
|
149
146
|
falff_data,
|
150
|
-
|
151
|
-
|
152
|
-
)
|
147
|
+
alff_nifti_out_path,
|
148
|
+
falff_nifti_out_path,
|
149
|
+
)
|
@@ -47,7 +47,7 @@ class JuniferALFF(metaclass=Singleton):
|
|
47
47
|
@lru_cache(maxsize=None, typed=True)
|
48
48
|
def compute(
|
49
49
|
self,
|
50
|
-
|
50
|
+
input_path: Path,
|
51
51
|
highpass: float,
|
52
52
|
lowpass: float,
|
53
53
|
tr: Optional[float],
|
@@ -56,8 +56,8 @@ class JuniferALFF(metaclass=Singleton):
|
|
56
56
|
|
57
57
|
Parameters
|
58
58
|
----------
|
59
|
-
|
60
|
-
|
59
|
+
input_path : pathlib.Path
|
60
|
+
Path to the input data.
|
61
61
|
highpass : positive float
|
62
62
|
Highpass cutoff frequency.
|
63
63
|
lowpass : positive float
|
@@ -80,9 +80,10 @@ class JuniferALFF(metaclass=Singleton):
|
|
80
80
|
logger.debug("Creating cache for ALFF computation via junifer")
|
81
81
|
|
82
82
|
# Get scan data
|
83
|
-
|
83
|
+
niimg = nib.load(input_path)
|
84
|
+
niimg_data = niimg.get_fdata().copy()
|
84
85
|
if tr is None:
|
85
|
-
tr = float(
|
86
|
+
tr = float(niimg.header["pixdim"][4]) # type: ignore
|
86
87
|
logger.info(f"`tr` not provided, using `tr` from header: {tr}")
|
87
88
|
|
88
89
|
# Bandpass the data within the lowpass and highpass cutoff freqs
|
@@ -120,19 +121,17 @@ class JuniferALFF(metaclass=Singleton):
|
|
120
121
|
# Calculate ALFF
|
121
122
|
alff = numerator / np.sqrt(niimg_data.shape[-1])
|
122
123
|
alff_data = nimg.new_img_like(
|
123
|
-
ref_niimg=
|
124
|
+
ref_niimg=niimg,
|
124
125
|
data=alff,
|
125
126
|
)
|
126
127
|
falff_data = nimg.new_img_like(
|
127
|
-
ref_niimg=
|
128
|
+
ref_niimg=niimg,
|
128
129
|
data=falff,
|
129
130
|
)
|
130
131
|
|
131
|
-
# Create element-scoped tempdir
|
132
|
-
# available later as nibabel stores file path reference for
|
133
|
-
# loading on computation
|
132
|
+
# Create element-scoped tempdir
|
134
133
|
element_tempdir = WorkDirManager().get_element_tempdir(
|
135
|
-
prefix="
|
134
|
+
prefix="junifer_lff"
|
136
135
|
)
|
137
136
|
output_alff_path = element_tempdir / "output_alff.nii.gz"
|
138
137
|
output_falff_path = element_tempdir / "output_falff.nii.gz"
|
@@ -146,7 +146,7 @@ class ALFFBase(BaseMarker):
|
|
146
146
|
estimator = JuniferALFF()
|
147
147
|
# Compute ALFF + fALFF
|
148
148
|
alff, falff, alff_path, falff_path = estimator.compute( # type: ignore
|
149
|
-
|
149
|
+
input_path=input_data["path"],
|
150
150
|
highpass=self.highpass,
|
151
151
|
lowpass=self.lowpass,
|
152
152
|
tr=self.tr,
|
@@ -69,7 +69,9 @@ def test_ALFFSpheres(caplog: pytest.LogCaptureFixture, tmp_path: Path) -> None:
|
|
69
69
|
# Fit transform marker on data
|
70
70
|
output = marker.fit_transform(element_data)
|
71
71
|
|
72
|
-
|
72
|
+
# Tests for ALFFParcels run before this with the same data and that
|
73
|
+
# should create the cache
|
74
|
+
assert "Calculating ALFF and fALFF" in caplog.text
|
73
75
|
|
74
76
|
# Get BOLD output
|
75
77
|
assert "BOLD" in output
|
@@ -50,7 +50,7 @@ class AFNIReHo(metaclass=Singleton):
|
|
50
50
|
@lru_cache(maxsize=None, typed=True)
|
51
51
|
def compute(
|
52
52
|
self,
|
53
|
-
|
53
|
+
input_path: Path,
|
54
54
|
nneigh: int = 27,
|
55
55
|
neigh_rad: Optional[float] = None,
|
56
56
|
neigh_x: Optional[float] = None,
|
@@ -65,8 +65,8 @@ class AFNIReHo(metaclass=Singleton):
|
|
65
65
|
|
66
66
|
Parameters
|
67
67
|
----------
|
68
|
-
|
69
|
-
|
68
|
+
input_path : pathlib.Path
|
69
|
+
Path to the input data.
|
70
70
|
nneigh : {7, 19, 27}, optional
|
71
71
|
Number of voxels in the neighbourhood, inclusive. Can be:
|
72
72
|
|
@@ -128,19 +128,17 @@ class AFNIReHo(metaclass=Singleton):
|
|
128
128
|
"""
|
129
129
|
logger.debug("Creating cache for ReHo computation via AFNI")
|
130
130
|
|
131
|
-
# Create
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
nifti_in_file_path = tempdir / "input.nii" # needs to be .nii
|
136
|
-
nib.save(data, nifti_in_file_path)
|
131
|
+
# Create element-scoped tempdir
|
132
|
+
element_tempdir = WorkDirManager().get_element_tempdir(
|
133
|
+
prefix="afni_reho"
|
134
|
+
)
|
137
135
|
|
138
136
|
# Set 3dReHo command
|
139
|
-
reho_out_path_prefix =
|
137
|
+
reho_out_path_prefix = element_tempdir / "output"
|
140
138
|
reho_cmd = [
|
141
139
|
"3dReHo",
|
142
140
|
f"-prefix {reho_out_path_prefix.resolve()}",
|
143
|
-
f"-inset {
|
141
|
+
f"-inset {input_path.resolve()}",
|
144
142
|
]
|
145
143
|
# Check ellipsoidal / cuboidal volume arguments
|
146
144
|
if neigh_rad:
|
@@ -164,28 +162,28 @@ class AFNIReHo(metaclass=Singleton):
|
|
164
162
|
# Call 3dReHo
|
165
163
|
run_ext_cmd(name="3dReHo", cmd=reho_cmd)
|
166
164
|
|
167
|
-
#
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
165
|
+
# Read header to get output suffix
|
166
|
+
niimg = nib.load(input_path)
|
167
|
+
header = niimg.header
|
168
|
+
sform_code = header.get_sform(coded=True)[1]
|
169
|
+
if sform_code == 4:
|
170
|
+
output_suffix = "tlrc"
|
171
|
+
else:
|
172
|
+
output_suffix = "orig"
|
173
|
+
|
173
174
|
# Convert afni to nifti
|
174
|
-
|
175
|
+
reho_nifti_out_path = (
|
175
176
|
element_tempdir / "output.nii" # needs to be .nii
|
176
177
|
)
|
177
178
|
convert_cmd = [
|
178
179
|
"3dAFNItoNIFTI",
|
179
|
-
f"-prefix {
|
180
|
-
f"{reho_out_path_prefix}+
|
180
|
+
f"-prefix {reho_nifti_out_path.resolve()}",
|
181
|
+
f"{reho_out_path_prefix}+{output_suffix}.BRIK",
|
181
182
|
]
|
182
183
|
# Call 3dAFNItoNIFTI
|
183
184
|
run_ext_cmd(name="3dAFNItoNIFTI", cmd=convert_cmd)
|
184
185
|
|
185
186
|
# Load nifti
|
186
|
-
output_data = nib.load(
|
187
|
-
|
188
|
-
# Delete tempdir
|
189
|
-
WorkDirManager().delete_tempdir(tempdir)
|
187
|
+
output_data = nib.load(reho_nifti_out_path)
|
190
188
|
|
191
|
-
return output_data,
|
189
|
+
return output_data, reho_nifti_out_path
|
@@ -48,15 +48,15 @@ class JuniferReHo(metaclass=Singleton):
|
|
48
48
|
@lru_cache(maxsize=None, typed=True)
|
49
49
|
def compute(
|
50
50
|
self,
|
51
|
-
|
51
|
+
input_path: Path,
|
52
52
|
nneigh: int = 27,
|
53
53
|
) -> tuple["Nifti1Image", Path]:
|
54
54
|
"""Compute ReHo map.
|
55
55
|
|
56
56
|
Parameters
|
57
57
|
----------
|
58
|
-
|
59
|
-
|
58
|
+
input_path : pathlib.Path
|
59
|
+
Path to the input data.
|
60
60
|
nneigh : {7, 19, 27, 125}, optional
|
61
61
|
Number of voxels in the neighbourhood, inclusive. Can be:
|
62
62
|
|
@@ -89,7 +89,8 @@ class JuniferReHo(metaclass=Singleton):
|
|
89
89
|
logger.debug("Creating cache for ReHo computation via junifer")
|
90
90
|
|
91
91
|
# Get scan data
|
92
|
-
|
92
|
+
niimg = nib.load(input_path)
|
93
|
+
niimg_data = niimg.get_fdata().copy()
|
93
94
|
# Get scan dimensions
|
94
95
|
n_x, n_y, n_z, _ = niimg_data.shape
|
95
96
|
|
@@ -119,7 +120,7 @@ class JuniferReHo(metaclass=Singleton):
|
|
119
120
|
# after #299 is merged
|
120
121
|
# Calculate whole brain mask
|
121
122
|
mni152_whole_brain_mask = nmask.compute_brain_mask(
|
122
|
-
target_img=
|
123
|
+
target_img=niimg,
|
123
124
|
threshold=0.5,
|
124
125
|
mask_type="whole-brain",
|
125
126
|
)
|
@@ -227,7 +228,7 @@ class JuniferReHo(metaclass=Singleton):
|
|
227
228
|
|
228
229
|
# Create new image like target image
|
229
230
|
output_data = nimg.new_img_like(
|
230
|
-
ref_niimg=
|
231
|
+
ref_niimg=niimg,
|
231
232
|
data=reho_map,
|
232
233
|
copy_header=False,
|
233
234
|
)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: junifer
|
3
|
-
Version: 0.0.6.
|
3
|
+
Version: 0.0.6.dev324
|
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,6 +1,6 @@
|
|
1
1
|
junifer/__init__.py,sha256=2McgH1yNue6Z1V26-uN_mfMjbTcx4CLhym-DMBl5xA4,266
|
2
2
|
junifer/__init__.pyi,sha256=SsTvgq2Dod6UqJN96GH1lCphH6hJQQurEJHGNhHjGUI,508
|
3
|
-
junifer/_version.py,sha256=
|
3
|
+
junifer/_version.py,sha256=Mek99XWm9XI8ealUwe-651JH0dQXcrlgJtYJdIejdA4,428
|
4
4
|
junifer/conftest.py,sha256=PWYkkRDU8ly2lYwv7VBKMHje4et6HX7Yey3Md_I2KbA,613
|
5
5
|
junifer/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
6
6
|
junifer/stats.py,sha256=e9aaagMGtgpRfW3Wdpz9ocpnYld1IWylCDcjFUgX9Mk,6225
|
@@ -208,14 +208,14 @@ junifer/markers/complexity/tests/test_sample_entropy.py,sha256=rfbiguVq7CUwYIvYB
|
|
208
208
|
junifer/markers/complexity/tests/test_weighted_perm_entropy.py,sha256=yDWKEaUbxrnrG6J2NlktLfwSBre5OuXd63kEof7t8PM,2373
|
209
209
|
junifer/markers/falff/__init__.py,sha256=qxdx_3FsVrn7h3gtbocK0ZmvqZwPQZGKuVkPm31ejNM,217
|
210
210
|
junifer/markers/falff/__init__.pyi,sha256=X-q2zBjUX0imQ37yN2Cg5gKfDvq8sh_9y2hRH4g5ufY,120
|
211
|
-
junifer/markers/falff/_afni_falff.py,sha256=
|
212
|
-
junifer/markers/falff/_junifer_falff.py,sha256=
|
213
|
-
junifer/markers/falff/falff_base.py,sha256=
|
211
|
+
junifer/markers/falff/_afni_falff.py,sha256=PYkSOFMyaHoGYDvmBjKLW1ALyWBe7yI36JBqZ71ji2c,4223
|
212
|
+
junifer/markers/falff/_junifer_falff.py,sha256=1PsavcopVjPtfmPZsnNi5ynl2GTfnCx9qjuKDb7YejE,4347
|
213
|
+
junifer/markers/falff/falff_base.py,sha256=WtJTMRn_Vmv9RZaaeLeyZpCsQc8QgB3UqIPWsUI3Lh4,4915
|
214
214
|
junifer/markers/falff/falff_parcels.py,sha256=sSb6QLaJKpL0GCTRWW3RnpOZCoy1f9lDLgJ0I_W_LlM,6017
|
215
215
|
junifer/markers/falff/falff_spheres.py,sha256=GrakJYPB01y9BNBXM8WzWaae0mC-S06txiycvfBGcj0,6656
|
216
216
|
junifer/markers/falff/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
217
217
|
junifer/markers/falff/tests/test_falff_parcels.py,sha256=Z3n1i8dkYbdXgouUjfIif9yLv5MubBEdrtAA-a6kRcc,4349
|
218
|
-
junifer/markers/falff/tests/test_falff_spheres.py,sha256
|
218
|
+
junifer/markers/falff/tests/test_falff_spheres.py,sha256=PGsxFjMxsH8HxIHVtdcQcX8suFa18ma_12Almknzn88,4503
|
219
219
|
junifer/markers/functional_connectivity/__init__.py,sha256=dGTn69eS7a3rylMQh_wKlO28UmYGjsoDEGu4q5sgQFA,230
|
220
220
|
junifer/markers/functional_connectivity/__init__.pyi,sha256=qfw6WVyE65u-5NZNi0xPa8zZVtkRfFvwyl4jHH2Xl00,539
|
221
221
|
junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py,sha256=uLdVGywmL7qrzloh1YBL4g4tPiamA47MgHF2DQH0JTU,5733
|
@@ -233,10 +233,10 @@ junifer/markers/functional_connectivity/tests/test_functional_connectivity_parce
|
|
233
233
|
junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py,sha256=A9OtFdndiSGOcPHH-QLPh6qoiD03A6KjM_emwxAlPg0,4145
|
234
234
|
junifer/markers/reho/__init__.py,sha256=WZf4A0XaRThjl8SlFOhvTLUfhTHp5koLxZgowsgTSAE,211
|
235
235
|
junifer/markers/reho/__init__.pyi,sha256=_aFb-Ry_EP2OMU6xRL4GlfuDpSl_egHllL-fz7vXjcE,118
|
236
|
-
junifer/markers/reho/_afni_reho.py,sha256=
|
237
|
-
junifer/markers/reho/_junifer_reho.py,sha256=
|
236
|
+
junifer/markers/reho/_afni_reho.py,sha256=SOWR5y9AYKfw1wj2Z4Wy7ckMUVTmeS378bayvPPVqqo,6225
|
237
|
+
junifer/markers/reho/_junifer_reho.py,sha256=14ObaRa2-0JzcoYLJyhnx4bgPCpTdciDXmrn9-gPv20,9387
|
238
238
|
junifer/markers/reho/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
239
|
-
junifer/markers/reho/reho_base.py,sha256=
|
239
|
+
junifer/markers/reho/reho_base.py,sha256=Q88TbhIM4rQWdeQPLwwxwZ9DrR8l09orD1rdTkSYDtc,4077
|
240
240
|
junifer/markers/reho/reho_parcels.py,sha256=UE1ia3uqbmTcZMc_FI625xVPLxBYvwpfrcvhekopbkI,6392
|
241
241
|
junifer/markers/reho/reho_spheres.py,sha256=FCC2qncC85Kd82hg-MOu4T7NAKEkXHUaCcwC9taau9Y,6996
|
242
242
|
junifer/markers/reho/tests/test_reho_parcels.py,sha256=bRtDi91qRcRYaRqqQjuSU6NuNz-KwLVCoTYo-e5VmsI,4075
|
@@ -341,10 +341,10 @@ junifer/utils/tests/test_config.py,sha256=7ltIXuwb_W4Mv_1dxQWyiyM10XgUAfsWKV6D_i
|
|
341
341
|
junifer/utils/tests/test_fs.py,sha256=WQS7cKlKEZ742CIuiOYYpueeAhY9PqlastfDVpVVtvE,923
|
342
342
|
junifer/utils/tests/test_helpers.py,sha256=k5qqfxK8dFyuewTJyR1Qn6-nFaYNuVr0ysc18bfPjyU,929
|
343
343
|
junifer/utils/tests/test_logging.py,sha256=duO4ou365hxwa_kwihFtKPLaL6LC5XHiyhOijrrngbA,8009
|
344
|
-
junifer-0.0.6.
|
345
|
-
junifer-0.0.6.
|
346
|
-
junifer-0.0.6.
|
347
|
-
junifer-0.0.6.
|
348
|
-
junifer-0.0.6.
|
349
|
-
junifer-0.0.6.
|
350
|
-
junifer-0.0.6.
|
344
|
+
junifer-0.0.6.dev324.dist-info/AUTHORS.rst,sha256=rmULKpchpSol4ExWFdm-qu4fkpSZPYqIESVJBZtGb6E,163
|
345
|
+
junifer-0.0.6.dev324.dist-info/LICENSE.md,sha256=MqCnOBu8uXsEOzRZWh9EBVfVz-kE9NkXcLCrtGXo2yU,34354
|
346
|
+
junifer-0.0.6.dev324.dist-info/METADATA,sha256=a_1zgab7_sp4jn5_jM6ZrKnJXL1InFZpK9zj39EUtVY,8429
|
347
|
+
junifer-0.0.6.dev324.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
348
|
+
junifer-0.0.6.dev324.dist-info/entry_points.txt,sha256=6O8ru0BP-SP7YMUZiizFNoaZ2HvJpadO2G7nKk4PwjI,48
|
349
|
+
junifer-0.0.6.dev324.dist-info/top_level.txt,sha256=4bAq1R2QFQ4b3hohjys2JBvxrl0GKk5LNFzYvz9VGcA,8
|
350
|
+
junifer-0.0.6.dev324.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|