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
- security: enforce HTTPS on curl downloads (SonarCloud S6506) by @dylanmtaylor in #2188
- Backlog integration: 230 reviewed fixes and reference app behaviour changes by @aiongg in #2226
- Seed the Sort dialog column from the active cell (#1906) by @bfenty in #1979
- Desktop theme: the watcher's link has a type off Linux, so the gate passes there by @Hamza0101 in #1981
- calc: LET and LAMBDA names ignore case in any script by @webglobecontact-ui in #1996
- Spanish formula aliases for financial functions (#1986) by @bfenty in #2000
- Formulas: Excel's longest legal operator chain (4,096 operands) no longer crashes entry or save by @Harrison-Booth in #2019
- Linux: time out the desktop theme's portal read by @bmh129 in #2026
- Formula entry: an incomplete formula's error describes what was typed (fixes #2030) by @kezmdor in #2032
- Row auto-fit: count line breaks only in cells that wrap by @RedBearAK in #2033
- Fix WebGL startup on devices with lower GPU limits by @mbaksa in #2038
- Word-wrap-aware automatic row height (#1969) by @bfenty in #2049
- i18n: Dutch (nl) interface language by @Stefanfra in #2061
- Use scientific notation when number_to_text rounds up to 1e15 by @Silvertree2010 in #2069
- HTML export: place pictures and charts at their anchors by @bilalmughal in #2080
- Right-click on a chart opens the chart's menu, not the cell's (fixes #2067) by @dantebertuzzi in #2084
- Grid: paint the scrollbar's column beside the column headings (white corner in dark mode) by @dantebertuzzi in #2086
- fix(ui): Esc and Enter close a data validation alert, not the edit behind it, and the keyboard goes back to the entry (#2089) by @vedran-dobos in #2090
- Paste Special: Excel's two-column layout, translated, Paste Link button by @dantebertuzzi in #2093
- Dialogs: OK and Cancel in a row, so form dialogs fit their content by @dantebertuzzi in #2094
- Number Stored as Text: green indicator, warning button and Convert to Number (#1994) by @dantebertuzzi in #2095
- docs: fix Trunk website link (#2076) by @Zaxaerith in #2098
- Fonts: a cell font named in another language matches its installed font (fixes #1898) by @chessive in #2100
- Romanian (ro) interface language by @vioreltus in #2102
- Translate form-dialog field labels, choices and notes by @vioreltus in #2106
- Backstage: list the languages alphabetically by their own name by @nikolainyegaard in #2116
- Print: JIS B4/B5 and Japanese paper sizes (はがき・封筒・B6) by @midasdf in #2131
- PivotTable Fields pane: scan the source once per change, not every frame by @Aimarmndz in #2142
- Table Design: draw the Table Styles gallery in the ribbon (#2148) by @alosslessdev in #2150
- calc: bound SUBTOTAL/AGGREGATE input work (#2175) by @Higgs32584 in #2194
- calc: cap LINEST-family regressor matrices (#2177) by @Higgs32584 in #2195
- core: iterative number coercion for nested parentheses (#2180) by @Higgs32584 in #2200
- calc: cap array broadcast result size (#2182) by @Higgs32584 in #2201
- clipboard: bound HTML colspan/rowspan expansion (#2171) by @Higgs32584 in #2207
- Web: keep preferences such as dark mode between visits by @marcoarnulfo in #1589
- XLSX: keep custom column widths that round to the default width by @marcoarnulfo in #1615
- Keyboard: Ctrl+6 hides and shows objects, saved as workbookPr showObjects by @marcoarnulfo in #1626
- Add Advanced Filter dialog and fix copy-to data loss by @derechopiano in #1628
- Memory: undo steps share picture and macro bytes instead of copying them by @arcanii in #1629
- Memory: interface fonts are read once and shared with egui, not copied into it by @arcanii in #1630
- Memory: floating pictures' textures are bounded, sized to what is drawn, and dropped with their workbook by @arcanii in #1631
- fix(xlsx): bound repeated column expansion by @harrisonoconnorhover in #1648
- fix(ets): avoid repeated scans while interpolating gaps by @harrisonoconnorhover in #1650
- Fill handle: right-drag opens the fill menu (Copy Cells, Fill Series, Fill Formatting Only, Fill Without Formatting, Series…) by @marcoarnulfo in #1652
- Cell editor: the caret contrasts with the cell's fill by @marcoarnulfo in #1657
- macOS: bold interface text draws Cyrillic е open, not like ө by @marcoarnulfo in #1669
- fix: theme PivotTable field group buttons by @ozero in #1671
- Keep overflow text visible when its source cell scrolls out of view by @Silvertree2010 in #1672
- contributors: add Harrison-Booth by @Harrison-Booth in #1674
- #1447: two value fields without a column field hide the Values row by @HyakoV3 in #1683
- #1447: a PivotChart's link names the workbook by @HyakoV3 in #1685
- XLSX: keep Japanese phonetic runs (ふりがな) on open and save by @midasdf in #1692
- Charts: series that refer to defined names (
[0]!Name) plot their data, and are saved qualified by @bldred in #1693 - Charts: box & whisker charts honor their quartile method by @webdevtodayjason in #1695
- XLSX: new workbooks get (fixes #1699) by @aviiciii in #1701
- Fonts: find the cell, serif, mono, Thai and Hebrew faces in Fedora's package folders (#1694) by @tydude001 in #1705
- Reject table.resize when the new range overlaps another table by @Silvertree2010 in #1706
- Rows: a big font isn't counted twice when the sheet's default height already fits it by @tisca26 in #1709
- Tables: add the missing Resize Table button (#935) by @adrinothiago-cpu in #1724
- Prefill the Remove Duplicates range from the selection by @TheRenegadeDev in #1725
- Fail CLI checks on incomplete or empty input discovery by @TheRenegadeDev in #1726
- Use the platform clock for UI timing on the web by @TheRenegadeDev in #1728
- Move PivotTables with their cells on row/column insert and delete by @Silvertree2010 in #1731
- i18n(ja): translate the dialog, message and menu strings (943 entries, matching the pt-BR coverage) by @midasdf in #1732
- fix(web): clean up print iframe and blob resources by @TheRenegadeDev in #1734
- Analysis ToolPak: moving-average standard errors use a running sum (#1043) by @TheRenegadeDev in #1735
- Keep chart source range in step with inserted and deleted lines by @Silvertree2010 in #1738
- Ctrl+Alt+letter that types a character no longer triggers the Ctrl shortcut (#1530) by @MarekSpodBiedry in #1744
- Docs: §6's calculation bugs have all landed by @Hamza0101 in #1753
- i18n: translate sheet tab context menu and AutoSave toggle (fixes #1537) by @dknalp in #1754
- Fonts: render Lao text with an installed Lao face instead of tofu by @Laosmartsoft in #1758
- Sheet protection: obey the Sort and Use AutoFilter boxes by @Hamza0101 in #1765
- Add Ukrainian localization (uk.rs) by @War2Darius in #1770
- i18n: add Vietnamese interface translations by @thanhbv102-arch in #1772
- Added multi-column/row selection in formulas & column/row selection highlighting. by @Cyan101 in #1838
- Docs: correct stale chart round-trip notes by @alosslessdev in #1889
- Keep the in-cell editor at the cell's height for one line by @Silvertree2010 in #1905
- Print CJK text with a CID font instead of question marks by @Silvertree2010 in #1912
- Grid: row and column heading labels grow with the zoom by @DrM7md in #1924
- Accounting format: the documented currency
symbolis honoured by @zyzabruh in #1930 - Keep date text with signed parts like +3/4/2026 as text by @Silvertree2010 in #1937
- CSV import: read Windows-1256 Arabic files as Arabic by @Mouhand-Kaddo in #1942
- XLSX: keep the theme's per-script fonts (<a:font script="Arab">) on save — stacked on #1740 by @Mouhand-Kaddo in #1945
- XLSX: keep cell fonts' charset (Arabic 178) and family on save by @Mouhand-Kaddo in #1946
- Translate and standardizes UI error feedback by locale by @Lord-Taw in #1958
- Control channel: a request its sender gave up on is not run later by @Hamza0101 in #1971
- In-cell editor: a Wrap Text cell edits wrapped at the column width (#1970) by @jcagudelo12 in #1974
- Select precedent/dependent cells with Ctrl+[ / Ctrl+] (#1865 part 1) by @bfenty in #1975
- Enter bare numbers in Percentage-formatted cells as percents by @Silvertree2010 in #1976
- Grid: the selection outline follows a mouse drag at once by @DrM7md in #1993
- Persist the AutoSave preference across restarts (#1901) by @bfenty in #1995
- ui: language command docs and error list every language by @webglobecontact-ui in #1998
- Formula editing: arrow pointing restarts from the edited cell after typing (#1949) by @MarekSpodBiedry in #2001
- AutoFill refuses a target that doesn't hold the source in a corner (whole rows into whole columns aborted the app) by @Harrison-Booth in #2005
- Reject unparseable conditional-format formulas (#1999) by @bfenty in #2022
- AutoFit Column Width measures text in the font the grid draws it with by @marcoarnulfo in #1320
- Keyboard: Alt+= no longer starts an edit with the
=it types by @marcoarnulfo in #1332 - Selection: whole columns and rows don't widen to merged cells by @DCM4711 in #1337
- calc: calculate long dependency chains with bounded stack by @Harrison-Booth in #1340
- engine: keep AutoFill text series from panicking or wrapping on i64 overflow by @midasmatterhorn in #1360
- Context menu: the right-click that opens it doesn't close it by @DCM4711 in #1363
- engine: keep case-insensitive replace from dropping text when folding shifts byte boundaries by @midasmatterhorn in #1364
- Fix font dropdown list resizing and keyboard up/down navigation by @mbaksa in #1365
- Keep Middle/Bottom vertical alignment for wrapped text taller than its row by @Silvertree2010 in #1371
- Protection: Protect Sheet entries unprotect, selectLockedCells enforced (#1346) by @vangel76 in #1373
- Header menus: Format Cells… for the selected rows or columns by @DCM4711 in #1375
- engine: subtotal honours header:false instead of dropping the first data row by @midasmatterhorn in #1379
- xlsx: keep every property of the default cell format when importing a file by @midasmatterhorn in #1380
- engine: rebuild cell-store bands and counts when importing a JSON workbook by @midasmatterhorn in #1381
- UI: Improve Command Palette keyboard navigation and layout by @mbaksa in #1414
- Recalc: an anchor's new formula no longer reads its old spill area by @nihilist-narwhal in #1427
- Recalc: formulas reading an array that loses a spill conflict see #SPILL! by @nihilist-narwhal in #1428
- Stop BINOM.INV/CRITBINOM hanging when trials exceed 2^53 by @Silvertree2010 in #1432
- Refuse table names that clash with defined names or R1C1 references by @Silvertree2010 in #1434
- Fix fraction numerators saturating at u64::MAX for large values by @Silvertree2010 in #1438
- Add Greek (el) interface localization by @Camthalion77 in #1468
- Let GROUPBY and PIVOTBY take a LAMBDA as their function by @Silvertree2010 in #1469
- fix(solver): commit solutions and reports atomically by @euisuh in #1470
- i18n: add Italian translation by @icsimpianti in #1473
- Conditional formatting: text rules never match an error value (#1162) by @wstock in #1474
- Control channel: ui.dialog.confirm sends what OK sends (#1459) by @wstock in #1477
- UI: keep PivotTable field-list scrollbar at pane edge by @derechopiano in #1485
- XLSX: preserve carriage returns in saved text by @derechopiano in #1495
- Fix number-format palette colours in grid and PDF output by @bogusyogi in #1500
- Read securities function dates in the workbook's date system by @Silvertree2010 in #1507
- Calc: a dynamic array of one value still anchors a spill range by @Hamza0101 in #1510
- Reject formula number literals too large for f64 as parse errors by @Silvertree2010 in #1512
- Fix scalar INDEX/MATCH XLSX export by @justinjohn0306 in #1514
- fix #1443: Ctrl+Q no longer closes the window outside macOS by @HyakoV3 in #1520
- UI: function help follows the interface language by @quantmind-br in #1523
- Keep leading empty columns and rows when saving CSV/text by @Silvertree2010 in #1525
- functions: NETWORKDAYS.INTL accepts the all-weekend string "1111111" by @midasmatterhorn in #1526
- engine: pageLayout.printTitles only touches the axes it is given by @midasmatterhorn in #1527
- fix #1458: one Excel sheet-name quoting rule for formulas, pivot sources and ADDRESS by @HyakoV3 in #1529
- xlsx: keep a table's filter criteria when the sheet AutoFilter coincides with it by @midasmatterhorn in #1531
- engine: a cut takes the source's notes, hyperlinks and merged areas with it by @midasmatterhorn in #1534
- engine: sort and remove duplicates move the rows' notes and hyperlinks by @midasmatterhorn in #1535
- UI: Delete dismisses the AutoComplete proposal, and deleting text never brings it back (#1521) by @MarekSpodBiedry in #1547
- Focus the Find what field when Find and Replace opens (#1518) by @MarekSpodBiedry in #1548
- Open the Insert Chart dialog from Recommended Charts instead of inserting a chart (#1399) by @MarekSpodBiedry in #1550
- Keep nan/inf time and fraction look-alikes as text by @Silvertree2010 in #1552
- Sort and de-duplicate data.textToColumns fixed-width breaks by @Silvertree2010 in #1559
- ui: truncate long workbook titles in the title bar by @IsmaelEzequiel in #1560
- calc: bounded references up to 1,048,576 cells keep their full shape by @Harrison-Booth in #1568
- XLSX: keep dynamic-array cell metadata (cm) on save by @Harrison-Booth in #1570
- Calc: CELL("filename") names the workbook's file by @Hamza0101 in #1580
- Contributors: add Marco Arnulfo by @marcoarnulfo in #1596
- XLSX: keep header and footer pictures on save by @marcoarnulfo in #1600
- Grid: a scrolled Table's header names and filter buttons in the column headings (#1423) by @marcoarnulfo in #1612
- XLSX: a note keeps its box's place and size through open and save (#1608) by @switch87 in #1614
- Grid: a cell with line breaks and Wrap Text off draws the whole string on one line by @marcoarnulfo in #1618
- Reject unsupported flip param in arrange.rotate by @Silvertree2010 in #1621
- Keyboard: Ctrl+Shift+A after a function name inserts its argument names by @marcoarnulfo in #1624
- Charts: insert.chart builds a series from every area of a multi-area range by @midasmatterhorn in #1653
- Merged cell with Wrap Text: auto-fit skips it, so the text draws and the row keeps its default height by @midasmatterhorn in #1661
- Row, column and freeze commands act on the sheet they are given (
sheet, or aSheet!prefix) by @CouchRiv in #885 - UI: File › Account shows the version, platform and licence, with an About GridCraft button by @marcoarnulfo in #898
- Keytips: Alt, F opens the File view, and its F letters still run by @marcoarnulfo in #905
- Ribbon: Font Size is a box you type into, the sizes behind its arrow by @marcoarnulfo in #952
- Control: Go To and Select over the control channel scroll the active cell into view by @marcoarnulfo in #970
- Sheet tabs: Ctrl-drag (Cmd or Option on macOS) drops a copy of the sheet by @marcoarnulfo in #973
- XLSX export: a picture shared by several sheets is one media part (#985) by @Silvertree2010 in #995
- Fix Command-click and Shift-click references during formula entry by @pourie-he in #1056
- Flash Fill: read the text cells show by @nihilist-narwhal in #1057
- Format Cells: take the documented camelCase style keys by @nihilist-narwhal in #1058
- rows/cols parameters: accept a single row or column by @nihilist-narwhal in #1059
- LAMBDA helpers: #CALC! for nested arrays, #VALUE! for wrong parameter counts by @nihilist-narwhal in #1060
- Recalc: an array that spills as before doesn't requeue its dependents by @nihilist-narwhal in #1061
- Engine: formulas.evaluate refuses what cell entry refuses, saying why by @quantmind-br in #1066
- Ribbon: more currency symbols in the Accounting Number Format menu by @marcoarnulfo in #1068
- Colour menus: More Colors… and Recent Colors (#928) by @Silvertree2010 in #1083
- Data validation: a list typed without quotes is saved as a quoted list, and an unknown type is refused by @CouchRiv in #1084
- Format: Row Height and Column Width say pixels, and take points like Excel by @CouchRiv in #1085
- Charts: multi-level category axes (year beside month) read, drawn and written back by @Lexx143 in #1088
- i18n: add Polish (pl) interface, full catalog (970 labels) by @mbielski1337 in #1091
- fix(grid): keep cursor stable during cell dragging (#936) by @Zaxaerith in #1095
- CSV export: check the size cap before each field, not after the row (#1023) by @MarekSpodBiedry in #1102
- Keep chart cache point positions when a reference has blank edges (#1015) by @MarekSpodBiedry in #1103
- xlsx: keep the first group's series kind when importing a combination chart (#1014) by @MarekSpodBiedry in #1104
- Fix row keys merging distinct text rows in UNIQUE and grouping (#1012) by @MarekSpodBiedry in #1105
- Refuse a cut-paste whose destination does not fit instead of dropping cells (#997) by @MarekSpodBiedry in #1108
- fix(ui): commit a pointed formula on the sheet it was started on (#996) by @MarekSpodBiedry in #1109
- Size the list validation dropdown to up to 8 rows (#1089) by @MarekSpodBiedry in #1110
- Respect workbook structure protection in sheet rename, move, copy, hide and unhide (#1049) by @MarekSpodBiedry in #1111
- Read date text arguments in the workbook date system (#1038) by @MarekSpodBiedry in #1114
- Cap CSV import fields per record at the worksheet column limit (#1037) by @MarekSpodBiedry in #1115
- Fix table without header: re-point references when the data moves down (#1030) by @MarekSpodBiedry in #1117
- Fix xlsx: combine escaped UTF-16 surrogate pairs when decoding strings (#1025) by @MarekSpodBiedry in #1119
- Open notice: do not promise to keep macros that were dropped (#1024) by @MarekSpodBiedry in #1120
- Grid: per-frame work no longer scales with the whole sheet (#1098) by @vangel76 in #1136
- Charts: a huge trendline forecast no longer collapses the chart (#1148) by @vangel76 in #1151
- XLSX: [Content_Types].xml is the first zip entry, workbook parts precede document properties, so libmagic detects the file type (#1090) by @vangel76 in #1156
- fix(ui): menu items highlight under the pointer (#1174) by @richard1912 in #1180
- fix(ui): ribbon tooltips show each platform's shortcuts (Ctrl+B on Windows, ⌘B on macOS) (#1191) by @richard1912 in #1194
- Grid: an armed Format Painter pastes onto the next cells clicked or dragged by @marcoarnulfo in #1214
- File: Save a Copy asks where to save a bare name instead of writing it to the working directory by @marcoarnulfo in #1215
- Sheet tabs: right-clicking a tab activates its sheet by @richard1912 in #1223
- XLSX: keep a dxf's protection, font size and face, and the font parts it turns off by @marcoarnulfo in #1225
- Journal: cap by serialized size and keep a recording's start through trims by @marcoarnulfo in #1230
- Fix native CJK fallback paths in Flatpak by @allenyllee in #1236
- BAHTTEXT: a final one after the millions reads เอ็ด by @marcoarnulfo in #1237
- Opening an XLSX with a part over 512 MB says how to get the data in by @marcoarnulfo in #1248
- Headers: mark hidden columns and rows, split cursor and double-click to unhide (#1247) by @richard1912 in #1249
- Dialogs move by their title bar instead of staying pinned to the centre by @marcoarnulfo in #1252
- Bound Undo history growth after bulk edits by @derechopiano in #1263
- Zoom dialog: Excel's layout, current zoom pre-selected, Fit selection (#930) by @richard1912 in #1277
- N() converts a computed array element by element, so it works inside SUMPRODUCT by @marcoarnulfo in #1281
- Sort: a Sheet! prefix on the range sorts that sheet, not the active one by @marcoarnulfo in #1284
- Remove Duplicates, Filter and Subtotal: a Sheet! prefix on the range works on that sheet, not the active one by @marcoarnulfo in #1285
- Preserve hyperlinks in PDF export and support PDF in CLI convert by @derechopiano in #1292
- Filter: count empty text and ="" results as (Blanks) (#1294) by @MarekSpodBiedry in #1299
- Show dynamic array source formulas read-only in spill cells by @Prachannagven in #1306
- engine: refuse removeDuplicates with no valid column instead of deleting all rows by @midasmatterhorn in #1308
- Reject a list data validation that has no formula1 (#1303) by @MarekSpodBiedry in #1326
- Slicer: find a named table on any sheet by @dev-exe in #1329
- Form dialogs open ready to type (Column Width, Row Height) by @Harrison-Booth in #1331
- Edit: text that would parse as a number or formula keeps its quote prefix in the editor (#1362) by @vangel76 in #1372
- perf: fill-handle double-click scans a dense neighbour column ~2.4x faster by @Dejan-Port in #451
- Build: the ui-egui build script reads CARGO_MANIFEST_DIR when it runs by @prxnvt in #488
- Refuse inserting cells that would push values off the worksheet (#580) by @MarekSpodBiedry in #584
- Make check --json list warning messages instead of a count (#526) by @MarekSpodBiedry in #629
- Cap queued pointer events from ui.click/ui.drag control requests (#525) by @MarekSpodBiedry in #630
- Open the Header & Footer dialog on the sheet's saved header and footer (#523) by @MarekSpodBiedry in #632
- i18n: Turkish (tr) interface language by @yeniufuklar-com in #663
- Keep sheet navigation on visible worksheets at workbook boundaries by @jonathanwxh-cell in #701
- Names: a name over several ranges reads its top-level commas as unions by @marcoarnulfo in #759
- i18n: test that translations keep the shape of their English by @bmh129 in #831
- Closing the window asks to save unsaved workbooks by @marcoarnulfo in #846
- Conditional formats: hex colours in a custom style, and no more silently empty or never-matching rules by @CouchRiv in #884
- Keyboard: Enter after a run of Tabs goes to the next row in the column the run started from by @marcoarnulfo in #913
- Sheet tabs: New sheet (+) right after the last tab, the strip capped at 60% by @marcoarnulfo in #949
- fix(fill): respect the workbook date system in monthly AutoFill by @anirudhqwerty in #951
- README: the app icon above the title by @bflatastic in #2249
- scripts: require workbook trust before running embedded scripts (#2178) by @Higgs32584 in #2209
New Contributors
- @aiongg made their first contribution in #2226
- @bfenty made their first contribution in #1979
- @Hamza0101 made their first contribution in #1981
- @webglobecontact-ui made their first contribution in #1996
- @Harrison-Booth made their first contribution in #2019
- @kezmdor made their first contribution in #2032
- @RedBearAK made their first contribution in #2033
- @mbaksa made their first contribution in #2038
- @Stefanfra made their first contribution in #2061
- @bilalmughal made their first contribution in #2080
- @Zaxaerith made their first contribution in #2098
- @chessive made their first contribution in #2100
- @vioreltus made their first contribution in #2102
- @nikolainyegaard made their first contribution in #2116
- @midasdf made their first contribution in #2131
- @Aimarmndz made their first contribution in #2142
- @alosslessdev made their first contribution in #2150
- @ozero made their first contribution in #1671
- @bldred made their first contribution in #1693
- @aviiciii made their first contribution in #1701
- @tisca26 made their first contribution in #1709
- @adrinothiago-cpu made their first contribution in #1724
- @TheRenegadeDev made their first contribution in #1725
- @dknalp made their first contribution in #1754
- @Laosmartsoft made their first contribution in #1758
- @War2Darius made their first contribution in #1770
- @thanhbv102-arch made their first contribution in #1772
- @Cyan101 made their first contribution in #1838
- @zyzabruh made their first contribution in #1930
- @Lord-Taw made their first contribution in #1958
- @jcagudelo12 made their first contribution in #1974
- @DCM4711 made their first contribution in #1337
- @midasmatterhorn made their first contribution in #1360
- @Camthalion77 made their first contribution in #1468
- @euisuh made their first contribution in #1470
- @icsimpianti made their first contribution in #1473
- @wstock made their first contribution in #1474
- @bogusyogi made their first contribution in #1500
- @quantmind-br made their first contribution in #1523
- @IsmaelEzequiel made their first contribution in #1560
- @pourie-he made their first contribution in #1056
- @Lexx143 made their first contribution in #1088
- @mbielski1337 made their first contribution in #1091
- @allenyllee made their first contribution in #1236
- @Prachannagven made their first contribution in #1306
- @dev-exe made their first contribution in #1329
- @yeniufuklar-com made their first contribution in #663
- @anirudhqwerty made their first contribution in #951
- @bflatastic made their first contribution in #2249
Full Changelog: v0.10.0...v0.11.1