v1.6.0
v1.6.0 - The ✌️ V2 Release
🛠️ Added
- CS Tools is now primarily implemented from the ThoughtSpot V2 REST API
tools bulk-deleter from-tag
delete all objects which are marked with a specific tagtools bulk-sharing from-tag
share all objects which are marked with a specific tag to any number of groupstools user-management transfer --tags
assign the author of all objects which are marked with a specific tagtools seachable audit-logs
consume and store the Audit Logs APItools seachable tml
store your TML in a syncer, or parse it with database-native JSON functions- Faster
INSERT
andUPSERT
performance on SQLite and Databricks Syncers - Excel Syncer now supports appending a suffix to the filename, to help avoid overwriting existing files
- Mock Syncer added to report Table DDL that is generated from commands which support the
--syncer
interface - All commands now properly report OS status codes (
0 = success
,1 = failure
)
🔧 Modified
- Known errors (
exceptions.CSToolsError
) have been revamped to include more user-friendly messages and mitigations tools scriptability
rewritten to align to more with thetools git
interface
🐛 Bugfix
- Add
TS_SHARING_ACCESS.share_type (VARCHAR)
totools searchable metadata
DatabaseSyncers
which followPUT 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 withuv
entirely - Replaced
cs_tools.api.middlewares
with a leanercs_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 inutils.py
- Moved Documentation generators from
cs_tools.md_ext
todocs/hooks/*.py
- Refreshed Documentation to be leaneer and more generated instead of manual maintenance
Full Changelog: v1.5.12...v1.6.0