tinybird-cli 3.9.1.dev4__tar.gz → 3.9.1.dev6__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 (46) hide show
  1. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/PKG-INFO +10 -1
  2. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/__cli__.py +2 -2
  3. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/client.py +3 -0
  4. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/datafile.py +12 -14
  5. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/feedback_manager.py +3 -0
  6. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/workspace.py +21 -1
  7. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird_cli.egg-info/PKG-INFO +10 -1
  8. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/setup.cfg +0 -0
  9. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/ch_utils/constants.py +0 -0
  10. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/ch_utils/engine.py +0 -0
  11. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/check_pypi.py +0 -0
  12. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/config.py +0 -0
  13. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/connectors.py +0 -0
  14. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/context.py +0 -0
  15. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/datatypes.py +0 -0
  16. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/git_settings.py +0 -0
  17. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/sql.py +0 -0
  18. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/sql_template.py +0 -0
  19. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/sql_template_fmt.py +0 -0
  20. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/sql_toolset.py +0 -0
  21. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/syncasync.py +0 -0
  22. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli.py +0 -0
  23. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/auth.py +0 -0
  24. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/branch.py +0 -0
  25. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/cicd.py +0 -0
  26. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/cli.py +0 -0
  27. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/common.py +0 -0
  28. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/config.py +0 -0
  29. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/connection.py +0 -0
  30. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/datasource.py +0 -0
  31. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/exceptions.py +0 -0
  32. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/job.py +0 -0
  33. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/pipe.py +0 -0
  34. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/regions.py +0 -0
  35. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/telemetry.py +0 -0
  36. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/test.py +0 -0
  37. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/tinyunit/tinyunit.py +0 -0
  38. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/tinyunit/tinyunit_lib.py +0 -0
  39. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/token.py +0 -0
  40. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tb_cli_modules/workspace_members.py +0 -0
  41. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird/tornado_template.py +0 -0
  42. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird_cli.egg-info/SOURCES.txt +0 -0
  43. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird_cli.egg-info/dependency_links.txt +0 -0
  44. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird_cli.egg-info/entry_points.txt +0 -0
  45. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird_cli.egg-info/requires.txt +0 -0
  46. {tinybird-cli-3.9.1.dev4 → tinybird-cli-3.9.1.dev6}/tinybird_cli.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tinybird-cli
3
- Version: 3.9.1.dev4
3
+ Version: 3.9.1.dev6
4
4
  Summary: Tinybird Command Line Tool
5
5
  Home-page: https://www.tinybird.co/docs/cli/introduction.html
6
6
  Author: Tinybird
@@ -18,6 +18,15 @@ The Tinybird command-line tool allows you to use all the Tinybird functionality
18
18
  Changelog
19
19
  ----------
20
20
 
21
+ 3.9.1.dev6
22
+ ************
23
+
24
+ - `Added` Support for unlink materialized pipes doing `tb workspace clear`
25
+
26
+ 3.9.1.dev5
27
+ ************
28
+
29
+ - `Added` support for adding multiple tokens when pushing a `.datasource` file
21
30
 
22
31
  3.9.1.dev4
23
32
  ************
@@ -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__ = '3.9.1.dev4'
8
- __revision__ = '6fbd338'
7
+ __version__ = '3.9.1.dev6'
8
+ __revision__ = '00f0cad'
@@ -588,6 +588,9 @@ class TinyB(object):
588
588
  params = {**params} if params else {}
589
589
  return await self._req(f"/v0/pipes/{pipe_name_or_id}/sink?{urlencode(params)}", method="POST")
590
590
 
591
+ async def pipe_unlink_materialized(self, pipe_name: str, node_id: str):
592
+ return await self._req(f"/v0/pipes/{pipe_name}/nodes/{node_id}/materialization", method="DELETE")
593
+
591
594
  async def query(self, sql: str, pipeline: Optional[str] = None):
592
595
  params = {}
593
596
  if pipeline:
@@ -2943,20 +2943,18 @@ async def new_ds(
2943
2943
  for tk in ds["tokens"]:
2944
2944
  token_name = tk["token_name"]
2945
2945
  t = await client.get_token_by_name(token_name)
2946
- if t:
2947
- break
2948
- if not t:
2949
- token_name = tk["token_name"]
2950
- click.echo(FeedbackManager.info_create_not_found_token(token=token_name))
2951
- # DS == token_origin.Origins.DATASOURCE
2952
- await client.create_token(token_name, f"DATASOURCES:{tk['permissions']}:{ds_name}", "DS", ds_name)
2953
- else:
2954
- click.echo(FeedbackManager.info_create_found_token(token=token_name))
2955
- scopes = [f"DATASOURCES:{tk['permissions']}:{ds_name}"]
2956
- for x in t["scopes"]:
2957
- sc = x["type"] if "resource" not in x else f"{x['type']}:{x['resource']}"
2958
- scopes.append(sc)
2959
- await client.alter_tokens(token_name, scopes)
2946
+ if not t:
2947
+ token_name = tk["token_name"]
2948
+ click.echo(FeedbackManager.info_create_not_found_token(token=token_name))
2949
+ # DS == token_origin.Origins.DATASOURCE
2950
+ await client.create_token(token_name, f"DATASOURCES:{tk['permissions']}:{ds_name}", "DS", ds_name)
2951
+ else:
2952
+ click.echo(FeedbackManager.info_create_found_token(token=token_name))
2953
+ scopes = [f"DATASOURCES:{tk['permissions']}:{ds_name}"]
2954
+ for x in t["scopes"]:
2955
+ sc = x["type"] if "resource" not in x else f"{x['type']}:{x['resource']}"
2956
+ scopes.append(sc)
2957
+ await client.alter_tokens(token_name, scopes)
2960
2958
 
2961
2959
  try:
2962
2960
  existing_ds = await client.get_datasource(ds_name)
@@ -643,6 +643,9 @@ Ready? """
643
643
  info_materialized_datasource_used = info_message(
644
644
  "** Materialized pipe '{pipe}' using the Data Source '{datasource}'"
645
645
  )
646
+ info_materialized_unlinking_pipe = info_message("** Unlinking materialized pipe {pipe}")
647
+ info_materialized_unlinking_pipe_not_found = info_message("** {pipe} not found")
648
+ info_materialized_dry_unlinking_pipe = info_message("** [DRY RUN] Unlinking materialized pipe {pipe}")
646
649
  info_copy_datasource_created = info_message("** Copy pipe '{pipe}' created the Data Source '{datasource}'")
647
650
  info_copy_datasource_used = info_message("** Copy pipe '{pipe}' using the Data Source '{datasource}'")
648
651
  info_no_pipes_stats = info_message("** No pipe stats")
@@ -9,6 +9,7 @@ import click
9
9
  from click import Context
10
10
 
11
11
  from tinybird.client import CanNotBeDeletedException, DoesNotExistException, TinyB
12
+ from tinybird.datafile import PipeTypes
12
13
  from tinybird.feedback_manager import FeedbackManager
13
14
  from tinybird.tb_cli_modules.cli import cli
14
15
  from tinybird.tb_cli_modules.common import (
@@ -137,8 +138,27 @@ async def clear_workspace(ctx: Context, yes: bool, dry_run: bool) -> None:
137
138
  echo_safe_humanfriendly_tables_format_smart_table(table, column_names=columns)
138
139
 
139
140
  if yes or click.confirm(FeedbackManager.warning_confirm_clear_workspace()):
140
- pipes = await client.pipes(dependencies=False, node_attrs="name", attrs="name")
141
+ pipes = await client.pipes(dependencies=False, node_attrs="id,name,materialized", attrs="name,type")
141
142
  pipe_names = [pipe["name"] for pipe in pipes]
143
+
144
+ for pipe in pipes:
145
+ if pipe["type"] == PipeTypes.MATERIALIZED:
146
+ if not dry_run:
147
+ node_id = None
148
+ for node in pipe["nodes"]:
149
+ if "materialized" in node and node["materialized"] is not None:
150
+ node_id = node["id"]
151
+ break
152
+
153
+ if node_id:
154
+ click.echo(FeedbackManager.info_materialized_unlinking_pipe(pipe=pipe["name"]))
155
+ try:
156
+ await client.pipe_unlink_materialized(pipe["name"], node_id)
157
+ except DoesNotExistException:
158
+ click.echo(FeedbackManager.info_materialized_unlinking_pipe_not_found(pipe=pipe["name"]))
159
+ else:
160
+ click.echo(FeedbackManager.info_materialized_dry_unlinking_pipe(pipe=pipe["name"]))
161
+
142
162
  for pipe_name in pipe_names:
143
163
  if not dry_run:
144
164
  click.echo(FeedbackManager.info_removing_pipe(pipe=pipe_name))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tinybird-cli
3
- Version: 3.9.1.dev4
3
+ Version: 3.9.1.dev6
4
4
  Summary: Tinybird Command Line Tool
5
5
  Home-page: https://www.tinybird.co/docs/cli/introduction.html
6
6
  Author: Tinybird
@@ -18,6 +18,15 @@ The Tinybird command-line tool allows you to use all the Tinybird functionality
18
18
  Changelog
19
19
  ----------
20
20
 
21
+ 3.9.1.dev6
22
+ ************
23
+
24
+ - `Added` Support for unlink materialized pipes doing `tb workspace clear`
25
+
26
+ 3.9.1.dev5
27
+ ************
28
+
29
+ - `Added` support for adding multiple tokens when pushing a `.datasource` file
21
30
 
22
31
  3.9.1.dev4
23
32
  ************