Drafts 49.0 released! Editor updates, Todoist API changes

Drafts 49.0 has been released:

Details below. For a complete history of updates, visit the release notes.

49.0

NOTE: If you have updated to OS 26 on any of your devices, it is highly recommended you update to 26.2 ASAP, as it addresses a number of underlying system issues that impact Drafts.

Editor Changes

Working on a multi-stage rollout of improvements and modernizations to the editor. Key changes:

  • Paragraph numbering has be re-implemented to be more efficient and better abstracted.
  • The typewriter scrolling feature has been re-implemented for similar reasons.
  • A wide variety of performance improvements have been made around syntax highlighting.
  • In the built-in Markdown syntaxes, the optional “Live Links” syntax setting that enabled links in the editor without using Link Mode, has been split into two separate options – one for only HTTP(s) links, the other for non-HTTP custom URLs. This was mostly for performance reasons, as scanning for all link in very long drafts (>100k characters) was pretty slow. This allows the feature to work more efficiently for people who only care about HTTP links.

“Modern” Editor Mode

In addition to the changes above, we have introduced a new, optional Modern editor mode. This mode should be feature compatible with the default legacy mode, but has not been well enough tested to ship as the default option. If you like living on the cutting edge, you can enable this mode in Editor Settings > Advanced Settings – if you are running iOS 18 or macOS 14 or greater.

This mode uses Apple’s newer TextKit2 rendering. The most noticeable change this enables is support for the “full” Writing Tools interface on Apple Intelligence-enabled devices. This mode allows you to step through proofreading changes, etc.

This is non-destructive, so you can change back if you find issues…but, also, please report them if you do! This mode will eventually become the default editor in a future release.

Learn more about modern editor mode

Todoist API Update

Todoist has deprecated two previous APIs and moved to a new, consolidated v1 API. This release updates Drafts’ integrations to support this new API, as the old ones will be shut down in February 2026.

We have tried to make this transition as invisible as possible. The “Todoist” action step continues to work as it always has, and convenience methods on the Todoist script object have been updated, so many actions that use these methods may need no changes or updates.

If you use more advanced scripted Todoist integrations, however, it’s possible they will require updates to work with changes in the new API before the old one is shutdown. If you need assistance updating an action, please open a thread on the forums with details and we can help get you sorted.

Learn more about Todoist changes

Other Updates and Changes

  • All Platforms
    • Change: Provide more context regarding current filter status above draft list.
    • Change: Add folder property to Draft object. Just a more convenient way to get/set the current folder (supports “inbox”, “archive”, “trash”). Existing isTrashed and isArchived flags still work as always.
    • Fix: Refactor some aspects of HTML Preview loading to avoid hang occurring for some people who do not have a “Previews” folder in iCloud Drive/Drafts/Library.
    • Fix: Crash if you queue an action to run via script, the action requires configuration, and has not yet be configured.
    • Change: Filter pane remembers last visibility status of search field.
    • Change: Update MultiMarkdown parser to 6.7.0 (was 6.6.0).
  • iOS
    • Change: Allow bulk operations (Select > Gear) on drafts in the trash.
    • Fix: “Open” button in share sheet not initially enabled unless change made to shared text.
    • Fix: Character/word count should be visible in landscape with Display Zoom enabled on iPhone.
  • Mac
    • Fix: Message banner backgrounds not appearing properly when running on macOS less than 26.
    • Change: Re-use HTML preview windows, rather than destroying and rebuilding them to be more efficient.
2 Likes

I had reported the following through the iPad TestFlight app:

At 48.3(691) the ability to edit an action on iPad while the keyboard is open by long pressing on its icon in the action bar and selecting “Edit” has disappeared. A long press just executes the action, as a short press does. To edit, you have to go to the action menu using the icon in the extreme top right of the window.

Also at 48.3(691), line numbers when editing JavaScript action steps are still missing, as previously reported.

TestFlight didn’t give any acknowledgment, so perhaps it didn’t work. It seems the more likely that you did not receive this feedback because both bugs are present in the 49.0 release on my phone (unless it’s because I’m on 26.1: I’ll give 26.2 a few days before trying it).

See preferred methods for reporting beta issues in the beta intro docs: https://forums.getdrafts.com/t/testflight-beta-information/13319

TestFlight feedback in totally unreliable and give me no way to follow up with your regarding questions. I’ll take a look at these, thanks!

Thanks, but

Oops! That page doesn’t exist or is private.

I added you to the beta group. You should have already been on these if you had TestFlight access.

Great, thanks. Got it now.

For the new URL parser, I enabled it pretty quickly because I often have links in Drafts to other apps that I want to use. I noticed it is now picking up a wider span of things as URLs, seemingly the new regex pattern is [a-z]:\* leading to things such as Test:a picking up as a URL. I’d really like to change the behavior to require a forward slash after the colon if possible.