sl-shared-assets 3.0.0rc5__py3-none-any.whl → 3.0.0rc7__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.

Potentially problematic release.


This version of sl-shared-assets might be problematic. Click here for more details.

@@ -68,9 +68,6 @@ class RawData:
68
68
  surgery_metadata_path: Path = Path()
69
69
  """Stores the path to the surgery_metadata.yaml file. This file contains the most actual information about the
70
70
  surgical intervention(s) performed on the animal prior to the session."""
71
- project_configuration_path: Path = Path()
72
- """Stores the path to the project_configuration.yaml file. This file contains the snapshot of the configuration
73
- parameters for the session's project."""
74
71
  session_data_path: Path = Path()
75
72
  """Stores the path to the session_data.yaml file. This path is used by the SessionData instance to save itself to
76
73
  disk as a .yaml file. The file contains the paths to all raw and processed data directories used during data
@@ -110,9 +107,6 @@ class RawData:
110
107
  """Stores the path to the integrity_verification.yaml tracker file. This file stores the current state of the data
111
108
  integrity verification pipeline. It prevents more than one instance of the pipeline from working with the data
112
109
  at a given time and communicates the outcome (success or failure) of the most recent pipeline runtime."""
113
- version_data_path: Path = Path()
114
- """Stores the path to the version_data.yaml file. This file contains the snapshot of Python and sl-experiment
115
- library versions that were used when the data was acquired."""
116
110
 
117
111
  def resolve_paths(self, root_directory_path: Path) -> None:
118
112
  """Resolves all paths managed by the class instance based on the input root directory path.
@@ -135,7 +129,6 @@ class RawData:
135
129
  self.session_descriptor_path = self.raw_data_path.joinpath("session_descriptor.yaml")
136
130
  self.hardware_state_path = self.raw_data_path.joinpath("hardware_state.yaml")
137
131
  self.surgery_metadata_path = self.raw_data_path.joinpath("surgery_metadata.yaml")
138
- self.project_configuration_path = self.raw_data_path.joinpath("project_configuration.yaml")
139
132
  self.session_data_path = self.raw_data_path.joinpath("session_data.yaml")
140
133
  self.experiment_configuration_path = self.raw_data_path.joinpath("experiment_configuration.yaml")
141
134
  self.mesoscope_positions_path = self.raw_data_path.joinpath("mesoscope_positions.yaml")
@@ -145,7 +138,6 @@ class RawData:
145
138
  self.telomere_path = self.raw_data_path.joinpath("telomere.bin")
146
139
  self.ubiquitin_path = self.raw_data_path.joinpath("ubiquitin.bin")
147
140
  self.integrity_verification_tracker_path = self.raw_data_path.joinpath("integrity_verification_tracker.yaml")
148
- self.version_data_path = self.raw_data_path.joinpath("version_data.yaml")
149
141
 
150
142
  def make_directories(self) -> None:
151
143
  """Ensures that all major subdirectories and the root directory exist, creating any missing directories."""
@@ -289,6 +281,8 @@ class SessionData(YamlConfig):
289
281
  session_type: str,
290
282
  experiment_name: str | None = None,
291
283
  session_name: str | None = None,
284
+ python_version: str = "3.11.13",
285
+ sl_experiment_version: str = "2.0.0",
292
286
  ) -> "SessionData":
293
287
  """Creates a new SessionData object and generates the new session's data structure on the local PC.
294
288
 
@@ -300,9 +294,9 @@ class SessionData(YamlConfig):
300
294
 
301
295
  This method automatically dumps the data of the created SessionData instance into the session_data.yaml file
302
296
  inside the root raw_data directory of the created hierarchy. It also finds and dumps other configuration
303
- files, such as project_configuration.yaml, experiment_configuration.yaml, and system_configuration.yaml into
304
- the same raw_data directory. This ensures that if the session's runtime is interrupted unexpectedly, the
305
- acquired data can still be processed.
297
+ files, such as experiment_configuration.yaml and system_configuration.yaml into the same raw_data directory.
298
+ This ensures that if the session's runtime is interrupted unexpectedly, the acquired data can still be
299
+ processed.
306
300
 
307
301
  Args:
308
302
  project_name: The name of the project for which the data is acquired.
@@ -315,6 +309,10 @@ class SessionData(YamlConfig):
315
309
  sessions. When provided, the method uses this name instead of generating a new timestamp-based name.
316
310
  This is only used during the 'ascension' runtime to convert old data structures to the modern
317
311
  lab standards.
312
+ python_version: The string that specifies the Python version used to collect raw session data. Has to be
313
+ specified using the major.minor.patch version format.
314
+ sl_experiment_version: The string that specifies the version of the sl-experiment library used to collect
315
+ raw session data. Has to be specified using the major.minor.patch version format.
318
316
 
319
317
  Returns:
320
318
  An initialized SessionData instance that stores the layout of the newly created session's data.
@@ -387,20 +385,16 @@ class SessionData(YamlConfig):
387
385
  raw_data=raw_data,
388
386
  processed_data=processed_data,
389
387
  experiment_name=experiment_name,
388
+ python_version=python_version,
389
+ sl_experiment_version=sl_experiment_version,
390
390
  )
391
391
 
392
392
  # Saves the configured instance data to the session's folder, so that it can be reused during processing or
393
393
  # preprocessing.
394
394
  instance._save()
395
395
 
396
- # Also saves the ProjectConfiguration, SystemConfiguration, and ExperimentConfiguration instances to the same
397
- # folder using the paths resolved for the RawData instance above.
398
-
399
- # Copies the project_configuration.yaml file to session's folder
400
- project_configuration_path = acquisition_system.paths.root_directory.joinpath(
401
- project_name, "configuration", "project_configuration.yaml"
402
- )
403
- sh.copy2(project_configuration_path, instance.raw_data.project_configuration_path)
396
+ # Also saves the SystemConfiguration and ExperimentConfiguration instances to the same folder using the paths
397
+ # resolved for the RawData instance above.
404
398
 
405
399
  # Dumps the acquisition system's configuration data to session's folder
406
400
  acquisition_system.save(path=instance.raw_data.system_configuration_path)
@@ -29,7 +29,6 @@ class RawData:
29
29
  session_descriptor_path: Path = ...
30
30
  hardware_state_path: Path = ...
31
31
  surgery_metadata_path: Path = ...
32
- project_configuration_path: Path = ...
33
32
  session_data_path: Path = ...
34
33
  experiment_configuration_path: Path = ...
35
34
  mesoscope_positions_path: Path = ...
@@ -39,7 +38,6 @@ class RawData:
39
38
  telomere_path: Path = ...
40
39
  ubiquitin_path: Path = ...
41
40
  integrity_verification_tracker_path: Path = ...
42
- version_data_path: Path = ...
43
41
  def resolve_paths(self, root_directory_path: Path) -> None:
44
42
  """Resolves all paths managed by the class instance based on the input root directory path.
45
43
 
@@ -127,6 +125,8 @@ class SessionData(YamlConfig):
127
125
  session_type: str,
128
126
  experiment_name: str | None = None,
129
127
  session_name: str | None = None,
128
+ python_version: str = "3.11.13",
129
+ sl_experiment_version: str = "2.0.0",
130
130
  ) -> SessionData:
131
131
  """Creates a new SessionData object and generates the new session's data structure on the local PC.
132
132
 
@@ -138,9 +138,9 @@ class SessionData(YamlConfig):
138
138
 
139
139
  This method automatically dumps the data of the created SessionData instance into the session_data.yaml file
140
140
  inside the root raw_data directory of the created hierarchy. It also finds and dumps other configuration
141
- files, such as project_configuration.yaml, experiment_configuration.yaml, and system_configuration.yaml into
142
- the same raw_data directory. This ensures that if the session's runtime is interrupted unexpectedly, the
143
- acquired data can still be processed.
141
+ files, such as experiment_configuration.yaml and system_configuration.yaml into the same raw_data directory.
142
+ This ensures that if the session's runtime is interrupted unexpectedly, the acquired data can still be
143
+ processed.
144
144
 
145
145
  Args:
146
146
  project_name: The name of the project for which the data is acquired.
@@ -153,6 +153,10 @@ class SessionData(YamlConfig):
153
153
  sessions. When provided, the method uses this name instead of generating a new timestamp-based name.
154
154
  This is only used during the 'ascension' runtime to convert old data structures to the modern
155
155
  lab standards.
156
+ python_version: The string that specifies the Python version used to collect raw session data. Has to be
157
+ specified using the major.minor.patch version format.
158
+ sl_experiment_version: The string that specifies the version of the sl-experiment library used to collect
159
+ raw session data. Has to be specified using the major.minor.patch version format.
156
160
 
157
161
  Returns:
158
162
  An initialized SessionData instance that stores the layout of the newly created session's data.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sl-shared-assets
3
- Version: 3.0.0rc5
3
+ Version: 3.0.0rc7
4
4
  Summary: Provides data acquisition and processing assets shared between Sun (NeuroAI) lab libraries.
5
5
  Project-URL: Homepage, https://github.com/Sun-Lab-NBB/sl-shared-assets
6
6
  Project-URL: Documentation, https://sl-shared-assets-api-docs.netlify.app/
@@ -9,8 +9,8 @@ sl_shared_assets/data_classes/configuration_data.py,sha256=CHoKs4wgg_qMNbvZHxfJJ
9
9
  sl_shared_assets/data_classes/configuration_data.pyi,sha256=SpVnTcAVmR7uDSECbmR4wDmNdTEtavRn8gjI9Lhi5dI,10721
10
10
  sl_shared_assets/data_classes/runtime_data.py,sha256=O98BZg7i7cEUlpIE16JswKOwQNRsS5RxVdBzXYvAw00,16543
11
11
  sl_shared_assets/data_classes/runtime_data.pyi,sha256=i8CuZd9p0Nu43xhpE62pB07AiovZIgtMZYN5wQjz-r0,6861
12
- sl_shared_assets/data_classes/session_data.py,sha256=Ethlbf1rF1KJ3fWe5DkMUEZatIPxPYlZYmFtA1MZ1hw,44408
13
- sl_shared_assets/data_classes/session_data.pyi,sha256=ku8wvXkkCUSvC1ZQpRmU6DxuNz253OfDCi8AAp4G_WY,13246
12
+ sl_shared_assets/data_classes/session_data.py,sha256=_PFRXxLKednN-UmFjc8N-TISDxZZ2WIxbpOF2FT1RHU,44003
13
+ sl_shared_assets/data_classes/session_data.pyi,sha256=LzjYYYbETtPoN7MwKzs5PfRLLkKJCLm7fHKyox7LNco,13630
14
14
  sl_shared_assets/data_classes/surgery_data.py,sha256=qsMj3NkjhylAT9b_wHBY-1XwTu2xsZcZatdECmkA7Bs,7437
15
15
  sl_shared_assets/data_classes/surgery_data.pyi,sha256=rf59lJ3tGSYKHQlEGXg75MnjajBwl0DYhL4TClAO4SM,2605
16
16
  sl_shared_assets/server/__init__.py,sha256=w7y73RXXjBrWQsjU5g1QNCv_gsXDYnHos3NpOoR2AHA,452
@@ -29,8 +29,8 @@ sl_shared_assets/tools/project_management_tools.py,sha256=Z_U0R26w9Le1O-u66gyF5C
29
29
  sl_shared_assets/tools/project_management_tools.pyi,sha256=4kok98nOZ4KnT-Sg-ZCZYg-WIM5qZqiyK8g1XiiDjHM,10375
30
30
  sl_shared_assets/tools/transfer_tools.py,sha256=J26kwOp_NpPSY0-xu5FTw9udte-rm_mW1FJyaTNoqQI,6606
31
31
  sl_shared_assets/tools/transfer_tools.pyi,sha256=FoH7eYZe7guGHfPr0MK5ggO62uXKwD2aJ7h1Bu7PaEE,3294
32
- sl_shared_assets-3.0.0rc5.dist-info/METADATA,sha256=STS00DFD8iiTx7LzSGoGziBUwLQfivCPY0rTXOEtGss,49309
33
- sl_shared_assets-3.0.0rc5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
34
- sl_shared_assets-3.0.0rc5.dist-info/entry_points.txt,sha256=UmO1rl7ly9N7HWPwWyP9E0b5KBUStpBo4TRoqNtizDY,430
35
- sl_shared_assets-3.0.0rc5.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
36
- sl_shared_assets-3.0.0rc5.dist-info/RECORD,,
32
+ sl_shared_assets-3.0.0rc7.dist-info/METADATA,sha256=kIqXKzZ1oXiPrqaJdfC8qauJlGo7w8akXCeENhur5aE,49309
33
+ sl_shared_assets-3.0.0rc7.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
34
+ sl_shared_assets-3.0.0rc7.dist-info/entry_points.txt,sha256=UmO1rl7ly9N7HWPwWyP9E0b5KBUStpBo4TRoqNtizDY,430
35
+ sl_shared_assets-3.0.0rc7.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
36
+ sl_shared_assets-3.0.0rc7.dist-info/RECORD,,