cloudquery-plugin-sdk 0.1.23__tar.gz → 0.1.25__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 (58) hide show
  1. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/PKG-INFO +8 -8
  2. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/memdb/memdb.py +14 -0
  3. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/servers/plugin_v3/plugin.py +7 -1
  4. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery_plugin_sdk.egg-info/PKG-INFO +8 -8
  5. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery_plugin_sdk.egg-info/requires.txt +7 -7
  6. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/setup.py +8 -8
  7. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/README.md +0 -0
  8. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/__init__.py +0 -0
  9. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/__init__.py +0 -0
  10. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/memdb/__init__.py +0 -0
  11. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/servers/__init__.py +0 -0
  12. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/servers/discovery_v1/__init__.py +0 -0
  13. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/servers/discovery_v1/discovery.py +0 -0
  14. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/internal/servers/plugin_v3/__init__.py +0 -0
  15. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/message/__init__.py +0 -0
  16. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/message/sync.py +0 -0
  17. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/message/write.py +0 -0
  18. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/plugin/__init__.py +0 -0
  19. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/plugin/plugin.py +0 -0
  20. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/py.typed +0 -0
  21. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/__init__.py +0 -0
  22. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/binary.py +0 -0
  23. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/bool.py +0 -0
  24. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/date32.py +0 -0
  25. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/date64.py +0 -0
  26. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/float.py +0 -0
  27. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/int.py +0 -0
  28. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/json.py +0 -0
  29. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/list.py +0 -0
  30. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/scalar.py +0 -0
  31. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/scalar_factory.py +0 -0
  32. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/string.py +0 -0
  33. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/timestamp.py +0 -0
  34. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/uint.py +0 -0
  35. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/uuid.py +0 -0
  36. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scalar/vector.py +0 -0
  37. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scheduler/__init__.py +0 -0
  38. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scheduler/scheduler.py +0 -0
  39. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/scheduler/table_resolver.py +0 -0
  40. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/schema/__init__.py +0 -0
  41. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/schema/arrow.py +0 -0
  42. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/schema/column.py +0 -0
  43. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/schema/resource.py +0 -0
  44. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/schema/table.py +0 -0
  45. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/serve/__init__.py +0 -0
  46. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/serve/plugin.py +0 -0
  47. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/transformers/__init__.py +0 -0
  48. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/transformers/openapi.py +0 -0
  49. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/transformers/transformers.py +0 -0
  50. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/types/__init__.py +0 -0
  51. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/types/json.py +0 -0
  52. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery/sdk/types/uuid.py +0 -0
  53. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery_plugin_sdk.egg-info/SOURCES.txt +0 -0
  54. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery_plugin_sdk.egg-info/dependency_links.txt +0 -0
  55. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery_plugin_sdk.egg-info/namespace_packages.txt +0 -0
  56. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery_plugin_sdk.egg-info/not-zip-safe +0 -0
  57. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/cloudquery_plugin_sdk.egg-info/top_level.txt +0 -0
  58. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.25}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudquery-plugin-sdk
3
- Version: 0.1.23
3
+ Version: 0.1.25
4
4
  Summary: CloudQuery Plugin SDK for Python
5
5
  Home-page: https://github.com/cloudquery/plugin-sdk-python
6
6
  Author: CloudQuery LTD
@@ -19,22 +19,22 @@ Classifier: Programming Language :: Python :: 3.11
19
19
  Classifier: Operating System :: OS Independent
20
20
  Classifier: Topic :: Internet
21
21
  Requires-Python: >=3.7
22
- Requires-Dist: cloudquery-plugin-pb==0.0.27
22
+ Requires-Dist: cloudquery-plugin-pb==0.0.28
23
23
  Requires-Dist: exceptiongroup==1.2.1
24
24
  Requires-Dist: black==24.4.2
25
- Requires-Dist: grpcio==1.63.0
26
- Requires-Dist: grpcio-tools==1.63.0
25
+ Requires-Dist: grpcio==1.64.0
26
+ Requires-Dist: grpcio-tools==1.64.0
27
27
  Requires-Dist: iniconfig==2.0.0
28
- Requires-Dist: Jinja2==3.1.3
28
+ Requires-Dist: Jinja2==3.1.4
29
29
  Requires-Dist: MarkupSafe==2.1.5
30
30
  Requires-Dist: numpy==1.26.4
31
31
  Requires-Dist: packaging==24.0
32
32
  Requires-Dist: pandas==2.2.2
33
33
  Requires-Dist: pluggy==1.5.0
34
- Requires-Dist: protobuf==5.26.1
34
+ Requires-Dist: protobuf==5.27.0
35
35
  Requires-Dist: pyarrow==15.0.2
36
- Requires-Dist: pytest==8.2.0
37
- Requires-Dist: python-dateutil==2.8.2
36
+ Requires-Dist: pytest==8.2.1
37
+ Requires-Dist: python-dateutil==2.9.0.post0
38
38
  Requires-Dist: pytz==2024.1
39
39
  Requires-Dist: six==1.16.0
40
40
  Requires-Dist: structlog==23.3.0
@@ -1,14 +1,22 @@
1
+ import json
2
+
1
3
  from cloudquery.sdk import plugin
2
4
  from cloudquery.sdk import message
3
5
  from cloudquery.sdk import schema
4
6
  from typing import List, Generator, Dict
5
7
  import pyarrow as pa
6
8
  from cloudquery.sdk.types import JSONType
9
+ from dataclasses import dataclass, field
7
10
 
8
11
  NAME = "memdb"
9
12
  VERSION = "development"
10
13
 
11
14
 
15
+ @dataclass
16
+ class Spec:
17
+ abc: str = field(default="abc")
18
+
19
+
12
20
  class MemDB(plugin.Plugin):
13
21
  def __init__(self) -> None:
14
22
  super().__init__(
@@ -73,6 +81,12 @@ class MemDB(plugin.Plugin):
73
81
  ),
74
82
  }
75
83
 
84
+ def init(self, spec, no_connection: bool = False):
85
+ if no_connection:
86
+ return
87
+ self._spec_json = json.loads(spec)
88
+ self._spec = Spec(**self._spec_json)
89
+
76
90
  def get_tables(self, options: plugin.TableOptions = None) -> List[plugin.Table]:
77
91
  tables = list(self._tables.values())
78
92
  return schema.filter_dfs(tables, options.tables, options.skip_tables)
@@ -32,7 +32,9 @@ class PluginServicer(plugin_pb2_grpc.PluginServicer):
32
32
  return plugin_pb2.GetSpecSchema.Response(json_schema=self._plugin.json_schema())
33
33
 
34
34
  def Init(self, request: plugin_pb2.Init.Request, context):
35
- self._plugin.init(request.spec, no_connection=request.no_connection)
35
+ self._plugin.init(
36
+ sanitize_spec(request.spec), no_connection=request.no_connection
37
+ )
36
38
  return plugin_pb2.Init.Response()
37
39
 
38
40
  def GetTables(self, request: plugin_pb2.GetTables.Request, context):
@@ -113,3 +115,7 @@ class PluginServicer(plugin_pb2_grpc.PluginServicer):
113
115
  def Close(self, request, context):
114
116
  self._plugin.close()
115
117
  return plugin_pb2.Close.Response()
118
+
119
+
120
+ def sanitize_spec(spec=None):
121
+ return b"{}" if spec is None or spec == b"" or spec == b"null" else spec
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudquery-plugin-sdk
3
- Version: 0.1.23
3
+ Version: 0.1.25
4
4
  Summary: CloudQuery Plugin SDK for Python
5
5
  Home-page: https://github.com/cloudquery/plugin-sdk-python
6
6
  Author: CloudQuery LTD
@@ -19,22 +19,22 @@ Classifier: Programming Language :: Python :: 3.11
19
19
  Classifier: Operating System :: OS Independent
20
20
  Classifier: Topic :: Internet
21
21
  Requires-Python: >=3.7
22
- Requires-Dist: cloudquery-plugin-pb==0.0.27
22
+ Requires-Dist: cloudquery-plugin-pb==0.0.28
23
23
  Requires-Dist: exceptiongroup==1.2.1
24
24
  Requires-Dist: black==24.4.2
25
- Requires-Dist: grpcio==1.63.0
26
- Requires-Dist: grpcio-tools==1.63.0
25
+ Requires-Dist: grpcio==1.64.0
26
+ Requires-Dist: grpcio-tools==1.64.0
27
27
  Requires-Dist: iniconfig==2.0.0
28
- Requires-Dist: Jinja2==3.1.3
28
+ Requires-Dist: Jinja2==3.1.4
29
29
  Requires-Dist: MarkupSafe==2.1.5
30
30
  Requires-Dist: numpy==1.26.4
31
31
  Requires-Dist: packaging==24.0
32
32
  Requires-Dist: pandas==2.2.2
33
33
  Requires-Dist: pluggy==1.5.0
34
- Requires-Dist: protobuf==5.26.1
34
+ Requires-Dist: protobuf==5.27.0
35
35
  Requires-Dist: pyarrow==15.0.2
36
- Requires-Dist: pytest==8.2.0
37
- Requires-Dist: python-dateutil==2.8.2
36
+ Requires-Dist: pytest==8.2.1
37
+ Requires-Dist: python-dateutil==2.9.0.post0
38
38
  Requires-Dist: pytz==2024.1
39
39
  Requires-Dist: six==1.16.0
40
40
  Requires-Dist: structlog==23.3.0
@@ -1,19 +1,19 @@
1
- cloudquery-plugin-pb==0.0.27
1
+ cloudquery-plugin-pb==0.0.28
2
2
  exceptiongroup==1.2.1
3
3
  black==24.4.2
4
- grpcio==1.63.0
5
- grpcio-tools==1.63.0
4
+ grpcio==1.64.0
5
+ grpcio-tools==1.64.0
6
6
  iniconfig==2.0.0
7
- Jinja2==3.1.3
7
+ Jinja2==3.1.4
8
8
  MarkupSafe==2.1.5
9
9
  numpy==1.26.4
10
10
  packaging==24.0
11
11
  pandas==2.2.2
12
12
  pluggy==1.5.0
13
- protobuf==5.26.1
13
+ protobuf==5.27.0
14
14
  pyarrow==15.0.2
15
- pytest==8.2.0
16
- python-dateutil==2.8.2
15
+ pytest==8.2.1
16
+ python-dateutil==2.9.0.post0
17
17
  pytz==2024.1
18
18
  six==1.16.0
19
19
  structlog==23.3.0
@@ -10,22 +10,22 @@ name = "cloudquery-plugin-sdk"
10
10
  description = "CloudQuery Plugin SDK for Python"
11
11
 
12
12
  dependencies = [
13
- "cloudquery-plugin-pb==0.0.27",
13
+ "cloudquery-plugin-pb==0.0.28",
14
14
  "exceptiongroup==1.2.1",
15
15
  "black==24.4.2",
16
- "grpcio==1.63.0",
17
- "grpcio-tools==1.63.0",
16
+ "grpcio==1.64.0",
17
+ "grpcio-tools==1.64.0",
18
18
  "iniconfig==2.0.0",
19
- "Jinja2==3.1.3",
19
+ "Jinja2==3.1.4",
20
20
  "MarkupSafe==2.1.5",
21
21
  "numpy==1.26.4",
22
22
  "packaging==24.0",
23
23
  "pandas==2.2.2",
24
24
  "pluggy==1.5.0",
25
- "protobuf==5.26.1",
25
+ "protobuf==5.27.0",
26
26
  "pyarrow==15.0.2",
27
- "pytest==8.2.0",
28
- "python-dateutil==2.8.2",
27
+ "pytest==8.2.1",
28
+ "python-dateutil==2.9.0.post0",
29
29
  "pytz==2024.1",
30
30
  "six==1.16.0",
31
31
  "structlog==23.3.0",
@@ -51,7 +51,7 @@ packages = [
51
51
  ]
52
52
  setuptools.setup(
53
53
  name=name,
54
- version="0.1.23",
54
+ version="0.1.25",
55
55
  description=description,
56
56
  long_description=long_description,
57
57
  author="CloudQuery LTD",