tinybird 0.0.1.dev124__py3-none-any.whl → 0.0.1.dev125__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.
Potentially problematic release.
This version of tinybird might be problematic. Click here for more details.
- tinybird/tb/__cli__.py +2 -2
- tinybird/tb/modules/build.py +32 -7
- tinybird/tb/modules/create.py +7 -5
- tinybird/tb/modules/datafile/fixture.py +11 -2
- tinybird/tb/modules/datasource.py +1 -1
- tinybird/tb/modules/mock.py +19 -9
- tinybird/tb/modules/watch.py +5 -2
- {tinybird-0.0.1.dev124.dist-info → tinybird-0.0.1.dev125.dist-info}/METADATA +1 -1
- {tinybird-0.0.1.dev124.dist-info → tinybird-0.0.1.dev125.dist-info}/RECORD +12 -12
- {tinybird-0.0.1.dev124.dist-info → tinybird-0.0.1.dev125.dist-info}/WHEEL +0 -0
- {tinybird-0.0.1.dev124.dist-info → tinybird-0.0.1.dev125.dist-info}/entry_points.txt +0 -0
- {tinybird-0.0.1.dev124.dist-info → tinybird-0.0.1.dev125.dist-info}/top_level.txt +0 -0
tinybird/tb/__cli__.py
CHANGED
|
@@ -4,5 +4,5 @@ __description__ = 'Tinybird Command Line Tool'
|
|
|
4
4
|
__url__ = 'https://www.tinybird.co/docs/cli/introduction.html'
|
|
5
5
|
__author__ = 'Tinybird'
|
|
6
6
|
__author_email__ = 'support@tinybird.co'
|
|
7
|
-
__version__ = '0.0.1.
|
|
8
|
-
__revision__ = '
|
|
7
|
+
__version__ = '0.0.1.dev125'
|
|
8
|
+
__revision__ = '57c6bd7'
|
tinybird/tb/modules/build.py
CHANGED
|
@@ -20,7 +20,7 @@ from tinybird.tb.modules.common import push_data
|
|
|
20
20
|
from tinybird.tb.modules.config import CLIConfig
|
|
21
21
|
from tinybird.tb.modules.datafile.build import folder_build
|
|
22
22
|
from tinybird.tb.modules.datafile.exceptions import ParseException
|
|
23
|
-
from tinybird.tb.modules.datafile.fixture import get_fixture_dir, persist_fixture
|
|
23
|
+
from tinybird.tb.modules.datafile.fixture import FixtureExtension, get_fixture_dir, persist_fixture
|
|
24
24
|
from tinybird.tb.modules.datafile.parse_datasource import parse_datasource
|
|
25
25
|
from tinybird.tb.modules.datafile.parse_pipe import parse_pipe
|
|
26
26
|
from tinybird.tb.modules.datafile.playground import folder_playground
|
|
@@ -145,8 +145,21 @@ def build_project(project: Project, tb_client: TinyB, file_changed: Optional[str
|
|
|
145
145
|
ds_path = Path(filename)
|
|
146
146
|
ds_name = ds_path.stem
|
|
147
147
|
fixture_folder = get_fixture_dir(project.folder)
|
|
148
|
-
|
|
149
|
-
|
|
148
|
+
fixture_extensions = [FixtureExtension.NDJSON, FixtureExtension.CSV]
|
|
149
|
+
fixture_path = next(
|
|
150
|
+
(
|
|
151
|
+
fixture_folder / f"{ds_name}{ext}"
|
|
152
|
+
for ext in fixture_extensions
|
|
153
|
+
if (fixture_folder / f"{ds_name}{ext}").exists()
|
|
154
|
+
),
|
|
155
|
+
None,
|
|
156
|
+
)
|
|
157
|
+
if not fixture_path:
|
|
158
|
+
sql_path = fixture_folder / f"{ds_name}.sql"
|
|
159
|
+
if sql_path.exists():
|
|
160
|
+
fixture_path = rebuild_fixture_sql(project, tb_client, str(sql_path))
|
|
161
|
+
|
|
162
|
+
if fixture_path:
|
|
150
163
|
append_fixture(tb_client, ds_name, str(fixture_path))
|
|
151
164
|
|
|
152
165
|
except Exception as e:
|
|
@@ -252,7 +265,7 @@ def process(
|
|
|
252
265
|
) -> None:
|
|
253
266
|
time_start = time.time()
|
|
254
267
|
build_failed = False
|
|
255
|
-
if file_changed and file_changed.endswith(
|
|
268
|
+
if file_changed and (file_changed.endswith(FixtureExtension.NDJSON) or file_changed.endswith(FixtureExtension.CSV)):
|
|
256
269
|
rebuild_fixture(project, tb_client, file_changed)
|
|
257
270
|
elif file_changed and file_changed.endswith(".sql"):
|
|
258
271
|
rebuild_fixture_sql(project, tb_client, file_changed)
|
|
@@ -295,13 +308,25 @@ def run_watch(
|
|
|
295
308
|
shell.run()
|
|
296
309
|
|
|
297
310
|
|
|
298
|
-
def rebuild_fixture_sql(project: Project, tb_client: TinyB, sql_file: str) ->
|
|
311
|
+
def rebuild_fixture_sql(project: Project, tb_client: TinyB, sql_file: str) -> Path:
|
|
299
312
|
sql_path = Path(sql_file)
|
|
300
313
|
datasource_name = sql_path.stem
|
|
314
|
+
valid_extensions = [FixtureExtension.NDJSON, FixtureExtension.CSV]
|
|
315
|
+
fixtures_path = get_fixture_dir(project.folder)
|
|
316
|
+
current_fixture_path = next(
|
|
317
|
+
(
|
|
318
|
+
fixtures_path / f"{datasource_name}{extension}"
|
|
319
|
+
for extension in valid_extensions
|
|
320
|
+
if (fixtures_path / f"{datasource_name}{extension}").exists()
|
|
321
|
+
),
|
|
322
|
+
None,
|
|
323
|
+
)
|
|
324
|
+
fixture_format = current_fixture_path.suffix.lstrip(".") if current_fixture_path else "ndjson"
|
|
301
325
|
sql = sql_path.read_text()
|
|
302
|
-
|
|
326
|
+
sql_format = "CSV" if fixture_format == "csv" else "JSON"
|
|
327
|
+
result = asyncio.run(tb_client.query(f"{sql} FORMAT {sql_format}"))
|
|
303
328
|
data = result.get("data", [])
|
|
304
|
-
persist_fixture(datasource_name, data, project.folder)
|
|
329
|
+
return persist_fixture(datasource_name, data, project.folder, format=fixture_format)
|
|
305
330
|
|
|
306
331
|
|
|
307
332
|
def is_vendor(f: Path) -> bool:
|
tinybird/tb/modules/create.py
CHANGED
|
@@ -134,10 +134,12 @@ async def create(
|
|
|
134
134
|
|
|
135
135
|
if data:
|
|
136
136
|
ds_name = os.path.basename(data.split(".")[0])
|
|
137
|
-
|
|
137
|
+
data_path = Path(data)
|
|
138
|
+
data_content = data_path.read_text()
|
|
139
|
+
data_format = data_path.suffix.lstrip(".")
|
|
138
140
|
datasource_path = Path(folder) / "datasources" / f"{ds_name}.datasource"
|
|
139
141
|
click.echo(FeedbackManager.info(message=f"✓ /fixtures/{ds_name}"))
|
|
140
|
-
persist_fixture(ds_name, data_content, folder)
|
|
142
|
+
persist_fixture(ds_name, data_content, folder, format=data_format)
|
|
141
143
|
created_something = True
|
|
142
144
|
elif prompt and user_token:
|
|
143
145
|
datasource_files = [f for f in os.listdir(Path(folder) / "datasources") if f.endswith(".datasource")]
|
|
@@ -155,7 +157,7 @@ async def create(
|
|
|
155
157
|
query_result = await local_client.query(f"{sql} FORMAT JSON")
|
|
156
158
|
data = query_result.get("data", [])
|
|
157
159
|
if data:
|
|
158
|
-
persist_fixture(datasource_name, data, folder)
|
|
160
|
+
persist_fixture(datasource_name, data, folder, format="ndjson")
|
|
159
161
|
click.echo(FeedbackManager.info(message=f"✓ /fixtures/{datasource_name}"))
|
|
160
162
|
created_something = True
|
|
161
163
|
|
|
@@ -222,7 +224,7 @@ async def create_resources(
|
|
|
222
224
|
path = folder_path / data
|
|
223
225
|
format = path.suffix.lstrip(".")
|
|
224
226
|
await _generate_datafile(str(path), local_client, format=format, force=True)
|
|
225
|
-
name =
|
|
227
|
+
name = path.stem
|
|
226
228
|
generate_pipe_file(
|
|
227
229
|
f"{name}_endpoint",
|
|
228
230
|
f"""
|
|
@@ -355,7 +357,7 @@ def generate_pipe_file(name: str, content: str, folder: str) -> Path:
|
|
|
355
357
|
|
|
356
358
|
base = Path(folder) / pathname
|
|
357
359
|
if not base.exists():
|
|
358
|
-
base
|
|
360
|
+
base.mkdir()
|
|
359
361
|
f = base / (f"{name}.pipe")
|
|
360
362
|
with open(f"{f}", "w") as file:
|
|
361
363
|
file.write(content)
|
|
@@ -17,10 +17,14 @@ def persist_fixture_sql(fixture_name: str, sql: str, folder: str) -> Path:
|
|
|
17
17
|
return fixture_file
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
def persist_fixture(fixture_name: str, data: Union[List[Dict[str, Any]], str], folder: str, format
|
|
20
|
+
def persist_fixture(fixture_name: str, data: Union[List[Dict[str, Any]], str], folder: str, format: str) -> Path:
|
|
21
21
|
fixture_dir = get_fixture_dir(folder)
|
|
22
22
|
fixture_file = fixture_dir / f"{fixture_name}.{format}"
|
|
23
|
-
|
|
23
|
+
extension = f".{format}"
|
|
24
|
+
if extension == FixtureExtension.NDJSON:
|
|
25
|
+
fixture_file.write_text(data if isinstance(data, str) else format_data_to_ndjson(data))
|
|
26
|
+
elif extension == FixtureExtension.CSV:
|
|
27
|
+
fixture_file.write_text(data if isinstance(data, str) else str(data)) ## this should not happen
|
|
24
28
|
return fixture_file
|
|
25
29
|
|
|
26
30
|
|
|
@@ -34,3 +38,8 @@ def load_fixture(
|
|
|
34
38
|
if not fixture_file.exists():
|
|
35
39
|
return None
|
|
36
40
|
return fixture_file
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
class FixtureExtension:
|
|
44
|
+
NDJSON = ".ndjson"
|
|
45
|
+
CSV = ".csv"
|
|
@@ -445,7 +445,7 @@ async def datasource_export(
|
|
|
445
445
|
|
|
446
446
|
res = await client.query(query)
|
|
447
447
|
|
|
448
|
-
fixture_path = persist_fixture(datasource, res, project.folder)
|
|
448
|
+
fixture_path = persist_fixture(datasource, res, project.folder, format=format_)
|
|
449
449
|
file_size = os.path.getsize(fixture_path)
|
|
450
450
|
|
|
451
451
|
click.echo(
|
tinybird/tb/modules/mock.py
CHANGED
|
@@ -24,9 +24,16 @@ from tinybird.tb.modules.project import Project
|
|
|
24
24
|
default="",
|
|
25
25
|
help="Extra context to use for data generation",
|
|
26
26
|
)
|
|
27
|
+
@click.option(
|
|
28
|
+
"--format",
|
|
29
|
+
"format_",
|
|
30
|
+
type=click.Choice(["ndjson", "csv"], case_sensitive=False),
|
|
31
|
+
default="ndjson",
|
|
32
|
+
help="Format of the fixture to create",
|
|
33
|
+
)
|
|
27
34
|
@click.pass_context
|
|
28
35
|
@coro
|
|
29
|
-
async def mock(ctx: click.Context, datasource: str, rows: int, prompt: str) -> None:
|
|
36
|
+
async def mock(ctx: click.Context, datasource: str, rows: int, prompt: str, format_: str) -> None:
|
|
30
37
|
"""Generate sample data for a data source.
|
|
31
38
|
|
|
32
39
|
Args:
|
|
@@ -79,13 +86,16 @@ async def mock(ctx: click.Context, datasource: str, rows: int, prompt: str) -> N
|
|
|
79
86
|
response = llm.ask(system_prompt=mock_prompt(rows, error), prompt=prompt)
|
|
80
87
|
sql = extract_xml(response, "sql")
|
|
81
88
|
sql_path = persist_fixture_sql(datasource_name, sql, folder)
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
89
|
+
sql_format = "JSON" if format_ == "ndjson" else "CSV"
|
|
90
|
+
result = await tb_client.query(f"SELECT * FROM ({sql}) LIMIT {rows} FORMAT {sql_format}")
|
|
91
|
+
if sql_format == "JSON":
|
|
92
|
+
data = result.get("data", [])[:rows]
|
|
93
|
+
error_response = result.get("error", None)
|
|
94
|
+
if error_response:
|
|
95
|
+
raise CLIException(error_response)
|
|
87
96
|
else:
|
|
88
|
-
|
|
97
|
+
data = result
|
|
98
|
+
break
|
|
89
99
|
except Exception as e:
|
|
90
100
|
error = str(e)
|
|
91
101
|
attempts += 1
|
|
@@ -94,8 +104,8 @@ async def mock(ctx: click.Context, datasource: str, rows: int, prompt: str) -> N
|
|
|
94
104
|
else:
|
|
95
105
|
continue
|
|
96
106
|
|
|
97
|
-
fixture_path = persist_fixture(datasource_name, data, folder)
|
|
98
|
-
click.echo(FeedbackManager.info(message=f"✓ /fixtures/{datasource_name}.
|
|
107
|
+
fixture_path = persist_fixture(datasource_name, data, folder, format=format_)
|
|
108
|
+
click.echo(FeedbackManager.info(message=f"✓ /fixtures/{datasource_name}.{format_} created"))
|
|
99
109
|
if env == "cloud":
|
|
100
110
|
await append_fixture(tb_client, datasource_name, str(fixture_path))
|
|
101
111
|
|
tinybird/tb/modules/watch.py
CHANGED
|
@@ -16,13 +16,14 @@ from watchdog.events import (
|
|
|
16
16
|
from watchdog.observers import Observer
|
|
17
17
|
|
|
18
18
|
from tinybird.tb.modules.datafile.common import Datafile, DatafileKind
|
|
19
|
+
from tinybird.tb.modules.datafile.fixture import FixtureExtension
|
|
19
20
|
from tinybird.tb.modules.feedback_manager import FeedbackManager
|
|
20
21
|
from tinybird.tb.modules.project import Project
|
|
21
22
|
from tinybird.tb.modules.shell import Shell
|
|
22
23
|
|
|
23
24
|
|
|
24
25
|
class WatchProjectHandler(PatternMatchingEventHandler):
|
|
25
|
-
valid_extensions = [".datasource", ".pipe", "connection",
|
|
26
|
+
valid_extensions = [".datasource", ".pipe", "connection", FixtureExtension.CSV, FixtureExtension.NDJSON, ".sql"]
|
|
26
27
|
|
|
27
28
|
def __init__(self, shell: Shell, project: Project, process: Callable):
|
|
28
29
|
self.shell = shell
|
|
@@ -163,7 +164,9 @@ class FileChangeHandler(FileSystemEventHandler):
|
|
|
163
164
|
is_vendor = "vendor/" in path
|
|
164
165
|
if is_vendor:
|
|
165
166
|
return False
|
|
166
|
-
return any(
|
|
167
|
+
return any(
|
|
168
|
+
path.endswith(ext) for ext in [".datasource", ".pipe", FixtureExtension.NDJSON, FixtureExtension.CSV]
|
|
169
|
+
)
|
|
167
170
|
|
|
168
171
|
if should_process_path(event.src_path):
|
|
169
172
|
return event.src_path
|
|
@@ -12,20 +12,20 @@ tinybird/syncasync.py,sha256=IPnOx6lMbf9SNddN1eBtssg8vCLHMt76SuZ6YNYm-Yk,27761
|
|
|
12
12
|
tinybird/tornado_template.py,sha256=jjNVDMnkYFWXflmT8KU_Ssbo5vR8KQq3EJMk5vYgXRw,41959
|
|
13
13
|
tinybird/ch_utils/constants.py,sha256=aYvg2C_WxYWsnqPdZB1ZFoIr8ZY-XjUXYyHKE9Ansj0,3890
|
|
14
14
|
tinybird/ch_utils/engine.py,sha256=BZuPM7MFS7vaEKK5tOMR2bwSAgJudPrJt27uVEwZmTY,40512
|
|
15
|
-
tinybird/tb/__cli__.py,sha256=
|
|
15
|
+
tinybird/tb/__cli__.py,sha256=dV409bozEIxzsWY-MNKKruKjTqMQqrXLEV7AQlZNHEE,252
|
|
16
16
|
tinybird/tb/cli.py,sha256=uDLwcbwSJfVFw-pceijZJqaq26z5jNsey0QaUGFjt7w,1097
|
|
17
17
|
tinybird/tb/client.py,sha256=oa0pR46WvzDoqpyaDU-lRu33I0cZhtZVDqDQz2RHMWQ,56085
|
|
18
18
|
tinybird/tb/config.py,sha256=iIia7F67UI9p51Ja4jALonyttIi4eH7PwOn3HvcvOb8,4008
|
|
19
19
|
tinybird/tb/modules/auth.py,sha256=_OeYnmTH83lnqCgQEdS6K0bx1KBUeRmZk2M7JnRmWpk,9037
|
|
20
|
-
tinybird/tb/modules/build.py,sha256=
|
|
20
|
+
tinybird/tb/modules/build.py,sha256=b1fjWrurDWLwNdWjcNaEaSJh6Iko98uSExw4k_CRoTc,17244
|
|
21
21
|
tinybird/tb/modules/cicd.py,sha256=A7zJZF9HkJ6NPokplgNjmefMrpUlRbFxBbjMZhq5OTI,7110
|
|
22
22
|
tinybird/tb/modules/cli.py,sha256=Y_5hu9xwyTIZw4bQoe0MYLnRIzmR7hUjql_oZBxd4Qg,13407
|
|
23
23
|
tinybird/tb/modules/common.py,sha256=bdKNjHtQKcsZFyZIsLY8vEoTD0Xf-1UNBnh1pAyWPZU,83456
|
|
24
24
|
tinybird/tb/modules/config.py,sha256=ziqW_t_mRVvWOd85VoB4vKyvgMkEfpXDf9H4v38p2xc,11422
|
|
25
25
|
tinybird/tb/modules/connection.py,sha256=ctrcZCksfBKJHv3pMoDzsmgmx-rlkfeyn2GkxM0Zlw0,6892
|
|
26
26
|
tinybird/tb/modules/copy.py,sha256=2Mm4FWKehOG7CoOhiF1m9UZJgJn0W1_cMolqju8ONYg,5805
|
|
27
|
-
tinybird/tb/modules/create.py,sha256=
|
|
28
|
-
tinybird/tb/modules/datasource.py,sha256
|
|
27
|
+
tinybird/tb/modules/create.py,sha256=PDAuzeBiqN9q7GY2p4zcMWDojdNjz6_aJgI5dxR-FVM,16701
|
|
28
|
+
tinybird/tb/modules/datasource.py,sha256=XvY7iTRefG9iEBLQkqBSF47bK-CrLu2AzDnigGI2mSc,16925
|
|
29
29
|
tinybird/tb/modules/deployment.py,sha256=4Zt7jPbqt18fB5kPx7DbO91Bh6xzBBTEUFY7O89shuU,19560
|
|
30
30
|
tinybird/tb/modules/endpoint.py,sha256=XySDt3pk66vxOZ0egUfz4bY8bEk3BjOXkv-L0OIJ3sc,12083
|
|
31
31
|
tinybird/tb/modules/exceptions.py,sha256=4A2sSjCEqKUMqpP3WI00zouCWW4uLaghXXLZBSw04mY,3363
|
|
@@ -40,7 +40,7 @@ tinybird/tb/modules/local_common.py,sha256=DqTHHcq4JitohYvHiqCz2Av4REPhmwwS6naQT
|
|
|
40
40
|
tinybird/tb/modules/login.py,sha256=rLYdV7MLCTT1F4VBAWGv6SO9efMiM9-977ayLecUzjI,6842
|
|
41
41
|
tinybird/tb/modules/logout.py,sha256=ULooy1cDBD02-r7voZmhV7udA0ML5tVuflJyShrh56Y,1022
|
|
42
42
|
tinybird/tb/modules/materialization.py,sha256=yIns8ypdFVLWwuCcvAZPBChsuJl2DIxJe6M8UCBHNsU,5752
|
|
43
|
-
tinybird/tb/modules/mock.py,sha256=
|
|
43
|
+
tinybird/tb/modules/mock.py,sha256=KScG2WohfCjxakBS2Rfb4-7QKS4OSkoVgiMyUvkCWWE,4924
|
|
44
44
|
tinybird/tb/modules/open.py,sha256=OuctINN77oexpSjth9uoIZPCelKO4Li-yyVxeSnk1io,1371
|
|
45
45
|
tinybird/tb/modules/pipe.py,sha256=AQKEDagO6e3psPVjJkS_MDbn8aK-apAiLp26k7jgAV0,2432
|
|
46
46
|
tinybird/tb/modules/project.py,sha256=RdVOzJiuFPqkCzPhzGetbgcFeiMEn9IMviFCG58XKgI,3142
|
|
@@ -52,7 +52,7 @@ tinybird/tb/modules/tag.py,sha256=anPmMUBc-TbFovlpFi8GPkKA18y7Y0GczMsMms5TZsU,35
|
|
|
52
52
|
tinybird/tb/modules/telemetry.py,sha256=C-aEXY3yQMHzFFySwefwyigprcmjoz_CiCXv17jpCPA,11001
|
|
53
53
|
tinybird/tb/modules/test.py,sha256=HxkSpdLOW8brGUNsqdBoSW8RixxyC7OCDmYwEZsIpfs,11459
|
|
54
54
|
tinybird/tb/modules/token.py,sha256=2fmKwu10_M0pqs6YmJVeILR9ZQB0ejRAET86agASbKM,13488
|
|
55
|
-
tinybird/tb/modules/watch.py,sha256
|
|
55
|
+
tinybird/tb/modules/watch.py,sha256=-2DGSShUGAPDYpLVkiDiONC-RqGdZbTiXOCsDtU5udw,8990
|
|
56
56
|
tinybird/tb/modules/workspace.py,sha256=SlK08psp0tu5t_URHyIczm696buW6KD6FPs9Lg1aNRE,6614
|
|
57
57
|
tinybird/tb/modules/workspace_members.py,sha256=RYLpyPM1ECCasHRg3uvpckzXplX0_KgNFsSPZn_i6qk,8744
|
|
58
58
|
tinybird/tb/modules/datafile/build.py,sha256=d_h3pRFDPFrDKGhpFx2iejY25GuB2k8yfNouj6s8caw,50973
|
|
@@ -62,7 +62,7 @@ tinybird/tb/modules/datafile/build_pipe.py,sha256=6Cwjf3BKEF3-oQ9PipsQfK-Z43nSwt
|
|
|
62
62
|
tinybird/tb/modules/datafile/common.py,sha256=FXwHfCknNgZnMGaiju4u7ODYnXticP5cVagxor5F7Dw,85442
|
|
63
63
|
tinybird/tb/modules/datafile/diff.py,sha256=MTmj53RYjER4neLgWVjabn-FKVFgh8h8uYiBo55lFQg,6757
|
|
64
64
|
tinybird/tb/modules/datafile/exceptions.py,sha256=8rw2umdZjtby85QbuRKFO5ETz_eRHwUY5l7eHsy1wnI,556
|
|
65
|
-
tinybird/tb/modules/datafile/fixture.py,sha256=
|
|
65
|
+
tinybird/tb/modules/datafile/fixture.py,sha256=DrRWivcvo_1rn7LlVUnHcXccdgx9yVj63mzBkUwCzk8,1420
|
|
66
66
|
tinybird/tb/modules/datafile/format_common.py,sha256=WaNV4tXrQU5gjV6MJP-5TGqg_Bre6ilNS8emvFl-X3c,1967
|
|
67
67
|
tinybird/tb/modules/datafile/format_datasource.py,sha256=iWbeXruxC7OBmjNgurWt6ymcJlYzxfKwkGnhpcoSKEo,6190
|
|
68
68
|
tinybird/tb/modules/datafile/format_pipe.py,sha256=DUGdmlzI146YDqTwW-7kSIOXocz4AH-md_LFGUm9hrc,7436
|
|
@@ -79,8 +79,8 @@ tinybird/tb_cli_modules/config.py,sha256=IsgdtFRnUrkY8-Zo32lmk6O7u3bHie1QCxLwgp4
|
|
|
79
79
|
tinybird/tb_cli_modules/exceptions.py,sha256=pmucP4kTF4irIt7dXiG-FcnI-o3mvDusPmch1L8RCWk,3367
|
|
80
80
|
tinybird/tb_cli_modules/regions.py,sha256=QjsL5H6Kg-qr0aYVLrvb1STeJ5Sx_sjvbOYO0LrEGMk,166
|
|
81
81
|
tinybird/tb_cli_modules/telemetry.py,sha256=Hh2Io8ZPROSunbOLuMvuIFU4TqwWPmQTqal4WS09K1A,10449
|
|
82
|
-
tinybird-0.0.1.
|
|
83
|
-
tinybird-0.0.1.
|
|
84
|
-
tinybird-0.0.1.
|
|
85
|
-
tinybird-0.0.1.
|
|
86
|
-
tinybird-0.0.1.
|
|
82
|
+
tinybird-0.0.1.dev125.dist-info/METADATA,sha256=Com9G_kAdU7yninwwz7WnOYy83nfiV9mok_rKuyXsUU,1612
|
|
83
|
+
tinybird-0.0.1.dev125.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
84
|
+
tinybird-0.0.1.dev125.dist-info/entry_points.txt,sha256=LwdHU6TfKx4Qs7BqqtaczEZbImgU7Abe9Lp920zb_fo,43
|
|
85
|
+
tinybird-0.0.1.dev125.dist-info/top_level.txt,sha256=VqqqEmkAy7UNaD8-V51FCoMMWXjLUlR0IstvK7tJYVY,54
|
|
86
|
+
tinybird-0.0.1.dev125.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|