fred-oss 0.58.0__tar.gz → 0.60.0__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 (124) hide show
  1. {fred_oss-0.58.0/src/main/fred_oss.egg-info → fred_oss-0.60.0}/PKG-INFO +1 -1
  2. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/comp/_keyval.py +11 -3
  3. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/service.py +4 -3
  4. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/server.py +9 -0
  5. fred_oss-0.60.0/src/main/fred/version +1 -0
  6. {fred_oss-0.58.0 → fred_oss-0.60.0/src/main/fred_oss.egg-info}/PKG-INFO +1 -1
  7. fred_oss-0.58.0/src/main/fred/version +0 -1
  8. {fred_oss-0.58.0 → fred_oss-0.60.0}/MANIFEST.in +0 -0
  9. {fred_oss-0.58.0 → fred_oss-0.60.0}/NOTICE.txt +0 -0
  10. {fred_oss-0.58.0 → fred_oss-0.60.0}/README.md +0 -0
  11. {fred_oss-0.58.0 → fred_oss-0.60.0}/requirements.txt +0 -0
  12. {fred_oss-0.58.0 → fred_oss-0.60.0}/setup.cfg +0 -0
  13. {fred_oss-0.58.0 → fred_oss-0.60.0}/setup.py +0 -0
  14. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/cli/__init__.py +0 -0
  15. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/cli/__main__.py +0 -0
  16. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/cli/interface.py +0 -0
  17. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/cli/main.py +0 -0
  18. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/__init__.py +0 -0
  19. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/comp/__init__.py +0 -0
  20. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/comp/_pubsub.py +0 -0
  21. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/comp/_queue.py +0 -0
  22. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/comp/catalog.py +0 -0
  23. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/comp/interface.py +0 -0
  24. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/__init__.py +0 -0
  25. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/__init__.py +0 -0
  26. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/policy/__init__.py +0 -0
  27. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/policy/builder.py +0 -0
  28. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/policy/catalog.py +0 -0
  29. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/policy/loader.py +0 -0
  30. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/policy/templates/public_ro.json +0 -0
  31. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/policy/templates/public_rw.json +0 -0
  32. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_minio/pool.py +0 -0
  33. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_redis.py +0 -0
  34. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/_stdlib.py +0 -0
  35. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/catalog.py +0 -0
  36. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/interface.py +0 -0
  37. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/dao/service/utils.py +0 -0
  38. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/__init__.py +0 -0
  39. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/callback/__init__.py +0 -0
  40. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/callback/_function.py +0 -0
  41. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/callback/catalog.py +0 -0
  42. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/callback/interface.py +0 -0
  43. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/impl.py +0 -0
  44. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/result.py +0 -0
  45. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/settings.py +0 -0
  46. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/future/utils.py +0 -0
  47. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/__init__.py +0 -0
  48. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/cli_ext.py +0 -0
  49. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/runtime.py +0 -0
  50. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/runtimes/16.4LTS.json +0 -0
  51. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/runtimes/__init__.py +0 -0
  52. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/runtimes/scanner.py +0 -0
  53. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/runtimes/sync.py +0 -0
  54. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/wrappers/__init__.py +0 -0
  55. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/databricks/wrappers/dbutils.py +0 -0
  56. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/runpod/__init__.py +0 -0
  57. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/runpod/cli_ext.py +0 -0
  58. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/integrations/runpod/helper.py +0 -0
  59. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/maturity.py +0 -0
  60. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/monad/__init__.py +0 -0
  61. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/monad/_either.py +0 -0
  62. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/monad/catalog.py +0 -0
  63. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/monad/interface.py +0 -0
  64. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/__init__.py +0 -0
  65. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/auth.py +0 -0
  66. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/config.py +0 -0
  67. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/__init__.py +0 -0
  68. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/catalog/__init__.py +0 -0
  69. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/catalog/default/__init__.py +0 -0
  70. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/catalog/default/_base.py +0 -0
  71. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/catalog/default/_example.py +0 -0
  72. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/catalog/default/catalog.py +0 -0
  73. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/catalog/interface.py +0 -0
  74. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/config.py +0 -0
  75. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/endpoint.py +0 -0
  76. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/router/interface.py +0 -0
  77. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/rest/settings.py +0 -0
  78. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/settings.py +0 -0
  79. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/__init__.py +0 -0
  80. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/dateops.py +0 -0
  81. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/imops.py +0 -0
  82. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/imout/__init__.py +0 -0
  83. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/imout/_filesystem.py +0 -0
  84. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/imout/_minio.py +0 -0
  85. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/imout/_string.py +0 -0
  86. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/imout/catalog.py +0 -0
  87. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/imout/interface.py +0 -0
  88. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/mlops/__init__.py +0 -0
  89. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/mlops/auto.py +0 -0
  90. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/utils/runtime.py +0 -0
  91. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/version.py +0 -0
  92. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/__init__.py +0 -0
  93. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/interface.py +0 -0
  94. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/__init__.py +0 -0
  95. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/backend.py +0 -0
  96. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/client.py +0 -0
  97. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/handler.py +0 -0
  98. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/model/__init__.py +0 -0
  99. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/model/_handler.py +0 -0
  100. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/model/_item.py +0 -0
  101. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/model/_request.py +0 -0
  102. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/model/_runner_spec.py +0 -0
  103. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/model/catalog.py +0 -0
  104. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/model/interface.py +0 -0
  105. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/plugins/__init__.py +0 -0
  106. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/plugins/_local.py +0 -0
  107. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/plugins/_runpod.py +0 -0
  108. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/plugins/catalog.py +0 -0
  109. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/plugins/interface.py +0 -0
  110. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/rest/__init__.py +0 -0
  111. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/rest/router/__init__.py +0 -0
  112. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/rest/router/_base.py +0 -0
  113. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/rest/router/_runner.py +0 -0
  114. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/rest/router/catalog.py +0 -0
  115. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/settings.py +0 -0
  116. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/signal.py +0 -0
  117. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/status.py +0 -0
  118. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/runner/utils.py +0 -0
  119. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred/worker/settings.py +0 -0
  120. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred_oss.egg-info/SOURCES.txt +0 -0
  121. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred_oss.egg-info/dependency_links.txt +0 -0
  122. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred_oss.egg-info/entry_points.txt +0 -0
  123. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred_oss.egg-info/requires.txt +0 -0
  124. {fred_oss-0.58.0 → fred_oss-0.60.0}/src/main/fred_oss.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fred-oss
3
- Version: 0.58.0
3
+ Version: 0.60.0
4
4
  Summary: FREDOSS
5
5
  Home-page: https://fred.fahera.mx
6
6
  Author: Fahera Research, Education, and Development
@@ -61,7 +61,7 @@ class FredKeyVal(ComponentInterface):
61
61
  return (
62
62
  key
63
63
  for key in cls._srv.client._memstore_keyval.keys()
64
- if fnmatch.fnmatch(key, pattern=pattern)
64
+ if fnmatch.fnmatch(key, pat=pattern)
65
65
  )
66
66
  case ServiceCatalog.MINIO:
67
67
  import fnmatch
@@ -73,13 +73,19 @@ class FredKeyVal(ComponentInterface):
73
73
  )
74
74
  if not bucket_name:
75
75
  raise ValueError("Missing bucket info to list keys in MinIO service.")
76
+ obj_list_extras = {
77
+ "prefix": kwargs.pop("prefix", ""),
78
+ "shallow": kwargs.pop("shallow", False),
79
+ }
76
80
  return (
77
81
  key
78
- for obj in cls._srv.objects(bucket_name, **kwargs)
79
- if fnmatch.fnmatch((key := obj.object_name), pattern=pattern)
82
+ for key in cls._srv.objects(bucket_name, **obj_list_extras)
83
+ if fnmatch.fnmatch(key, pat=pattern)
80
84
  )
81
85
  case _:
82
86
  raise NotImplementedError(f"Keys method not implemented for service {cls._nme}")
87
+ if kwargs:
88
+ logger.warning(f"Additional kwargs ignored: {kwargs}")
83
89
 
84
90
  def set(self, value: str, key: Optional[str] = None, **kwargs) -> None:
85
91
  """Sets a key-value pair in the store.
@@ -135,6 +141,8 @@ class FredKeyVal(ComponentInterface):
135
141
  )
136
142
  case _:
137
143
  raise NotImplementedError(f"Set method not implemented for service {self._nme}")
144
+ if kwargs:
145
+ logger.warning(f"Additional kwargs ignored: {kwargs}")
138
146
 
139
147
  def get(self, key: Optional[str] = None, fail: bool = False, **kwargs) -> Optional[str]:
140
148
  """Gets the value associated with a key from the store.
@@ -1,4 +1,5 @@
1
1
  import datetime as dt
2
+ from typing import Iterator
2
3
 
3
4
  from minio import Minio
4
5
 
@@ -40,12 +41,12 @@ class MinioService(ServiceInterface[Minio]):
40
41
  for bucket in self.client.list_buckets()
41
42
  ]
42
43
 
43
- def objects(self, bucket_name: str, prefix: str = "", shallow: bool = False) -> list[str]:
44
+ def objects(self, bucket_name: str, prefix: str = "", shallow: bool = False) -> Iterator[str]:
44
45
  """List all objects in a specific bucket in the MinIO instance."""
45
- return [
46
+ return (
46
47
  obj.object_name
47
48
  for obj in self.client.list_objects(bucket_name, prefix=prefix, recursive=not shallow)
48
- ]
49
+ )
49
50
 
50
51
  def bucket_exists(self, bucket_name: str) -> bool:
51
52
  """Check if a bucket exists in the MinIO instance."""
@@ -2,6 +2,7 @@ from dataclasses import dataclass
2
2
  from typing import Optional
3
3
 
4
4
  from fastapi import FastAPI, Depends
5
+ from fastapi.middleware.cors import CORSMiddleware
5
6
 
6
7
  from fred.settings import (
7
8
  get_environ_variable,
@@ -58,6 +59,14 @@ class FredServer:
58
59
  kwargs["dependencies"] = kwargs.get("dependencies", []) + auth_dependency
59
60
  # Create FastAPI app instance
60
61
  app_instance = FastAPI(**kwargs)
62
+ app_instance.add_middleware(
63
+ CORSMiddleware,
64
+ allow_origins=["*"], # TODO: Parameterize via env.variables
65
+ allow_credentials=True,
66
+ allow_methods=["*"],
67
+ allow_headers=["*"],
68
+ )
69
+
61
70
  router_classname = kwargs.pop("router_classname", None)
62
71
  router_classpath = kwargs.pop("router_classpath", None)
63
72
  return cls(
@@ -0,0 +1 @@
1
+ 0.60.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fred-oss
3
- Version: 0.58.0
3
+ Version: 0.60.0
4
4
  Summary: FREDOSS
5
5
  Home-page: https://fred.fahera.mx
6
6
  Author: Fahera Research, Education, and Development
@@ -1 +0,0 @@
1
- 0.58.0
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes