Metadata-Version: 2.1
Name: tinybird-cli
Version: 1.0.0b108
Summary: Tinybird Command Line Tool
Home-page: https://docs.tinybird.co/cli.html
Author: Tinybird
Author-email: support@tinybird.co
License: UNKNOWN
Platform: UNKNOWN
Requires-Python: >=3.6, <=3.10
Description-Content-Type: text/x-rst
Requires-Dist: click (==7.0)
Requires-Dist: clickhouse-toolset (==0.16.dev0)
Requires-Dist: humanfriendly (==8.2)
Requires-Dist: requests-toolbelt (==0.9.1)
Requires-Dist: requests (==2.25.1)
Requires-Dist: tabulate (==0.8.3)
Requires-Dist: toposort (==1.5)
Requires-Dist: tornado (==5.1.1)
Requires-Dist: wheel
Provides-Extra: bigquery
Requires-Dist: google-api-python-client (==2.0.2) ; extra == 'bigquery'
Requires-Dist: google-auth-httplib2 (==0.1.0) ; extra == 'bigquery'
Requires-Dist: google-auth (==1.27.1) ; extra == 'bigquery'
Requires-Dist: google-cloud-bigquery (==2.11.0) ; extra == 'bigquery'
Requires-Dist: google-cloud-storage (==1.36.2) ; extra == 'bigquery'
Requires-Dist: gsutil (==4.58) ; extra == 'bigquery'
Requires-Dist: urllib3 (<1.25.10,>=1.25.4) ; extra == 'bigquery'
Provides-Extra: snowflake
Requires-Dist: chardet (<4,>=3.0.2) ; extra == 'snowflake'
Requires-Dist: google-api-python-client (==2.0.2) ; extra == 'snowflake'
Requires-Dist: google-auth-httplib2 (==0.1.0) ; extra == 'snowflake'
Requires-Dist: google-auth (==1.27.1) ; extra == 'snowflake'
Requires-Dist: google-cloud-storage (==1.36.2) ; extra == 'snowflake'
Requires-Dist: gsutil (==4.58) ; extra == 'snowflake'
Requires-Dist: oauth2client (==3.0.0) ; extra == 'snowflake'
Requires-Dist: pyOpenSSL (<20.0.0,>=16.2.0) ; extra == 'snowflake'
Requires-Dist: snowflake-connector-python (==2.6.1) ; extra == 'snowflake'


Tinybird CLI
============

The Tinybird command-line tool allows you to use all the Tinybird functionality directly from the command line. Additionally, it includes several functions to create and manage data projects easily.

Changelog
---------

1.0.0b108
*********

- Replace `--populate --sample` by `--populate --subset`, since `sample` was misleading.

1.0.0b107
*********

- Add option --skip-incompatible-partition-key when replacing a data source with condition, i.e: `tb datasource replace <name> --skip-incompatible-partition-key`

1.0.0b106
*********

- Fixed push Kafka DS with custom columns (!3079)

1.0.0b105
*********

- Change `tb pipe ls`, now it returns when a pipe was modified and not just when it was created

1.0.0b104
*********

- Fix CLI format auto detection with URLs (!3054)

1.0.0b103
*********

- Fix `tb push path/` allowing to push the content of a directory.

1.0.0b102
*********

- Add option to clear the workspace by running `tb workspace clear`

1.0.0b101
*********

- Add support for Parquet files

1.0.0b100
*********

- Add `tb materialize path/to/pipe.pipe node_name`. It analyzes the `node_name` SQL query to generate the `.datasource` and `.pipe` files needed to push a new materialize view.

1.0.0b99
********

- Fix broken release 1.0.0b98. The published package missed one dependency required for some commands.

1.0.0b98
********

- `tb auth --interactive` now supports custom regions

1.0.0b97
********

- Add `--sample` option for `--populate`

1.0.0b96
********

- Use 'replace' instead of 'append' when pushing fixtures.

1.0.0b95
********

- Fix broken release 1.0.0b94.

1.0.0b94
********

- Changed the name for workspace plans.

1.0.0b93
********

- Improved error message format pushing a pipe.

1.0.0b92
********

- Added a new command to perform regression tests. See `tb pipe regression-test --help` for more information about the new command.

1.0.0b91
********

- Update clickhouse-toolset to 0.15dev1: Performance improvements in query parsing and replacement and fixes an issue with the M1 build depending on system libraries.

1.0.0b90
********

- Rollback to 1.0.0b88

1.0.0b89
********

- Update clickhouse-toolset to 0.15dev0: Performance improvements in query parsing and replacement and fixes an issue with the M1 build depending on system libraries.


1.0.0b88
********

- Increased timeout for `tb dependencies` for situations where a Data Source contains a large number of dependent Data Sources.


1.0.0b87
********

- Added a way to check the dependencies of a Data Source that would be affected by a partial replace. Example: `tb dependencies --datasource my_datasource --check-for-partial-replace`

1.0.0b86
********

- Return 1 as an exit code (not zero) in case of a problem appending to a datasource

1.0.0b85
********

- Checker should raise an error when fails retrieving most common requests while performing regression tests

1.0.0b84
********

- Improved error message suggesting `--skip-table-checks`
- Return file path for `push` errors

1.0.0b83
********

- Fixed a bug when pushing a pipe with the `TOKEN` command

1.0.0b82
********

- Forcing checker to be a standard pipe even when pushing with force a materialized view pipe

1.0.0b81
********

- Improve message showed in imports/replaces when the operation is not correctly configured.

1.0.0b80
********

- When pulling a resource with versioned dependencies, dependecy names are correctly replaced by the original names

1.0.0b78
********

- When pushing a new resource with versioning, sucessful create message displays the name with the version

1.0.0b77
********
- Changed dry-run prompts to include resources versions

1.0.0b76
********
- Fix authentication using localhost without http/https prefix

1.0.0b75
********
- Add `delete` subcommand to datasource to delete rows matching a SQL condition

1.0.0b74
********
- Fixed problem with new version warning not being displayed

1.0.0b73
********
- Added shortcut `-i` to `tb auth --interactive`
- Removed explorations folder as it is not used and cause confusion

1.0.0b72
********
- Update clickhouse-toolset to 0.14dev1.

1.0.0b71
********
- Fix TABLE macro to work with shared data sources

1.0.0b70
********
- Update clickhouse-toolset to 0.14dev0.

1.0.0b69
********
- Removed `--skip_update_validation` in favor of `--version_warning`

1.0.0b68
********
- Fix installation when the toolset binary dependency isn't available. Improve OSX 11 support.

1.0.0b67
********
- Add support to validate and replace queries locally (on selected architectures and OSs).

1.0.0b66
********
- Added support for multi-region auth

1.0.0b65
********
- Fixes a problem when pushing a Kafka Data Source with the new `KAFKA_STORE_RAW_VALUE` key.
- Improved the message shown when a user tries to `push --force` a Kafka Data Source.
- When using Snowflake connector, the CSV exported to TB will be represented by and empty space between delimeters ( ex: `,,`)

1.0.0b64
********
- Fixes tb auth when already ran a sucessful auth

1.0.0b63
********
- Fix Auth error when trying to remove datasource/pipe

1.0.0b62
********
- Added `--timeout` option when running `tb push <PIPE>`

1.0.0b61
********
- CLI client will retry when reach request limit (HTTP code 429)

1.0.0b60
********
- `push`, `pull` and `append` now work with NDJSON

1.0.0b59
********
- Improve CLI message when GCS compose does not have data because SQL query did not return any

1.0.0b58
********
- Added option `--skip-update-validation` to skip the update validation that the CLI does to check for a new version

1.0.0b57
********
- Support `--token` and `--host` param for `auth` and `workspace` commands. This is useful when you want to automate commands via shell scripts or similar and you want to pass those parameters via environment variables without having to do `tb auth` with the token prompt. For instance `tb --token <token> workspace ls` will list the workspaces for the token passed as a parameter.

1.0.0b56
********
- Fixed push when shared datasources are used in a SQL. Shared datasources names are pushed as-is.

1.0.0b55
********
- Removed the following 'tb auth' commands: 'tb auth use', 'tb auth ls', 'tb auth add', and 'tb auth rm'.
- Fixed 'tb workspace ls' command to list correctly the workspaces a user has access to.
- Added 'tb workspace use' command to switch between the workspaces a user has access to.

1.0.0b54
********
- Fixed push pipes with escaped quotes
- Bump snowflake client to 2.6.1

1.0.0b53
********
- Changed `tb datasource generate` and `tb datasource analyze` to use the new `v0/analyze` API. It works with local and remote CSV and NDJSON files and Snowflake tables.

1.0.0b52
********
- Added the posibility of using env variables in a template. For example, you can have a statements like this

```
INCLUDE "includes/${env}_secrests.incl"
```

and call tb like this

```
env=test tb push file.datasource
```
- Added --no-versions to push so dependencies versions are not used. Useful for data migrations.



1.0.0b51
********
- Changed internal user authentication.
- Added the possibility to use a workspace as a dependecy. See `tb push --workspace` option.

1.0.0b50
********
- ``Fixed`` Fixed duplicated rows in snowflake connector import

1.0.0b49
********
- Fixed snowflake secrets file generation when running `tb auth --connector snowflake` wizard

1.0.0b48
********
- When new version available, the message will return the pip command to execute


1.0.0b47
********
- Fix error given when trying to delete a non-existent data source
- Add flag to save data sources and pipes into their own directories, it respects the default behaviour
- Instead of avoid push an already defined data source from a materialized node, only raise an error if the schema and the engine don't match
- Capture error properly during a populate job that fails


1.0.0b46
********
- Enable connection commands
- Support push and pull Kafka Data Sources

1.0.0b45
********
- Add `shared from` to the `datasource ls` command to show Data Source's original Workspace.


1.0.0b44
********

- Support SQL in nodes with no indentation
- Standardize `ls` command output
- Add `--only-response-times` flag when pushing a pipe. It'll just run regression tests related to check response times


1.0.0b43
********

- Improve pull command to make it able to interact with shared Data Sources.


1.0.0b42
********

- Improve parser's error handling of files: add line number


1.0.0b41
********

- Fix URL escaping with tb generate


1.0.0b40
********

- Automatically prettify .tinyb files


1.0.0b39
********

- Improved host option. You can use URLs ended with a backslash or not. Example: `tb --host https://my-host/ auth`


1.0.0b38
********

- Fixed misleading warnings when pushing a pipe, related to join tables.
- Fixed a bug parsing the data sources statistics when running ``tb datasource ls``
- Changed error message in case the datasource pushed has incorrect syntax, now it gives hints on the part of the schema that is wrong.


1.0.0b37
********

- Gives better error messages in case the SQL in a node exceeds the current size limits (8KB).


1.0.0b36
********

- The option `--ignore-sql-errors` in `tb push` is no longer needed as we have fixed one of the underlying issues that was forcing its use on certain occasions.


1.0.0b35
********

- Added ``tb connection' commands``. Supported connectors: Kafka
- Added ``tb datasource connect <id>`` command. Supported connectors: Kafka

1.0.0b34
********

- Improved the message showed in case a Pipe being pushed gets removed in the middle of the operation.
- Improved the way the CLI detect changes when working with resources with and without prefixes.


1.0.0b33
********

- Enables the possibility to add new columns to an existing datasource.


1.0.0b32
********

- Fix ``drop-prefix`` command, now it drops first pipes and its dependencies and then source data sources


1.0.0b31
********

- Do no report negative lines on append
- Auth improvements and changes. Credentials precendence set to `--token` => `TB_TOKEN` envvar => `.tinyb` file.


1.0.0b30
********

- Improve server error handling and sort datasource's dependencies.
- Fix the Job tracking in cli operations when the Job enters cancelled status.
- Fix returning an error if there are wrong options when creating a data source


1.0.0b29
********

- Added support for Python 3.9


1.0.0b28
********

- Changed ``--skip-table-check`` error message to indicate how to use the flag
- Fixed checking Content-Type header


1.0.0b27
********

- Added flag ``--skip-table-check`` to skip materialized view and table checks

1.0.0b26
********

- Fix regression tests execution.

1.0.0b25
********

- Added support for job cancellation `tb job cancel <job_id>`

1.0.0b24
********

- Added support for `ingesting data from Snowflake <https://docs.tinybird.co/cli/snowflake.html>`_


1.0.0b23
********

- Added support for truncate operations `tb datasource truncate <datasource_name>`
- Added support for replace operations `tb datasource replace <datasource_name> <URL or file>`
- Added support for replace with condition operations `tb datasource replace <datasource_name> <URL or file> --sql-condition="country='ES'"`
- Added support for `ingesting data from BigQuery <https://docs.tinybird.co/cli/bigquery.html>`_
- Fix --wait option on populate
- Report progress bar when waiting for a populate job to finish
- Pull also resources with prefixes
- Disable detecting TOKEN envvar
- Fix auth from other commands


1.0.0b22
********

- Add support for ``ENGINE_SETTINGS`` and ``ENGINE_TTL``


1.0.0b21
********

- Added population time to populate pipe option. It returns the actual population time from the population job when debug is used along with populate and wait options.

1.0.0b20
********

- Add missing dependency. It fixes version 1.0.0b19

1.0.0b19
********

- Remove red color on pull (#847) (!1243)
- Change color palette feedback (!1243)
- When doing a query against a datasource that doesn't exist, the CLI returns a proper error (#846) (!1243)
- Fix 'blog_log' key error when pulling (#656) (!1243)
- Make tb commands async (!1243)
- Display a warning if there is a more recent version (#950) (!1243)

1.0.0b18
********

- Fix sql command (!1264)

1.0.0b17
********

- Fix auth CLI workspace commands (!1256)

1.0.0b16
********

- Add CLI workspace commands (!1246)

1.0.0b15
********

- Support for CSV and JSON output to "sql" CLI command
- Fixed ``datasource rm`` command not working when there is a MV pointing to the datasource being removed


1.0.0b14
********

- Added missed dependency. It fixes version 1.0.0b13.


1.0.0b13
********

- Added wait option to push command for waiting the populate job to finish.
- Fixed appending large files (more than 2GB). Now, files are uploaded using multipart and without loading the whole file in memory. (!833)(!1221)
- Added feedback about appended rows, total rows and errors to append command output  (!1205)

1.0.0b12
********

- Added support for `ENGINE options to match the API parameters <https://docs.tinybird.co/api-reference/datasource-api.html#engines-parameters-and-options>`_
- Deprecating ENGINE_FULL, SORTING_KEY, PRIMARY_KEY, SAMPLING_KEY, and TTL options.
- Added job commands to list jobs and see job details
- Added pipe_stats command
- New set of tokens are created per prefix
- Fixed drop-prefix to remove resources in the right order

1.0.0b11
********

- Better error reporting when a table for a data source does not exist (!1020)

1.0.0b10
********

- Better error reporting when pushing a not supported file extension (!966)

1.0.0b9
*******

- Fix parsing schemas in datasource files when using aggregate function (!956)

1.0.0b8
*******

- Fix CLI error when pushing fixtures (!938)

2020-08-28 1.0.0b7
******************

- Support for Python versions 3.6, 3.7 and 3.8 for both MacOSX and Linux

2020-08-26: 1.0.0b6
*******************

- Fixes saving pipe descriptions on pull and push


2020-08-24: 1.0.0b5
*******************
- Fixes appending a datasource from a URL


2020-08-10: 1.0.0b4
*******************
- Fixes the version parser.

2020-08-10: 1.0.0b3
*******************
- Limited the amount of rows fetched when running ``tb sql`` to 100. Added ``--row-limit``.
- Fixed warning when pipes use internal tables like ``datasources_ops_log``
- Raise an error when ``INSERT`` sql statement is used.


