❌

Normale weergave

Bitfocus Companion v5.1.0

11 Oktober 2026 om 20:49

πŸ“¦ Downloads available at

πŸ’΅ Donate to the project at

Companion v5.1.0 - Release Notes

πŸ“£ CORE FEATURES AND IMPROVEMENTS

  • Graphics improvements

    • pinned properties for quicker access to commonly used properties in the style editor #4324 (#4442)
    • wysiwyg toolbar for basic edits to a button's style (#4341)
    • better custom preview aspect ratios (#4450)
    • surface gauge leds (#4314)
    • show expression value previews for elements and style overrides
    • add fill width setting and alpha support for fill colors #4359
    • allow value feedbacks as layered-button style overrides (#4379)
    • make button preview aspect entry more robust and more flexible
    • text style properties (#4337)
    • smooth text autosizing
    • support corner radius for box elements #4359
    • allow rotating composite elements
  • Misc UX

    • rework button grid interactions (#4434)
    • support alt+click on CollapsibleTree nodes to expand all at that level
    • make split panel layouts resizable #2781
    • Show local variable value when collapsed (#4386)
    • configurable default export format #4349
    • make module deprecation more visible to users (#4495)
  • APIs

    • Prototype of new full system REST API (#4259)
    • REST API to list surfaces and set brightness (#4405)
    • REST API token management (#4453)
  • Expressions

    • new maths functions (#4388)
    • expression oscillator function (#4328)
  • Variables

    • Local Variables on pages (#4332)
    • expose $(this:delta) for rotary actions and carry rotation amount (#4387)
  • Controls

    • reference/mirror control type (#4339)
    • linked presets (#4284)
  • Misc

    • lazily evaluate internal feedbacks that are children of an action (#4378)
    • Add milliseconds to log entries #2891
    • add COMPANION_INSTALL_NAME env var to set the installation name
    • prometheus metrics for monitoring (#4304)
    • streaming json parsing/generation (#4390)
    • report collection-disabled connections as disabled, add connection collection status variables #4479
    • add 'Surface: When connected' feedback #4124
    • randomInt() is not re-evaluated in Trigger conditions #3297
    • Add duration to press and release internal action #3389
    • add $(internal:date_monthname) variable #3819

🐞 BUG FIXES

  • module versions refresh button not indicating progress
  • keep unicode glyphs together when breaking a line #3671
  • rework line breaking to work as is was long ago (#4372)
  • font size scaling not always consider whether topbar is visible
  • keep preset definition ids stable across re-conversion
  • surface page-change defer condition and rescanUsb error reporting
  • propagate image import errors #4438
  • better report import progress to the ui
  • sort to the connection selection dropdown (#4402)
  • backup file renaming failing #4394
  • try to ensure module are shutdown cleanly when companion exits
  • adjust line draw bounds to not hide the line #4359
  • measure font ascent/descent for better positioning #4359
  • avoid excessive button-drawn events upon a cache hit
  • colors when downscaling oversampled images
  • dropdown freezing when selecting from a large list #4494
  • expose pressed state to surfaces
  • don't recreate desktop shortcut when updating
  • static-text fields should not show expression toggles
  • draw a placeholder for missing or cyclic composite elements
  • update bonjour lib to limit query answer rate #4499
  • logging stopping entirely after a non-string message is logged #4509

Full Changelog: v5.0.7...v5.1.0

  •  

v0.16.26

11 Oktober 2026 om 19:33

[0.16.26] - 2026-10-11

If you are upgrading from v0.16.x, replace the binary (or run docker pull). If you are upgrading from v0.15.x and below, please read the upgrading documentation for more information on how to upgrade from previous versions.

Added

  • sd_notify support.
  • JMAP: Mailbox/set allows moving a mailbox under a parent that already has a child with the same name, and rejects renames that only change the case of a mailbox name with alreadyExists.

Changed

Fixed

  • DNSSEC: Use hickory-resolver patched fork at https://github.com/stalwartlabs/hickory-dns.
  • RocksDB: Blob garbage collection rewrites every stored blob on each compaction of the blobs column family, about once per 128MB of new mail.
  • Milter: End-of-headers is not sent to milters that negotiate SMFIP_NOHDRS without SMFIP_NOEOH, so the transaction stalls until it times out.
  • OIDC: When the access token lacks the claimUsername claim but has an email claim, the account is built from email without consulting the userinfo endpoint.
  • JMAP:
    • onSuccessUpdateEmail and onSuccessDestroyEmail entries in EmailSubmission/set that name an existing submission by id update or destroy the Email with the same id instead of the submission's own Email.
    • A VacationResponse/set that only sets isEnabled on an account without a vacation response activates an empty Sieve script.

Check binary attestation here

  •  

v0.21.2

11 Oktober 2026 om 14:16

Highlights

  • Fix Windows sidebar and tab path handling, and add Copy Path to the sidebar context menu.
  • Preserve literal $< in HTML export and align rectangular task-list markers with text.
  • Repair macOS arm64 ad-hoc signing after changing Electron fuses.
  • Preserve both x64 and arm64 installers in Windows and macOS automatic-update manifests.
  • Upgrade workspace dependencies and CI tooling.

⚠️ Note for macOS users

Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:

xattr -d com.apple.quarantine /Applications/MarkText.app

Verifying downloads

All artifacts are listed with their SHA-256 in SHA256SUMS.txt. Verify with:

sha256sum -c SHA256SUMS.txt --ignore-missing

What's Changed

  • Release tracking: v0.20.0 by @Jocs in #4664
  • docs: fix broken relative links in translated READMEs by @xThreeh in #5616
  • feat(desktop): move sidebar selection to trash with Delete key by @Jocs in #5609
  • Update Japanese localization strings for consistency by @coolvitto in #5630
  • fix(desktop): remove applied custom CSS when the preference is cleared by @woahwhattheheck in #5633
  • fix(muya): restore inline HTML tag marker style and hide bare
    markers by @Jocs in #5636
  • feat(desktop): rename sidebar selection with F2 / Enter (#1618) by @Jocs in #5638
  • feat(muya): preserve caret column on cross-block arrow navigation (#3412) by @Jocs in #5644
  • fix: #3203 make the trailing soft-break line navigable with the arrow keys by @Jocs in #5645
  • fix: #3207 #3385 commit sidebar rename/create when clicking away by @Jocs in #5646
  • feat: support ==highlight== markdown syntax (#2552) by @Jocs in #5647
  • feat: render inline markdown in the TOC (#3110) by @Jocs in #5648
  • feat: support GitLab inline diff and multiline blockquote (#954) by @Jocs in #5649
  • fix(desktop): let the --debug flag reach MarkText in packaged builds by @xThreeh in #5643
  • fix(muya): highlight regexp newline search matches (#3261) by @Jocs in #5650
  • fix(muya): keep the search highlight across a full re-render (#5651) by @Jocs in #5652
  • fix(desktop): persist sidebar folder collapse state across view switches (#5631) by @VictorVow in #5632
  • feat(desktop): reveal the active file in the sidebar file tree (#528) by @Jocs in #5654
  • fix(desktop): keep Latin-1 and Shift-JIS files byte-exact on save (#5577) by @ycyc0421 in #5567
  • chore(ci): remove Claude Code workflow by @Jocs in #5655
  • docs: remove StarDesk sponsor from README and website by @Jocs in #5656
  • Follow-up to #5379: move Pandoc conversion out of Export, gate it behind a preference, and report which binary was found by @dimbc in #5513
  • fix: #5239 let Ctrl+Backspace delete a word at the end of a line by @johannesroth-coreproduction in #5657
  • fix(muya): correct the caret after a native word/line delete, and defer in code blocks (#5239) by @Jocs in #5658
  • feat(muya): text & background colour in the inline format toolbar by @Jocs in #5661
  • Release tracking: v0.21.0 by @Jocs in #5663
  • chore: bump develop to 0.22.0-dev by @Jocs in #5662
  • fix(desktop): wait for the typed find query before Escape in e2e by @Jocs in #5665
  • fix(build): re-sign macOS arm64 builds after flipping the nodeCliInspect fuse by @Jocs in #5664
  • docs: fix broken links in the muya and website package READMEs by @xThreeh in #5668
  • chore(ci): move the workflows to the Node 24 action runtime by @Jocs in #5670
  • chore: remove the retired packages/muyajs engine by @Jocs in #5675
  • test: run the desktop unit tests on Node 25 by @Zane-0x5a in #5666
  • chore(deps): drop dependencies the desktop app no longer uses by @Jocs in #5681
  • chore(deps): bump the postcss override to 8.5.29 by @Jocs in #5674
  • chore(deps): upgrade the workspace dependencies to their latest releases by @Jocs in #5687
  • fix(desktop): compare sidebar and tab paths across separator styles (#5683) by @Jocs in #5689
  • feat(desktop): add Copy Path to the sidebar tree context menu by @witseko in #5692
  • fix(website): restore Cloudflare Worker after the Next.js upgrade by @Jocs in #5698
  • feat(website): load release and community stats dynamically from GitHub by @Jocs in #5699
  • fix: align rectangular task markers with text by @Jocs in #5700
  • fix(desktop): give the renderer a platform-native path bridge (#5683, #5669) by @Jocs in #5691
  • fix: preserve literal $< in HTML export by @Polyacetone in #5701

New Contributors

Full Changelog: v0.20.0...v0.21.2

  •  
❌