tinybird 0.0.1.dev51__tar.gz → 0.0.1.dev53__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.

Potentially problematic release.


This version of tinybird might be problematic. Click here for more details.

Files changed (101) hide show
  1. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/PKG-INFO +1 -1
  2. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/__cli__.py +2 -2
  3. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/cli.py +1 -1
  4. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/local.py +4 -6
  5. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/login.py +27 -48
  6. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird.egg-info/PKG-INFO +1 -1
  7. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/setup.cfg +0 -0
  8. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/__cli__.py +0 -0
  9. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/ch_utils/constants.py +0 -0
  10. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/ch_utils/engine.py +0 -0
  11. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/check_pypi.py +0 -0
  12. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/client.py +0 -0
  13. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/config.py +0 -0
  14. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/connectors.py +0 -0
  15. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/context.py +0 -0
  16. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/datafile.py +0 -0
  17. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/datatypes.py +0 -0
  18. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/feedback_manager.py +0 -0
  19. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/git_settings.py +0 -0
  20. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/prompts.py +0 -0
  21. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/sql.py +0 -0
  22. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/sql_template.py +0 -0
  23. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/sql_template_fmt.py +0 -0
  24. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/sql_toolset.py +0 -0
  25. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/syncasync.py +0 -0
  26. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/cli.py +0 -0
  27. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/auth.py +0 -0
  28. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/build.py +0 -0
  29. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/cicd.py +0 -0
  30. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/common.py +0 -0
  31. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/config.py +0 -0
  32. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/copy.py +0 -0
  33. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/create.py +0 -0
  34. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/build.py +0 -0
  35. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/build_common.py +0 -0
  36. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/build_datasource.py +0 -0
  37. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/build_pipe.py +0 -0
  38. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/common.py +0 -0
  39. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/diff.py +0 -0
  40. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/exceptions.py +0 -0
  41. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/fixture.py +0 -0
  42. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/format_common.py +0 -0
  43. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/format_datasource.py +0 -0
  44. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/format_pipe.py +0 -0
  45. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/parse_datasource.py +0 -0
  46. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/parse_pipe.py +0 -0
  47. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/pipe_checker.py +0 -0
  48. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datafile/pull.py +0 -0
  49. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/datasource.py +0 -0
  50. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/deployment.py +0 -0
  51. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/endpoint.py +0 -0
  52. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/exceptions.py +0 -0
  53. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/feedback_manager.py +0 -0
  54. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/fmt.py +0 -0
  55. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/job.py +0 -0
  56. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/llm.py +0 -0
  57. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/llm_utils.py +0 -0
  58. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/local_common.py +0 -0
  59. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/materialization.py +0 -0
  60. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/mock.py +0 -0
  61. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/pipe.py +0 -0
  62. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/project.py +0 -0
  63. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/regions.py +0 -0
  64. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/shell.py +0 -0
  65. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/table.py +0 -0
  66. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/tag.py +0 -0
  67. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/telemetry.py +0 -0
  68. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/test.py +0 -0
  69. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/tinyunit/tinyunit.py +0 -0
  70. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/tinyunit/tinyunit_lib.py +0 -0
  71. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/token.py +0 -0
  72. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/watch.py +0 -0
  73. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/workspace.py +0 -0
  74. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb/modules/workspace_members.py +0 -0
  75. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli.py +0 -0
  76. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/auth.py +0 -0
  77. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/branch.py +0 -0
  78. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/cicd.py +0 -0
  79. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/cli.py +0 -0
  80. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/common.py +0 -0
  81. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/config.py +0 -0
  82. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/connection.py +0 -0
  83. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/datasource.py +0 -0
  84. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/exceptions.py +0 -0
  85. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/fmt.py +0 -0
  86. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/job.py +0 -0
  87. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/pipe.py +0 -0
  88. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/regions.py +0 -0
  89. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/tag.py +0 -0
  90. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/telemetry.py +0 -0
  91. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/test.py +0 -0
  92. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/tinyunit/tinyunit.py +0 -0
  93. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/tinyunit/tinyunit_lib.py +0 -0
  94. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/workspace.py +0 -0
  95. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tb_cli_modules/workspace_members.py +0 -0
  96. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird/tornado_template.py +0 -0
  97. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird.egg-info/SOURCES.txt +0 -0
  98. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird.egg-info/dependency_links.txt +0 -0
  99. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird.egg-info/entry_points.txt +0 -0
  100. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird.egg-info/requires.txt +0 -0
  101. {tinybird-0.0.1.dev51 → tinybird-0.0.1.dev53}/tinybird.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tinybird
3
- Version: 0.0.1.dev51
3
+ Version: 0.0.1.dev53
4
4
  Summary: Tinybird Command Line Tool
5
5
  Home-page: https://www.tinybird.co/docs/cli/introduction.html
6
6
  Author: Tinybird
@@ -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.dev51'
8
- __revision__ = '0583356'
7
+ __version__ = '0.0.1.dev53'
8
+ __revision__ = '883fa46'
@@ -391,7 +391,7 @@ def __unpatch_click_output():
391
391
 
392
392
 
393
393
  async def create_ctx_client(ctx: Context, config: Dict[str, Any], cloud: bool, build: bool, project: Project):
394
- commands_without_ctx_client = ["auth", "check", "login", "local"]
394
+ commands_without_ctx_client = ["auth", "check", "login", "local", "upgrade"]
395
395
  command = ctx.invoked_subcommand
396
396
  if command in commands_without_ctx_client:
397
397
  return None
@@ -28,12 +28,10 @@ def start_tinybird_local(
28
28
  pull_show_prompt = False
29
29
  pull_required = True
30
30
 
31
- if (
32
- pull_show_prompt
33
- and click.prompt(
34
- FeedbackManager.warning(message="△ New version detected, download? [y/N]"), default="n"
35
- ).lower()
36
- == "y"
31
+ if pull_show_prompt and click.confirm(
32
+ FeedbackManager.warning(message="△ New version detected, download? [y/N]:"),
33
+ show_default=False,
34
+ prompt_suffix="",
37
35
  ):
38
36
  click.echo(FeedbackManager.info(message="* Downloading latest version of Tinybird Local..."))
39
37
  pull_required = True
@@ -34,35 +34,16 @@ class AuthHandler(http.server.SimpleHTTPRequestHandler):
34
34
  height: 100vh;
35
35
  margin: 0;
36
36
  }
37
- .message {
38
- background: white;
39
- padding: 2rem 3rem;
40
- border-radius: 8px;
41
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
42
- text-align: center;
43
- display: flex;
44
- flex-direction: column;
45
- align-items: center;
46
- }
47
- h1 {
48
- color: #25283D;
49
- font-size: 1.2rem;
50
- margin: 0;
51
- font-weight: 500;
52
- }
53
37
  </style>
54
38
  </head>
55
39
  <body>
56
- <div class="message">
57
- <h1>Authenticating...</h1>
58
- </div>
59
40
  <script>
60
- var hash = window.location.hash.substr(1);
61
- var access_token = new URLSearchParams(hash).get('access_token');
62
- window.history.pushState({}, '', '/');
63
- fetch('/?token=' + access_token, {method: 'POST'})
41
+ const searchParams = new URLSearchParams(window.location.search);
42
+ const code = searchParams.get('code');
43
+ const workspace = searchParams.get('workspace');
44
+ fetch('/?code=' + code, {method: 'POST'})
64
45
  .then(() => {
65
- document.querySelector('.message h1').textContent = 'Authentication successful! You can close this window.';
46
+ window.location.href = "https://cloud.tinybird.co/cli-login?workspace=" + workspace;
66
47
  });
67
48
  </script>
68
49
  </body>
@@ -73,13 +54,13 @@ class AuthHandler(http.server.SimpleHTTPRequestHandler):
73
54
  parsed_path = urllib.parse.urlparse(self.path)
74
55
  query_params = urllib.parse.parse_qs(parsed_path.query)
75
56
 
76
- if "token" in query_params:
77
- token = query_params["token"][0]
78
- self.server.auth_callback(token) # type: ignore
57
+ if "code" in query_params:
58
+ code = query_params["code"][0]
59
+ self.server.auth_callback(code) # type: ignore
79
60
  self.send_response(200)
80
61
  self.end_headers()
81
62
  else:
82
- self.send_error(400, "Missing 'token' parameter")
63
+ self.send_error(400, "Missing 'code' parameter")
83
64
 
84
65
  self.server.shutdown()
85
66
 
@@ -112,15 +93,20 @@ def start_server(auth_callback):
112
93
  "--host",
113
94
  help="Set custom host if it's different than https://api.tinybird.co. See https://www.tinybird.co/docs/api-reference/overview#regions-and-endpoints for the available list of regions.",
114
95
  )
96
+ @click.option(
97
+ "--auth-host",
98
+ default="https://cloud.tinybird.co",
99
+ help="Set the host to authenticate to. If unset, the default host will be used.",
100
+ )
115
101
  @click.option(
116
102
  "--workspace",
117
103
  help="Set the workspace to authenticate to. If unset, the default workspace will be used.",
118
104
  )
119
105
  @coro
120
- async def login(host: str, workspace: str):
106
+ async def login(host: str, auth_host: str, workspace: str):
121
107
  """Authenticate using the browser."""
122
108
  auth_event = threading.Event()
123
- auth_code = [None] # Using a list to store the code, as it's mutable
109
+ auth_code: list[str] = [] # Using a list to store the code, as it's mutable
124
110
  host = host or "https://api.wadus2.gcp.tinybird.co"
125
111
 
126
112
  def auth_callback(code):
@@ -135,30 +121,23 @@ async def login(host: str, workspace: str):
135
121
  server_thread.start()
136
122
 
137
123
  # Open the browser to the auth page
138
- if "wadus" in host:
139
- client_id = "Rpl7Uy9aSjqoPCSvHgGl3zNQuZcSOXBe"
140
- base_auth_url = "https://auth.wadus1.tinybird.co"
141
- else:
142
- client_id = "T6excMo8IKguvUw4vFNYfqlt9pe6msCU"
143
- base_auth_url = "https://auth.tinybird.co"
144
124
  callback_url = f"http://localhost:{AUTH_SERVER_PORT}"
145
125
  params = {
146
- "client_id": client_id,
147
126
  "redirect_uri": callback_url,
148
- "response_type": "token",
149
- "scope": "openid profile email",
150
127
  }
151
- auth_url = f"{base_auth_url}/authorize?{urlencode(params)}"
128
+
129
+ if workspace:
130
+ params["workspace"] = workspace
131
+
132
+ auth_url = f"{auth_host}/api/cli-login?{urlencode(params)}"
152
133
  webbrowser.open(auth_url)
153
134
 
154
135
  # Wait for the authentication to complete or timeout
155
136
  if auth_event.wait(timeout=60): # Wait for up to 60 seconds
156
137
  params = {}
157
- if workspace:
158
- params["workspace_id"] = workspace
138
+ params["code"] = auth_code[0]
159
139
  response = requests.get( # noqa: ASYNC210
160
- f"{host}/v0/user/tokens?{urlencode(params)}",
161
- headers={"Authorization": f"Bearer {auth_code[0]}"},
140
+ f"{auth_host}/api/cli-login?{urlencode(params)}",
162
141
  )
163
142
 
164
143
  data = response.json()
@@ -168,15 +147,15 @@ async def login(host: str, workspace: str):
168
147
  cli_config.set_user_token(data.get("user_token", ""))
169
148
  cli_config.set_host(host)
170
149
 
171
- ws = await cli_config.get_client().workspace_info()
150
+ ws = await cli_config.get_client(token=data.get("workspace_token", "")).workspace_info()
172
151
  for k in ("id", "name", "user_email", "user_id", "scope"):
173
152
  if k in ws:
174
153
  cli_config[k] = ws[k]
175
154
 
176
155
  cli_config.persist_to_file()
177
- click.echo(FeedbackManager.info(message="\nWorkspace: %s" % ws["name"]))
178
- click.echo(FeedbackManager.info(message="User: %s" % ws["user_email"]))
179
- click.echo(FeedbackManager.info(message="Host: %s" % host))
156
+ click.echo(FeedbackManager.gray(message="\nWorkspace: ") + FeedbackManager.info(message=ws["name"]))
157
+ click.echo(FeedbackManager.gray(message="User: ") + FeedbackManager.info(message=ws["user_email"]))
158
+ click.echo(FeedbackManager.gray(message="Host: ") + FeedbackManager.info(message=host))
180
159
  click.echo(FeedbackManager.success(message="\n✓ Authentication successful!"))
181
160
  else:
182
161
  click.echo(FeedbackManager.error(message="Authentication failed or timed out."))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tinybird
3
- Version: 0.0.1.dev51
3
+ Version: 0.0.1.dev53
4
4
  Summary: Tinybird Command Line Tool
5
5
  Home-page: https://www.tinybird.co/docs/cli/introduction.html
6
6
  Author: Tinybird
File without changes