nebu 0.1.111__py3-none-any.whl → 0.1.113__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.
- nebu/processors/processor.py +17 -0
- {nebu-0.1.111.dist-info → nebu-0.1.113.dist-info}/METADATA +1 -1
- {nebu-0.1.111.dist-info → nebu-0.1.113.dist-info}/RECORD +6 -6
- {nebu-0.1.111.dist-info → nebu-0.1.113.dist-info}/WHEEL +0 -0
- {nebu-0.1.111.dist-info → nebu-0.1.113.dist-info}/licenses/LICENSE +0 -0
- {nebu-0.1.111.dist-info → nebu-0.1.113.dist-info}/top_level.txt +0 -0
nebu/processors/processor.py
CHANGED
@@ -135,22 +135,30 @@ class Processor(Generic[InputType, OutputType]):
|
|
135
135
|
# Attempt to infer OutputType if schema_ is not provided
|
136
136
|
if self.schema_ is None and hasattr(self, "__orig_class__"):
|
137
137
|
type_args = get_args(self.__orig_class__) # type: ignore
|
138
|
+
print(">>> type_args: ", type_args)
|
138
139
|
if len(type_args) == 2:
|
139
140
|
output_type_candidate = type_args[1]
|
141
|
+
print(">>> output_type_candidate: ", output_type_candidate)
|
140
142
|
# Check if it looks like a Pydantic model class
|
141
143
|
if isinstance(output_type_candidate, type) and issubclass(
|
142
144
|
output_type_candidate, BaseModel
|
143
145
|
):
|
146
|
+
print(">>> output_type_candidate is a Pydantic model class")
|
144
147
|
logger.debug(
|
145
148
|
f"Inferred OutputType {output_type_candidate.__name__} from generic arguments."
|
146
149
|
)
|
147
150
|
self.schema_ = output_type_candidate
|
148
151
|
else:
|
152
|
+
print(">>> output_type_candidate is not a Pydantic model class")
|
149
153
|
logger.debug(
|
150
154
|
f"Second generic argument {output_type_candidate} is not a Pydantic BaseModel. "
|
151
155
|
"Cannot infer OutputType."
|
152
156
|
)
|
153
157
|
else:
|
158
|
+
print(
|
159
|
+
"Could not infer OutputType from generic arguments: wrong number of type args found "
|
160
|
+
f"(expected 2, got {len(type_args) if type_args else 0})."
|
161
|
+
)
|
154
162
|
logger.debug(
|
155
163
|
"Could not infer OutputType from generic arguments: wrong number of type args found "
|
156
164
|
f"(expected 2, got {len(type_args) if type_args else 0})."
|
@@ -330,6 +338,11 @@ class Processor(Generic[InputType, OutputType]):
|
|
330
338
|
logger.info(f"Log fetching is already running for {processor_name}.")
|
331
339
|
|
332
340
|
# Attempt to parse into OutputType if conditions are met
|
341
|
+
print(f">>> wait: {wait}")
|
342
|
+
print(f">>> self.schema_: {self.schema_}")
|
343
|
+
print(">>> type(self.schema_): ", type(self.schema_))
|
344
|
+
print(f">>> isinstance(self.schema_, type): {isinstance(self.schema_, type)}")
|
345
|
+
print(f">>> isinstance(raw_content, dict): {isinstance(raw_content, dict)}")
|
333
346
|
if (
|
334
347
|
wait
|
335
348
|
and self.schema_
|
@@ -337,16 +350,20 @@ class Processor(Generic[InputType, OutputType]):
|
|
337
350
|
and issubclass(self.schema_, BaseModel) # type: ignore
|
338
351
|
and isinstance(raw_content, dict)
|
339
352
|
): # Check if raw_content is a dict
|
353
|
+
print(f">>> raw_content: {raw_content}")
|
340
354
|
try:
|
341
355
|
# self.schema_ is assumed to be the Pydantic model class for OutputType
|
342
356
|
# Parse raw_content instead of the full response
|
343
357
|
parsed_model = self.schema_.model_validate(raw_content)
|
358
|
+
print(f">>> parsed_model: {parsed_model}")
|
344
359
|
# Cast to OutputType to satisfy the linter with generics
|
345
360
|
parsed_output: OutputType = cast(OutputType, parsed_model)
|
361
|
+
print(f">>> parsed_output: {parsed_output}")
|
346
362
|
return parsed_output
|
347
363
|
except (
|
348
364
|
Exception
|
349
365
|
) as e: # Consider pydantic.ValidationError for more specific handling
|
366
|
+
print(f">>> error: {e}")
|
350
367
|
schema_name = getattr(self.schema_, "__name__", str(self.schema_))
|
351
368
|
logger.error(
|
352
369
|
f"Processor {processor_name}: Failed to parse 'content' field into output type {schema_name}. "
|
@@ -18,11 +18,11 @@ nebu/processors/consumer_process_worker.py,sha256=h--eNFKaLbUayxn88mB8oGGdrU2liE
|
|
18
18
|
nebu/processors/decorate.py,sha256=aT6TT8QOOpl8HKo8kYdwmX6785_l9kSfoyUSPp4tkuY,58726
|
19
19
|
nebu/processors/default.py,sha256=cy4ETMdbdRGkrvbYec1o60h7mGDlGN5JsuUph0ENtDU,364
|
20
20
|
nebu/processors/models.py,sha256=g4B1t6Rgoy-NUEHBLeQc0EENzHXLDlWSio8Muv7cTDU,4093
|
21
|
-
nebu/processors/processor.py,sha256=
|
21
|
+
nebu/processors/processor.py,sha256=pYxFx2ZzoaeTsXqvimVywzK7x5_lCSDqMRQMNtDhAPA,23006
|
22
22
|
nebu/redis/models.py,sha256=coPovAcVXnOU1Xh_fpJL4PO3QctgK9nBe5QYoqEcnxg,1230
|
23
23
|
nebu/services/service.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
24
|
-
nebu-0.1.
|
25
|
-
nebu-0.1.
|
26
|
-
nebu-0.1.
|
27
|
-
nebu-0.1.
|
28
|
-
nebu-0.1.
|
24
|
+
nebu-0.1.113.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
25
|
+
nebu-0.1.113.dist-info/METADATA,sha256=9snz2J4nG4boO5fIiUYiwVMERXY-lM6Sb5Qnwp1w4Uc,1798
|
26
|
+
nebu-0.1.113.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
|
27
|
+
nebu-0.1.113.dist-info/top_level.txt,sha256=uLIbEKJeGSHWOAJN5S0i5XBGwybALlF9bYoB1UhdEgQ,5
|
28
|
+
nebu-0.1.113.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|