Repository navigation
Releases: leomoon/deckcraft
Release list
DeckCraft v0.10.0
Note
FreeBSD aarch64 is dropped from this release. We had to cut releases, and we cannot build this target within the 5-hour CI limit for any of the Craft apps, so we are dropping it for now. This is a known blocker, flagged for a future fix in storytold/craft-common-actions#39. FreeBSD x86_64 and every other platform are included.
What's Changed
- docs: add SonarCloud and CodeRabbit badges to README by @dylanmtaylor in storytold#984
- Skip CodeRabbit reviews on Dependabot PRs by @echelon in storytold#1068
- ci: switch to shared nix workflow from craft-common-actions by @dylanmtaylor in storytold#865
- macOS: open presentations from Finder, Open With and the Dock (storytold#138, storytold#347) by @Lexx143 in storytold#432
- security: enforce HTTPS on curl downloads (SonarCloud S6506) by @dylanmtaylor in storytold#1139
- README: the app icon above the title by @bflatastic in storytold#1158
- fix(wasm): avoid std services that panic on wasm32-unknown-unknown at… by @alexeyvolkoff in storytold#982
- Thumbnails: only render the slides in view (storytold#969) by @Faabyy in storytold#1011
- Text: an empty line takes the size of the mark that ends it by @Hamza0101 in storytold#790
- Reject invalid slide index params instead of using the selection by @Silvertree2010 in storytold#1063
- Strip URI fragment before percent-decoding OPC targets by @Silvertree2010 in storytold#1071
- Clear animation triggers that point at deleted shapes by @Silvertree2010 in storytold#996
New Contributors
- @Lexx143 made their first contribution in storytold#432
- @bflatastic made their first contribution in storytold#1158
- @alexeyvolkoff made their first contribution in storytold#982
- @Hamza0101 made their first contribution in storytold#790
Full Changelog: storytold/deckcraft@v0.9.0...v0.10.0
DeckCraft v0.9.0
Note
FreeBSD aarch64 is dropped from this release. We had to cut releases, and we cannot build this target within the 5-hour CI limit for any of the Craft apps, so we are dropping it for now. This is a known blocker, flagged for a future fix in storytold/craft-common-actions#39. FreeBSD x86_64 and every other platform are included.
What's Changed
- Keep bare '&' text when pasting HTML instead of dropping it by @Silvertree2010 in storytold#795
- Keep multi-paragraph slide titles on one line in outline export by @Silvertree2010 in storytold#796
- PPTX: a slide that can't be read is reported, not dropped in silence (storytold#203) by @Faabyy in storytold#802
- Add slides from an outline to the section of the slide they follow by @Silvertree2010 in storytold#827
- Text: AutoFormat superscripts ordinals (1st, 22nd) as you type by @marcoarnulfo in storytold#856
- Opening a .ppsx from the command line starts the slide show (storytold#862) by @marcoarnulfo in storytold#864
- Show: Back leaves a slide whose first animation plays by itself by @marcoarnulfo in storytold#882
- Export: PNG with a transparent background (storytold#784) by @switch87 in storytold#885
- Limit shape.setBounds, shape.resize and shape.move size and position by @Silvertree2010 in storytold#886
- Remap slide links to the copies when reusing slides by @Silvertree2010 in storytold#893
- Change case across formatting run boundaries by @Silvertree2010 in storytold#898
- Mirror the rotation when flipping a rotated shape by @Silvertree2010 in storytold#901
- Reject invalid comment.delete index instead of clearing the slide by @Silvertree2010 in storytold#902
- Export: PDFs store each slide backdrop once (storytold#845) by @FabPei in storytold#928
- Canvas: a shape in front of edited text takes the click (storytold#931) by @Zetenypapp in storytold#943
- Edit Points: turning a shape into a freeform is one undo step by @Zetenypapp in storytold#946
- Open: cap absurd effect sizes from a file (a huge glow made rendering ask for 34 GB) by @Zetenypapp in storytold#947
- Open: give shapes that repeat an id in a .deckcraft file fresh ones by @Zetenypapp in storytold#948
- Hide the idle cursor over clickable clips during a slideshow (storytold#968) by @MarekSpodBiedry in storytold#979
- Arrange: Align to Slide and Align Selected Objects in the Align menu, as in PowerPoint by @marcoarnulfo in storytold#871
- docs: drop references to competing commercial software by @dylanmtaylor in storytold#952
- ci: configure Dependabot for Cargo and GitHub Actions by @dylanmtaylor in storytold#993
- Format: retain imported chart parts through native saves by @MMexicann in storytold#851
New Contributors
- @Faabyy made their first contribution in storytold#802
Full Changelog: storytold/deckcraft@v0.8.0...v0.9.0
DeckCraft v0.8.0
What's Changed
- Opus: validate the header in Decoder::from_head (storytold#425) by @MarekSpodBiedry in storytold#442
- xtask: assets audit no longer panics on Unicode names and reads real paths from git (storytold#424) by @MarekSpodBiedry in storytold#443
- Info: keep a property draft when another field or the side menu is clicked (storytold#422) by @MarekSpodBiedry in storytold#445
- Engine: moving the selection to another text body settles the composition (storytold#421) by @MarekSpodBiedry in storytold#446
- Format scientific number formats (0.00E+00) in chart labels (storytold#419) by @MarekSpodBiedry in storytold#448
- UI: notes, alt text and rename drafts no longer carry over to another document (storytold#413) by @MarekSpodBiedry in storytold#450
- Pptx: keep the math namespace equations inherit from the slide root or a wrapper (storytold#412) by @MarekSpodBiedry in storytold#451
- MCP: do not resend a command whose reply was lost (storytold#409) by @MarekSpodBiedry in storytold#453
- Engine: a command that fails after editing puts the presentation back (storytold#405) by @MarekSpodBiedry in storytold#454
- Table: split and cell fill stay inside the table (storytold#400) by @MarekSpodBiedry in storytold#455
- Bitstream: reject bad NAL length widths, check NAL endpoints and signed Exp-Golomb limits (storytold#397) by @MarekSpodBiedry in storytold#456
- Matroska: stop following chapter and tag nesting past 32 levels (storytold#396) by @MarekSpodBiedry in storytold#457
- AV1: reject tile groups that repeat, skip or reorder tiles (storytold#395) by @MarekSpodBiedry in storytold#458
- Slide show: Honeycomb's hexagons cover the whole slide again (storytold#420) by @albayazid in storytold#460
- Copy and Cut buttons and menus put the text on the system clipboard (storytold#431) by @Zetenypapp in storytold#463
- Media: preserve video frames and EOF across seeks by @MMexicann in storytold#587
- Fix keyboard navigation when Presenter View has focus by @lambertoo in storytold#707
- Slide show: click-triggered animations, per-slide state and hit testing by @nagasakimark in storytold#713
- pptx: write linked pictures with r:link so PowerPoint resolves external images by @midasmatterhorn in storytold#728
- Colour menus: an Eyedropper that takes a colour from the slide (storytold#367) by @Silvertree2010 in storytold#436
- Slide: leading tabs in a new slide's body set the outline level (storytold#370) by @MarekSpodBiedry in storytold#459
- CLI: convert and run refuse output formats DeckCraft can't write (storytold#715) by @switch87 in storytold#716
- PPTX: .potx and .ppsx declare a template and slide show main part (storytold#210) by @justinjohn0306 in storytold#212
- Animations: nine PowerPoint exit effects import as themselves (storytold#147) by @justinjohn0306 in storytold#222
- SmartArt: text is laid out on its text rectangle (dsp:txXfrm), not in columns by @pierrevbc in storytold#242
- fix: DeckCraft upstream issue storytold#104 by @FabPei in storytold#306
- macOS: end the process in on_exit so closing the window doesn't crash by @marcoarnulfo in storytold#308
- Open: a password-protected presentation says so, and open errors show on the start screen by @marcoarnulfo in storytold#348
- Fonts: the font scan leaves out faces with no outline tables by @dotCooCoo in storytold#351
- Bump quick-xml to 0.41 (RUSTSEC-2026-0194, RUSTSEC-2026-0195) by @natocool2 in storytold#356
- Fonts: a lookup finds an installed family whichever thread loads it first by @LloydNicholson in storytold#80
- Command palette: one Export… entry that opens the dialog, no path-only duplicate (storytold#79) by @MarekSpodBiedry in storytold#82
- PPTX: animation rewind survives save and reopen (storytold#77) by @MarekSpodBiedry in storytold#83
- Export: an unknown format is an error instead of a deckcraft file by @mikl0s in storytold#95
- Slides: going to a slide that does not exist is an error by @mikl0s in storytold#96
- Commands: an invalid shape id is an error instead of the selection by @mikl0s in storytold#97
- docs(readme): percent-encode middle dot in platforms badge URL by @dylanmtaylor in storytold#98
- PPTX import: a transition without spd is 0.5 s, not the effect's default (storytold#117) by @alexanderalber in storytold#149
- Issue storytold#106: zooming keeps the point under the pointer by @LloydNicholson in storytold#156
- Charts: value axes start above zero when the values sit high, as in Office by @LloydNicholson in storytold#157
- Ribbon: transition and animation tiles follow the dark theme (storytold#159) by @MarekSpodBiedry in storytold#160
- Windows: compile DX12 shaders with FXC by @itrycodinganditsbad in storytold#176
- CLI: --help prints usage and unknown render flags are rejected (storytold#163) by @MarekSpodBiedry in storytold#179
- Ctrl+C then Ctrl+V pastes objects that carry no text (Fixes storytold#182) by @Claudio911015 in storytold#189
- Slide Size: choose Portrait or Landscape (storytold#198) by @justinjohn0306 in storytold#201
- Home: a Selection Pane button that works with nothing selected (storytold#132) by @justinjohn0306 in storytold#205
- PPTX: a lone guide keeps the name its preset uses, adj1 or adj (storytold#214) by @justinjohn0306 in storytold#216
- Read Markdown outlines as Markdown (storytold#211) by @LloydNicholson in storytold#218
- Text: draw shrink-on-overflow at the scale the file was saved with by @xmaks82 in storytold#226
- Canvas: right click selects the shape under the pointer by @pierrevbc in storytold#244
- Title bar: Export button next to Save by @pierrevbc in storytold#246
- Text: exact line spacing ends at the last line's descent by @xmaks82 in storytold#249
- Text: line spacing reduction comes off the percentage, not the spacing by @xmaks82 in storytold#253
- Comments: threads and resolved state survive a .pptx round trip (storytold#70) by @albayazid in storytold#280
- ui: admit stock macOS CJK faces as interface fallbacks (storytold#101) by @Momentum96 in storytold#376
- render: 3-D light rigs and materials, per-side extrusion shading by @NikitkaRa in storytold#597
- render: 3-D contours by @NikitkaRa in storytold#600
- Animations: check effect options and accept direction words by @NikitkaRa in storytold#620
- Shapes: star4/star5 text rectangles as the standard defines them by @NikitkaRa in storytold#642
- Charts: percent axes for 100% stacked; source-linked axis number formats by @NikitkaRa in storytold#659
- Startup: fall back to Wayland when DISPLAY names no X server by @NikitkaRa in storytold#661
- Render: don't lay out table cell text that lands off the slide by @NikitkaRa in storytold#663
- PPTX: keep table styles the file defines when no table uses them by @NikitkaRa in storytold#694
- PPTX: normalize literal line ends in XML so runs stay put on save by @NikitkaRa in storytold#701
- Undo: cap the history by memory as well as by steps by @NikitkaRa in storytold#704
- PPTX: write Color Pulse emphasis as a colour change, not a scale by @NikitkaRa in storytold#705
- MCP tools refuse an argument that is not in their schema (storytold#371) by @NikitkaRa in storytold#375
- Metafile: clip EMF and WMF drawing to rectangle regions by @NikitkaRa in storytold#437
- Edit: copies remap media, connector ends, animation targets and triggers (storytold#406) by @NikitkaRa in storytold#475
- Render: budget shape path-gradient work on dense outlines (storytold#404) by @NikitkaRa in storytold#476
- Pptx: budget chart points, chart XML size, inflate work and VML lookups (storytold#401) by @NikitkaRa in storytold#480
- Charts: pie and doughnut data labels use the number format (storytold#324) by @NikitkaRa in storytold#486
- Designer: layout ideas that rearrange the current slide (storytold#314) by @NikitkaRa in storytold#489
- Fonts: find fonts where Linux and Flatpak keep them; add and rescan commands (storytold#277) by @niki...
DeckCraft v0.7.0
What's Changed
- Text: superscript and subscript letters no longer spread apart by @echelon in storytold#264
- Themes: background pictures are recoloured, and dark layouts stay dark by @echelon in storytold#269
- Render: two-colour gradients ramp like PowerPoint's by @echelon in storytold#273
- PPTX: a picture fill with no stretch or tile is tiled, as in PowerPoint by @echelon in storytold#290
- PPTX: a placeholder without geometry takes its layout's by @echelon in storytold#301
- Draw only the first character of a multi-character bullet by @echelon in storytold#307
- Text: a list whose hang passes the box edge keeps its gap after the number by @echelon in storytold#265
- Text: single-spaced lines are 1.2 times the font size apart, as in PowerPoint by @echelon in storytold#266
- Render: shapes filled with the slide background show it by @echelon in storytold#274
- Render: slide backgrounds are laid over white, as in PowerPoint by @echelon in storytold#275
- Text: wrap URLs, Korean and CJK punctuation where PowerPoint does by @echelon in storytold#276
- Emoji: drawn in colour, with families, skin tones and flags joined by @echelon in storytold#278
- Text: gradient fills draw, starting over on every line as in PowerPoint by @echelon in storytold#281
- Text: shadows and glows are drawn, with PowerPoint's glow spread by @echelon in storytold#283
- Bullets: circled numbers and symbols the text font lacks come from a fallback font by @echelon in storytold#284
- Render: pattern fills draw PowerPoint's preset tiles by @echelon in storytold#285
- Render: compound outlines (double, thick-thin, thin-thick, triple) by @echelon in storytold#287
- Render: rectangle and outline path gradients by @echelon in storytold#288
- Render: soft edges fade to the shape's outline by @echelon in storytold#289
- Tables: styles the file defines are read, drawn and kept by @echelon in storytold#292
- Tables: the table's own fill is drawn behind its cells by @echelon in storytold#294
- Bullets: an installed symbol font draws its own glyph by @echelon in storytold#293
- Render: shadows, inner shadows and glows spread like PowerPoint's by @echelon in storytold#305
- Text: no Latin ligatures, and kerning only from the run's kern size by @echelon in storytold#309
- Text: WordArt transforms (prstTxWarp) draw, and their adjusts round-trip by @echelon in storytold#312
- Shapes: the 38 missing PowerPoint preset shapes by @echelon in storytold#315
- Pictures: WMF and EMF draw (metafile reader ported from WordCraft) by @echelon in storytold#317
- Fonts: missing fonts draw as PowerPoint draws them, and Windows family names resolve by @echelon in storytold#322
- Render tests: arch top bound allows Linux's fallback font by @echelon in storytold#323
- Fonts: use Office's downloaded fonts, and say which fonts a file is missing by @echelon in storytold#326
- Embedded objects draw their preview picture, including old VML previews by @echelon in storytold#328
- Canvas: objects off the slide show and can be grabbed around it, as in PowerPoint (storytold#270) by @echelon in storytold#329
- Fills: a gradient without stops takes them from its style, as in PowerPoint by @echelon in storytold#330
- Korean, Japanese and Chinese: input-method composition and interface text (storytold#101) by @echelon in storytold#331
- Selection Pane: reorder by drag and drop, groups, Show/Hide All and Lock, as in PowerPoint (storytold#133) by @echelon in storytold#332
- Text: Ctrl+arrows, Ctrl+Backspace/Delete and other text keys work like PowerPoint (storytold#268) by @echelon in storytold#333
- UI: en and em dashes show in interface text by @echelon in storytold#334
- Pictures: WMF/EMF text, pattern and hatch brushes draw; ActiveX previews show by @echelon in storytold#336
- Render: a group's child-coordinate scale no longer scales line widths (storytold#233, from storytold#251) by @echelon in storytold#337
- Render: pictures cast their shadow from their pixels, as in PowerPoint by @echelon in storytold#338
- Render: text in a scaled group keeps its point size, as in PowerPoint by @echelon in storytold#340
- Docs: text in scaled groups is drawn by @echelon in storytold#341
- Effects: fill overlays blend over the shape's fill, as in PowerPoint by @echelon in storytold#342
- Text: symbol-font characters draw in the run's a:sym font by @echelon in storytold#343
- File tab: PowerPoint's File view (Home, New, Open, Info, Save As, Print, Export, Close) (storytold#76) by @echelon in storytold#344
- Charts: legend position, combo charts with a secondary axis, axis number formats (from storytold#295, storytold#227, storytold#238) by @echelon in storytold#357
- Charts: text at the sizes the file sets, as in PowerPoint by @echelon in storytold#358
- Transitions: measured against PowerPoint's video export (average difference 35.7 → 15.0) by @echelon in storytold#366
- Text: wild cases measured against PowerPoint (bidi, tabs, underlines, caps, numbering, vertical, emoji…) by @echelon in storytold#379
- Render: wild shape, picture, effect and table cases measured against PowerPoint (35 fixes) by @echelon in storytold#428
Full Changelog: storytold/deckcraft@v0.6.1...v0.7.0
DeckCraft v0.6.1
What's Changed
- ci: refactor workflows to use storytold/craft-common-actions by @dylanmtaylor in storytold#152
- Release workflow: pass the Azure signing secrets by @echelon in storytold#181
Full Changelog: storytold/deckcraft@v0.5.0...v0.6.1
DeckCraft v0.5.0
What's Changed
- Issue storytold#23: README lists the ALSA headers a Linux build needs by @LloydNicholson in storytold#24
- Morph test: sort the ids before dedup so it really checks uniqueness by @alexanderalber in storytold#25
- App icon: scalable SVG for Linux desktops (storytold#12) by @alexanderalber in storytold#29
- Slide show: transitions show the old slide instead of the new one twice (storytold#33) by @alexanderalber in storytold#46
- Issue storytold#44: MCP: the export tool lists PDF and its layout options by @LloydNicholson in storytold#65
- Issue storytold#63: Text: hyperlinks are drawn in the theme's hyperlink colour, underlined by @LloydNicholson in storytold#37
- chore: bump github actions to fix Node 20 deprecation warnings by @dylanmtaylor in storytold#52
- Add OmaStore manifest by @KitsuneSemCalda in storytold#57
- Issue storytold#61: Shapes: flipped shapes keep their text readable by @LloydNicholson in storytold#35
- Morph: a changed geometry morphs its outline (a circle turns into a star) by @alexanderalber in storytold#27
- Colour menus: clicking the hex field no longer closes the menu (storytold#32) by @alexanderalber in storytold#47
- Home: the title bar's Home button opens the start screen (storytold#17) by @alexanderalber in storytold#49
- feat(pictures): animated GIFs play, with pause (media.gifPlay) by @DimaSmaha in storytold#39
- Links: Insert Hyperlink with a bare caret inserts the address; the show follows links (storytold#31) by @alexanderalber in storytold#45
- Animation Painter: copy and apply animation sequences between shapes by @Johannesgauss in storytold#54
- Issue storytold#62: Fields: date fields show today's date in their own format by @LloydNicholson in storytold#36
- Progress docs: re-measure against PowerPoint 16.113 (craftrules standard) by @echelon in storytold#89
- Release prep: 0.5.0 and Linux riscv64 release build by @echelon in storytold#102
New Contributors
- @LloydNicholson made their first contribution in storytold#24
- @dylanmtaylor made their first contribution in storytold#52
- @KitsuneSemCalda made their first contribution in storytold#57
- @DimaSmaha made their first contribution in storytold#39
- @Johannesgauss made their first contribution in storytold#54
Full Changelog: storytold/deckcraft@v0.4.0...v0.5.0
DeckCraft v0.4.0
What's Changed
- CI: no macOS on PRs or main; macOS is built and tested by releases by @echelon in storytold#22
- macOS DMG: branded window background and icon layout by @XusBadia in storytold#8
- Fix integer overflow on hostile H.264/HEVC parameter sets by @Pedroj-64 in storytold#2
- README: install on Gentoo from the ::snakebyte overlay by @switch87 in storytold#6
- Slide show: a click after a long pause plays its step instead of skipping it by @alexanderalber in storytold#11
- PPTX: recognise packages whose [Content_Types].xml is not in the first 4 KB by @wurstbrotdlx in storytold#19
- Start screen: theme tiles that wrap to a new row keep the left inset (storytold#17) by @MarekSpodBiedry in storytold#20
- Desktop: write log records to standard error and a rotating log file by @switch87 in storytold#7
- Default Windows startup to DirectX 12 by @DWAA1660 in storytold#16
- Morph: shapes move, resize and blend; Words and Characters options morph text by @alexanderalber in storytold#5
- Tables: rows grow to fit their text, cell text in the PDF text layer (storytold#13) by @MarekSpodBiedry in storytold#14
- feat(text, fonts): UAX storytold#9 BiDi and Arabic complex script typography engine by @hamzaelkachtaf4-star in storytold#4
New Contributors
- @XusBadia made their first contribution in storytold#8
- @Pedroj-64 made their first contribution in storytold#2
- @switch87 made their first contribution in storytold#6
- @alexanderalber made their first contribution in storytold#11
- @wurstbrotdlx made their first contribution in storytold#19
- @MarekSpodBiedry made their first contribution in storytold#20
- @DWAA1660 made their first contribution in storytold#16
- @hamzaelkachtaf4-star made their first contribution in storytold#4
Full Changelog: storytold/deckcraft@v0.3.0...v0.4.0