nebu 0.1.45__tar.gz → 0.1.48__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 (36) hide show
  1. {nebu-0.1.45/src/nebu.egg-info → nebu-0.1.48}/PKG-INFO +1 -1
  2. {nebu-0.1.45 → nebu-0.1.48}/pyproject.toml +1 -1
  3. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/__init__.py +0 -1
  4. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/data.py +24 -3
  5. nebu-0.1.48/src/nebu/processors/consumer.py +791 -0
  6. nebu-0.1.48/src/nebu/processors/decorate.py +979 -0
  7. nebu-0.1.48/src/nebu/services/service.py +0 -0
  8. {nebu-0.1.45 → nebu-0.1.48/src/nebu.egg-info}/PKG-INFO +1 -1
  9. {nebu-0.1.45 → nebu-0.1.48}/src/nebu.egg-info/SOURCES.txt +1 -3
  10. nebu-0.1.45/src/nebu/adapter.py +0 -20
  11. nebu-0.1.45/src/nebu/chatx/convert.py +0 -362
  12. nebu-0.1.45/src/nebu/chatx/openai.py +0 -976
  13. nebu-0.1.45/src/nebu/processors/consumer.py +0 -599
  14. nebu-0.1.45/src/nebu/processors/decorate.py +0 -949
  15. {nebu-0.1.45 → nebu-0.1.48}/LICENSE +0 -0
  16. {nebu-0.1.45 → nebu-0.1.48}/README.md +0 -0
  17. {nebu-0.1.45 → nebu-0.1.48}/setup.cfg +0 -0
  18. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/auth.py +0 -0
  19. /nebu-0.1.45/src/nebu/builders/models.py → /nebu-0.1.48/src/nebu/builders/builder.py +0 -0
  20. /nebu-0.1.45/src/nebu/services/service.py → /nebu-0.1.48/src/nebu/builders/models.py +0 -0
  21. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/cache.py +0 -0
  22. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/config.py +0 -0
  23. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/containers/container.py +0 -0
  24. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/containers/decorator.py +0 -0
  25. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/containers/models.py +0 -0
  26. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/containers/server.py +0 -0
  27. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/meta.py +0 -0
  28. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/processors/default.py +0 -0
  29. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/processors/models.py +0 -0
  30. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/processors/processor.py +0 -0
  31. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/processors/remote.py +0 -0
  32. {nebu-0.1.45 → nebu-0.1.48}/src/nebu/redis/models.py +0 -0
  33. {nebu-0.1.45 → nebu-0.1.48}/src/nebu.egg-info/dependency_links.txt +0 -0
  34. {nebu-0.1.45 → nebu-0.1.48}/src/nebu.egg-info/requires.txt +0 -0
  35. {nebu-0.1.45 → nebu-0.1.48}/src/nebu.egg-info/top_level.txt +0 -0
  36. {nebu-0.1.45 → nebu-0.1.48}/tests/test_containers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nebu
3
- Version: 0.1.45
3
+ Version: 0.1.48
4
4
  Summary: A globally distributed container runtime
5
5
  Requires-Python: >=3.10.14
6
6
  Description-Content-Type: text/markdown
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "nebu"
3
- version = "0.1.45"
3
+ version = "0.1.48"
4
4
  description = "A globally distributed container runtime"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10.14"
@@ -3,7 +3,6 @@
3
3
  # ruff: noqa: F401
4
4
  # ruff: noqa: F403
5
5
 
6
- from .adapter import *
7
6
  from .auth import is_allowed
8
7
  from .cache import Cache, OwnedValue
9
8
  from .chatx.convert import *
@@ -116,14 +116,35 @@ def _parse_s3_path(path: str) -> Tuple[Optional[str], Optional[str]]:
116
116
  class Bucket:
117
117
  """Handles interactions with AWS S3."""
118
118
 
119
- def __init__(self, verbose: bool = True):
119
+ def __init__(
120
+ self,
121
+ verbose: bool = True,
122
+ aws_access_key_id: Optional[str] = None,
123
+ aws_secret_access_key: Optional[str] = None,
124
+ aws_session_token: Optional[str] = None,
125
+ ):
120
126
  """
121
- Initializes the S3 handler.
127
+ Initializes the S3 handler. Can use default credentials or provided temporary ones.
122
128
 
123
129
  Args:
124
130
  verbose (bool): If True, prints status messages. Defaults to True.
131
+ aws_access_key_id (Optional[str]): Temporary AWS Access Key ID.
132
+ aws_secret_access_key (Optional[str]): Temporary AWS Secret Access Key.
133
+ aws_session_token (Optional[str]): Temporary AWS Session Token (required if keys are temporary).
125
134
  """
126
- self.client = boto3.client("s3")
135
+ if aws_access_key_id and aws_secret_access_key:
136
+ if verbose:
137
+ print("Initializing S3 client with provided temporary credentials.")
138
+ self.client = boto3.client(
139
+ "s3",
140
+ aws_access_key_id=aws_access_key_id,
141
+ aws_secret_access_key=aws_secret_access_key,
142
+ aws_session_token=aws_session_token, # Pass session token if provided
143
+ )
144
+ else:
145
+ if verbose:
146
+ print("Initializing S3 client with default credentials.")
147
+ self.client = boto3.client("s3")
127
148
  self.verbose = verbose
128
149
 
129
150
  def _parse_path(self, path: str) -> Tuple[Optional[str], Optional[str]]: