data-designer-engine 0.4.0rc2__py3-none-any.whl → 0.5.0rc1__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.
Files changed (28) hide show
  1. data_designer/engine/analysis/column_profilers/base.py +1 -2
  2. data_designer/engine/analysis/dataset_profiler.py +1 -2
  3. data_designer/engine/column_generators/generators/base.py +1 -6
  4. data_designer/engine/column_generators/generators/custom.py +195 -0
  5. data_designer/engine/column_generators/generators/llm_completion.py +34 -4
  6. data_designer/engine/column_generators/registry.py +3 -0
  7. data_designer/engine/column_generators/utils/errors.py +3 -0
  8. data_designer/engine/column_generators/utils/prompt_renderer.py +1 -1
  9. data_designer/engine/dataset_builders/column_wise_builder.py +47 -10
  10. data_designer/engine/dataset_builders/multi_column_configs.py +2 -2
  11. data_designer/engine/dataset_builders/utils/progress_tracker.py +122 -0
  12. data_designer/engine/mcp/__init__.py +30 -0
  13. data_designer/engine/mcp/errors.py +22 -0
  14. data_designer/engine/mcp/facade.py +485 -0
  15. data_designer/engine/mcp/factory.py +46 -0
  16. data_designer/engine/mcp/io.py +487 -0
  17. data_designer/engine/mcp/registry.py +203 -0
  18. data_designer/engine/model_provider.py +68 -0
  19. data_designer/engine/models/facade.py +92 -30
  20. data_designer/engine/models/factory.py +18 -1
  21. data_designer/engine/models/utils.py +111 -21
  22. data_designer/engine/resources/resource_provider.py +72 -3
  23. data_designer/engine/testing/fixtures.py +233 -0
  24. data_designer/engine/testing/stubs.py +1 -2
  25. {data_designer_engine-0.4.0rc2.dist-info → data_designer_engine-0.5.0rc1.dist-info}/METADATA +3 -2
  26. {data_designer_engine-0.4.0rc2.dist-info → data_designer_engine-0.5.0rc1.dist-info}/RECORD +27 -19
  27. data_designer/engine/_version.py +0 -34
  28. {data_designer_engine-0.4.0rc2.dist-info → data_designer_engine-0.5.0rc1.dist-info}/WHEEL +0 -0
@@ -0,0 +1,233 @@
1
+ # SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2
+ # SPDX-License-Identifier: Apache-2.0
3
+
4
+ """Pytest fixtures for engine testing.
5
+
6
+ Located in src/ so it can be packaged and shared across subpackages via pytest_plugins.
7
+ """
8
+
9
+ from __future__ import annotations
10
+
11
+ from typing import Any
12
+ from unittest.mock import MagicMock
13
+
14
+ import pytest
15
+
16
+ from data_designer.config.mcp import LocalStdioMCPProvider, MCPProvider, ToolConfig
17
+ from data_designer.engine.mcp.facade import MCPFacade
18
+ from data_designer.engine.model_provider import MCPProviderRegistry
19
+ from data_designer.engine.secret_resolver import SecretResolver
20
+ from data_designer.engine.testing.stubs import StubHuggingFaceSeedReader
21
+
22
+ # =============================================================================
23
+ # Fake LLM response classes (used by completion response fixtures)
24
+ # =============================================================================
25
+
26
+
27
+ class _FakeMessage:
28
+ """Fake message class for mocking LLM completion responses."""
29
+
30
+ def __init__(
31
+ self,
32
+ content: str | None,
33
+ tool_calls: list[dict] | None = None,
34
+ reasoning_content: str | None = None,
35
+ ) -> None:
36
+ self.content = content
37
+ self.tool_calls = tool_calls
38
+ self.reasoning_content = reasoning_content
39
+
40
+
41
+ class _FakeChoice:
42
+ """Fake choice class for mocking LLM completion responses."""
43
+
44
+ def __init__(self, message: _FakeMessage) -> None:
45
+ self.message = message
46
+
47
+
48
+ class _FakeResponse:
49
+ """Fake response class for mocking LLM completion responses."""
50
+
51
+ def __init__(self, message: _FakeMessage) -> None:
52
+ self.choices = [_FakeChoice(message)]
53
+
54
+
55
+ # =============================================================================
56
+ # Seed reader fixtures
57
+ # =============================================================================
58
+
59
+
60
+ @pytest.fixture
61
+ def stub_seed_reader() -> StubHuggingFaceSeedReader:
62
+ """Stub seed reader for testing seed dataset functionality."""
63
+ return StubHuggingFaceSeedReader()
64
+
65
+
66
+ # =============================================================================
67
+ # MCP Provider fixtures
68
+ # =============================================================================
69
+
70
+
71
+ @pytest.fixture
72
+ def stub_mcp_provider_registry() -> MCPProviderRegistry:
73
+ """Create a stub MCP provider registry with test providers."""
74
+ return MCPProviderRegistry(
75
+ providers=[
76
+ LocalStdioMCPProvider(name="tools", command="python"),
77
+ LocalStdioMCPProvider(name="secondary", command="python"),
78
+ ]
79
+ )
80
+
81
+
82
+ @pytest.fixture
83
+ def stub_mcp_provider_registry_single() -> MCPProviderRegistry:
84
+ """Create a stub MCP provider registry with a single provider."""
85
+ return MCPProviderRegistry(providers=[LocalStdioMCPProvider(name="tools", command="python")])
86
+
87
+
88
+ @pytest.fixture
89
+ def stub_secret_resolver() -> MagicMock:
90
+ """Create a stub secret resolver for testing."""
91
+ resolver = MagicMock(spec=SecretResolver)
92
+ resolver.resolve.side_effect = lambda x: x # Return the input as-is
93
+ return resolver
94
+
95
+
96
+ @pytest.fixture
97
+ def stub_stdio_provider() -> LocalStdioMCPProvider:
98
+ """Create a stub stdio MCP provider for testing."""
99
+ return LocalStdioMCPProvider(
100
+ name="test-stdio",
101
+ command="python",
102
+ args=["-m", "test_server"],
103
+ env={"TEST_VAR": "value"},
104
+ )
105
+
106
+
107
+ @pytest.fixture
108
+ def stub_sse_provider() -> MCPProvider:
109
+ """Create a stub SSE MCP provider for testing."""
110
+ return MCPProvider(
111
+ name="test-sse",
112
+ endpoint="http://localhost:8080/sse",
113
+ api_key="test-key",
114
+ )
115
+
116
+
117
+ # =============================================================================
118
+ # Tool config fixtures
119
+ # =============================================================================
120
+
121
+
122
+ @pytest.fixture
123
+ def stub_tool_config() -> ToolConfig:
124
+ """Create a basic tool configuration for testing."""
125
+ return ToolConfig(
126
+ tool_alias="test-tools",
127
+ providers=["tools"],
128
+ max_tool_call_turns=3,
129
+ timeout_sec=30.0,
130
+ )
131
+
132
+
133
+ @pytest.fixture
134
+ def stub_tool_config_with_allow_list() -> ToolConfig:
135
+ """Create a tool configuration with an allow list."""
136
+ return ToolConfig(
137
+ tool_alias="test-tools",
138
+ providers=["tools"],
139
+ allow_tools=["lookup", "search"],
140
+ max_tool_call_turns=3,
141
+ )
142
+
143
+
144
+ # =============================================================================
145
+ # Facade fixtures
146
+ # =============================================================================
147
+
148
+
149
+ @pytest.fixture
150
+ def stub_mcp_facade(
151
+ stub_tool_config: ToolConfig, stub_secret_resolver: MagicMock, stub_mcp_provider_registry: MCPProviderRegistry
152
+ ) -> MCPFacade:
153
+ """Create a stub MCPFacade for testing."""
154
+ return MCPFacade(
155
+ tool_config=stub_tool_config,
156
+ secret_resolver=stub_secret_resolver,
157
+ mcp_provider_registry=stub_mcp_provider_registry,
158
+ )
159
+
160
+
161
+ @pytest.fixture
162
+ def stub_mcp_facade_factory() -> Any:
163
+ """Create a stub MCP facade factory for testing."""
164
+
165
+ def factory(
166
+ tool_config: ToolConfig, secret_resolver: SecretResolver, provider_registry: MCPProviderRegistry
167
+ ) -> MCPFacade:
168
+ return MCPFacade(
169
+ tool_config=tool_config, secret_resolver=secret_resolver, mcp_provider_registry=provider_registry
170
+ )
171
+
172
+ return factory
173
+
174
+
175
+ # =============================================================================
176
+ # Completion response fixtures
177
+ # =============================================================================
178
+
179
+
180
+ @pytest.fixture
181
+ def mock_completion_response_no_tools() -> _FakeResponse:
182
+ """Mock LLM response with no tool calls."""
183
+ return _FakeResponse(_FakeMessage(content="Hello, I can help with that."))
184
+
185
+
186
+ @pytest.fixture
187
+ def mock_completion_response_single_tool() -> _FakeResponse:
188
+ """Mock LLM response with single tool call."""
189
+ tool_call = {
190
+ "id": "call-1",
191
+ "type": "function",
192
+ "function": {"name": "lookup", "arguments": '{"query": "test"}'},
193
+ }
194
+ return _FakeResponse(_FakeMessage(content="Let me look that up.", tool_calls=[tool_call]))
195
+
196
+
197
+ @pytest.fixture
198
+ def mock_completion_response_parallel_tools() -> _FakeResponse:
199
+ """Mock LLM response with multiple parallel tool calls."""
200
+ tool_calls = [
201
+ {"id": "call-1", "type": "function", "function": {"name": "lookup", "arguments": '{"query": "first"}'}},
202
+ {"id": "call-2", "type": "function", "function": {"name": "search", "arguments": '{"term": "second"}'}},
203
+ {"id": "call-3", "type": "function", "function": {"name": "fetch", "arguments": '{"url": "example.com"}'}},
204
+ ]
205
+ return _FakeResponse(_FakeMessage(content="Executing multiple tools.", tool_calls=tool_calls))
206
+
207
+
208
+ @pytest.fixture
209
+ def mock_completion_response_with_reasoning() -> _FakeResponse:
210
+ """Mock LLM response with reasoning_content."""
211
+ return _FakeResponse(
212
+ _FakeMessage(
213
+ content=" Final answer with extra spaces. ",
214
+ reasoning_content=" Thinking about the problem... ",
215
+ )
216
+ )
217
+
218
+
219
+ @pytest.fixture
220
+ def mock_completion_response_tool_with_reasoning() -> _FakeResponse:
221
+ """Mock LLM response with tool calls and reasoning_content."""
222
+ tool_call = {
223
+ "id": "call-1",
224
+ "type": "function",
225
+ "function": {"name": "lookup", "arguments": '{"query": "test"}'},
226
+ }
227
+ return _FakeResponse(
228
+ _FakeMessage(
229
+ content=" Looking it up... ",
230
+ tool_calls=[tool_call],
231
+ reasoning_content=" I should use the lookup tool. ",
232
+ )
233
+ )
@@ -5,8 +5,7 @@ from __future__ import annotations
5
5
 
6
6
  from typing import Literal
7
7
 
8
- from data_designer.config.base import ConfigBase
9
- from data_designer.config.column_configs import SingleColumnConfig
8
+ from data_designer.config.base import ConfigBase, SingleColumnConfig
10
9
  from data_designer.engine.column_generators.generators.base import ColumnGeneratorCellByCell
11
10
  from data_designer.engine.resources.seed_reader import SeedReader
12
11
  from data_designer.plugins.plugin import Plugin, PluginType
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: data-designer-engine
3
- Version: 0.4.0rc2
3
+ Version: 0.5.0rc1
4
4
  Summary: Generation engine for DataDesigner synthetic data generation
5
5
  License-Expression: Apache-2.0
6
6
  Classifier: Development Status :: 4 - Beta
@@ -14,7 +14,7 @@ Classifier: Programming Language :: Python :: 3.13
14
14
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
15
15
  Requires-Python: >=3.10
16
16
  Requires-Dist: anyascii<1,>=0.3.3
17
- Requires-Dist: data-designer-config
17
+ Requires-Dist: data-designer-config==0.5.0rc1
18
18
  Requires-Dist: duckdb<2,>=1.1.3
19
19
  Requires-Dist: faker<21,>=20.1.0
20
20
  Requires-Dist: httpx-retries<1,>=0.4.2
@@ -26,6 +26,7 @@ Requires-Dist: jsonschema<5,>=4.0.0
26
26
  Requires-Dist: litellm<1.80.12,>=1.73.6
27
27
  Requires-Dist: lxml<7,>=6.0.2
28
28
  Requires-Dist: marko<3,>=2.1.2
29
+ Requires-Dist: mcp<2,>=1.26.0
29
30
  Requires-Dist: networkx<4,>=3.0
30
31
  Requires-Dist: ruff<1,>=0.14.10
31
32
  Requires-Dist: scipy<2,>=1.11.0
@@ -1,52 +1,59 @@
1
1
  data_designer/engine/__init__.py,sha256=ObZ6NUPeEvvpGTJ5WIGKUyIrIjaI747OM6ErweRtHxQ,137
2
- data_designer/engine/_version.py,sha256=FvItxCBzPigrdVpFPfL1gQeV1-km5r7nCNGUzrYebTU,714
3
2
  data_designer/engine/compiler.py,sha256=4QAeCJjINtH0afSXygdhiKMyq2KIfaDthK3ApZLgrQ0,4152
4
3
  data_designer/engine/configurable_task.py,sha256=6R4FPXPzIeK0lqNVSEXzRDtK14B3dFz38lplr-nkvRE,2539
5
4
  data_designer/engine/errors.py,sha256=YXI7ny83BQ16sOK43CpTm384hJTKuZkPTEAjlHlDIfA,1303
6
- data_designer/engine/model_provider.py,sha256=_uU5Bw7yrGlMROjHL4dN1mMTg1eN-LVW5JWcQxovhAA,2823
5
+ data_designer/engine/model_provider.py,sha256=CkXUKeBTijJgq9yGp5M1sebJEJWLDBlJdA3le3M6j50,5005
7
6
  data_designer/engine/secret_resolver.py,sha256=srIAnwbTfsDfgzhWojGTR1u8Vx6SY4vSp0_hJU0_i9A,2468
8
7
  data_designer/engine/validation.py,sha256=q9wZqCcRAFoW8p1BtkblFQ3CWgeBHT5JTKVCoYlqZeA,14544
9
8
  data_designer/engine/analysis/column_statistics.py,sha256=UW14ooahDgeEdkurgj2d0L6DIX4qce1faWSss_2IR6M,5843
10
- data_designer/engine/analysis/dataset_profiler.py,sha256=DB-c4m4R39PXapY3CsUZvMGM_E-LByRMQMZBrDfIQY0,7323
9
+ data_designer/engine/analysis/dataset_profiler.py,sha256=ajlQEyhuLETvy8Hxaly1G3n-3X-ilMi9wok4X5goEjg,7276
11
10
  data_designer/engine/analysis/errors.py,sha256=QRmvkNjcMpQ5QDlM7YOSbR2key4d6dsiknk994Ewvv4,296
12
- data_designer/engine/analysis/column_profilers/base.py,sha256=jgUfoR0fQYG5JMo7KaJktNKao0YSQbgO-ge214popd8,1711
11
+ data_designer/engine/analysis/column_profilers/base.py,sha256=cjk5mvg3S02p-ovBR6AkWhMHonXujWc6ipNdHrODujs,1664
13
12
  data_designer/engine/analysis/column_profilers/judge_score_profiler.py,sha256=nSkdb7OumaOWFRq64Abiii43G9MgF3OeOvOH9XpdqFg,6572
14
13
  data_designer/engine/analysis/column_profilers/registry.py,sha256=yFEE3gwNUzPI8WMGKfNcObtJSs1b3a87GKrL_ksIqBs,923
15
14
  data_designer/engine/analysis/utils/column_statistics_calculations.py,sha256=ry0QxRqLFRn7N4OAn6z7TqSAPEGwxiiUEUtsG_bI-98,8958
16
15
  data_designer/engine/analysis/utils/judge_score_processing.py,sha256=QkFMHp0WFhxW3YwwmAnKoEFTULSCxnJ2DSkq8v9kiaE,4884
17
16
  data_designer/engine/column_generators/__init__.py,sha256=ObZ6NUPeEvvpGTJ5WIGKUyIrIjaI747OM6ErweRtHxQ,137
18
- data_designer/engine/column_generators/registry.py,sha256=c4WKk1XwXCasDd4sR0EJqM0Lb1T1UP87rI3LPgbNaUQ,3101
17
+ data_designer/engine/column_generators/registry.py,sha256=U8y09tQF54z-CFc-cOdr0s9QxDz1lPkLpfwP7b1SQEI,3312
19
18
  data_designer/engine/column_generators/generators/__init__.py,sha256=ObZ6NUPeEvvpGTJ5WIGKUyIrIjaI747OM6ErweRtHxQ,137
20
- data_designer/engine/column_generators/generators/base.py,sha256=QElk5KsaUQ3EYwlv40NcZgQsw3HIkX3YQV_0S3erl7Q,4209
19
+ data_designer/engine/column_generators/generators/base.py,sha256=s7yTTX6C_tHkghwGa8u3nY9WWF7TakNTZILeeQEwxnw,4149
20
+ data_designer/engine/column_generators/generators/custom.py,sha256=qzrUwR0tZvAvCMgJ26kfZly8UiBK-GSqJv9lryzbaNk,9237
21
21
  data_designer/engine/column_generators/generators/embedding.py,sha256=uB0jgHlCgctgIUf9ZfMqG1YThbJ0g-GCX3VdNbdDSko,1407
22
22
  data_designer/engine/column_generators/generators/expression.py,sha256=BiQcfVTinvQl3OI9nkdhB9B7FGBueWiHJwxTA8uNVuY,2330
23
- data_designer/engine/column_generators/generators/llm_completion.py,sha256=udYWE3lwaQhZqxRTHQc6w1kWGEvLAfIh2OUjX6vxMB0,4750
23
+ data_designer/engine/column_generators/generators/llm_completion.py,sha256=uIUdhfNil8vxoBSPDhJuvmVMMqrR3zCpTPGL-BXUyW0,6115
24
24
  data_designer/engine/column_generators/generators/samplers.py,sha256=gNzURmu9K8Zb5MHamKvZPIxmWlFgl2W4FIVgaFcy4f0,3371
25
25
  data_designer/engine/column_generators/generators/seed_dataset.py,sha256=CoQPbz4Ww7pBLaGw8-CYqIk1sjfkBaoRMKZQexdfgKY,6824
26
26
  data_designer/engine/column_generators/generators/validation.py,sha256=YfYbk-8_ZUye0No6_Q7hIqpZv_tunnEZ6HkLSMFXlDE,6659
27
- data_designer/engine/column_generators/utils/errors.py,sha256=NSAOupF13NU20qRN9_Is5AwiL_8l1IJur0TnuQEiJhw,406
27
+ data_designer/engine/column_generators/utils/errors.py,sha256=UGKQFqxF8vCUfUa2VectgmLRrIMUTdRRLWlevDyuj0Q,466
28
28
  data_designer/engine/column_generators/utils/generator_classification.py,sha256=XBA_vagEXKBQK54OHANKeHw6Mm2B4RuAmXu0QrRdEEo,1958
29
29
  data_designer/engine/column_generators/utils/judge_score_factory.py,sha256=gESiqMrQzbbcFpZas0sAAAkrH2DL0Z4Nq5ywBO-pQ6k,2141
30
- data_designer/engine/column_generators/utils/prompt_renderer.py,sha256=LATVAlDYwL7HyM7Nogd6n9XTTk-j9s64o4z0LpKHMhQ,4819
30
+ data_designer/engine/column_generators/utils/prompt_renderer.py,sha256=lvatLy5UqMmBEZbkJeSdqYR2d7QkHxlNfgbApjr88Dk,4809
31
31
  data_designer/engine/dataset_builders/artifact_storage.py,sha256=CKpTBtJTde7OQvsFZQa1v1autVz5yUxlBHkIKeATFnE,10999
32
- data_designer/engine/dataset_builders/column_wise_builder.py,sha256=9n_UYWOulUVvSnqJE9cW9f4ObF4Xa9wRxHiabJvJW8c,15723
32
+ data_designer/engine/dataset_builders/column_wise_builder.py,sha256=6pQTZ8yKuf0U65dVxla6Zj22FD0KY04RanUlI6pNs20,17431
33
33
  data_designer/engine/dataset_builders/errors.py,sha256=gLXtPcGSMBG10PzQ85dOXskdA0mKbBQrHa_VtP9sbVY,400
34
- data_designer/engine/dataset_builders/multi_column_configs.py,sha256=U4Pg0ETCBq5phRhb2zt8IFa4fRx-aTMakomKOBnrs0U,1660
34
+ data_designer/engine/dataset_builders/multi_column_configs.py,sha256=a5YaZn-epCk5_sEzp7UuqL3MtN0nGQVQmujqbiY6FSY,1660
35
35
  data_designer/engine/dataset_builders/utils/__init__.py,sha256=ObZ6NUPeEvvpGTJ5WIGKUyIrIjaI747OM6ErweRtHxQ,137
36
36
  data_designer/engine/dataset_builders/utils/concurrency.py,sha256=Lga_xd8i3ZAPqJlKCB4GHG7uxWxws1m-UGAz9UeqU_8,8283
37
37
  data_designer/engine/dataset_builders/utils/config_compiler.py,sha256=NGI6U0vgG88d5YKj7oW_SIJ4-_fhA6VFhPbjqGRHea4,2441
38
38
  data_designer/engine/dataset_builders/utils/dag.py,sha256=RIEI75OtiphkuDl1vfI_MQC1xMiiIg29s-0C_fNZkWQ,2613
39
39
  data_designer/engine/dataset_builders/utils/dataset_batch_manager.py,sha256=IfWd_HcfEzIPhgFp2dJaxNIKRlrPsHqYATFXauvCfaw,8133
40
40
  data_designer/engine/dataset_builders/utils/errors.py,sha256=G1MIkQDXguSqHK1EP-60FkG_bys7bJ1UgJnSvcNgtt8,411
41
+ data_designer/engine/dataset_builders/utils/progress_tracker.py,sha256=3zSljzDHwhqgP9IqPUR3XbwC231JvLNWslpmhqKIbUg,4255
42
+ data_designer/engine/mcp/__init__.py,sha256=nqUgeDqem73zQYxzdP3zrVGBbNuV8JjY3qzVvbun5JY,853
43
+ data_designer/engine/mcp/errors.py,sha256=V-9tCCWkP_mwXSjfoMZLpoaIuZAa_WSrfOvvd6Pa7jc,542
44
+ data_designer/engine/mcp/facade.py,sha256=kUh8u1vGwkuF-c8swT_-h8KXVmOBjc5lMu0L2dwXiYw,20744
45
+ data_designer/engine/mcp/factory.py,sha256=hA6l10vl6w6C-ZfotbOWYyAsMS7r2VvK1rTtHvpbutY,1714
46
+ data_designer/engine/mcp/io.py,sha256=Mm6etyjwsRkpemDi91kyf2ccz5AWNdrd1ASAStm3Rbw,19232
47
+ data_designer/engine/mcp/registry.py,sha256=ZQuKiufPQBySvRcoiH-0LsiEs_W05P4zf4byVOIGrBc,7807
41
48
  data_designer/engine/models/__init__.py,sha256=ObZ6NUPeEvvpGTJ5WIGKUyIrIjaI747OM6ErweRtHxQ,137
42
49
  data_designer/engine/models/errors.py,sha256=k9oZnmk8DRD8U2SVKJJRLwrcdsCcVoJiOb_Q7ZyEdvg,12271
43
- data_designer/engine/models/facade.py,sha256=UBMpw_o2JcsWpJsPdpTPKfFZCh_i0eeG_oaWi1XeKds,12582
44
- data_designer/engine/models/factory.py,sha256=2NjI0iiGv8ayQ1c249lsJtha4pDmvmtSjdwvlvitRds,1581
50
+ data_designer/engine/models/facade.py,sha256=slTZvCDD3Av5-OwYA7EdTorKxQnO682ubII0IpgyqFo,15341
51
+ data_designer/engine/models/factory.py,sha256=LEYP2omzAv0taZ9o4BzEbCXvGMA0DCiupcREX6wmk_8,2243
45
52
  data_designer/engine/models/litellm_overrides.py,sha256=e9IZCFQ6BhNWlOTncm8ErL8w4rtE1_4USh2mtUYxCZI,6207
46
53
  data_designer/engine/models/registry.py,sha256=Bid7Mv_ebzbTrlfzN-1wbcFxp_qQwilL0h2iwN5UPJ0,7099
47
54
  data_designer/engine/models/telemetry.py,sha256=_VZR6Iatr6-5Hypw3bes5Jr4y7Y3VagxFEVAv36eHcE,12733
48
55
  data_designer/engine/models/usage.py,sha256=A0LV9Ycuj_7snOsaqnirs4mlkAjozv2mzj2om2FpDoU,2410
49
- data_designer/engine/models/utils.py,sha256=sLBs-STJSe7BGzDAngRGGxo6GwAvFmtimqUs54zZ6DU,1259
56
+ data_designer/engine/models/utils.py,sha256=FVQ0AAVj8Qt9DjzqGJEjCTLWQg3l5H_JbiJXj0g3iV0,4627
50
57
  data_designer/engine/models/parsers/__init__.py,sha256=ObZ6NUPeEvvpGTJ5WIGKUyIrIjaI747OM6ErweRtHxQ,137
51
58
  data_designer/engine/models/parsers/errors.py,sha256=ODcZ4TOsmZyH4-MoNkKXhjiMm_4gLWPsz90qKtNF9_Q,1053
52
59
  data_designer/engine/models/parsers/parser.py,sha256=XkdDt2WEnolvsv2bArq4hhujfJ3kLmG6G2jkRXMYA8c,9489
@@ -76,7 +83,7 @@ data_designer/engine/registry/errors.py,sha256=k1EaV7egNQwNmRsI8EfymTfeNprcDutPf
76
83
  data_designer/engine/resources/managed_dataset_generator.py,sha256=2wGc-tH5usXAPXgDkXzslLsCkAsAQgYa3uIYJC5_Oa0,1495
77
84
  data_designer/engine/resources/managed_dataset_repository.py,sha256=lx8NTtAPxheZdqkgilYSmqZv4Nd_CeHXXUaXHzGLLVk,7684
78
85
  data_designer/engine/resources/managed_storage.py,sha256=8tLJjKGvDbuHnsESL2VZVu9vfEH3--OLZaiZe-LZo_8,2120
79
- data_designer/engine/resources/resource_provider.py,sha256=1D-a4g1s5r_ECZE5-mR4TwFLxWPH8GLcaBZnd-j51E8,3047
86
+ data_designer/engine/resources/resource_provider.py,sha256=-SxgMx7a0bwnNJg3EUWQpesJ6tmzALkRkSXiKtyXTWc,5732
80
87
  data_designer/engine/resources/seed_reader.py,sha256=GQiOqf9t-yRag2g5Io3-kQPhpyKJbXgHn2YTUoAgftI,5717
81
88
  data_designer/engine/sampling_gen/column.py,sha256=0aQzeJtcM0DNEaarG1ybXV4LLJH0iiOaXvi46Ay4qOE,3987
82
89
  data_designer/engine/sampling_gen/constraints.py,sha256=AvFoyZ1QU--R9kGyIaPHClm3mG_ZoPuOE3IQQqYUPqw,3157
@@ -100,7 +107,8 @@ data_designer/engine/sampling_gen/entities/person.py,sha256=9S-xAj6_8ZaFX4G_I7CM
100
107
  data_designer/engine/sampling_gen/entities/phone_number.py,sha256=dGY5LRwCz19RBH0mJDTpnBb0a98piDSNgkQRemgwqV0,4818
101
108
  data_designer/engine/sampling_gen/entities/assets/zip_area_code_map.parquet,sha256=L6G4laXExB7uRCWHlF4XGDk0yMh41jbDnp9LIy7jNHM,576064
102
109
  data_designer/engine/testing/__init__.py,sha256=ICYoOcewhvzZmuaF4A8fn-LDaaOBGhBQf-RQ9QyNdhs,396
103
- data_designer/engine/testing/stubs.py,sha256=_fmsaqIVY3BLlXHZg3oJ-yqhM61bPWcjgXE5SQSZrvU,3917
110
+ data_designer/engine/testing/fixtures.py,sha256=8SD3sZV_Kl3gN7VvQgdd-VXj3d1UvIMEFYqrmmkexV4,7574
111
+ data_designer/engine/testing/stubs.py,sha256=qDyHNAGQj0KUfxfFJzShs5_7tkFKI9VzvEfWAttmZlE,3870
104
112
  data_designer/engine/testing/utils.py,sha256=a9LEgK827cnIzHEkgXOdgywrKDLBE36cyttrpG1ctT4,973
105
113
  data_designer/engine/validators/__init__.py,sha256=uT0CTJF9Ce97zoAdMSWvfYn7mO5ja0lIgyPRKJLcsOU,693
106
114
  data_designer/engine/validators/base.py,sha256=XfDDMMP0PusoKAjM9rXdIYkyWlLiQPAJChMgtkcdspw,1005
@@ -108,6 +116,6 @@ data_designer/engine/validators/local_callable.py,sha256=JaL-yOXrTFpubiO2QlSt4Qb
108
116
  data_designer/engine/validators/python.py,sha256=omXjwMaomQYiyq4g6XqKt2wexVuI_rWue9Dk-CYc-do,8039
109
117
  data_designer/engine/validators/remote.py,sha256=rythhIrH2GvqncMQeF3FiJa9Om0KZWeK3cWjW-ZubaM,3077
110
118
  data_designer/engine/validators/sql.py,sha256=AMaEdA-gj9j0zwVp809x3ycKltd51wVEhI8mMYGyxd4,2408
111
- data_designer_engine-0.4.0rc2.dist-info/METADATA,sha256=ZChyQl5ksGCWVi_XE6wD-GXG9-wWHko1vBDnd9ecLqw,1876
112
- data_designer_engine-0.4.0rc2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
113
- data_designer_engine-0.4.0rc2.dist-info/RECORD,,
119
+ data_designer_engine-0.5.0rc1.dist-info/METADATA,sha256=6hK0RVqcTc01Q8xJ8X_j4PGuFJt0lH6OovrfdMExqVI,1916
120
+ data_designer_engine-0.5.0rc1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
121
+ data_designer_engine-0.5.0rc1.dist-info/RECORD,,
@@ -1,34 +0,0 @@
1
- # file generated by setuptools-scm
2
- # don't change, don't track in version control
3
-
4
- __all__ = [
5
- "__version__",
6
- "__version_tuple__",
7
- "version",
8
- "version_tuple",
9
- "__commit_id__",
10
- "commit_id",
11
- ]
12
-
13
- TYPE_CHECKING = False
14
- if TYPE_CHECKING:
15
- from typing import Tuple
16
- from typing import Union
17
-
18
- VERSION_TUPLE = Tuple[Union[int, str], ...]
19
- COMMIT_ID = Union[str, None]
20
- else:
21
- VERSION_TUPLE = object
22
- COMMIT_ID = object
23
-
24
- version: str
25
- __version__: str
26
- __version_tuple__: VERSION_TUPLE
27
- version_tuple: VERSION_TUPLE
28
- commit_id: COMMIT_ID
29
- __commit_id__: COMMIT_ID
30
-
31
- __version__ = version = '0.4.0rc2'
32
- __version_tuple__ = version_tuple = (0, 4, 0, 'rc2')
33
-
34
- __commit_id__ = commit_id = None