The release has the following notable improvements:
- Mobile split transactions
 - Ability to set max occurrences (or end date) for schedules
 - (Experimental) custom report enhancements (please report bugs/feedback here)
 
Docker tag: 24.1.0
Actual
Version: v24.1.0
Features
- #1899 Add end date/max occurrences field to schedules, useful for things like installments — thanks jfdoming
 - #2068 Mobile split transactions — thanks joel-jeremy
 
Enhancements
- #1906 Add support for automatic theme switching based on system theme — thanks spezzino
 - #1964 Category and group menu/modal in the mobile budget page to manage categories/groups and their notes. — thanks joel-jeremy
 - #1988 Data loading performance improvements for custom reports — thanks carkom
 - #2046 Adding typescript to custom report files and small functional changes. — thanks carkom
 - #2062 Adds a property to the returned items in the API for category and categoryGroup to inform if it is hidden. — thanks iOSLife
 - #2067 Adding types for future typescript changes. — thanks carkom
 - #2069 Updating variable naming for custom reports page. — thanks carkom
 - #2073 Migrate tooltips.js to typescript — thanks IzStriker
 - #2078 Enable Legend for custom reports. — thanks carkom
 - #2080 Add live/static choice for date filters. — thanks carkom
 - #2082 Add left and right margin to modals. — thanks joel-jeremy
 - #2094 Custom reports: Convert the view options (legend/summary/labels) to global preferences that apply to all graphs. — thanks carkom
 - #2098 Changing the view and functions for donut graph in custom reports. — thanks carkom
 
Bugfix
- #2002 Prevent deleted categories blocking creation of new categories with the same name. — thanks kymckay
 - #2008 Fix filter Amount formatting issue — thanks vishnukaushik
 - #2031 Fix bulk edit field modal in desktop — thanks joel-jeremy
 - #2085 Realign and fix header/totals row for table graph in custom reports — thanks carkom
 - #2092 Fix background color when pinning sidebar (Issue #2089) — thanks HansiWursti
 - #2093 Fix missing divider bar issue #1878 — thanks HansiWursti
 - #2096 Fix category spending report (experimental) not loading #1981 — thanks MatissJanis
 - #2099 [Goals]: Fix over budget condition with using apply instead of overwrite — thanks youngcw
 - #2100 Goals: Don't run templates on non-hidden categories inside of hidden groups — thanks youngcw
 - #2125 Goals: Negate schedule amount to budget if income — thanks mk-french
 - #2127 Fix update transaction API bug — thanks mk-french
 - #2140 Fix imported transactions overriding reconciled (locked) transaction data — thanks MatissJanis
 - #2141 Fix filtering in rules page: apply the filter on the full data set instead of the limited (paginated) data set. — thanks MatissJanis & jasonmichalski
 - #2166 Fix mobile transaction page amount input bug on iOS. — thanks joel-jeremy
 
Maintenance
- #1991 Add some initial api tests for budgets and accounts — thanks twk3
 - #1993 Use Page component for mobile pages — thanks joel-jeremy
 - #2004 Convert BudgetTotals, GoCardlessLink, Import, WelcomeScreen components to Typescript. — thanks MikesGlitch
 - #2005 Maintenance: Update CashFlow.js to use typescript — thanks lucasboebel
 - #2007 Migrating the DateRange and UseReport files to typescript — thanks ameekSinghUniversityAcc
 - #2009 Migrating the util.js and chartTheme.js files to typescript — thanks ghosetuhin
 - #2022 Refactored 
FixedSizeListto TypeScript — thanks MatissJanis - #2023 Added more strict typings to 
utils.tsand some of its dependencies — thanks MatissJanis - #2025 Adding aria-labels to some buttons for greater accessibility — thanks MikesGlitch
 - #2029 Enable 
react/no-children-proprule and fix the issues — thanks MatissJanis - #2032 Apply eslint prefer-const rule to loot-core server files. — thanks joel-jeremy
 - #2033 Apply ESLint prefer-const on components folder part 1 — thanks joel-jeremy
 - #2034 Apply ESLint prefer-const on components folder part 2 — thanks joel-jeremy
 - #2036 Add api tests for categories and category groups — thanks twk3
 - #2048 Fixes and updates to dark theme colors. — thanks carkom
 - #2064 Cleanup older unused version of react-router — thanks twk3
 - #2065 Fixing TypeScript issues when enabling 
strictFunctionTypes. — thanks MatissJanis - #2066 Fixing TypeScript issues when enabling 
strictFunctionTypes(pt.2). — thanks MatissJanis - #2070 Fixing TypeScript issues when enabling 
strictFunctionTypes(pt.3). — thanks MatissJanis - #2074 ci: add helpful bot comments if CI jobs fail. — thanks MatissJanis
 - #2101 Apply eslint filename extensions for jsx. — thanks twk3
 - #2111 eslint: disallow unnecessary curly braces — thanks MatissJanis
 - #2112 TypeScript: moving 
DeleteFilecomponent to TS — thanks MatissJanis - #2113 Enable prefer-const ESLint rule project-wide — thanks joel-jeremy
 
Actual Server
Version: 24.1.0
Maintenance
- #292 docs: updated the GoCardless integration instructions — thanks MatissJanis
 
