# Grist v1.7.17
- Product: Grist (https://whatsnew.fyi/product/grist)
- Vendor: Grist Labs
- Date: 2026-07-29
- Version: v1.7.17
- Original notes: https://github.com/gristlabs/grist-core/releases/tag/v1.7.17
- Permalink: https://whatsnew.fyi/product/grist/releases/v1.7.17
What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog.
Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'.
---
- **added** — Add a Row numbers setting on grid widgets to choose between Numbers (position in current sort), Row IDs (bracketed format), or Hidden (collapse left-hand gutter)
- **added** — Add setup checklist in Document Settings showing which notifications, automations, invite emails, and AI assistant features are ready and what prerequisites each unfinished feature requires
- **added** — Add ability for admins to request prerequisite setup steps through an Admin Panel item
- **added** — Add button in Admin Panel and Quick Setup to switch to the full edition by downloading matching extensions, verifying SHA-256, and restarting in place
- **added** — Add optional "Help us improve" card at the end of Quick Setup to collect feedback on how users heard about Grist and their user type
- **changed** — Announce modals and popups as dialogs by screen readers and trap Tab key focus inside open modals
- **changed** — Translate temporary row IDs inside RefList values in addition to Ref values and row-ID positions to enable creating mutually-referencing rows in one bundle
- **changed** — Show Grist edition and version in left panel footer with links to compare editions and release notes
- **changed** — Make "Enable Access Rules", form reset warning, and color picker labels translatable
- **changed** — Improve OAuth apps re-authorization to pre-select previously granted resources and skip account picker when account can be identified
- **changed** — Explain how to enable OAuth apps on servers without GRIST_ENABLE_OIDC_SERVER instead of rendering UI over 404 endpoints
- **changed** — Add banner on home page and card on OAuth apps page explaining how to connect using MCP
- **changed** — Route MCP document calls through the same server forwarding as the rest of the document API to enable MCP support with Fleet
- **fixed** — Preserve "View as" for attachment previews and whole-document exports instead of resolving as document owner
- **fixed** — Fix Airtable reference columns holding single values to import as working references instead of unusable text
- **fixed** — Fix Airtable count columns to no longer error when the column they count was imported as a Ref rather than RefList
- **fixed** — Fix wrapped list items in Markdown cells at maximum row height overlapping lines below
- **fixed** — Fix server crash when a client disconnects part-way through a proxied request
- **fixed** — Fix "reachable" self-check reporting false failure when anonymous access is disabled
- **fixed** — Fix MCP clients passing a document's urlId in place of doc_id no longer receiving "Doc belongs to a different DocWorker" error
##### What's Changed
###### New features
* **Row numbers, row IDs, or neither**. A new "Row numbers" setting on grid widgets, in Grid Options and in a menu at the grid's top-left corner. Choose Numbers (position in the current sort, as before), Row IDs (bracketed like `[15]`, matching how references render), or Hidden, which collapses the left-hand gutter. Addresses #220, open since 2022, and #1927. (#2448)
* **Setup checklist for notifications and automations**. Notifications, automations, invite emails, and the AI assistant each need plumbing behind them (an email backend, a Redis queue, an AI provider, the full edition), and when a prerequisite is missing the feature simply isn't there. Document Settings now lists what's ready and what each unfinished feature is waiting on. Users can press "Ask the admin" to request a step; admins see the requests in a new Admin Panel item. ([commit](https://github.com/gristlabs/grist-core/commit/a29e94aa))
* **Switch to the full edition from the Admin Panel**. Previously this meant changing Docker image. Now it's a button, in the Admin Panel or the first step of Quick Setup: the server downloads the extensions matching its own version, checks their SHA-256, and restarts in place. Offered on release builds only, not on `main`, nightlies, or dev checkouts. `GRIST_EXT_FULL_EDITION_BASE_URL` points it at a mirror, or turns it off for air-gapped installs. (#2450)
* **"Help us improve" in Quick Setup**. First-time setup now ends with an optional card: how you heard about Grist, what kind of user you are, and a switch subscribing an email address to product and security updates. It appears during setup only, and if you leave it blank nothing is sent at all. What you fill in goes to Grist Labs, along with your installation ID. ([commit](https://github.com/gristlabs/grist-core/commit/5af0acb7))
###### Improvements
* Accessibility
* Modals and popups are announced as dialogs by screen readers, and Tab is trapped inside an open modal. Fixes a Mousetrap bug that let keyboard focus wander behind a modal. Contributed by @manuhabitela (#2371). Keyboard focus now works from the tooltip-style popups inside modals as well ([commit](https://github.com/gristlabs/grist-core/commit/6e175355))
* API
* Temporary row IDs are now translated inside RefList values, not just Ref values and row-ID positions. Rows that reference each other through RefList columns can be created in one bundle (#2477)
* UI/UX
* The Grist edition and version show in the left panel footer, with links to compare editions and to release notes. Previously visible only in the Admin Panel (#2470)
* Internationalization
* "Enable Access Rules", the form reset warning, and the color picker's `fill` / `text` / `default` / `none` labels are now translatable. Contributed by @fflorent (#2451)
* Documentation
* `documentation/database.md` is back in sync with the schema, with a regenerated home DB diagram. Contributed by @fflorent (#2458)
* Freshened the comments that feed the generated reference on [support.getgrist.com](https://support.getgrist.com/), with formatting fixes and a broken link repaired (#2462)
* The README caught up with the last several releases: accessibility, Automations, OAuth apps, the MCP server, three new environment variables, and a table of full edition feature flags (#2443)
###### Fixes
* "View as" is preserved for attachment previews and whole-document exports, which previously resolved as the document owner (#2478)
* An Airtable reference column holding a single value imported as unusable text rather than a working reference, leaving the raw Airtable ID behind as alt text (#2446)
* Airtable count c
_[Truncated at 4000 characters — full notes: https://github.com/gristlabs/grist-core/releases/tag/v1.7.17]_