{"id":59,"date":"2026-05-01T09:00:00","date_gmt":"2026-05-01T09:00:00","guid":{"rendered":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/april-2026-release-notes\/"},"modified":"2026-05-01T09:00:00","modified_gmt":"2026-05-01T09:00:00","slug":"april-2026-release-notes","status":"publish","type":"post","link":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/april-2026-release-notes\/","title":{"rendered":"April 2026 release notes"},"content":{"rendered":"<p class=\"has-large-font-size\">A round-up of what shipped in April. Highlights: a redesigned timeline view, formula custom fields, and Slack message-action support.<\/p>\n<h2>New: Formula custom fields<\/h2>\n<p>Custom fields can now compute their value from other fields on the same task. Spreadsheet-style syntax \u2014 simple math, conditionals, date arithmetic, and string operations.<\/p>\n<pre><code># Effort score from priority and estimate\nPRIORITY_WEIGHT * ESTIMATE\n\n# Days overdue\nIF(STATUS != \"done\", TODAY() - DUE_DATE, 0)\n\n# Composite display\nCONCAT(ASSIGNEE, \" \u2014 \", STATUS, \" (\", PRIORITY, \")\")<\/code><\/pre>\n<p>Formulas re-evaluate when source fields change. Documented in <a href=\"\/task-fields-priorities-and-due-dates\/\">task fields<\/a>.<\/p>\n<h2>Improved: Timeline view<\/h2>\n<p>Major redesign. Faster rendering for projects with 500+ tasks (10x improvement on the worst cases), better dependency arrow routing, snap-to-grid for cleaner alignment. Critical path now highlights with a subtle red gradient instead of solid color.<\/p>\n<h2>New: Slack message actions<\/h2>\n<p>Right-click any Slack message and choose <em>Lattica \u2192 Create task<\/em>. The message becomes a new task with the original Slack thread linked back. Replies in the Slack thread continue to sync.<\/p>\n<h2>New: Bulk export of attachments<\/h2>\n<p>Workspace exports now bundle attachments as actual files in the export zip, not just URLs. Good for archival and migration scenarios.<\/p>\n<h2>Improved: Search ranking<\/h2>\n<p>The search modal now weights recency and your interaction history. Tasks you&#8217;ve opened recently surface first. Recent comments are searched alongside titles and descriptions.<\/p>\n<h2>Fixed<\/h2>\n<ul>\n<li>Recurring tasks across daylight-saving boundaries no longer skip a day in the Pacific timezone.<\/li>\n<li>Bulk-edit on board view respected the wrong column when filters were active.<\/li>\n<li>Mobile app crashed on iPad when rotating during quick-capture (rare).<\/li>\n<li>Webhooks for <code>task.due_soon<\/code> were firing 23 hours early instead of 24 \u2014 now exactly 24h.<\/li>\n<li>Custom field labels with emoji rendered as <code>?<\/code> in PDF exports.<\/li>\n<li>Markdown tables in task descriptions overflowed the side panel; they now scroll horizontally.<\/li>\n<\/ul>\n<h2>Deprecations<\/h2>\n<p>The legacy <code>\/v0<\/code> API is retired May 31, 2026 \u2014 it has been deprecated since November 2024. If you&#8217;re still on it, upgrade to <code>\/v1<\/code> using the migration guide in the API documentation. <code>\/v0<\/code> requests will start returning <code>410 Gone<\/code> after the cutoff.<\/p>\n<h2>Coming next<\/h2>\n<p>In testing for May: workspace-level themes, AI summary on long tasks, and a cleaner mobile board view. If you want early access, opt in from <strong>Account \u2192 Beta features<\/strong>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Formula custom fields, redesigned timeline, Slack message actions, and the rest of what shipped.<\/p>\n","protected":false},"author":0,"featured_media":60,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[75,76,77],"class_list":["post-59","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-api-automations","tag-changelog","tag-release-notes","tag-whats-new"],"_links":{"self":[{"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/posts\/59","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/comments?post=59"}],"version-history":[{"count":0,"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/posts\/59\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/media\/60"}],"wp:attachment":[{"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/media?parent=59"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/categories?post=59"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/demo.fasterthemes.com\/mywiki-wordpress-theme\/wp-json\/wp\/v2\/tags?post=59"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}