Skip to content

Releases: thoughtspot/cs_tools

v1.6.1

04 Mar 13:02
Compare
Choose a tag to compare

v1.6.1 - Sweeping bugs under the rug

🛠️   Added

👻

🔧   Modified

  • Aligned wording on the --org parameter

🐛   Bugfix

  • Directories are handled more appropriately now
  • Incorrect user input is warned / errorred more clearly
  • New "cluster maintenance" check

❌   Removed

👻

🫀   CS Tools Internals

  • Some documentation typo cleanups
  • Added a check for rustc on offline installs
  • Documentation for offline installs
  • More CONTRIBUTING.md improvements

Full Changelog: v1.6.0...v1.6.1

v1.6.0

28 Feb 18:29
Compare
Choose a tag to compare

v1.6.0 - The ✌️ V2 Release

🛠️   Added

🔧   Modified

  • Known errors (exceptions.CSToolsError) have been revamped to include more user-friendly messages and mitigations
  • tools scriptability rewritten to align to more with the tools git interface

🐛   Bugfix

  • Add TS_SHARING_ACCESS.share_type (VARCHAR) to tools searchable metadata
  • DatabaseSyncers which follow PUT FILE -> COPY/MERGE INTO workflow now support column header reording / redefinition
  • Column headers are now parsed appropriately on Excel Syncer (#192)
  • All DATETIME fields in extracted data are now converted to UTC, regardless of the Cluster's timezone

❌   Removed

  • V1 REST API endpoints are in a deprecated cycle or replaced in favor of V2
  • Opt-in callhome analytics / metadata
  • Falcon Syncer reliably only supports Basic Auth, other authentication methods are removed

🫀   CS Tools Internals

  • Added a CONTRIBUTING guide with CS Tools development setup
  • Replaced venv+pip bootstrapping and Virtual Environment management with uv entirely
  • Replaced cs_tools.api.middlewares with a leaner cs_tools.api.client + cs_tools.api.workflows layer (thanks V2!)
  • All REST API calls are now made asynchronously with httpx , with complementary async-to-sync translators in utils.py
  • Moved Documentation generators from cs_tools.md_ext to docs/hooks/*.py
  • Refreshed Documentation to be leaneer and more generated instead of manual maintenance

Full Changelog: v1.5.12...v1.6.0

v1.5.13b4

21 Jan 21:56
Compare
Choose a tag to compare
v1.5.13b4 Pre-release
Pre-release
  • hotfix

v1.5.12

22 Nov 01:45
Compare
Choose a tag to compare

v1.5.12 - Hotfix

🔧 Modified

🫀 CS Tools Internals

  • fixes type on trusted install from pypi, github
  • pin pydantic == 2.9.2

This is part of the major 1.5.0 series of releases, read about it in Our Documentation.


Full Changelog: v1.5.11...v1.5.12

v1.5.11

04 Nov 14:56
Compare
Choose a tag to compare

v1.5.11 - Bugfixes

🛠️ Added

🐛 Bugfix

  • prefer TIMESTAMP over DateTime in the Searchable data model
  • allow delimiter character in free form fields (Title, Description) in the Searchable data model
  • support Falcon DATE_TIME data type in Searchable SpotApp
  • fix for system object references on ThoughtSpot 10.1 and greater for certain DatabaseSyncers
  • fix for #157 | scriptability export does not support Models

🫀 CS Tools Internals

  • fixes for Falcon data-loading API intermediate stages
  • switch intermediate temporary-date syncer from CSV -> SQLite to handle referential integrity
  • fix for modern pydantic warning the CLI on implicit type casts
  • add missing GroupPrivilege enumeration
  • update dependencies and CI

This is part of the major 1.5.0 series of releases, read about it in Our Documentation.


Full Changelog: v1.5.10...v1.5.11

v1.5.10

16 Sep 15:18
Compare
Choose a tag to compare

v1.5.10 - Bugfixes

🛠️ Added

  • introduced searchable audit-logs --help (Fetch Logs API) to fetch data

🐛 Bugfix

🫀 CS Tools Internals

  • ci installed can skip recording and sending analytics by setting CS_TOOLS_ANALYTICS_OPT_OUT (#160)
  • tools will now always send a proper os-level exit code (#161)
  • ensure that pip is installed during the bootstrapping of our virtual environment
  • ensure that rust-based build dependencies are downloaded for offline installs (cs_tools self download --help)
  • remove manual check of Syncer dependencies, always deferring to pip

This is part of the major 1.5.0 series of releases, read about it in Our Documentation.


Full Changelog: v1.5.9...v1.5.10

v1.5.9

29 Jul 17:14
Compare
Choose a tag to compare

v1.5.9 - DatabaseSyncer and Offline Install improvements

🛠️ Added

  • wait_for_dataload_completion = true|false parameter to Falcon Syncer
  • experimental support for PUT -> COPY INTO data loading into Databricks Syncer
  • identation level for prettier output in JSON Syncer
  • clamping and warnings on searchable metadata when TS_METADATA_COLUMN.INDEX_PRIORITY is set out of bounds (1-10)

🔧 Modified

🐛 Bugfix

  • fix for falcon-sharding gather not collecting the correct data from a private API
  • #145 | fix for scriptability export missing Connections
  • #156 | fix for JSON Syncer, date[time] not serializable
  • fix for Snowflake Syncer for private key-pair support
  • fix for searchable deploy properly customizing TML on all supported DatabaseSyncer dialects

🫀 CS Tools Internals

  • compat for api.middlewares.search back to TS 9.5.0
  • don't rollback DatabaseSyncer transactions on known errors (click.Abort , click.Exit)
  • vendor keyboard interactivity (eg. for tools like Archiver)
  • fully support air-gapped offline installs with cs_tools self download

This is part of the major 1.5.0 series of releases, read about it in Our Documentation.


Full Changelog: v1.5.8...v1.5.9

v1.5.8

24 Jun 15:51
Compare
Choose a tag to compare

v1.5.8 - Shrek Trail Mix, a mixed bag of bugs and guts and stuff

🛠️ Added

  • is_version_controlled to searchable for TS_METADATA_OBJECT and TS_DEPENDENT_OBJECT to track objects which are marked under VCS
  • better user-facing logging for scriptability export when tml/export fails
  • allow dynamic table construction Database Syncers on extractor search

🐛 Bugfix

  • ignore default data source on ThoughtSpot SW 9.5.x
  • #144 | clean NUL bytes from being written to CSV Syncer
  • fixes for user-management sync when caching existing user principals
  • check (only from the cli) and attempt to remedy system-level CS Tools installations
  • fix for column case sensitivity in the searchable deploy SpotApp
  • fix for Falcon Syncer data types not compiling correctly from sqlalchemy custom types
  • fix for Falcon Syncer not appropriately sending data to ThoughtSpot
  • fix for Falcon load_strategy , which should reflect the correct empty_target = true|false
  • fix for searchable metadata Database Syncer load_strategy truncating on multipart file uploads

❎ Removed

  • disallow TS_BI_SERVER extract for searchable for the Falcon Syncer

🫀 CS Tools Internals

  • better Anacoda environment detection
  • more descriptive error when the Syncer format is in an invalid state
  • added caching on repeated metadata/details calls (objects are not expected to change greatly intra-process)
  • always save configs, even if they don't pass cluster check
  • add a secure fileshare link when submitting bug reports
  • fetch column schema details on the thoughtspot.search middleware
  • fetch bad records on thoughtspot.tsload middleware when init or commit fails
  • fix for background analytics worker

This is part of the major 1.5.0 series of releases, read about it in Our Documentation.


Full Changelog: v1.5.7...v1.5.8

v1.5.7

22 May 03:28
Compare
Choose a tag to compare

v1.5.7 - Hotfixes

🛠️ Added

  • add --include-system-content option #142 | scriptability export no longer exports objects owned by tsadmin
  • allow self download to build dependencies against any of the Syncer dialects

🐛 Bugfix

  • really fix for when metadata/details returns a corrupted object

🫀 CS Tools Internals

  • fix for self download , offline install generator (broken due to dependency on rust-accelerated dependencies)

This is part of the major 1.5.0 series of releases, read about it in Our Documentation.


Full Changelog: v1.5.6...v1.5.7

v1.5.6

21 May 02:06
Compare
Choose a tag to compare

v1.5.6 - Even more Syncers!

🛠️ Added

🔧 Modified

  • #137 | ignore system-owned content on scriptability export
  • self update should now index to the global/system python instead of the virtual env python

🐛 Bugfix

  • fix for #136 | TMLFS should detect the proper root directory
  • fix for when metadata/details returns a corrupted object
  • fix to proper data type for TS_METADATA_COLUMN.SPOT_IQ_PREFERENCE in TML of the Searchable SpotApp

🫀 CS Tools Internals

  • partial fix for #135 | CSToolsError takes no keyword arguments
  • finalize some CI error handling

This is part of the major 1.5.0 series of releases, read about it in Our Documentation.


Full Changelog: v1.5.5...v1.5.6