Normale weergave
SCS On The Road: Isle of Ireland Research Trip
Recently, we shared a blog with details about our Ireland research trip, where members of our Map team, QA team, and our Road Specialist travelled across the Emerald Isle to gather important references, take photos, and experience the roads and locations that will help us recreate our upcoming Isle of Ireland DLC for Euro Truck Simulator 2.ย
In that blog, we also mentioned that our cameras were rolling throughout the journey, as we worked on a special SCS On The Road episode documenting the trip. Today, we're happy to finally share it with you!Join Alex, one of our Community Managers, and the team as we take you across Ireland, visit some of the locations featured in our research, and give you a closer look at what goes into gathering the references and information our teams use during development.
We hope you will enjoy coming along for the ride! If you enjoyed the episode, and would like to see more like it, be sure to leave a like, and a comment on where in Ireland you'd love to visit! If you're excited about the upcoming Isle of Ireland DLC, don't forget to add it to your Steam Wishlist! Until next time, keep on truckin'!ย
v0.20.0-rc.1
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- fix(desktop): resolve Homebrew/standard bin dirs for GUI launches by @Jocs in #4796
- fix(muya): show and slug TOC headings by rendered plain text (#3516) by @Jocs in #4811
- Add UKey Wallet sponsor to README and website by @Jocs in #4819
- fix(desktop): apply editor max-width preference to @muyajs/core content column (#4828) by @Jocs in #4830
- Add Bengali README and links by @FahimFBA in #4823
- fix(muya): skip identity operations during deferred flush by @tech-hoon in #4815
- fix(muya): harden History against identity (null) json-change ops by @Jocs in #4838
- fix(muya): stop inline math showing a scrollbar for trailing sub/superscripts (#4837) by @Jocs in #4839
- fix(muya): isolate mermaid render failures during export (#4812) by @Jocs in #4840
- fix(desktop): correct English typos in locale and preference schema (#4787) by @Jocs in #4845
- fix(muya): stop double percent-encoding autolink hrefs by @Jocs in #4841
- fix(muya): keep pasted list items in order when merging mid-list by @Jocs in #4842
- fix(desktop): confirm before opening executable link targets (code execution) by @Jocs in #4843
- fix(muya): keep soft line breaks when exporting to HTML/PDF by @Jocs in #4844
- fix(muya): show escaped pipe in table cell code as | not | (#4849) by @Jocs in #4850
- fix(muya): preserve fenced code block info string on round-trip (#4770) by @Jocs in #4846
- fix(muya): load Prism component dependencies in order (fixes flaky c++ load) by @Jocs in #4861
- refactor(muya): treat the code fence info string as the source of truth (CommonMark) by @Jocs in #4856
- fix(muya): call h1-h6 "headings" not "headers" in the insert menu by @Jocs in #4854
- fix(desktop): don't crash on unwatchable image directories (UNC/WSL paths) by @Jocs in #4853
- fix(desktop): save files atomically to prevent data loss on crash by @Jocs in #4852
- fix(desktop): make crash-recovery buffer writes durable against power loss by @Jocs in #4864
- fix(muya): render extensionless remote images served with a charset (shields.io badges) by @Jocs in #4857
- fix(muya): follow the link when modifier-clicking a linked image by @Jocs in #4858
- fix(muya): follow the link on Ctrl/Cmd-click for reference-linked and raw-HTML linked images (#4865) by @Jocs in #4866
- fix(desktop): keep TOC collapse state across tab switches by @Jocs in #4860
- fix(desktop): flush pending edits before saving (dropped last keystroke) by @Jocs in #4859
New Contributors
- @FahimFBA made their first contribution in #4823
- @tech-hoon made their first contribution in #4815
Full Changelog: v0.20.0-beta.5...v0.20.0-rc.1
v0.20.0-beta.5
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- fix(muya): scroll wide math blocks instead of clipping by @Jocs in #4751
- fix(desktop): route undo/redo to CodeMirror in source code mode by @Jocs in #4752
- fix(muya): leave Tab to the IME during composition by @Jocs in #4753
- fix(desktop): add a context menu to the sidebar root folder by @Jocs in #4754
- fix(muya): preserve code fence length on serialize by @Jocs in #4755
- fix(muya): refresh math/diagram preview on undo by @Jocs in #4756
- fix(desktop): resolve relative local links on export by @Jocs in #4757
- fix(muya): require a word boundary before an emoji shortcode by @Jocs in #4758
- fix(desktop): don't overwrite an existing file when creating from the sidebar by @Jocs in #4759
- fix(desktop): ignore content-identical file-change events by @Jocs in #4760
- fix(desktop): make the source-mode selection visible on dark themes by @Jocs in #4771
- fix(desktop): persist export dialog options across sessions by @Jocs in #4768
- fix(muya): convert $$ to a math block in place inside a list item by @Jocs in #4767
- fix(muya): self-close generated
tags for JSX/MDX compatibility by @Jocs in #4766
- fix(muya): preserve current-line indent on Enter in code fences by @Jocs in #4761
- fix(muya): make autolinks and bare URLs followable on Cmd/Ctrl-click by @Jocs in #4763
- fix(muya): exclude selection whitespace when applying inline format by @Jocs in #4762
- fix(desktop): make empty-state CTA button labels readable in all themes by @Jocs in #4775
- fix(muya): surface the KaTeX parse error for invalid math by @Jocs in #4764
- fix(desktop): keep sidebar width + tree collapse state across icon toggle by @Jocs in #4769
- fix(muya): recognize
c++/h++as aliases for the cpp code grammar by @Jocs in #4794 - fix(muya): don't highlight LaTeX
\%as a comment by @Jocs in #4795 - fix(muya): recolor sequence-diagram text/boxes for dark themes by @Jocs in #4800
- fix(muya): keep image resize handles attached on layout reflow by @Jocs in #4802
- fix(muya): make cpp c++/h++ alias registration idempotent by @Jocs in #4816
- fix(desktop): preserve TOC collapse state across content edits by @Jocs in #4803
- fix(desktop): make Paragraph/Format commands inert in source mode (grey out menus) by @Jocs in #4810
- fix(desktop): New File on a collapsed sidebar folder expands it by @Jocs in #4809
- fix(desktop): select the query when re-opening the Find bar by @Jocs in #4807
- fix(desktop): keep diagram content when exporting with Header & Footer by @Jocs in #4805
- fix(desktop): list bundled fonts in the font picker by @Jocs in #4801
- fix(desktop): remove doubled Edit-menu separator on Windows/Linux by @Jocs in #4797
- fix(desktop): generate a PDF outline from headings on export by @Jocs in #4798
- fix(desktop): avoid PDF/print page breaks right after a heading by @Jocs in #4799
Full Changelog: v0.20.0-beta.4...v0.20.0-beta.5
v0.20.0-beta.4
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- fix(renderer): keep the key bindings hover row readable on dark themes by @FurkaanBoraa in #4719
- fix(renderer): make the custom dictionary table readable on dark themes by @FurkaanBoraa in #4721
- feat(muya): self-contained editor typography via --mu-* options by @Jocs in #4722
- refactor(desktop): consume muya self-contained typography, remove shell style injection by @Jocs in #4726
- fix(muya): move preview toolbar to the block's top-right by @Jocs in #4734
- fix(renderer): hide muya float tools in source-code mode by @Jocs in #4732
- fix(desktop): remove duplicate title when using the native title bar by @Jocs in #4630
- fix(muya): keep a nested sublist when forward-deleting an empty list item (#1845) by @Jocs in #4725
- fix(muya): remove the inner format when un-toggling a nested inline run (#2063) by @Jocs in #4727
- docs: add commenting guidelines by @Jocs in #4738
- fix(muya): escape parentheses in inserted image paths (#3060) by @Jocs in #4728
- fix(muya): decode HTML entities in fetched page titles when pasting a URL (#2525) by @Jocs in #4729
- fix(muya): reset search state when the document is replaced (#1932) by @Jocs in #4730
- fix(muya): split on Enter over a cross-block selection (#2443) by @Jocs in #4735
- fix(muya): let Enter replace a selection when the format toolbar is shown (#3196) by @Jocs in #4736
- fix(muya): stop punctuation after a link wrapping to its own line (#2258, #3025) by @Jocs in #4737
- chore: audit Claude-authored comments against the commenting guidelines by @Jocs in #4740
- fix: normalize HTML task-list paste by @Renakoni in #4710
- fix: preserve bare URL HTML links on paste by @Renakoni in #4711
- fix: preserve whitespace-only plain text paste by @Renakoni in #4706
- fix: preserve nested HTML lists under ordered parents by @Renakoni in #4709
- fix: prevent nested empty list items from becoming setext headings by @Renakoni in #4697
- fix: preserve empty task list items when parsing markdown by @Renakoni in #4696
- fix: remove ~1s sidebar delay for newly created files (#3955) by @Jocs in #4744
- fix(i18n): degrade malformed translations to raw text instead of crashing (#4046) by @Jocs in #4745
- fix: vertically center task list checkbox with item text by @Jocs in #4750
- fix(desktop): prefer UTF-8 when a file is valid UTF-8 instead of trusting ced (#3151) by @Jocs in #4739
- fix(desktop): scroll the view up when the caret moves above the viewport (#3329) by @Jocs in #4742
- fix: scroll the active tab into view on tab switch (#3958) by @Jocs in #4743
Full Changelog: v0.20.0-beta.3...v0.20.0-beta.4
v0.20.0-beta.3
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- fix(desktop): restore vue-tsc typecheck (vite 7 PluginOption) by @Jocs in #4667
- fix(release): support immutable releases (draft-then-promote) + docs by @Jocs in #4666
- fix(muya): undo/redo corruption on coalesced paragraphโlist + text edits by @Jocs in #4669
- fix(renderer): keep find-bar prefill from being clobbered on open by @NSO73 in #4646
- fix(muya): preserve nested-list indentation in RTL mode by @Jocs in #4676
- fix(muya): load mhchem onto the same katex instance so \ce renders (#4670) by @Jocs in #4674
- fix(muya): keep inline links that are followed by a bare URL or text (#4671) by @Jocs in #4672
- fix(keybinding): sync menu bar and command palette when keybindings change by @Jocs in #4681
- fix(muya): guard detached code block in language selector (#4654) by @Jocs in #4677
- test(e2e): stabilize flaky search-prefill test (wait for selection commit) by @Jocs in #4682
- fix: export PDF/HTML/print in the editor's text direction (RTL) by @Jocs in #4678
- fix(muya): create a code-block when typing ``` + Enter inside block-quotes and lists by @Jocs in #4689
- fix(muya): prevent undo/redo exceptions from permanently disabling history (#4685) by @Jocs in #4692
- fix(muya): auto-hide inline markers when holding an arrow key out of a token by @Jocs in #4694
- test(e2e): replace fixed waits with expect.poll in editor-input by @NSO73 in #4695
- fix: normalize first-row colspan table paste by @Renakoni in #4707
- fix(renderer): use the theme text colour for the key bindings list (#3937) by @FurkaanBoraa in #4713
- fix: wrap selected text when typing auto-pair characters by @Renakoni in #4698
- fix(muya): skip empty sibling containers in caret navigation (#4644 follow-up) by @FurkaanBoraa in #4715
- fix(muya): stop the paragraph front-menu from acting on a stale block (#4686) by @Jocs in #4714
- fix(muya): re-sync the live tree from json state when an undo/redo apply throws by @Jocs in #4717
- fix(desktop): paint the launch window in the active theme's background (#3957) by @FurkaanBoraa in #4718
New Contributors
Full Changelog: v0.20.0-beta.2...v0.20.0-beta.3
v0.20.0-beta.2
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- chore(release): v0.19.0 release branch (DO NOT MERGE until stable) by @Jocs in #4269
- chore: bump develop to 0.20.0-dev by @Jocs in #4296
- docs(release): update Step 7 asset list to 24 by @Jocs in #4298
- docs(end-user): align user docs with 0.19 prefs and platform matrix by @Jocs in #4300
- docs(dev): sync developer docs with current codebase by @Jocs in #4299
- chore: convert repo to pnpm monorepo (packages/desktop, muyajs, website) by @Jocs in #4302
- refactor(website): migrate to Next.js 15 + Cloudflare Workers CI by @Jocs in #4305
- feat(website): serve www.marktext.me (301 โ apex) by @Jocs in #4308
- fix(website): wwwโapex redirect (middleware) + smarter preview-URL parsing by @Jocs in #4309
- ci(website): enable Preview URLs on marktext-website Worker by @Jocs in #4311
- refactor(website): redesign landing page, drop markdown engine deps by @Jocs in #4312
- feat(muya): migrate TS rewrite to packages/muya alongside legacy muyajs by @Jocs in #4314
- feat(website): add /docs route and consolidate docs/ under packages/website/ by @Jocs in #4316
- fix: replace remaining absolute raw.githubusercontent.com URLs with relative paths in READMEs by @Jocs with @Copilot in #4329
- fix(website): serve prerendered docs pages via static-assets cache by @Jocs in #4335
- fix(website): open download buttons in new tab pointing to releases page by @Jocs in #4336
- refactor(website): simplify docs subtree (palette / sidebar / markdown / nav) by @Jocs in #4349
- refactor(website): simplify landing page (helpers, types, data-driven blocks) by @Jocs in #4350
- chore(website): tighten middleware matcher; drop unused 'use client' by @Jocs in #4351
- fix(muyajs): preserve nested lists of differing types (#4341) by @Jocs in #4354
- fix(muyajs): allow CJK ideographs as flanking boundary for emphasis by @Jocs in #4355
- fix(muyajs): clamp setStart offset to legal range to prevent IndexSizeError (#2800) by @Jocs in #4358
- fix(muyajs): null-guard list block paths to prevent renderer crash (#4346) by @Jocs in #4359
- fix: restore local builds after monorepo split by @Jocs in #4361
- fix(release): add repository field for electron-builder by @Jocs in #4368
- fix(muyajs): split correct paragraph on Enter in multi-block list items (#4374) by @Jocs in #4376
- fix(renderer): improve graphite contrast and unify accent colors (#4377) by @Jocs in #4378
- feat(muya): expose desktop-required public API accessors by @Jocs in #4381
- feat(muya): expose themeable CSS variables and diagram theming by @Jocs in #4382
- feat(muya): add block duplicate/insert/delete public API by @Jocs in #4384
- feat(muya): restore flowchart and sequence diagrams by @Jocs in #4385
- feat(muya): add ImagePathPicker floating autocomplete UI by @Jocs in #4386
- fix(muya): unbreak lint:css (stylelint 17 compatibility) by @Jocs in #4388
- feat(muya): add cursorCoords + active formats to selection-change by @Jocs in #4387
- feat(muya): implement focus mode (dim inactive blocks) by @Jocs in #4389
- feat(muya): emit format-click and preview-image interaction events by @Jocs in #4390
- feat(muya): add updateParagraph block-type conversion API by @Jocs in #4391
- feat(muya): add runtime setOptions / setFont / setTabSize / setListIndentation by @Jocs in #4393
- feat(muya): add spellcheck word-replacement API by @Jocs in #4392
- feat(muya): serialize/restore undo history by @Jocs in #4394
- feat(muya): add invalidateImageCache by @Jocs in #4396
- test(muya): port MarkText regression cases (#4341/#4307/#4190) by @Jocs in #4399
- feat(muya): add createTable / insertImage / setCursor API by @Jocs in #4397
- feat(muya): add clipboardFilePath paste hook by @Jocs in #4398
- fix(muya): treat CJK as punctuation for strong/em flanking (#4307) by @Jocs in #4401
- feat(desktop): consume @muyajs/core in util files (markdownToHtml/pdf/dompurify/printService/sourceCode/icon) by @Jocs in #4402
- feat(desktop): add kebab-case editor CSS vars to themes for @muyajs/core by @Jocs in #4404
- feat(desktop): migrate editor.vue to @muyajs/core engine by @Jocs in #4406
- fix(i18n): unify quick-insert hint to "/" trigger by @Jocs in #4405
- test(parity): failing-test scoreboard for #4406 muyajsโ@muyajs/core gaps by @Jocs in #4407
- fix(muya): insertParagraph immediate-block anchoring in nested blocks (PG13) by @Jocs in #4408
- fix(muya): consume autoCheck + hideLinkPopup options (PG3/PG12) by @Jocs in #4409
- feat(muya): expose block affiliation in selection-change (PG1) by @Jocs in #4410
- feat(muya): restore clipboard image paste + imageAction routing + copyAsRich (PG5/PG6/PG9) by @Jocs in #4411
- fix(muya): inline export CSS + heading ids for offline export & TOC anchors (PG7/PG8) by @Jocs in #4412
- feat(muya): emit preview-image + heading-copy-link events (PG10/PG11) by @Jocs in #4414
- feat(muya): restore drag-and-drop image insertion (PG4) by @Jocs in #4413
- feat(desktop): wire @muyajs/core parity APIs (menu state, copyAsRich, heading-link, source cursor, saved indicator) by @Jocs in #4415
- fix(desktop): pass imageAction + getPathForFile to Muya constructor (re-activate PG4/5/6) by @Jocs in #4417
- fix(muya): resolve pre-existing lint:css no-descending-specificity by @Jocs in #4419
- fix(muya): record source-mode bulk edit as a single undo boundary (PG14) by @Jocs in #4420
- test(desktop): remove redundant muyajs-engine unit specs (Phase F) by @Jocs in #4422
- fix(desktop): retarget theme.ts editor CSS at muya mu-* classes (E4) by @Jocs in #4421
- fix(desktop): port print image-src resolution off muyajs (last muya/lib import) by @Jocs in #4423
- fix(muya): crash typing '#' โ guard I18n.t + add heading-copy-link locale key by @Jocs in #4424
- fix(muya): add missing image i18n keys ('Click to add an image' / 'Load image failed') by @Jocs in #4427
- fix(muya): render relative image paths anchored to the document dir (Phase G blocker) by @Jocs in #4428
- fix(desktop): EditโธReplace action + saved-indicator false-clean (Phase G) by @Jocs in #4431
- fix(muya): preserve drive/UNC roots in relative image path resolution (#4428 review follow-up) by @Jocs in #4430
- fix: source-mode cursor sync + language-switch hint refresh (Phase G G7/G8) by @Jocs in #4432
- fix(muya): updateParagraph data-loss on list/quote + front-matter insertion + frontmatterType lang (Phase G) by @Jocs in #4429
- test: cover @muyajs/core migration regression gaps (Phase G) by @Jocs in #4434
- fix(muya): restore cross-cell table selection + resolve dead TableChessboard picker (Phase G) by @Jocs in #4435
- test(muya): de-flake heading-locale + backspace regression specs (#4434 review) by @Jocs in #4436
- fix(muya): restore the in-editor table grid picker (revert #4435 chessboard deletion + wire trigger) by @Jocs in #4437
- docs: archive the muyajs โ @muyajs/core migration tracker by @Jocs in #4438
- chore: keep .claude/ fully ignored (untrack migration tracker) by @Jocs in #4439
- fix: restore editor visual parity after @muyajs/core migration by @Jocs in #4443
- fix(muya): align Cmd+A / copy / cut / paste with legacy muyajs by @Jocs in #4446
- chore(muya): align packages/muya conventions with desktop + doc cleanup by @Jocs in #4450
- fix(muya): editor parity with muyajs (themes, fonts, spellcheck) + CLASS_NAMES cleanup by @Jocs in #4454
- refactor(muya): split clipboard into modules + type copy/paste modes as enums by @Jocs in #4459
- fix(muya): enable inline image resize by @Jocs in #4460
- refactor(muya): rebuild ImageEditTool to match muyajs ImageSelector by @Jocs in #4461
- chore: remove ununsed comments by @Jocs in #4462
- chore(muya): remove redundant comments added during the muyajs port by @Jocs in #4463
- refactor(muya): unify Selection into facade over Text/Table/Image sub-selections by @Jocs in #4467
- fix(muya): match muyajs nested list spacing and bullet markers by @Jocs in #4469
- fix(editor): restore caret on source-mode undo and tab switch by @Jocs in #4470
- fix(muya): preventDefault on forward-delete paragraph merge by @Jocs in #4471
- fix(muya): restore Paste as Plain Text via async clipboard read by @Jocs in #4472
- fix(muya): stop drag-selection from expanding to whole blocks by @Jocs in #4477
- fix(muya): delete whole image on backspace (inline, raw html, reference) by @Jocs in #4478
- fix(muya): stop Shift+Tab unindent from crashing on insertTab by @Jocs in #4479
- fix(muya): stop arrow nav from crashing on null cursor coords by @Jocs in #4480
- fix(muya): clear the
/trigger when quick-inserting front matter by @Jocs in #4481 - fix(desktop): make Promote Heading shortcut fire on macOS by @Jocs in #4482
- fix(desktop): refresh muya locale on language switch (hint + quick-insert menu stay translated) by @Jocs in #4489
- fix(desktop): anchor theme card h3 label to its heading by @Jocs in #4490
- fix(muya): stop in-flight float positioning from re-revealing a hidden float by @Jocs in #4491
- fix(desktop): return relative image path for local-path-string inserts by @Jocs in #4492
- fix: insert web images dragged from a browser by @Jocs in #4494
- fix(muya): support resizing images that share the same link by @Jocs in #4495
- fix(muya): render vega-lite diagrams under the renderer CSP by @Jocs in #4496
- fix(muya): refresh local images on "Reload images" (View โ Reload images) by @Jocs in #4498
- fix: reflect the current block in the Paragraph menu (PG1) by @Jocs in #4500
- fix(muya): keep selection after applying an inline format to a range by @Jocs in #4501
- fix(desktop): reflect underline/superscript/subscript/highlight in the Format menu by @Jocs in #4503
- fix: paragraph menu / command palette parity (focus, list unwrap, shortcut symbols) by @Jocs in #4504
- fix(muya): keep cursor in place when toggling Loose List Item by @Jocs in #4506
- refactor(muya): rework the selection type surface by @Jocs in #4512
- fix(desktop): point in-app docs links at marktext.me by @Jocs in #4513
- fix(website): point self-referential doc links at the published docs by @Jocs in #4514
- fix(website): register the missing end-user docs pages by @Jocs in #4515
- feat(i18n): add Turkish (tr) locale by @FurkaanBoraa in #4510
- feat: make PlantUML server URL configurable by @jyte in #4400
- fix: #4474 unsaved indicator never clears after undoing back to on-disk content by @FurkaanBoraa in #4475
- fix(test): correct PlantUML custom-server URL assertion by @Jocs in #4517
- fix(i18n): reconcile desktop & muya locale keys after the muya engine refactor by @Jocs in #4516
- test(muya): backfill engine-unit coverage for audited gaps by @Jocs in #4508
- test(muya-e2e): backfill real-DOM e2e coverage for audited gaps by @Jocs in #4511
- test(desktop): backfill renderer/main unit coverage for audited gaps by @Jocs in #4509
- refactor(muya): return enums from TextSelection direction/type by @Jocs in #4519
- refactor(muya): setSelection takes anchor/focus endpoints by @Jocs in #4523
- refactor(muya): route format/codeblock selection through setCursor by @Jocs in #4520
- refactor(muya): split ICursor into focused interfaces by @Jocs in #4524
- refactor(muya): keep table rect selection exclusive of text selection by @Jocs in #4522
- refactor(muya): extract computeDirection/computeCaretType helpers by @Jocs in #4525
- refactor(muya): simplify selectAll into three escalation rules by @Jocs in #4526
- test(muya): replace any with precise block/state types in specs by @Jocs in #4528
- refactor(desktop): remove no-explicit-any suppressions in favor of precise types by @Jocs in #4527
- refactor(muya): drop cyclomatic complexity below 20 across the engine by @Jocs in #4529
- refactor(muya): rename selection enum members to UPPER_SNAKE_CASE by @Jocs in #4531
- chore: translate remaining Chinese console/debug strings to English by @Jocs in #4533
- refactor(muya): enforce
_prefix for private members via lint by @Jocs in #4535 - refactor(muya): mark core/state/selection internals private by @Jocs in #4541
- refactor(muya): mark block-tree internals private/protected by @Jocs in #4538
- refactor(muya): mark UI float-tool internals private by @Jocs in #4539
- refactor(desktop): remove remaining no-explicit-any suppressions by @Jocs in #4548
- feat: align Paragraph/Format menus with muyajs behavior on @muyajs/core (+3 upgrades) by @Jocs in #4547
- fix(muya): sync inline format toolbar highlight via selection-change by @Jocs in #4558
- fix(muya): align normalizePastedHTML link unlinking with muyajs by @Jocs in #4550
- fix(muya): render footnotes in copy-as-html / copy-as-rich clipboard HTML by @Jocs in #4544
- fix(muya): align clipboard cut/delete semantics with muyajs by @Jocs in #4540
- fix(muya): collapse code block to paragraph on cross-block cut from its language line (#918) by @Jocs in #4545
- fix(muya): merge pasted paragraphs/headings inline (muyajs parity) by @Jocs in #4542
- fix(muya): replace selected image on paste + language-input paste parity by @Jocs in #4543
- fix(muya): merge same-type list paste + plain-text block HTML (muyajs parity) by @Jocs in #4546
- fix(muya): round-2 paste/clipboard parity fixes from a full muyajs re-audit by @Jocs in #4549
- fix: populate the table of contents on open and fix link navigation by @NSO73 in #4448
- fix(desktop): paste captured image on macOS Edit โ Screenshot by @Jocs in #4566
- fix(muya): restore editor cursor when closing the search bar (selectHighlight) by @Jocs in #4567
- fix(muya): restore find-bar prefill from editor selection by @Jocs in #4569
- fix(search): scroll editor to match when opening a folder-search result by @Jocs in #4568
- fix(muya): serialize lists with the configured listIndentation by @Jocs in #4570
- fix(muya): restore the focused frontmatter delimiter markers by @Jocs in #4571
- fix(muya): show code-block line numbers on first render for language-less blocks by @Jocs in #4572
- fix(muya): re-parse on parse-affecting option changes so ```math toggles live by @Jocs in #4573
- fix(export): repair five styled-HTML export regressions (math, vega, footnotes, TOC, images) by @Jocs in #4576
- fix(export): make "Overwrite theme font" actually override the selected theme by @Jocs in #4579
- fix(editor): restore per-tab caret on tab switch by @Jocs in #4580
- fix(editor): restore undo after an external file reload by @Jocs in #4582
- fix(desktop): auto-focus the editor when creating or opening a tab by @Jocs in #4581
- fix(editor): align code block line numbers vertically by @Jocs in #4583
- fix(editor): keep spelling suggestions when "no underline" is enabled by @Jocs in #4584
- refactor(muya): decouple engine/block layers from src/ui plugin internals by @Jocs in #4587
- fix(clipboard): copy only the selected part of cross-block selections by @Jocs in #4586
- fix(muya): correct setext heading level when typing the underline by @Jocs in #4591
- fix(muya): guard checkNeedRender against a null cursor (image-preview reclick crash) by @Jocs in #4588
- test(desktop): backfill renderer/main unit coverage for post-migration gaps by @Jocs in #4592
- test(muya-e2e): backfill real-DOM e2e coverage for post-migration gaps by @Jocs in #4593
- test(muya): backfill engine unit coverage for post-migration gaps by @Jocs in #4589
- test(desktop): backfill app e2e coverage for post-migration gaps by @Jocs in #4594
- chore(security): remediate 25 Dependabot alerts by @Jocs in #4596
- chore(deps): upgrade all packages to latest + align shared versions by @Jocs in #4597
- test(muya): poll for the html_tag mount instead of waiting a single frame by @Jocs in #4607
- fix(muya): escape pipes at cell start and consecutive pipes in table serialization by @Jocs in #4601
- fix(muya): absorb a manually typed closing markdown marker after text by @Jocs in #4602
- fix(muya): let Shift+ArrowUp/Down extend selection while the inline toolbar is shown by @Jocs in #4603
- fix(muya): render
- fix(muya): keep emphasis intact when a line contains escaped dollar signs by @Jocs in #4605
- fix(muya): paste a URL into link parentheses without nesting a markdown link by @Jocs in #4608
- fix(muya): make links inside a raw HTML block clickable by @Jocs in #4609
- fix(muya): correct inline code/math shortcut labels in the format toolbar by @Jocs in #4611
- fix: #4356 crash when using the link popover on a link with an unsupported protocol by @FurkaanBoraa in #4473
- fix(muya): map ย to U+00A0 and keep escaped spaces unbreakable by @Jocs in #4612
- fix(desktop): scroll to non-heading in-document anchors on Ctrl/Cmd-click by @Jocs in #4613
- fix(muya): keep the inline-math parse-error message on one line by @Jocs in #4614
- fix(muya): allow inline style in the html-block live preview by @Jocs in #4618
- fix(muya): cap and horizontally scroll the inline-math popup by @Jocs in #4615
- fix(desktop): isolate the editor stacking context so previews stay under modals by @Jocs in #4617
- test(desktop): fix inline code/math shortcut tests failing on develop after #4611 by @FurkaanBoraa in #4624
- fix(desktop): scroll CodeMirror to the heading on TOC click in source mode by @Jocs in #4619
- fix(muya): constrain a rendered diagram svg so wide diagrams don't clip by @Jocs in #4616
- fix(desktop): apply custom keybinding changes without an app restart by @Jocs in #4621
- fix(muya): break undo entries at word and edit-kind boundaries by @Jocs in #4622
- fix(muya): swap cross-block arrow boundary keys in RTL mode by @Jocs in #4610
- fix: opaque light-theme editor text colors for crisp antialiasing by @Jocs in #4631
- fix(muya): clamp selection offset to the node's legal range by @Jocs in #4626
- fix(desktop): prevent data loss when closing after Source Code mode edits by @Jocs in #4627
- fix(muya): center inline math vertically so it sits on the text baseline by @Jocs in #4632
- fix(muya): render inline math containing an escaped dollar sign by @Jocs in #4629
- fix(muya): prevent renderer crash when deleting consecutive thematic breaks by @Jocs in #4628
- test: drop the low-value opaque-color guard tests from #4466 by @Jocs in #4633
- test(muya): regression guard for code-block scroll on typing (#3191) by @Jocs in #4638
- fix(muya): align serialized table columns by visual width (#1983) by @Jocs in #4636
- fix(muya): insert ordinary spaces for Tab instead of non-breaking spaces (#3273) by @Jocs in #4634
- fix(muya): convert typed diagram fences to diagram blocks on Enter (#2177) by @Jocs in #4635
- fix(muya): keep the caret on Shift+Tab list unindent (REPLACEMENT path) (#3223) by @Jocs in #4637
- fix(muya): typed diagram fences create diagram blocks via the language selector (#2177) by @Jocs in #4640
- refactor: rewrite getTOC and remove unused comments by @Jocs in #4642
- fix(muya): allow trailing whitespace after a math block's closing $$ (#1931) by @Jocs in #4649
- fix(muya): stop ArrowDown from endlessly creating empty paragraphs (#3520) by @Jocs in #4650
- fix(muya): take the list marker from a line start in _convertToList (#2429) by @Jocs in #4651
- fix(muya): strip trailing punctuation from extended autolinks (#2096) by @Jocs in #4652
- fix(muya): ArrowUp at document start moves the caret to offset 0 (#3193) by @Jocs in #4655
- fix(muya): destroy UI plugins on Muya.destroy() to stop leaking DOM nodes (#3315) by @Jocs in #4659
- fix(muya): don't cut a cross-block selection on Ctrl+ (Windows/Linux) (#3491) by @Jocs in #4656
- fix(muya): apply inline format across paragraphs nested in one blockquote (#3462) by @Jocs in #4661
- fix: #4534 group theme menu into Light/Dark submenus by @FurkaanBoraa in #4623
- fix(muya): drop pending op batch on setContent to prevent cross-document corruption (#2938) by @Jocs in #4658
- test(desktop): pin autosave's recreate-missing-directory behavior (#3509) by @Jocs in #4657
- fix(muya): keep list item non-empty on Enter in empty first paragraph (#4644) by @Jocs in #4660
New Contributors
- @Jocs with @Copilot made their first contribution in #4329
- @FurkaanBoraa made their first contribution in #4510
- @jyte made their first contribution in #4400
- @NSO73 made their first contribution in #4448
Full Changelog: v0.19.0...v0.20.0-beta.2
v0.19.1
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- chore(release): v0.19.0 release branch (DO NOT MERGE until stable) by @Jocs in #4269
- chore: bump develop to 0.20.0-dev by @Jocs in #4296
- docs(release): update Step 7 asset list to 24 by @Jocs in #4298
- docs(end-user): align user docs with 0.19 prefs and platform matrix by @Jocs in #4300
- docs(dev): sync developer docs with current codebase by @Jocs in #4299
- chore: convert repo to pnpm monorepo (packages/desktop, muyajs, website) by @Jocs in #4302
- refactor(website): migrate to Next.js 15 + Cloudflare Workers CI by @Jocs in #4305
- feat(website): serve www.marktext.me (301 โ apex) by @Jocs in #4308
- fix(website): wwwโapex redirect (middleware) + smarter preview-URL parsing by @Jocs in #4309
- ci(website): enable Preview URLs on marktext-website Worker by @Jocs in #4311
- refactor(website): redesign landing page, drop markdown engine deps by @Jocs in #4312
- feat(muya): migrate TS rewrite to packages/muya alongside legacy muyajs by @Jocs in #4314
- feat(website): add /docs route and consolidate docs/ under packages/website/ by @Jocs in #4316
- fix: replace remaining absolute raw.githubusercontent.com URLs with relative paths in READMEs by @Copilot in #4329
- fix(website): serve prerendered docs pages via static-assets cache by @Jocs in #4335
- fix(website): open download buttons in new tab pointing to releases page by @Jocs in #4336
- refactor(website): simplify docs subtree (palette / sidebar / markdown / nav) by @Jocs in #4349
- refactor(website): simplify landing page (helpers, types, data-driven blocks) by @Jocs in #4350
- chore(website): tighten middleware matcher; drop unused 'use client' by @Jocs in #4351
- fix(muyajs): preserve nested lists of differing types (#4341) by @Jocs in #4354
- fix(muyajs): allow CJK ideographs as flanking boundary for emphasis by @Jocs in #4355
- fix(muyajs): clamp setStart offset to legal range to prevent IndexSizeError (#2800) by @Jocs in #4358
- fix(muyajs): null-guard list block paths to prevent renderer crash (#4346) by @Jocs in #4359
- fix: restore local builds after monorepo split by @Jocs in #4361
New Contributors
- @Copilot made their first contribution in #4329
Full Changelog: v0.19.0...v0.19.1
v0.19.0
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- Ignore empty key bindings by @fxha in #3077
- Update auto pair quote logic by @Lorilandly in #2960
- Fix image paste handler is not executed by @fxha in #3076
- Add experimental native support for Apple M1 by @fxha in #3089
- Update dependencies by @fxha in #3096
- Fix: "delete" shortcut on a selected image deletes the text after it (#2816) by @kiyoka in #3088
- Fix links to macOS releases by @yous in #3099
- Fix typo in the DataCenter class init method by @vdeschuy in #3104
- 0.17.1 by @fxha in #3105
- Fixed multi line highlight. by @or1ko in #3115
- Don't copy (or on cut) empty data to the clipboard, matches native behavior by @mitchcapper in #3130
- Upgrade Electron to v17 by @fxha in #3138
- Remove Wayland workaround by @fxha in #3147
- Refactor menu actions and shortcut handling by @fxha in #3032
- Replace node-spellchecker with Electron builtin spell checker by @fxha in #2895
- Remove expired "marktext.app" domain by @CouldBeThis in #3350
- fix wrong logo path in ko.md by @heli-os in #3576
- Update Traditional Chinese translation of README by @ChiahongHong in #3264
- Update dependencies by @fxha in #3213
- Add .mdx extension support by @davidknezic in #3438
- FIX: 'yarn run test:specs' command fails to load @markedjs/html-differ (#3330) by @kiyoka in #3331
- fix #3150: Win32 error in renderer process by @fxha in #3214
- Fix roadmap link by @fulldecent in #3678
- upgrade to mermaid 10 by @ivy-rew in #3734
- [i18n] Improve portuguese translation on the README by @tiagozip in #3813
- chore: update readme add Inkio and remove broken link by @Jocs in #4084
- chore: Update outdated GitHub Actions versions by @pgoslatara in #4113
- Add arabic lang for doc by @Almohawis in #4097
- chore: update readme file by @Jocs in #4136
- docs: improve grammar & punctuation by @RightWrite in #3939
- add .claude .agents to gitignore by @chongchonghe in #4172
- Note added according to the issue #2208 by @aespondac in #3867
- fix: upload failure with github (#3588) by @left0ver in #3589
- Fix not colored emojis on popup by @fxha in #3215
- fix issue 3268 by @hahaha28 in #3269
- fix: #4153 suppress EPIPE crash in main process by @Wordbe in #4154
- New feature: Opening image file with the external tool (#2321) by @kiyoka in #3007
- fix: guard null imageContainer.firstChild in getImageInfo by @Jocs in #4193
- fix: prevent querySelector crash on empty heading slug by @Bowl42 in #4135
- Re-Factor MarkText with electron-vite by @Tkaixiang in #4001
- fix: restore docs accidentally deleted in PR #4001 (electron-vite refactor) by @Jocs in #4196
- restore: recover accidentally deleted tests from PR #4001 by @Jocs in #4197
- chore: upgrade project dependencies to latest compatible versions by @Jocs in #4199
- translate: convert all Chinese code comments to English by @Jocs in #4201
- fix: fix ESLint configuration and resolve all lint errors by @Jocs in #4202
- fix: resolve post-refactor regressions from electron-vite migration by @Jocs in #4203
- Make native menu theme follow app theme by @johnsmith507 in #4205
- feat: add GitHub Sponsors button to repository by @Jocs in #4207
- feat: update sponsor by @Jocs in #4208
- i18n: translate sponsor section in all language READMEs by @Jocs in #4209
- fix: support Node v24+ with native-keymap C++20 patch and automated postinstall by @Jocs in #4211
- fix: ensure npm run dev works after npm install on Node v24+ by @Jocs in #4212
- feat: migrate package manager from npm to pnpm by @Jocs in #4213
- docs: display special sponsor as a Markdown table by @Jocs in #4215
- docs: update stale references and add CLAUDE.md by @Jocs in #4216
- ci: replace manual test_pr with automated PR workflows by @Jocs in #4218
- fix: word count tooltip not showing on macOS by @Jocs in #4219
- fix: restore image fullscreen viewer broken by view-image removal by @Jocs in #4221
- feat: restore third-party license tooling and add CI validation by @Jocs in #4220
- fix: prevent crash in normalizeTable when body row has more cells than header by @Jocs in #4222
- fix: skip conflict detection for unbound shortcuts in keybinding loader by @Jocs in #4223
- fix: avoid reloading existing i18n locales by @cerredz in #4224
- fix: migrate jsconfig.json away from deprecated baseUrl (TS 6.0) by @Jocs in #4225
- fix: remove unused languine dependency (resolves CVE-2026-41650) by @Jocs in #4226
- chore: remove unused deps and upgrade all dependencies to latest by @Jocs in #4227
- ci: add Claude Code Action workflow by @Jocs in #4228
- fix: add pnpm-workspace.yaml to approve build scripts for native deps by @Jocs in #4230
- fix: build error when build mac target by @Jocs in #4232
- fix: use default font smoothing by @cerredz in #4217
- docs: update CommonMark Spec links to latest version by @Jocs in #4235
- fix: #4151 preserve scroll position on external file change by @Wordbe in #4152
- fix: Internal image cache isn't reset if failed to load (#3001) by @kiyoka in #3010
- Allow scrolling down even if no contents below by @szdytom in #3405
- Added Arch Linux to development dependencies in BUILD.md by @lawgimenez in #3381
- fix(i18n): capitalize GitHub in English and Portuguese locale strings by @Blueteemo in #4238
- docs: expand CLAUDE.md with single-test recipes and dev script catalog by @Jocs in #4239
- fix: unblock local lint and vitest runs by @Jocs in #4240
- test(e2e): broaden Playwright coverage with menu/IPC-driven specs by @Jocs in #4241
- fix(ui): repair Insert Table dialog wrap and overhaul Help menu by @Jocs in #4242
- fix(source-view): stop styling math subscripts as emphasis (#4121) by @Jocs in #4243
- feat(security): sandbox the renderer (contextIsolation, nodeIntegration: false, sandbox: true) by @Jocs in #4244
- feat(ts): migrate the entire project to TypeScript by @Jocs in #4247
- refactor(stores): type editor + preferences Pinia stores (TS migration follow-up 1/6) by @Jocs in #4249
- refactor(renderer): type prefComponents schemas + leaf SFC controls (TS migration follow-up 2/6) by @Jocs in #4250
- refactor(test): port specs to strict TS โ drop @ts-nocheck, ESM imports (TS migration follow-up 3/6) by @Jocs in #4251
- refactor(renderer): type sidebar + top-level SFCs โ drop @ts-nocheck (TS migration follow-up 4/6) by @Jocs in #4252
- refactor(renderer): type editor + components SFCs โ drop @ts-nocheck (TS migration follow-up 5/6) by @Jocs in #4253
- refactor(renderer): type preference page SFCs โ drop @ts-nocheck (TS migration follow-up 6/6) by @Jocs in #4254
- chore(eslint): tighten @typescript-eslint/no-explicit-any to error (TS migration follow-up 7/7) by @Jocs in #4255
- chore(eslint): ignore .claude/ worktree clones in lint runs by @Jocs in #4256
- fix(ipc): tighten three IPC channels + SET_IMAGE_FOLDER_PATH signature by @Jocs in #4258
- fix(renderer): editor fills width when sidebar collapses to icon strip by @Jocs in #4262
- style(preferences): polish dialog UI and unify design by @Jocs in #4263
- style(ui): batch polish sidebar, tabs, preferences, and theme contrast by @Jocs in #4264
- style(sidebar): unify collapse arrows and tighten tree spacing by @Jocs in #4265
- fix(muya): guard stale cursor/block lookups against null by @Jocs in #4267
- ci(release): split into validateโbuildโpublish, harden workflow by @Jocs in #4266
- test(e2e): regression guards for previously-reported "Unexpected error" crashes by @Jocs in #4268
- docs(release): expand RELEASE.md into a step-by-step playbook by @Jocs in #4270
- fix(release): restore updater metadata artifacts by @Jocs in #4272
- fix(sidebar): create-file button works in non-English locales by @Jocs in #4273
- chore: remove unused SVG icons from renderer by @Jocs in #4275
- FIx: switch path-browserify to Pathe + image pasting on windows + cleanup console.logs by @Tkaixiang in #4274
- refactor(image): remove GitHub uploader and None option; default to PicGo by @Jocs in #4276
- feat(sidebar): implement file & folder sort with natural ordering by @Jocs in #4277
- feat(sidebar): add toggle to hide Opened Files + cap list to 4 items by @Jocs in #4278
- build: add Windows ARM64 native build support by @Jocs in #4279
- fix(uploader): remove 5 MB hard limit on image uploads by @Jocs in #4280
- fix(preferences): update broken doc links to correct develop-branch paths by @Jocs in #4281
- fix(build): restore dedicated .md file icon on Windows by @Blueteemo in #4284
- chore: remove residual Unsplash code by @Jocs in #4286
- chore: remove dead code and debug noise by @Jocs in #4287
- refactor(editor): rename LINTEN_FOR_* typos and unify JSON deep-clones by @Jocs in #4288
- perf(filesystem): cut stat syscalls and per-call regex compilation by @Jocs in #4289
- chore: misc simplifications by @Jocs in #4290
New Contributors
- @Lorilandly made their first contribution in #2960
- @yous made their first contribution in #3099
- @vdeschuy made their first contribution in #3104
- @or1ko made their first contribution in #3115
- @mitchcapper made their first contribution in #3130
- @CouldBeThis made their first contribution in #3350
- @heli-os made their first contribution in #3576
- @ChiahongHong made their first contribution in #3264
- @davidknezic made their first contribution in #3438
- @fulldecent made their first contribution in #3678
- @ivy-rew made their first contribution in #3734
- @tiagozip made their first contribution in #3813
- @pgoslatara made their first contribution in #4113
- @Almohawis made their first contribution in #4097
- @RightWrite made their first contribution in #3939
- @chongchonghe made their first contribution in #4172
- @aespondac made their first contribution in #3867
- @left0ver made their first contribution in #3589
- @hahaha28 made their first contribution in #3269
- @Wordbe made their first contribution in #4154
- @Bowl42 made their first contribution in #4135
- @Tkaixiang made their first contribution in #4001
- @johnsmith507 made their first contribution in #4205
- @cerredz made their first contribution in #4224
- @szdytom made their first contribution in #3405
- @lawgimenez made their first contribution in #3381
- @Blueteemo made their first contribution in #4238
Full Changelog: v0.17.0...v0.19.0
v0.19.0-rc.4
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- fix(preferences): update broken doc links to correct develop-branch paths by @Jocs in #4281
- fix(build): restore dedicated .md file icon on Windows by @Blueteemo in #4284
Full Changelog: v0.19.0-rc.3...v0.19.0-rc.4
v0.19.0-rc.3
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /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
- docs(release): expand RELEASE.md into a step-by-step playbook by @Jocs in #4270
- fix(release): restore updater metadata artifacts by @Jocs in #4272
- fix(sidebar): create-file button works in non-English locales by @Jocs in #4273
- chore: remove unused SVG icons from renderer by @Jocs in #4275
- FIx: switch path-browserify to Pathe + image pasting on windows + cleanup console.logs by @Tkaixiang in #4274
- refactor(image): remove GitHub uploader and None option; default to PicGo by @Jocs in #4276
- feat(sidebar): implement file & folder sort with natural ordering by @Jocs in #4277
- feat(sidebar): add toggle to hide Opened Files + cap list to 4 items by @Jocs in #4278
- build: add Windows ARM64 native build support by @Jocs in #4279
- fix(uploader): remove 5 MB hard limit on image uploads by @Jocs in #4280
Full Changelog: v0.19.0-rc.2...v0.19.0-rc.3
v0.19.0-rc.2
โ This is a pre-release
- May contain bugs and unfinished features.
โ ๏ธ Note for macOS users
Builds are unsigned (no Apple Developer ID). After dragging MarkText into Applications, clear the quarantine flag once:
xattr -cr /Applications/marktext.app
Verifying downloads
All artifacts are listed with their SHA-256 in SHA256SUMS.txt. Verify with:
sha256sum -c SHA256SUMS.txt --ignore-missing
Full Changelog: v0.19.0-rc.1...v0.19.0-rc.2
v1.8.0
Changelog
- a40aae8 Bugfix: url-encoded chars on the website listener
- 6f69a1f Check versioning on init
- ea9c1d6 auth: add GetUserAccountFresh to bypass the IAM cache
- 4e5fb34 chore(deps): bump actions/checkout from 6 to 7
- d88ac4e chore(deps): bump actions/setup-go from 6 to 7
- 77aa23b chore(deps): bump actions/setup-go from 6 to 7
- 1c7e22e chore(deps): bump github/codeql-action from 4 to 4.37.4
- dc2ae0c chore(deps): bump github/codeql-action from 4.37.4 to 4.37.6
- e553d3c chore(deps): bump github/codeql-action from 4.37.6 to 4.37.7
- ec61bc5 chore(deps): bump github/codeql-action from 4.37.7 to 4.37.8
- 41a511e chore(deps): bump github/codeql-action from 4.37.8 to 4.37.9
- ea8233c chore(deps): bump the dev-dependencies group across 1 directory with 20 updates
- c1c5a5f chore(deps): bump the dev-dependencies group with 19 updates
- 3e555fb chore(deps): bump the dev-dependencies group with 21 updates
- 8ac6bd5 chore(deps): bump the dev-dependencies group with 22 updates
- 8112b91 chore(deps): bump the dev-dependencies group with 23 updates
- 67e8d08 chore(deps): bump the dev-dependencies group with 27 updates
- f4a2904 chore(deps): bump the dev-dependencies group with 9 updates
- 87fc1b9 chore: add rdma/librcserver.a to .gitignore
- de042a5 cumiddleware: cover RC token boundary and legacy-precedence cases
- 05487cf cumiddleware: reject unsupported RC token schemes with 501
- c638503 feat(azure): carry Azure blob marker in continuation token for pagination
- a780f34 feat(azure): server-side copy with download+reupload fallback
- c84c5f6 feat: accept principal ARNs in bucket policies under standalone IAM
- e012a6f feat: add AWS-compatible standalone IAM service
- 7b6b816 feat: add Helm chart support for the standalone IAM service
- ec579ca feat: add IAM OIDC provider CRUD
- 4901afe feat: add IAM OIDC provider tagging actions
- cbcc656 feat: add IAM Role CRUD
- c9ce6ab feat: add IAM role inline policy CRUD
- 1bbcd64 feat: add IAM role tagging actions
- 9b352a3 feat: add IAM user access key management
- 3328501 feat: add IAM user inline policy CRUD
- 26a54b3 feat: add IAM user tagging actions
- ab2b816 feat: add STS web identity federation, IAM policy Condition support, and access control enforcement
- 062bf0b feat: add best-effort O_DIRECT support for posix put/get-object put-part
- 45a532e feat: add configurable file permissions for new objects
- 1b8147c feat: add helm chart admin and webui ingress support
- 2e22a42 feat: add live GitHub OIDC end-to-end test for AssumeRoleWithWebIdentity
- 62c6787 feat: add new vgwrdma service for cuObject compatible server
- 29256f0 feat: add optional data-integrity ETag mode for posix/scoutfs
- abb3b27 feat: add standalone IAM support in WebGUI
- c9e26b5 feat: add standalone iam service to systemd config setup
- 535cc9d feat: add the hipobj-rc-v2 control routes to the vgwrdma gateway
- a8c5810 feat: allow supplying an external IAM service implementation to embedgw
- 7dfea7a feat: govern GetBucketVersioning with the regular access checks
- 2147a0c feat: integrate standalone IAM service with S3 gateway for identity-based policy enforcement
- 5f9041f feat: support admin/access logs on standard streams
- a4d4519 feat: version the private IAM protocol between gateway and standalone service
- f7e13d7 fix(posix): make conditional PUT evaluation and publication atomic per key
- b83f5d9 fix(posix): return empty config for GetBucketVersioning when unconfigured
- 0720815 fix: add integeration tests
- f6219c8 fix: add license header to rdma files
- 6121d52 fix: apply default Content-Type in POSTObject
- f567abc fix: authorize every key in a DeleteObjects batch after a bucket-policy deny
- fce9d9b fix: build failure from conflicting merges
- ca8d434 fix: drain unread request bodies before closing the connection
- 9a73e22 fix: harden posix conditional publish locking
- e146646 fix: honor mpMaxParts across partNumber validation
- b9f8b8e fix: include common prefixes in ListObjectsV2 key count
- 9011935 fix: infer UserName from the calling access key in the access-key APIs
- 8779630 fix: make --chuid/--chgid usable with the standalone IAM service
- 4a0e07f fix: newer gofmt for s3api
- afbee5b fix: role last-used tracking, and record S3 requests in last-used metadata
- e05d0df fix: s3proxy sends bodyless CreateBucket when the configuration is empty
- 571df30 fix: support proxy
- c7f8bc0 fix: use constant-time comparisons for SigV4 signatures
- c0ed55c fix: use dir permissions option for temporary directories
- c281008 rdma: add the Go binding for the RC session server
- 64fcfee rdma: add the RC session server C ABI
- 50fc9fe rdma: authenticate RC routes through the terminal error path
- 726d65d rdma: gate the RC data plane behind a dedicated flag
- 1596531 rdma: keep RC route XML fidelity
- 50f4482 rdma: map RC transport errors to protocol codes
- efa0309 rdma: port the hipObject v2 RC session core
- 1a8d4c9 rdma: serialize RC route errors at the route boundary
- 158ccdf rdma: test RC route errors through the production server
Minecraft 26.3-pre-2 (snapshot) Released
v4.3.17
Fixes
- Corrected notification and deployment log links to use the configured instance URL. #11623
- Cleaned up orphaned helper containers when helper images used unqualified names, nested registry paths, tags, or digests. #11540 closed #11511.
- Preserved Docker restart policies when applications, previews, databases, and service applications were stopped without removing their containers.
- Fixed type errors when stopping applications and adding scheduled tasks.
- Kept Docker Compose domains in sync when noindex settings changed.
- Prevented removed Docker Compose service domains from being regenerated by magic service URL variables.
- Preserved generated Compose variables during bulk environment variable replacement and reported blocked deletions correctly.
- Cleared stale Traefik version data after proxies stopped or changed.
- Prevented invalid repository URLs from producing malformed commit links.
Improvements
- Removed app-only restart-limit enforcement from database resources so databases continued to follow their configured Docker restart behavior.
- Made missing required environment variables directly accessible from a service's disabled Deploy action.
- Hid Coolify-managed Compose variables from the developer environment variable view to prevent accidental edits.
What's Changed
- fix: build notification and deployment log links from the instance url by @peaklabs-dev in #11623
- fix(docker): reap orphaned helper containers regardless of registry by @kashik0i in #11540
New Contributors
Full Changelog: v4.3.16...v4.3.17
v1.19.1-pre
- Fixed AltGr / diacritic input being swallowed by the integrated terminal on Windows. (#63762)
- Fixed goToDefinition opening out-of-worktree entries (#63756)
- Fixed dev container environment variables being logged in full (#63734)
- Fixed OpenCode Go requests that could fail when Zed omitted the session header. (#63714)
- Fixed containers becoming scrollable by a sub-pixel amount, with a phantom full-height scrollbar thumb, at fractional UI font sizes. (#63659)
v1.18.1
- Fixed AltGr / diacritic input being swallowed by the integrated terminal on Windows. (#63763)
- Fixed goToDefinition opening out-of-worktree entries (#63757)
- Fixed dev container environment variables being logged in full (#63735)
- Fixed OpenCode Go requests that could fail when Zed omitted the session header. (#63715)
Firefox 155.0.1
Fixed
Fixed Firefox becoming unresponsive on some pages that use CSS blur and backdrop filters together. (Bug 2068836)
Fixed the sidebar not reappearing after restarting Firefox when the "Hide tabs and sidebar" option was turned on. (Bug 2065431)
Fixed some profile icons not being displayed in the account and application menus. (Bug 2064729, Bug 2067734)
Fixed the current device being listed among connected devices in the account menu. (Bug 2059763)
Reference link to 155.0 release notes.
Unresolved
Standard dynamic range (SDR) video in some formats can appear washed out on macOS. The issue is under investigation and a fix will ship in a future release. (Bug 2068961)
ElegantFin Theme v26.09.05 for Jellyfin
This is the 15th update to ElegantFin.
Key Changes
- Introduced a brand new Light theme, which can be enabled from
Settings > Display > Theme > Light. (See #15) - Reworked the seekbar styling to fix several issues, including inaccurate seekbar tooltips and positions.
- Improved support for the "Theme videos" feature. (Preview)
- Added card snapping to horizontal scrolling lists on phones.
- Added a hover effect to app bar tabs and buttons, and fixed the focus styling on the delete button.
- Added sticky save button in user settings pages.
- Added a way to show the "Ends At..." text and hide the Tomatoes rating icon on phones. (See #12)
- Added a way to switch between IMDb and TMDB star colors. (See #14)
- Added monospace font variant to the time text around seek bars.
- Made some icons thicker and slightly tweaked their shadows for improved visibility.
- Improved compatibility with the Jellyfin 12 legacy UI, fixing the credits table, clear logo position, and the music artist page.
- Fixed an issue where the top bar buttons were not clickable on some browsers and devices.
- Fixed the seekbar thumb not aligning with the progress level at the seekbar ends.
- Fixed the item column gap and other overrides not being applied on phones.
- Refactored huge chunks of code to make creating custom color themes easier. (More Info)
- Optimised some code to improve stability and compatibility.
- Improved compatibility with the external links added by Jellyfin Enhanced. (#296 - thanks @Macleykun)
- Improved compatibility with the "Episodes On Series Page" feature in KefinTweaks.
- Fixed the horizontal overflow in the "TMDB Reviews" section when using Jellyfin Enhanced.
- Avoided adding unintended margins on the home screen sections added by KefinTweaks.
Breaking Changes
- The app bar styles can no longer be switched using
--appBarHeight. You will need to use the code block documented in the updated customisation section. (See #8.)
You can read the full commit history here.
Additional Notes
- All the customisation instructions can be found in the README.md
- Jellyfin Media Player and some outdated TVs are not fully supported as they may lack support for newer CSS features.
- This is a hobby project. If it helped you, your support really means a lot.
You may use the provided CSS file for self-hosting purposes. Alternatively, you may use the following code snippet to get the latest version via a free CDN.
@import url("https://cdn.jsdelivr.net/gh/lscambo13/ElegantFin@main/Theme/ElegantFin-jellyfin-theme-build-latest-minified.css");
For more detailed information, be sure to read the README.md file.
NVIDIA Driver 616.64
Although GeForce Game Ready Drivers and NVIDIA Studio Drivers can be installed on supported notebook GPUs, the original equipment manufacturer (OEM) provides certified drivers for your specific notebook on their website. NVIDIA recommends that you check with your notebook OEM for recommended software updates for your notebook.
Game Ready for NBA 2K27
This new Game Ready Driver provides the best gaming experience for NBA 2K27 featuring DLSS 5 3D-Guided Neural Rendering as well as the latest new games supporting DLSS and RTX technologies including Onimusha: Way of the Sword.
Fixed Gaming Bugs
- N/A
Fixed General Bugs
- N/A
Learn more in our Game Ready Driver article here.
![]()
Proxmox VE achieves Omnissa Horizon Ready Hypervisor Certification
VIENNA, Austria โ September 04, 2026 โ Proxmox Server Solutions today announced that Proxmox Virtual Environment has been officially certified under the Omnissaยฎ Horizon Ready Hypervisor program. The certification confirms compatibility between Proxmox VE and Omnissa Horizon in Manual Provisioning Mode, allowing organizations running Proxmox VE to deploy Omnissa Horizon, Omnissaโs digital work platform for virtual desktops, applications, and end-user devices, for centralized desktop and application delivery on their existing infrastructure.
With official Horizon support, organizations can now run their Omnissa virtual desktops directly on Proxmox VE, reducing infrastructure costs without compromising on performance. By combining Proxmox VE's open-source hypervisor with Omnissa Horizon's enterprise management capabilities, organizations gain a flexible, cost-effective desktop virtualization solution built on infrastructure they already run.
Proxmox VE is also listed in the Horizon Ready Hypervisor program as a certified third-party hypervisor supporting NVIDIAยฎ vGPU. This enables IT teams to allocate physical GPU resources across multiple virtual machines, delivering high-performance graphics workloads within Horizon virtual desktop deployments.
Verified configurations and deployment requirements are available in the Omnissa Horizon Ready Hypervisor Compatibility Guide at https://interopmatrix.omnissa.com/Compatibility/hypervisors
###
About Proxmox Virtual Environment
Powering over 2.3 million hosts globally, Proxmox Virtual Environment is a complete open-source platform for enterprise virtualization and hyper-converged infrastructure. It natively unifies KVM virtualization, LXC containers, software-defined storage, and networking on a single platform. Alongside its dedicated Backup Server and Datacenter Manager, the Proxmox ecosystem eliminates multi-site complexity as well as dependency on proprietary stacks. Backed by a global community of over 225,000 members, the platform serves as a scalable, cost-effective foundation for modern data centers.
About Proxmox Server Solutions GmbH
Proxmox Server Solutions provides powerful, intuitive open-source server software that guarantees vendor independence and minimizes total cost of ownership. Enterprises of all sizes rely on the companyโs reliable vendor support, certified training services, and a global network of 3,000 integration partners to ensure business continuity. More than 60,000 enterprises worldwide hold active Proxmox support plans to secure their mission-critical IT. Established in 2005, Proxmox Server Solutions GmbH is headquartered in Vienna, Austria, with its subsidiary Proxmox North America Inc. based in Kingston, Ontario.ย
Media contact:ย Daniela Hรคsler, Proxmox Server Solutions GmbH, press@proxmox.com
Distribution Release: Talos Linux 1.14.0
Synology lanceert DVA7400 en brengt AI-surveillance op grote schaal volledig on-premises
Distribution Release: Grml 2026.09
-
nginx
- nginx-1.31.5 mainline version has been released, featuring control API, predicate locations, and the ngx_http_json_module module.
nginx-1.31.5 mainline version has been released, featuring control API, predicate locations, and the ngx_http_json_module module.
nginx-1.31.5 mainline version has been released, featuring control API, predicate locations, and the ngx_http_json_module module.
Early Stable Update for Desktop
The Stable channel has been updated to 153.0.8010.27/.28 for Windows. Mac is coming shortly , as part of our early stable release to a small percentage of users. A full list of changes in this build is available in the log.
You can find more details about early Stable releases here.
Interested in switching release channels? ย Find out how here. If you find a new issue, please let us know by filing a bug. The community help forum is also a great place to reach out for help or learn about common issues.
Srinivas Sista
Google Chrome
Bitfocus Companion v5.0.5
๐ฆ Downloads available at
๐ต Donate to the project at
- open collective https://opencollective.com/companion
Companion v5.0.5 - Release Notes
๐ BUG FIXES
- variables not being updated in feedbacks or localvariables in presets
- hidden elements not being invalidated when variables/dependencies change #4380
- catch variable changes that happen during async getDrawStyle #4380
- ensure ui font metrics are cleared after fonts are loaded
- feedbacks not updating while editing button in ui
- limit number of in flight updates/upgrades to each connection
- yield during import to ensure connections dont timeout
- loosen variable name rule
- preserve add entity modal expanded collections #4433
- UI Crash in TextInputField when label is not a string #4435
- exclude copyleft packages from offline bundle
Full Changelog: v5.0.4...v5.0.5
Stable Channel Update for Desktop
The Stable channel has been updated to 152.0.7977.82/.83 for Windows and Mac and 152.0.7977.82 for Linux, which will roll out over the coming days/weeks. A full list of changes in this build is available in the Logย
Security Fixes and Rewards
Note: Access to bug details and links may be kept restricted until a majority of users are updated with a fix. We will also retain restrictions if the bug exists in a third party library that other projects similarly depend on, but havenโt yet fixed.
This update includes 12 security fixes. Please see the Chrome Security Page for more information.
[$1,000][542403045] High CVE-2026-85046: Type confusion in V8. Reported by Salvatore Gulizia (nickname: Serotav) on 2026-08-04
[N/A][549350408] High CVE-2026-85050: Out of bounds write in WebGL. Reported by Google on 2026-08-20
[TBD][552689418] High CVE-2026-85053: Improper resource exposure in CacheStorage. Reported by Salvatore Gulizia (Serotav) on 2026-08-26
[N/A][553119925] High CVE-2026-85042: Use after free in DevTools. Reported by Google on 2026-08-26
[N/A][553345874] High CVE-2026-85049: Use after free in Skia. Reported by Google on 2026-08-27
[N/A][553449113] High CVE-2026-85051: Type confusion in Compositing. Reported by Google on 2026-08-27
[N/A][513790581] Medium CVE-2026-85047: Improper input validation in Transactions Platform. Reported by Google on 2026-05-16
[N/A][517482830] Medium CVE-2026-85044: Use of released resource in Mobile. Reported by Google on 2026-05-28
v4.3.16
Fixes
- Corrected internal routing and proxy labels for Docker Compose applications and previews to use each service's configured port, with the application port as a fallback.
- Restored the unsaved-changes indicator when switching label management to manual mode by updating Livewire. (#11612, closes #11265)
- Routed Telegram alerts for outdated Traefik versions to the configured topic instead of the main chat. (#11526)
- Corrected the file and directory deletion confirmation text. (#11541)
Improvements
- Ran stuck-resource cleanup in the background at 03:17 each day so it no longer blocked other scheduled tasks.
- Displayed the API token's one-time visibility warning directly beside the generated token.
What's Changed
- fix: update livewire to fix wire:dirty reactivity by @peaklabs-dev in #11612
- fix(ui): typo on storage delete modal by @ShadowArcanist in #11541
- fix(notifications): send traefik outdated alerts to the correct topic id by @DiyRex in #11526
Full Changelog: v4.3.15...v4.3.16
Enterprise Campus 24S/48S PoE 7.4.119
Overview
This is the initial release for the ECS-24S, ECS-24S-PoE, ECS-48S and ECS-48S-PoE.
Additional information
- Requires UniFi Network 10.6 or newer.
- Learn more about switch stacking here.