code-loader 1.0.76__tar.gz → 1.0.77.1__tar.gz

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.
Files changed (31) hide show
  1. {code_loader-1.0.76 → code_loader-1.0.77.1}/PKG-INFO +1 -1
  2. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/contract/datasetclasses.py +9 -1
  3. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/leaploader.py +1 -1
  4. {code_loader-1.0.76 → code_loader-1.0.77.1}/pyproject.toml +1 -1
  5. {code_loader-1.0.76 → code_loader-1.0.77.1}/LICENSE +0 -0
  6. {code_loader-1.0.76 → code_loader-1.0.77.1}/README.md +0 -0
  7. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/__init__.py +0 -0
  8. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/contract/__init__.py +0 -0
  9. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/contract/enums.py +0 -0
  10. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/contract/exceptions.py +0 -0
  11. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/contract/responsedataclasses.py +0 -0
  12. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/contract/visualizer_classes.py +0 -0
  13. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/default_losses.py +0 -0
  14. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/default_metrics.py +0 -0
  15. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/__init__.py +0 -0
  16. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/api.py +0 -0
  17. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/cli_config_utils.py +0 -0
  18. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/client.py +0 -0
  19. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/epoch.py +0 -0
  20. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/experiment.py +0 -0
  21. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/experiment_context.py +0 -0
  22. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/types.py +0 -0
  23. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/utils.py +0 -0
  24. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
  25. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/inner_leap_binder/__init__.py +0 -0
  26. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/inner_leap_binder/leapbinder.py +0 -0
  27. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/inner_leap_binder/leapbinder_decorators.py +0 -0
  28. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/leaploaderbase.py +0 -0
  29. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/utils.py +0 -0
  30. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/visualizers/__init__.py +0 -0
  31. {code_loader-1.0.76 → code_loader-1.0.77.1}/code_loader/visualizers/default_visualizers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: code-loader
3
- Version: 1.0.76
3
+ Version: 1.0.77.1
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  from dataclasses import dataclass, field
2
2
  from typing import Any, Callable, List, Optional, Dict, Union, Type
3
-
3
+ import re
4
4
  import numpy as np
5
5
  import numpy.typing as npt
6
6
 
@@ -39,6 +39,9 @@ class PreprocessResponse:
39
39
  sample_id_type: Optional[Union[Type[str], Type[int]]] = None
40
40
 
41
41
  def __post_init__(self) -> None:
42
+ def is_valid_string(s: str) -> bool:
43
+ return bool(re.match(r'^[A-Za-z0-9_]+$', s))
44
+
42
45
  if self.length is not None and self.sample_ids is None:
43
46
  self.sample_ids = [i for i in range(self.length)]
44
47
  self.sample_id_type = int
@@ -46,6 +49,11 @@ class PreprocessResponse:
46
49
  self.length = len(self.sample_ids)
47
50
  if self.sample_id_type is None:
48
51
  self.sample_id_type = str
52
+ if self.sample_id_type == str:
53
+ for sample_id in self.sample_ids:
54
+ assert isinstance(sample_id, str), f"Sample id should be of type str. Got: {type(sample_id)}"
55
+ if not is_valid_string(sample_id):
56
+ raise Exception(f"Sample id should contain only letters (A-Z, a-z), numbers or '_'. Got: {sample_id}")
49
57
  else:
50
58
  raise Exception("length is deprecated.")
51
59
 
@@ -46,7 +46,7 @@ class LeapLoader(LeapLoaderBase):
46
46
 
47
47
  def evaluate_module(self) -> None:
48
48
  def append_path_recursively(full_path: str) -> None:
49
- if '/' not in full_path or full_path == '/':
49
+ if self.code_path not in full_path or full_path == '/':
50
50
  return
51
51
 
52
52
  parent_path = str(Path(full_path).parent)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "code-loader"
3
- version = "1.0.76"
3
+ version = "1.0.77.1"
4
4
  description = ""
5
5
  authors = ["dorhar <doron.harnoy@tensorleap.ai>"]
6
6
  license = "MIT"
File without changes
File without changes