Skip to content

Releases: TrueCrimeDev/Tableau-LSP

v1.11.0 — Field usage, calc lineage, new inspector sections, keybinding fix

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 14 Jul 16:00

Added

  • Field-usage analysis — calc rows show "· N sheets"; calculations no worksheet or live calculation uses get an unused badge. Hover a calc to see its full lineage: sheets it appears on, fields/calcs/parameters it uses, and calcs that use it.
  • Four new inspector sections: Parameters (current values + domains), Sheet Filters (per worksheet, calc references shown by caption), Dashboards (size + expandable worksheet zones), Hierarchies.

Changed

  • Keyboard shortcuts no longer override VS Code defaults. Ctrl+Shift+L (and V/I/C/H/R) are back to their core meanings in .twbl files. Extension shortcuts now use two-step Ctrl+Alt+T chords on every platform:

    Chord Action
    Ctrl+Alt+T V Validate expression
    Ctrl+Alt+T I Insert IF statement
    Ctrl+Alt+T C Insert CASE statement
    Ctrl+Alt+T L Insert LOD expression
    Ctrl+Alt+T H Function help
    Ctrl+Alt+T R Restart language server

    macOS uses Ctrl (not Cmd) for these; GNOME users may need to free Ctrl+Alt+T from the system terminal shortcut.

Fixed

  • Dashboard zones parse the modern type-v2 format (dashboards previously reported zero zones).
  • One XML parse per sidebar refresh instead of nine.

Install

code --install-extension tableau-language-support-1.11.0.vsix --force

v1.10.0 — Calc Bank write path, live refresh, click-to-open, workbook insert

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 14 Jul 13:43

Added

  • Add to Bank — two ways in:
    • Select a formula in a .twbl editor → right-click → Add Selection to Calc Bank. A leading // Title line names the entry automatically; otherwise you're prompted.
    • Hover any calculated field in the workbook inspector → save icon adds it to a bank file.
    • Destination logic: your configured bank file (quick-pick when there are several), the workspace _calc_bank.twbl if that's what the sidebar is showing, or a save dialog to start a new bank.
  • Live refresh — editing a bank file updates the sidebar on save, no ↺ needed.
  • Click to open — click any bank entry to jump to it in its file; click a file header to open the file.
  • Straight to workbook — the + action on a bank row adds the calculation to the active .twb as a real calculated field, with the same transactional backup/verify pipeline as the Add Calculated Field form.

Fixed (from pre-release adversarial review)

  • Bank writes now abort on file read errors instead of overwriting the bank with a single entry.
  • Titles and formulas are sanitized so every saved entry round-trips as exactly one bank block.
  • The webview can only open files that are actually in the bank.

Install

code --install-extension tableau-language-support-1.10.0.vsix --force

v1.9.0 — File-backed Calculation Bank

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 14 Jul 00:37

Added

  • Calculation Bank now loads from your own .twbl files. Click the + button in the Calculation Bank section header to add one or more bank files (e.g. bank.twbl) — the list persists across sessions, and each file can be removed with its trash button.
  • Every calculation row has two hover actions: → insert places the formula (with its // Title header) into the active file at the cursor, and copy puts it on the clipboard.
  • With no files configured, the workspace _calc_bank.twbl still loads as before.

Fixed

  • Hardened the formula syntax highlighter against pathological formulas in imported bank files (removed an unbounded expansion loop).

Bank file format

Calculations separated by blank lines, each starting with a // Title comment line:

// Profit Ratio
SUM([Profit]) / SUM([Sales])

// Age Label
STR([Age])

Install

code --install-extension tableau-language-support-1.9.0.vsix --force

(.zip is the same archive; rename to .vsix if your browser saved it that way.)

v1.8.0 — Sidebar commands, Theme Vault persistence, test-infra repair

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 13 Jul 19:32

Added

  • Theme Vault persistence — save, load, and delete named multi-palette themes from the sidebar (stored in extension global state).
  • Clickable Most Used Commands — all seven rows in the Commands & Reference section now execute their commands (allowlist-validated).
  • Datatype badges on calculated fields in the workbook inspector.

Fixed

  • Cancelling the duplicate-palette dialog while applying a theme now aborts the remaining palettes instead of writing them anyway.
  • Datatype badges read from the calculation's own column definition (no more picking up connection schema columns).
  • Palette colors are hex-validated at the host boundary before being written into workbook/Preferences.tps XML.
  • Real cache hit-rate tracking in memory stats (previously a hardcoded 0.85).
  • Flaky wall-clock timing test stabilized; unit suite (699 tests) now runs in CI.
  • README: correct VS Code 1.95 requirement, removed fictional release notes, documented the full sidebar suite and @tableau chat.
  • Repaired 7 corrupted test-infrastructure files; normalized line endings repo-wide via .gitattributes.

Install

Download tableau-language-support-1.8.0.vsix and run:

code --install-extension tableau-language-support-1.8.0.vsix --force

(The .zip is the same archive for manual extraction.)

Tableau Language Support v1.7.3

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 10 Jul 16:20
b9119f9

Tableau Language Support 1.7.3

This release brings the complete 1.7.x Tableau workbook tooling update into one manually installable VSIX.

Highlights

  • Uses workbook datasource fields as the shared definition model for LSP completion, hover, diagnostics, navigation, field swapping, and the @tableau chat participant.
  • Adds local Tableau Desktop and repository connectors with configurable calculation-formatting profiles.
  • Adds native calculated-field insertion for .twb workbooks with timestamped backups, persisted XML verification, and automatic rollback.
  • Adds optional verified Tableau relaunch after calculated-field, border, theme, and bulk-formatting writes.
  • Adds a synchronized Common Calculations library with a base Profit Ratio calculation and up to ten reusable templates.
  • Adds progressive disclosure to the calculated-field and Common Calculations menus.
  • Adds Update-FromGitHub.ps1 for safe, fast-forward-only repository updates from any working directory.
  • Replaces the generic Activity Bar symbol with a monochrome Tableau cross-constellation icon.

Validation

  • TypeScript typecheck passed.
  • 24 deterministic feature tests passed across four suites.
  • Production extension and language-server bundles built successfully.
  • GitHub Actions passed on Ubuntu, Windows, and macOS with Node.js 20.

For a manual install, download the VSIX and run:

code --install-extension .\tableau-language-support-1.7.3.vsix --force

Tableau Language Support v1.7.0

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 09 Jul 21:22

Highlights

  • Automatically indexes fields from open Tableau .twb and .twbx workbooks and shares one canonical schema between the LSP and @tableau chat.
  • Adds datasource-qualified completion, hover, diagnostics, references, field swapping, and go-to-definition.
  • Preserves duplicate captions, local-name metadata, datatype/role information, and exact datasource provenance.
  • Hardens workbook refresh handling for tab changes, background edits, atomic saves, multiple workbooks, and multi-root workspaces.

Validation

  • TypeScript typecheck passed.
  • 13 targeted regression suites passed (199 tests).
  • Production extension and language-server bundles built successfully.
  • VSIX packaging completed successfully.

v1.6.0

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 09 Jul 13:44

New: @tableau Copilot chat participant — ask about the active .twb workbook (@tableau what borders are set?) with /borders, /calcs, /fields commands, answered from a parsed workbook digest.

New: datasource field browser in the Tableau Tools sidebar — click a datasource to expand its plain fields with datatypes, click a field to copy [Field Name], or copy all field names at once.

New: field-swap hover — hover a [Field] in a .twbl calculation and click an alternative datasource field (same-datatype first) to swap the reference in place.

New: Format Stripper sidebar section with live scan counts — border stripping now inserts explicit neutralising nodes per worksheet, handling sheets on Tableau-default borders, and is idempotent.

Changed: field extraction walks relation columns and metadata-records, so non-renamed fields are recognised. Minimum VS Code is now 1.95 (Chat/LM APIs).

Install: download the .vsix and run code --install-extension tableau-language-support-1.6.0.vsix

v1.5.18

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 08 Jul 02:44

New: click the field-definitions button on any datasource in the Tableau Tools sidebar to generate fields.d.twbl in your workspace root from that datasource's fields. The language server loads and hot-reloads this file, so hover/completion immediately know your workbook's real fields. Per-datasource sections merge — regenerating one datasource leaves the others intact.

Install: code --install-extension tableau-language-support-1.5.18.vsix --force

v1.5.17

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 07 Jul 14:00

No more "Copy" CodeLens buttons inside .d.twbl declaration files (twbl.d.twbl, fields.d.twbl) — they're reference docs, not user calculations.

Install: code --install-extension tableau-language-support-1.5.17.vsix --force

v1.5.16

Choose a tag to compare

@TrueCrimeDev TrueCrimeDev released this 07 Jul 13:18

Fixes packaging: twb-language-configuration.json was missing from the VSIX, breaking comment/bracket behavior in .twb files for installed (non-dev) builds.

Install: download the .vsix below, then code --install-extension tableau-language-support-1.5.16.vsix --force