Changelog

Every release of TableDI 2, including what isn't there yet. The download page always serves the current version. The history of the previous app, TableDI 0.0.x, is further down.

On Windows? TableDI 2 for Windows is in progress. There's no Windows download yet; it shows up on this page the day it ships.

2.0.2 1 October 2026 Current

Rows from merge and dedupe jobs now lead back to the files they came from.

Result
  • “Where from” works for every kind of job. In reconciliation jobs it already opened the source rows. In jobs that merge several sheets or remove duplicates it said “0 entries” and couldn't be opened, although the rows could be traced. It now reads Source rows and opens the same panel: which file, which row — in the free version too.
2.0.1 1 October 2026

A small release that takes out an option that didn't do what it said.

Delivery
  • “Hand it to another job as a source” is gone. In 2.0.0 it only recorded the handover — the other job never read the result — so it shouldn't have been on the delivery screen, let alone listed as part of the lifetime edition. If a job had it selected, its deliveries now go to the job's folder instead. It comes back when one job can really feed another.
  • The card that shows where the free version stops and the lifetime edition starts no longer lists “one job feeding another”.
2.0.0 30 September 2026

The first release of TableDI 2 — a new desktop app, built from scratch, for file work you redo every period. You set a job up once; each period you drop in the new files and run it again, and every figure points back to the row, the period and the rule version it came from.

Jobs and periods
  • A job keeps a period's sources, rules and delivery. Start one from one to five files — Excel (.xlsx), CSV, or a bank statement as a PDF that contains text — and fill in five short steps, or let AI draft them.
  • Six ready-made jobs with sample files — bank reconciliation, invoices vs payments, sales by store, inventory & reorder, payroll check, and customer list merge & dedupe (with a Chinese set in the Chinese interface) — so you can walk through a whole period before using your own files.
  • Preflight is a dry run of the new period: which columns match last period's, what was renamed or went missing, how the rows compare with last period, and what would be held back. You also choose how the period goes in: add to history, this period only, or update on a key.
  • The job overview shows every step with the rows it took in and kept, and every number opens the rows behind it. This period lists what's due across all jobs; Deliveries lists everything every job has handed over.
Exceptions
  • Rows that don't match wait on the exception bench, grouped by cause: unmatched, not received, amount differs, duplicate key, blank key, type changed, and unclear digits read from a PDF.
  • Ways out: change the source file, waive for this period (with a reason that goes into the delivery), mark as to do — and in the lifetime edition, add a rule with a preview, or carry the row to next period, where it closes itself once the other side arrives.
  • Generating a delivery while items are still to confirm asks you first; nothing is changed behind your back.
Rules
  • Rules are ordinary steps — read the file, clean up, match on the key, compare amounts, sum up, computed columns, deliver. Every change makes a new rules version; earlier versions are kept.
Delivery
  • An Excel report with three sheets — summary, detail and exceptions — or a CSV, saved to a folder; or a new email in your own mail app with the file shown in its folder, ready to drag in as the attachment.
  • In the lifetime edition: a report template (heading, column order, number format) and a one-page PDF summary.
  • The delivery log lists every delivery with its period, format, destination and file.
History (lifetime)
  • Every period in one table, filtered and exported a stretch at a time; any number's last six periods; and back to the previous period's result. Past Excel's single-sheet row limit, filtering and export still work.
Do it once
  • Compare two files, match two sheets on a key, merge several sheets, remove duplicates, or turn a CSV into a clean table — free, unlimited, and no job needed. It's the same engine as the free tools on tabledi.com.
AI — optional, with your own key
  • Works with any OpenAI-compatible provider, called straight from your Mac. It drafts a job from the column names and first 50 rows, explains an exception, suggests a rule — with the before and after figures worked out by the engine, not the model — and writes a one-line preflight summary. No period ever runs through AI.
Your data
  • The engine runs inside the app and listens only on your Mac. Settings → Where this app connects lists every destination — the license service, the update check, anonymous counts you can switch off, and your AI provider — and a log records each request.
  • A weekly backup (.tdbk2) to Documents › TableDI 2 › Backups, on by default. Deleted jobs, periods and sources stay in the recycle bin for 30 days.
  • Export a diagnostics bundle writes a zip to your desktop; nothing is sent automatically. If the engine won't start, the error screen can restart it, open the log folder, or export the bundle.
License and updates
  • The free version needs no account. A key is activated in Settings → License and moved with Move to another machine; TableDI 2 licenses go on sale soon.
  • New versions are announced on this page and on the download page. The app checks GitHub once a day for a newer version (switchable in Settings) and never downloads or installs anything on its own.
Languages
  • The interface is in English and Simplified Chinese.

macOS: Apple silicon and Intel. Not yet: Windows, which is in progress.

TableDI 2 installs next to TableDI 0.0.9 and leaves it alone — you can keep both. To bring your tables over, export a backup (.tdbk) from 0.0.9 and import it in TableDI 2. Licenses bought for TableDI 0.0.9 keep working there; they don't unlock TableDI 2. Step by step: Bring your data from TableDI 0.0.9.

TableDI 0.0.x

The previous app, kept here as it was published. Its downloads, manual and license notes are on the TableDI 0.0.9 page.

0.0.9 31 August 2026

The first build that is genuinely an English product rather than a translated one — and the release where AI started working again, after being broken by our own usage-limit check.

A fully English app
  • Install it on an English system and everything is in English — the interface, the native macOS and Windows dialogs, the menu bar, the splash screen, the prices, and what the AI says back to you. TableDI picks its language from your system (Chinese → Chinese, everything else → English) and remembers it if you switch by hand. Nothing changes for Chinese users.
  • Four panels that had never been translated now are: Desktop settings (License, Privacy & diagnostics, Backup, About), the first-run welcome, the upgrade prompt, and the cloud migration wizard. Those are exactly the screens a new user outside China hits first, and until now they were Chinese-only.
  • Prices and links follow your language. The English interface shows USD ($7.99/mo · $49/yr · $99 lifetime) and its "Upgrade", "Pricing", "Help" and "Download update" links go to tabledi.com. They used to point at the Chinese site regardless of language — which is how the in-app upgrade button ended up on a page that didn't exist in English.
  • China-specific sections (VAT invoices, WeChat groups) are hidden entirely in English rather than leaving an empty divider behind. Assorted hardcoded Chinese in the recorder, the formula panel, template publishing and dashboard stats is now in the language files.
AI
  • AI works again. It had been failing on every call. The desktop build ships its own license check, and the way it expressed "unlimited AI usage" was a sentinel value of -1. The usage model has no concept of "unlimited", so -1 was stored as a real credit balance — a negative one — and every AI request was rejected as out of quota, with Credit: -1 in the corner of the window. Desktop AI runs on your own API key at your own cost, so there should never have been a quota here at all. Fixed.
  • The AI no longer answers English users in Chinese. Two classes of prompt we send to the model were still Chinese even in the English build: the natural-language query helper, and the "AI suggestion" step inside the guided formula panels (VLOOKUP, Summarize, Split table, image-to-table OCR) — those were labeled English but Chinese all the way through. All rewritten in English, with language-neutral prompts now explicitly told to answer in the user's language.
Free version
  • The free version can build one dashboard. The site has always said so; the app refused every dashboard. Now the first one is free and the second one is what asks you to upgrade.
  • Closed a way around that limit: building a dashboard straight from a table used to skip the check entirely.
Windows
  • "Open TableDI and activate" from the purchase page now works on Windows. It used to start a second TableDI process against the same data folder, and the activation simply never happened. There's now a single-instance lock, and the activation link is handed to the window you already have open.

macOS only. The Windows installer is built on a separate machine and hasn't shipped in English yet, so there is no Windows download here — see the note at the top of this page.

0.0.8 28 July 2026

Made it possible for free users to get their own data out through the interface, and removed two things that interrupted you mid-work.

Getting your data out
  • Free users could not export their own data from the interface. Encrypted .tdbk backup has always been a free feature, but the only ways to reach it were a keyboard shortcut nobody knew about, an avatar menu the layout didn't render, and a Pro badge that opened an upgrade prompt instead of the panel. So the promise — your data is yours, export it any time — was true in the code and false on screen. There is now a Desktop settings item in the left sidebar that opens straight onto the Backup page.
  • The existing "Settings" in the sidebar is workspace settings (name and members), which is where everyone looked for backup first and didn't find it. The two are now named distinctly.
Interruptions
  • Being thrown back to a login page mid-session. 0.0.7 fixed the token failing at startup; tokens also expire while you work — activating or releasing a license restarts the engine, and the in-memory token table goes with it. The next API call then failed and the interface navigated to a login page that a desktop build has no credentials for. It now re-fetches the token and replays the request silently, and the router blocks any path to that login page.
  • The "new version available, reloading in N seconds" popup is gone. That is a server-deployment mechanism from the cloud edition; the desktop interface is inside the application, so it can't happen. It fired after every upgrade and force-reloaded you out of whatever you were doing.

macOS only.

0.0.7 22 July 2026

Fixes the real reason Windows builds appeared to do nothing when you double-clicked them, plus scheduled automations that had never actually run.

Windows startup
  • The bundled Java runtime had never been used on Windows. The launcher looked for a file called java, but on Windows it's java.exe — so it decided the bundled runtime was missing and quietly fell back to whatever Java was on your system PATH. On a machine without Java 21 the engine simply never started, which looked like "double-click does nothing". Machines that happened to have Java installed worked fine, which is why this survived so long — our own build machine had it. The packaged app now always uses the runtime inside it, and says so loudly if that runtime is missing instead of silently degrading.
  • You can see it starting now. The window used to be created only after the engine was fully up — up to 60 seconds of nothing on screen (measured at ~13.5s on a normal Windows machine, longer on older ones). There's now a splash screen from the moment you double-click, showing which stage it's on.
  • Failures are visible. A failed start used to quit the process with no message at all. You now get a dialog with the error, the log file path, and a button that opens the log folder. The startup timeout also went from 60s to 90s for slow machines.
Scheduled automations
  • Nothing on a schedule had ever run. A development-only setting that mutes the scheduler had made it into the release build — and it was malformed on top of that, so the scheduler didn't start late, it failed to start at all. Scheduled table refreshes, auto-grow, and every time-triggered workflow were affected. Fixed.
Backups and migration
  • Importing a .tdbk backup always failed on Windows. The import didn't stop the engine first, and the engine was holding file handles open — which Unix tolerates and Windows doesn't. Import now stops the engine and restarts it afterwards, whether the import succeeded or not.
  • Imports broke when the temp folder was on another drive. Extraction used the system temp directory and then renamed the result into place; if the two were on different volumes, that rename fails. Temporary files now live on the same volume as your data.
  • A detected backup that failed to import used to say nothing at all — it looked exactly like "no backup found". You now get an explicit message with the reason, the log path, and confirmation that your existing data wasn't touched.
  • Backup size estimation no longer depends on a Unix-only command, so it works on Windows.
0.0.6 23 June 2026

Export fixes, number formats that survive aggregation, and update notifications.

  • Free-plan exports were being blocked entirely. The paywall filter treated export as a paid-only feature, so whenever the front and back ends disagreed about license state you got a hard failure — "export failed / file not found" — rather than a capped export. Export never hard-fails now: the free version exports the first 1,000 rows per sheet, the paid version exports everything, and the full encrypted backup was always free either way.
  • Imports keep their file name. Importing an Excel or CSV file names the new sheet after the file instead of "Untitled".
  • Export messages tell the truth. No more "download succeeded" appearing alongside an error. CSV export now asks where to save, and only reports success once the file is actually on disk.
  • Aggregations inherit number formats. Summing or aggregating a column that has a currency, decimal or thousands format produces a result column with the same format (counts and distinct counts excepted).
  • Update notifications. Settings gained an About page with the current version and a check for updates; the main window tells you when a newer release is out.
0.0.4 20 June 2026

Automatic backup detection on startup, and the fix for the blank screen after activating.

  • Activating a license left you on a blank screen. Activation restarts the local engine so the new features take effect, but the restart picked a fresh port while the interface reloaded the old one — so it reloaded a port with nothing behind it. Every paid activation on 0.0.2 hit this. Fixed by keeping the port across restarts.
  • Backups are detected on startup. If there's an encrypted backup waiting in your downloads folder, TableDI offers to import it once the main window is ready.
0.0.2 10 June 2026

A full audit of the calculation and storage layers, and the fixes that came out of it.

  • Writes are really on disk now. The storage layer's flush only reached the OS page cache, and IO errors were being swallowed — a full disk or a power cut could lose data silently. Every write-ahead log entry, snapshot column and completion marker is now genuinely synced, and failures propagate instead of disappearing.
  • Corrupted snapshots don't take the app down. A damaged length field used to crash startup; a missing column used to be skipped silently, which meant that column's data was gone for good. Both now fail safely and fall back to the previous snapshot.
  • Aggregation matches Excel. Average no longer counts blank cells in the denominator; sums and averages skip text and empty strings instead of throwing.
  • Date and number functions. A batch of fixes to the Excel serial-date baseline (off-by-one-day), DAYS360 month-end handling, DATEDIF, FIXED on large and negative amounts, and POWER overflow.
  • Formula conditions are no longer rewritten. Leading-zero identifiers like 00123 and empty values are passed through as you typed them, so conditions stop silently never matching.
  • A batch of display and chart fixes: tiny decimals no longer render as 0, text columns keep 007 and 1.10 intact, and charts stop breaking on empty cells.
0.0.1 8 June 2026

First public release.

  • Local spreadsheet workspace: no account, no configuration, everything stored on your own machine. Unlimited rows, linked tables, formulas and charts.

Get TableDI 2

macOS (Apple silicon and Intel). Free, no account, no time limit.

Download TableDI 2