unstructured-platform-plugins 0.0.6__tar.gz → 0.0.7__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 (42) hide show
  1. {unstructured-platform-plugins-0.0.6/unstructured_platform_plugins.egg-info → unstructured-platform-plugins-0.0.7}/PKG-INFO +1 -1
  2. unstructured-platform-plugins-0.0.7/unstructured_platform_plugins/__version__.py +1 -0
  3. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/etl_uvicorn/api_generator.py +33 -24
  4. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7/unstructured_platform_plugins.egg-info}/PKG-INFO +1 -1
  5. unstructured-platform-plugins-0.0.6/unstructured_platform_plugins/__version__.py +0 -1
  6. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/LICENSE +0 -0
  7. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/LICENSE.md +0 -0
  8. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/README.md +0 -0
  9. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/pyproject.toml +0 -0
  10. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/setup.cfg +0 -0
  11. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/setup.py +0 -0
  12. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/__init__.py +0 -0
  13. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/__init__.py +0 -0
  14. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/async_typed_dict_response.py +0 -0
  15. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/dataclass_response.py +0 -0
  16. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/empty_input_and_response.py +0 -0
  17. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/hash_function.py +0 -0
  18. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/improper_function.py +0 -0
  19. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/pydantic_response_class_method.py +0 -0
  20. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/simple_hash_class.py +0 -0
  21. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/simple_hash_lambda.py +0 -0
  22. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/simple_hash_value.py +0 -0
  23. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/assets/typed_dict_response.py +0 -0
  24. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/test_schema.py +0 -0
  25. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/test/test_utils.py +0 -0
  26. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/__init__.py +0 -0
  27. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/etl_uvicorn/__init__.py +0 -0
  28. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/etl_uvicorn/main.py +0 -0
  29. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/etl_uvicorn/otel.py +0 -0
  30. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/etl_uvicorn/utils.py +0 -0
  31. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/schema/__init__.py +0 -0
  32. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/schema/json_schema.py +0 -0
  33. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/schema/model.py +0 -0
  34. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/schema/usage.py +0 -0
  35. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/schema/utils.py +0 -0
  36. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/type_hints.py +0 -0
  37. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins/validate_api.py +0 -0
  38. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins.egg-info/SOURCES.txt +0 -0
  39. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins.egg-info/dependency_links.txt +0 -0
  40. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins.egg-info/entry_points.txt +0 -0
  41. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins.egg-info/requires.txt +3 -3
  42. {unstructured-platform-plugins-0.0.6 → unstructured-platform-plugins-0.0.7}/unstructured_platform_plugins.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: unstructured-platform-plugins
3
- Version: 0.0.6
3
+ Version: 0.0.7
4
4
  Summary: A utility library that provides tools around unstructured plugin development
5
5
  Home-page: https://github.com/Unstructured-IO/unstructured-platform-plugins
6
6
  License: Apache-2.0
@@ -0,0 +1 @@
1
+ __version__ = "0.0.7" # pragma: no cover
@@ -67,30 +67,11 @@ def check_precheck_func(precheck_func: Callable):
67
67
  raise ValueError(f"no output should exist for precheck function, found: {outputs}")
68
68
 
69
69
 
70
- def generate_fast_api(
71
- app: str,
72
- method_name: Optional[str] = None,
73
- id_str: Optional[str] = None,
74
- id_method: Optional[str] = None,
75
- precheck_str: Optional[str] = None,
76
- precheck_method: Optional[str] = None,
77
- ) -> FastAPI:
78
- instance = import_from_string(app)
79
- func = get_func(instance, method_name)
80
- if id_str:
81
- id_ref = import_from_string(id_str)
82
- plugin_id = get_plugin_id(instance=id_ref, method_name=id_method)
83
- else:
84
- plugin_id = hashlib.sha256(
85
- json.dumps(get_schema_dict(func), sort_keys=True).encode()
86
- ).hexdigest()[:32]
87
-
88
- precheck_func = None
89
- if precheck_str:
90
- precheck_instance = import_from_string(precheck_str)
91
- precheck_func = get_func(precheck_instance, precheck_method)
92
- elif precheck_method:
93
- precheck_func = get_func(instance, precheck_method)
70
+ def wrap_in_fastapi(
71
+ func: Callable,
72
+ plugin_id: str,
73
+ precheck_func: Optional[Callable] = None,
74
+ ):
94
75
  if precheck_func is not None:
95
76
  check_precheck_func(precheck_func=precheck_func)
96
77
 
@@ -210,3 +191,31 @@ def generate_fast_api(
210
191
  )
211
192
 
212
193
  return fastapi_app
194
+
195
+
196
+ def generate_fast_api(
197
+ app: str,
198
+ method_name: Optional[str] = None,
199
+ id_str: Optional[str] = None,
200
+ id_method: Optional[str] = None,
201
+ precheck_str: Optional[str] = None,
202
+ precheck_method: Optional[str] = None,
203
+ ) -> FastAPI:
204
+ instance = import_from_string(app)
205
+ func = get_func(instance, method_name)
206
+ if id_str:
207
+ id_ref = import_from_string(id_str)
208
+ plugin_id = get_plugin_id(instance=id_ref, method_name=id_method)
209
+ else:
210
+ plugin_id = hashlib.sha256(
211
+ json.dumps(get_schema_dict(func), sort_keys=True).encode()
212
+ ).hexdigest()[:32]
213
+
214
+ precheck_func = None
215
+ if precheck_str:
216
+ precheck_instance = import_from_string(precheck_str)
217
+ precheck_func = get_func(precheck_instance, precheck_method)
218
+ elif precheck_method:
219
+ precheck_func = get_func(instance, precheck_method)
220
+
221
+ return wrap_in_fastapi(func=func, plugin_id=plugin_id, precheck_func=precheck_func)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: unstructured-platform-plugins
3
- Version: 0.0.6
3
+ Version: 0.0.7
4
4
  Summary: A utility library that provides tools around unstructured plugin development
5
5
  Home-page: https://github.com/Unstructured-IO/unstructured-platform-plugins
6
6
  License: Apache-2.0
@@ -1 +0,0 @@
1
- __version__ = "0.0.6" # pragma: no cover
@@ -1,8 +1,8 @@
1
+ click
1
2
  unstructured-ingest
3
+ fastapi
4
+ uvicorn
2
5
  opentelemetry-instrumentation-fastapi
3
6
  opentelemetry-exporter-otlp-proto-grpc
4
7
  click
5
- uvicorn
6
- fastapi
7
- click
8
8
  requests