* [AI] Add yarn constraints to enforce consistent dependency versions
Adds a `yarn.config.cjs` that uses Yarn 4's built-in constraints feature
to detect when the same dependency is declared with different version
ranges across workspaces. Workspace protocol references and
peerDependencies are excluded from the check.
Also adds a `yarn constraints` convenience script and the `@yarnpkg/types`
dev dependency for type-checked constraint authoring.
https://claude.ai/code/session_01B1xRjZXn6b18anZjo8cbqb
* Add release notes for PR #7229
* Add constraints job to GitHub Actions workflow
* Fix constraints
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* [AI] Publish loot-core (@actual-app/core) nightly first in workflow
* [autofix.ci] apply automated fixes
* Refactor imports and update configuration
- Updated .oxfmtrc.json to change "parent" to ["parent", "subpath"].
- Removed unnecessary blank lines in various TypeScript files to improve code readability.
- Adjusted import order in reports and rules files for consistency.
* Add workflow steps to pack and publish the core package nightly
* Remove nightly tag from npm publish command in workflow for core package
* Update post-build script comment to reflect correct workspace command for loot-core declarations
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* 🔖 (26.3.0)
* Remove used release notes
* Add release notes for PR #7097
* Remove used release notes
* Remove used release notes
* Add release notes for version 26.3.0
* Add new terms to spelling expectation list
* Fix spelling and capitalization in release notes
Corrected spelling of 'reorganisation' to 'reorganization' and updated 'coderabbit' to 'CodeRabbit' for consistency.
* Update patterns.txt to allowlist 'CodeRabbit'
Add 'CodeRabbit' to allowlist of proper nouns.
* Clarify chart theming support in release notes
Updated the release notes to specify bar/pie chart theming support and added details about theme variables for customization.
* Remove 'CodeRabbit' from spelling expectations
* Refactor release notes and improve formatting
Reorganize release notes for clarity and update content.
* Create 2026-03-02-release-26-3-0.md
* Change release date to 2026-03-02
Updated the release date for version 26.3.0.
* Update release notes for version 26.3.0
---------
Co-authored-by: jfdoming <9922514+jfdoming@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julian Dominguez-Schatz <julian.dominguezschatz@gmail.com>
* Add release notes for version 26.2.1, including critical security fixes for SimpleFin, Pluggy, and multi-user setups. Remove outdated upcoming release notes for related bugfixes.
* Add release notes for PR #7043
* Delete upcoming-release-notes/7043.md
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* Add ACTUAL_USER_CREATION_MODE documentation to oauth-auth.md
* [autofix.ci] apply automated fixes
* add note that first external auth user is admin and owner
Added details about admin permissions and server ownership for users authenticating with OpenID/OAuth2.
* improve ACTUAL_USER_CREATION_MODE environment documentation
clarify warning about server owner
* [autofix.ci] apply automated fixes
* move first user admin warning to "after setup" section of OIDC documentation
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* start of reports dashboard updates
* spelling
* Add release notes for PR #6976
* don't need one of these
* consistent naming
* bunny fixes
* images
* image again
* extenion
* fix
* consistent naming
* naming
* fix
* last one
* Ill be done with this someday
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* Document graph color variables for custom themes
Added documentation for graph color variables in custom themes.
* [autofix.ci] apply automated fixes
* Update custom themes documentation for clarity
Clarify the impact of color palettes on custom report widget graphs and format the list of color variables.
* Update packages/docs/docs/experimental/custom-themes.md
Co-authored-by: Matt Fiddaman <github@m.fiddaman.uk>
* Fix color variable syntax in custom themes documentation
Updated color variable syntax for chart colors in documentation.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Matt Fiddaman <github@m.fiddaman.uk>
* docs: add ANZ Plus Bank to community repos
Added ANZ Plus Bank to the Community Repos page.
Link(s): https://github.com/spydisec/PDFtoOFX/
Short summary: Convert ANZ Plus bank statement PDFs to OFX format for seamless import into Actual Budget and other personal finance applications.
Placement: https://actualbudget.org/docs/community-repos/
* Update packages/docs/docs/community-repos.md
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Fix typo in ANZ Plus bank converter description
* chore: update docs spelling allowlist
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Add Budget Analysis report with full implementation
Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>
* Add preset time ranges, intervals, bar chart, hide balance, and display controls
Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>
* Fix duplicate function declaration syntax error in budget-analysis-spreadsheet.ts
Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>
* Fix floating point precision error in daily/weekly intervals and replace interval button with dropdown
Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>
* Make card always display monthly data and match report's chart type
Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>
* fix: adjust widget placement and presentation
* fix: adjusted the dot presentation
* feat: added svg for line chart/barchart
* fix: added one month to the report
* added the upcoming release notes
* amended the upcoming release notes
* fix: removed unused variables
* formatted using prettier --write
* [autofix.ci] apply automated fixes
* feat: added new feature to the Reports Page in the test budget
* fix: amended the reports.test.ts file to expect Budget Analysis
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* revert: removed the inclusion of the Budget Analysis tool from the test file
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* fix: changed the display to always be monthly since budgets are monthly; removed the 1month view
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* fix: removed comment
* feat: added experimental feature flag for Budget Analysis tool
* feat: Switched option to use SVG Icons instead of words to shorten horizontal layout
* Removed interval possibilities and removed unnecessary compact variable as indicated by CodeRabbit
* Update packages/desktop-client/src/components/reports/reports/BudgetAnalysisCard.tsx
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Added basic documentation for Budget Analysis Report
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* fix: added budget-analysis doc to sidebar
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* feat(reports): improve Budget Analysis report UI and behavior
- Update chart colors to match Cash Flow report style
(Budgeted: blue, Balance: pageTextLight)
- Remove legend items from report view for cleaner UI
- Add 1 month quick select option to header
- Pass isConcise prop to BudgetAnalysisGraph for proper date formatting
- Add dynamic daily/monthly interval switching based on date range
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* feat(reports): refactor BudgetAnalysisGraph and improve isConcise calculation according to Rabbit AI
* feat(reports): add translation support for Budget Analysis graph labels
* feat(reports): centralize translation for Budget Analysis graph labels
* feat: use the budget values directly from the budget spreadsheet/server
* feat: enhance budget analysis with overspending adjustments and detailed reporting
* style: format code for better readability in BudgetAnalysis and budget-analysis-spreadsheet components
* refactor: remove unused variables
* docs: added in the image to the docs
* fix: reimplement support for conditionsOp
* [autofix.ci] apply automated fixes
* style: simplify budget analysis labels for clarity
* fix: add the on copy function
* feat: tooltip improvements
* feat: enhance budget analysis to track overspending adjustments across months
* fix: removed the absolute value for spent
* feat: update the charts to look closer to the CashFlow report
* fix: correct financial formatting for totalSpent in BudgetAnalysis
* feat: add filterExclude prop to Header and BudgetAnalysis for improved filtering options
* feat: implement privacy mode for Y-axis values in BudgetAnalysisGraph
* feat: change default graph type to Bar in BudgetAnalysis
* feat: remove commented-out filter button code in Header component
* feat: remove commented-out code for filter exclusion in Header component
* fix: update the feedback link to the dedicated issue
* refactor: financial display components to use FinancialText for consistency in Budget Analysis reports
* fix: update the card to also start as bar graph
* docs: update Budget Analysis report to include category filtering information
* style: refactor imports and whitespace
* refactor: simplify inline content structure in BudgetAnalysis component
* [autofix.ci] apply automated fixes
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* fix: removed color descriptors from the chart
* fix: update color themes for Budget Analysis to use custom theme definitions
* [autofix.ci] apply automated fixes
* feat: update Budget Analysis merge md file
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6137
* fix: update budget analysis report image
* fix: white space adjustment in descriptor
* [autofix.ci] apply automated fixes
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: youngcw <calebyoung94@gmail.com>
* Enhance Average Goal Template to allow adjusting the budgetted amount from the average by a percent or fixed amount
* fix typos
* ensure check is for undefined, so zero doesn't cause edge cases
* typo in enhancement message
* scale by cents for fixed amount, fixup tests for this as well
* Add support for fixed values in Schedule template
* [autofix.ci] apply automated fixes
* Changed to 'fixed' from 'amount'. Added unparse logic for Average, also fixed Schedule unparse
* move to generic for syntax from specific number
* consider currency preferences when calculating fixed modifications
* lint
* [autofix.ci] apply automated fixes
* timeframe -> period
* percentage -> value
* pass currency for calculation
* lint
* import from proper local dir
* [autofix.ci] apply automated fixes
* script block around {number} to prevent mdx conflict
* match order of ops between schedule and average for percent adjustment
* diversify example
* Link to schedule>adjustments from average
* Removed example column in favor of extra context
Slight rewording to avoid 'average' overload
* rabbit nitpicks
* number
* period
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: youngcw <calebyoung94@gmail.com>
* Replace theme screenshots with color palette preview
- Replace screenshot images in theme installer with 3x2 color palette grid
- Add colors array to catalog themes in customThemeCatalog.json
- Update CatalogTheme type to include optional colors property
- Remove getThemeScreenshotUrl function
- Extract ColorPalette component to separate file
- Update documentation to reflect color palette instead of screenshots
- Update tests to verify color palettes instead of images
- Extract actual theme colors from GitHub repositories
* Update ColorPalette component to use data-swatch attribute for color swatches in ThemeInstaller tests
* Update packages/desktop-client/src/data/customThemeCatalog.json
Co-authored-by: Michael Clark <5285928+MikesGlitch@users.noreply.github.com>
* Update color palettes for Simple Dark and Okabe Ito themes
Co-authored-by: matiss <matiss@mja.lv>
---------
Co-authored-by: Michael Clark <5285928+MikesGlitch@users.noreply.github.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
* Add custom themes feature with GitHub installation support
- Add ThemeInstaller component for installing themes from GitHub
- Implement custom theme validation and CSS parsing
- Add support for installed custom themes in preferences
- Add CustomThemeStyle component with CSS validation
- Update theme system to support custom overlay backgrounds
- Add comprehensive tests for theme installation and validation
- Add documentation and release notes for custom themes feature
* Update custom theme catalog: remove several themes and add 'Miami Beach' from a new repository.
* Enhance CSS validation in custom themes
- Refactor `validatePropertyValue` to implement an allowlist approach for CSS property values, rejecting complex constructs and functions except for rgb/rgba/hsl/hsla.
- Add comprehensive tests for various invalid CSS scenarios, including function calls and at-rules.
- Improve error messages for better clarity on validation failures.
- Ensure property name validation checks for format and allowed characters.
* Update custom theme catalog: rename theme from 'Miami Beach' to 'Shades of Coffee'.
* Remove 'forceReload' feature flag and related code from the application settings and feature flag definitions.
* Enhance ThemeInstaller component to support installed themes
- Add `installedTheme` prop to `ThemeInstaller` for managing custom themes.
- Implement logic to populate the text box with installed custom theme CSS when reopening.
- Update tests to verify behavior for installed themes with and without repositories.
- Improve CSS validation to allow additional CSS keywords and ensure proper structure.
* Add blog post for Actual Budget Wrapped 2025
* Add release notes for PR #6580
* Delete upcoming-release-notes/6580.md
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* Add Wallos schedule importer to community repos
Added a new entry for Wallos schedule importer with a brief description.
* Add Wallos to expected words
* Update goal templates documentation for clarity
Add updated images for category and group dropdown. Update docs to reflect actual behavior.
* Add files via upload
* Delete packages/docs/static/img/goal-template/apply-template-group.webp
Remove replaced images
* Refine goal templates documentation
Removed unnecessary note and clarified template behavior.
* Fix formatting and warning notes.
* Fix typos and improve clarity in goal templates
Resolving (some of) the AI bunny's suggestions.
* Delete packages/docs/static/img/goal-template/apply-template-category.webp
* Update note on 'up to' template limits
Clarified the note about category limits for templates using 'up to'.
* fix-nginx-header-collision
Added a note on Cross-Origin Isolation and header collisions for Nginx configuration, including a sample Nginx configuration to prevent header duplication.
* Fix formatting of headers in NGINX documentation
* Add new terms to spelling expectations
* Fix placement of 'COOP' in expect.txt
* Update reverse-proxies.md doc display
* 🔖 (26.1.0)
* Trigger CI
* Remove used release notes
* Add release notes for version 26.1.0
This commit introduces the release notes for version 26.1.0, highlighting notable improvements such as currency display in the budget, mobile schedules functionality, link detection in transaction notes, and an extension of historical data. The release also includes various enhancements, bug fixes, and maintenance updates, acknowledging contributions from multiple developers.
* Update spelling expectations and release notes for version 26.1.0
This commit adds new terms to the spelling expectations file and updates the release notes to reflect changes in the documentation, including formatting improvements for clarity. Notable contributions from various developers are acknowledged.
* Add new terms to spelling expectations file
This commit updates the spelling expectations by adding new terms, enhancing the accuracy of the documentation spell-checking process. The changes include the addition of 'jws' and 'oxc' to the list of expected terms.
* Update release notes for version 26.1.0 to include Flathub availability for Linux users
* Update release notes to reflect Docker tag for version 26.1.0 in documentation
---------
Co-authored-by: MatissJanis <886567+MatissJanis@users.noreply.github.com>
Co-authored-by: Matiss Janis Aboltins <matiss@mja.lv>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update typography rule to disallow curly quotes with auto-fix
- Reverse typography rule to detect and flag curly quotes instead of straight quotes
- Add auto-fixer that converts curly quotes to straight quotes
- Fix auto-fixer to properly escape quotes when they match string delimiters
* Fix quotation marks in error messages and formatting strings across multiple files
- Standardize quotation marks from curly to straight in error messages and string formatting for consistency.
- Update various components and utility files to ensure proper string handling and improve readability.
* Standardize quotation marks across multiple files
- Replace curly quotes with straight quotes in various documentation and code files for consistency and improved readability.
- Update error messages, comments, and documentation to ensure uniformity in string formatting.
* Standardize month formatting across multiple components
- Update month formatting strings from "MMMM 'yy" to "MMMM ''yy" in various components and utility files for consistency.
- Ensure uniformity in how months are displayed throughout the application.
* Refactor typography rule to enhance curly quote handling
- Simplify the error reporting mechanism for curly quotes by creating a shared fix function.
- Update test cases to include various curly quote scenarios for improved coverage.
- Ensure consistent handling of curly quotes in formatting functions across multiple files.
* Refactor typography handling and update tests for curly quotes
- Replace curly quotes with their Unicode equivalents in typography rule and related test cases for consistency.
- Remove unnecessary eslint-disable comments to improve code clarity.
- Ensure proper handling of quotes in arithmetic and utility tests to align with updated typography standards.
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6454
* Fix: Correct typo in budget cell notification message
Co-authored-by: matiss <matiss@mja.lv>
* Update VRT screenshots
Auto-generated by VRT workflow
PR: #6454
* Temporarily disable i18n string extraction workflow
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
- Removed temporary ignores for the docs package.
- Updated linting rules for the docs package to improve code quality.
- Refactored variable declarations from `let` to `const` for better consistency.
- Added a new configuration file for oxlint in the docs directory.
- Made minor formatting adjustments across various components.