What gristlabs/grist-core shipped
Written by FoxPlug from the repository's own releases; not affiliated with Getgrist. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/gristlabs/grist-core; Getgrist did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- Applying a suggestion now builds every action first and applies them in one call, so a failure partway no longer leaves the document half changed or sends references to unrelated rows. Pull request #2492
- Links in sheet cells may now end with dashes, so a URL such as one ending in a dash is kept whole. Pull request #2619
- Clicking the comment triangle in Reference List and Choice List columns now opens the comment, matching other column types. Pull request #2744
- Guest counts and the add member link are shown for document shares only, not the team site and workspace member dialogs. Pull request #2746
- Users in the Manage users dialog and the View as menu are now sorted alphabetically instead of by account creation order. Pull request #2607
- Keyboard focus after a clipboard focus event stays in the panel the user was interacting with instead of returning to the current widget. Pull request #2435
- A dialog or popup no longer takes focus back from a field the user just clicked into when focus is already inside it. Pull request #2748
- Deleting an attachment no longer drops keyboard focus to the page, so a key pressed right after reaches the attachments editor. Pull request #2734
- The apply and cancel buttons of the filter menu are now translatable. Pull request #2736
- The hover-expanded left panel now stays open while a menu or input opened from it is in use. Pull request #2745
Why it matters
This week fixed several bugs people would hit in daily use: accepting a suggestion could leave a document half changed, comment triangles did nothing in list columns, and links ending in dashes were cut short. It also cleaned up focus handling around dialogs, the attachments editor and side panels. Much of the remaining work made the browser test suite wait for the page to settle instead of fixed delays, which reduces flaky failures in continuous integration.
Changelog entry
- Accepting a suggestion now applies all actions in a single call, so partial failures and misplaced references are avoided. Pull request #2492
- Allow dashes at the end of links in sheet cells. Pull request #2619
- Fix comment triangle clicks in Reference List and Choice List columns. Pull request #2744
- Show guest counts and the add member link for document shares only. Pull request #2746
- Sort users alphabetically in the user manager and View as lists. Pull request #2607
- Return keyboard focus to the panel the user interacted with, not the current widget. Pull request #2435
- Stop dialogs taking focus back from a field the user clicked into. Pull request #2748
- Keep focus in the attachments editor after deleting an attachment. Pull request #2734
- Make the filter menu apply and cancel buttons translatable. Pull request #2736
- Keep the hover-expanded left panel open while its menus or inputs are in use. Pull request #2745
- Stop fetching the widget list from GitHub in browser tests. Pull request #2743
- Make the browser test resize helper wait for the page to handle the resize. Pull request #2750
This week: accepting suggestions now applies cleanly when documents have references, links ending in dashes are kept whole, comment triangles work in list columns, and guest counts only show for document shares. Plus a lot of test flake fixes.
Changes in grist-core this week: Accepting a proposal now builds every action first and applies them in one call, so a failure no longer leaves a document half changed or puts references on unrelated rows. Links in sheet cells may end with dashes and stay intact, the comment triangle now opens comments in Reference List and Choice List columns, and guest counts appear only for document shares. Users are sorted alphabetically in the user manager and View as lists, and keyboard focus stays where you are working around dialogs, the attachments editor and side panels. Much of the week went to browser tests that wait for the page to settle rather than fixed delays, which should cut flaky failures in continuous integration.
Week of October 26, 2026
What shipped
- Version 1.7.22 shipped with a Widget Creator that opens a code editor with live preview so you can write a widget's HTML and JavaScript in the document, and widgets from the old Custom Widget Builder can switch over. Release
- Quick setup's Backups step and the admin panel's Storage section now show a card asking admins whether Grist's storage survives a restart, with a warning and short fix when a problem is likely. Pull request #2635
- Quick setup now shows a restart-needed screen instead of an error at the top of the final page when settings saved but no restart shell is available, so the feedback form can still submit. Pull request #2528
- EDATE and DATEADD month and year arithmetic now clamps to the end of the target month, so EDATE of January 31 plus one month returns the last day of February rather than overflowing into March. Pull request #2692
- Search no longer loses keys typed while it opens another page to show a match, and a newer search no longer skips pages that are still loading. Pull request #2676
- Multiseries line and area charts with a non-numeric x axis now keep categories in order instead of pushing values missing from the first series to the end of the axis. Pull request #2615
- Listing document versions through the minio-js client no longer loops forever on stores that return short pages, such as DigitalOcean Spaces, by sending the version id marker needed for the next page. Pull request #2632
- RIGHT now returns an empty string when
num_charsis 0, matching Excel, Google Sheets and Grist's own LEFT. Pull request #2687 - In a Card or Card List taller than its section, moving the cursor with Tab or the arrow keys now scrolls the selected field into view. Pull request #2625
- The pyodide package fetch script now fails the build on errors such as a dropped connection or a 404 instead of exiting successfully and leaving packages missing. Pull request #2666
Why it matters
This week brings a new way to build widgets inside a document and better guidance for admins on whether their storage is persistent. It also fixes date arithmetic and chart category ordering that users of formulas and charts would notice, and removes a version listing hang for some storage backends. Most other work went into test reliability, accessibility and build checks.
Changelog entry
- Add Widget Creator, opening a code editor with live preview from Create your own in the widget picker; old Custom Widget Builder widgets can switch over. Release
- Cut the October release, v1.7.22. Pull request #2729
- Show admins a card in quick setup Backups and the admin panel Storage section to confirm storage is persistent, with a fix hint when a problem is likely. Pull request #2635
- Add a restart-needed screen to quick setup when settings save but Grist cannot restart. Pull request #2528
- Clamp EDATE and DATEADD month and year arithmetic to the end of the target month. Pull request #2692
- Make RIGHT return an empty string when
num_charsis 0. Pull request #2687 - Keep x-axis categories in order for multiseries line and area charts with a non-numeric axis. Pull request #2615
- Fix search losing typed keys while a result page loads and skipping pages that are still loading. Pull request #2676
- Fix paging of document version listings with the minio client by sending a version id marker. Pull request #2632
- Scroll the selected field into view when moving the cursor by keyboard in a tall card. Pull request #2625
- Update weasel menu usage for better keyboard and screen reader support. Pull request #2647
- Fail the build when pyodide packages cannot be fetched instead of exiting successfully. Pull request #2666
Out now: v1.7.22. Create your own widget with a code editor and live preview in the document. Admins get a storage-persistence prompt in setup and the admin panel, quick setup has a restart-needed screen, EDATE and DATEADD clamp to month end, and RIGHT(text, 0) returns an empty s
Grist v1.7.22 is out. The widget picker now has a Create your own option that opens a code editor with live preview, so you can write a widget's HTML and JavaScript right in the document, and widgets from the old Custom Widget Builder can switch over. Quick setup's Backups step and the admin panel's Storage section now ask admins whether storage survives a restart, warning when data looks likely to be in memory or gone. Quick setup also shows a restart-needed screen instead of an error when settings save but no restart shell is available. On the formula side, EDATE and DATEADD now clamp to the end of the target month, RIGHT returns an empty string for zero characters, and multiseries line and area charts keep x-axis categories in order. Document version listing no longer hangs on stores th
Week of October 19, 2026
What shipped
- The admin panel no longer shows values before they load, so admins stop briefly seeing "Administrator Panel Unavailable" and inaccurate check results, and the auto-check-updates toggle no longer reads "on" until its saved setting loads. Pull request #2652
- Screen readers now announce only newly added toasts instead of re-announcing every toast still on screen each time one goes away. Pull request #2654
- Warning banners use dark text instead of white so the text contrasts with the background. Pull request #2610
- The admin top problems browser test now turns the request feature on itself and clears the outgoing-request filter settings, so it passes against the production server. Pull request #2670
- The server test websocket client now skips the repeated connection message sent 250ms after a connection opens, so access tests reading the next message no longer get the repeat. Pull request #2665
- Tests now wait for the grid to finish scrolling a row into view before reading its cells, avoiding failures after cursor jumps. Pull request #2656
- The half-second script timeout set by one browser test is no longer left in place for later test files sharing the same browser. Pull request #2655
- Browser tests now wait for menus to take keyboard focus before sending keys, so early typing no longer picks the wrong item and an early Escape no longer leaves the menu open. Pull request #2667
- Tests now wait for the access rule menu action to finish before looking for the new rule set. Pull request #2671
- The trigger formula editor test now waits for the editor to take focus, so the first typed keys are not lost and the formula is not corrupted. Pull request #2675
Why it matters
This week's changes are almost all test and UI reliability fixes. Admin panel screens no longer show unloaded or wrong values, toasts are announced once to screen reader users, and warning banner text is readable against its background. The test fixes target races around focus, loading, scrolling and shared browser state that made runs flaky.
Changelog entry
- Admin panel: don't show values before they load, including check results and the auto-check-updates toggle. Pull request #2652
- Screen readers: announce only newly added toasts, not all toasts still showing. Pull request #2654
- Warning banners: use dark text instead of white for readable contrast. Pull request #2610
- AdminTopProblems test: turn the request feature on itself and clear outgoing-request filter settings. Pull request #2670
- Server test websocket client: skip the repeated clientConnect message. Pull request #2665
- Tests: wait for the grid to scroll a row into view before reading its cells. Pull request #2656
- Tests: restore the webdriver script timeout so it doesn't leak to later test files. Pull request #2655
- Tests: wait for menus to take focus before sending them keys. Pull request #2667
- Tests: wait for access rule menu actions before checking for the new rule set. Pull request #2671
- Tests: wait for the table select menu to take focus before typing in the user-attribute rules test. Pull request #2653
- Tests: wait for the trigger formula editor to take focus before typing. Pull request #2675
- Tests: wait for the permissions card to load in the quick setup apply test. Pull request #2673
Admin panel no longer shows values before they load, screen readers announce only new toasts, and warning banners use readable dark text. A batch of test fixes waits for menus, scrolling, focus and permissions so browser test runs fail less on CI.
This week brought a set of fixes to grist-core. In the admin panel, values no longer appear before they load, so admins stop briefly seeing an unavailable message or inaccurate check results. Toasts are now announced to screen readers only when newly added, rather than re-announcing everything still on screen. Warning banners use dark text so they are readable against their background. Several browser test races were fixed by waiting for menus to take focus, the grid to finish scrolling, permissions to load and access rule menu actions to run, and by not leaking a short script timeout between test files. The full list is in the changelog.
Week of October 12, 2026
What shipped
- Calendar Day, Week and Month perspective changes now stay local until saved, so editors no longer change the view for everyone else with the document open. Pull request #2658
- The Windows build of locale files is fixed by adding module paths in the script directly instead of relying on NODE_PATH with colons. Pull request #2657
- Flaky QuickSetupAuth tests are fixed by handling the provider list being rebuilt after the authentication check reports the running login system. Pull request #2648
- CalendarView setup modal tests now look for options inside the open menu so the lookup no longer finds the select button showing its current value. Pull request #2645
- The restart shell is disabled when debugging with the node inspector, since the spawned subprocess could not listen on the port already used by the parent process. Pull request #2634
Why it matters
This week matters because a calendar regression that saved views on every click is fixed, so switching Day, Week and Month no longer changes what other people see in a shared document. The Windows build failure for locale files is also resolved, which keeps locale output building the same on every platform.
Changelog entry
- Calendar perspective changes stay local until saved instead of saving on every Day, Week or Month click. Pull request #2658
- Windows locale file build now adds module paths itself so it works the same on every platform. Pull request #2657
- QuickSetupAuth tests no longer go stale when the provider list is rebuilt after the authentication check. Pull request #2648
- CalendarView setup modal tests look for options inside the open menu instead of matching the select button. Pull request #2645
- Restart shell is disabled when debugging with the node inspector. Pull request #2634
Calendar view changes now stay local until saved, so switching Day, Week or Month no longer updates the view for everyone else. Windows locale builds are also fixed.
This week's changes to the project: calendar Day, Week and Month perspective changes now stay local until saved, so an editor no longer changes the view for everyone with the document open. The Windows build of locale files is fixed by having the script add module paths itself rather than relying on NODE_PATH. Several test fixes are included as well: the flaky QuickSetupAuth tests, the CalendarView setup modal option lookup, and the restart shell being disabled during node inspector debugging.
Week of September 28, 2026
What shipped
- V1.7.20 released with a redesigned home page featuring a "Create a document" section and "Learn Grist" section, plus improvements to formula editing and other features. Release
- Fixed Redis-backed single-server setups to remove stale workers on startup and handle custom org domains correctly when GRIST_ORG_IN_PATH is enabled. Pull request #2621
- Attachment archive downloads now exclude unused attachments waiting out their 7-day expiry, preventing 502 errors when files are missing. Pull request #2620
- Added new keyboard "jump" commands to navigate Grist pages more efficiently without excessive Tab presses and to reach previously inaccessible widget headers. Pull request #2441
- The "Invite multiple" dialog now splits comma-separated, semicolon-separated, and whitespace-separated email addresses and validates each entry individually. Pull request #2613
- The home page import document picker now shows.json files as an available format, matching the JSON import capability already available in the import dialog. Pull request #2609
- README updated to clarify the differences between Docker images and Grist editions. Pull request #2622
Why it matters
V1.7.20 brings a refreshed home page experience and improved formula editing. Alongside this, fixes for Redis deployments, attachment handling, and keyboard navigation address issues users have encountered in production and daily workflows.
Changelog entry
- Home page redesigned with "Create a document" section and "Learn Grist" section Release
- Redis-backed single-server setups now remove stale workers on startup and handle custom domains correctly Pull request #2621
- Attachment archive downloads exclude unused attachments to prevent 502 errors Pull request #2620
- Added keyboard jump commands for more efficient navigation and widget header access Pull request #2441
- Invite multiple dialog now splits emails on commas, semicolons, and whitespace with proper validation Pull request #2613
- Home page import picker now shows.json files as available for import Pull request #2609
- README clarified with differences between Docker images and Grist editions Pull request #2622
Grist v1.7.20 is out. New home page design, improved attachment archives, fixed Redis setups, better keyboard navigation, and JSON import in the file picker.
Grist v1.7.20 is available now. The release features a redesigned home page with dedicated sections for creating documents and learning resources, improvements to formula editing, fixes for Redis-backed single-server deployments, better keyboard navigation with new jump commands, and support for JSON files in the home page import picker.
Week of September 21, 2026
What shipped
- Fixed sandbox startup with Deno 2.9.6 by explicitly calling deno run instead of relying on command inference. Pull request #2605
- Fixed backups status reporting to correctly show as enabled when external storage backends like MinIO or S3 are active. Pull request #2591
- Updated the docker-compose example to use RustFS instead of the unmaintained MinIO for S3-compatible storage. Pull request #2604
- Improved calendar drag test reliability by waiting for write operations to complete before assertions. Pull request #2608
- Corrected the README documentation for the GRIST_ATTACHMENTS_THRESHOLD_MB environment variable. Pull request #2595
- Added focus management helpers for interactive elements that auto-remove when activated. Pull request #2439
- Removed unused code and unimplemented server-side methods. Pull request #2593
Why it matters
This week's changes fix critical issues blocking recent Deno versions and ensure backups are properly reported as enabled in production deployments. The docker-compose update removes a maintenance burden by switching to an actively maintained storage backend.
Changelog entry
- Fixed pyodide sandbox startup with Deno 2.9.6 by explicitly using deno run subcommand Pull request #2605
- Fixed backups status check to correctly report as enabled when external storage is configured Pull request #2591
- Updated docker-compose example to use RustFS instead of MinIO for S3-compatible storage Pull request #2604
- Improved calendar drag test stability by waiting for write operations to complete Pull request #2608
- Fixed typo in README for GRIST_ATTACHMENTS_THRESHOLD_MB environment variable Pull request #2595
- Added focus fallback helpers for auto-removing interactive elements Pull request #2439
- Removed unused code and unimplemented server-side methods Pull request #2593
Fixed Deno 2.9.6 compatibility for the pyodide sandbox. Corrected backups status reporting for external storage. Updated docker-compose to use RustFS instead of unmaintained MinIO.
This week we fixed critical compatibility issues and improved deployment experience. A Deno 2.9.6 update broke sandbox startup, now resolved with explicit command invocation. Backups with external storage (MinIO/S3) now correctly report as enabled. The docker-compose example switched from unmaintained MinIO to RustFS for better long-term support.
More from gristlabs/grist-core on GitHub
Merged pull requests
- Wait for the drag's write in CalendarView's drag test (#2608, merged September 26, 2026 by paulfitz) (source)
- Report backups as enabled when an external storage backend is active (#2591, merged September 26, 2026 by paulfitz) (source)
- Switch the full docker-compose example from MinIO to RustFS (#2604, merged September 25, 2026 by paulfitz) (source)
- Launch the pyodide sandbox with an explicit
deno run(#2605, merged September 24, 2026 by Mrmaxmeier) (source) - Fix typo for GRIST_ATTACHMENTS_THRESHOLD_MB in README (#2595, merged September 23, 2026 by fflorent) (source)
- Removes a bunch of code that seems dead? (#2593, merged September 23, 2026 by fflorent) (source)
- always push result of idle-closed VACUUMing (#2575, merged September 18, 2026 by paulfitz) (source)
- Fix double-tap to edit a cell on Firefox for Android (#2592, merged September 15, 2026 by paulfitz) (source)
- Fix races in the browser tests, found by running on Desktop CI (#2589, merged September 14, 2026 by paulfitz) (source)
- Fix the fast-runner races in Pages, ChoiceList and DetailView (#2584, merged September 10, 2026 by paulfitz) (source)
- Render chart date axes in the column's timezone (#2573, merged September 9, 2026 by dsagal) (source)
- Inserting column references from other tables into formulas (#2547, merged September 8, 2026 by berhalak) (source)