Commit Graph

212 Commits

Author SHA1 Message Date
Matiss Janis Aboltins
094da46fb0 lint: move some more rules to oxlint/oxfmt and upgrade linter versions (#6398) 2025-12-13 22:41:21 +00:00
Matiss Janis Aboltins
af7bf534ba test: use local dev server for e2e tests (#6388)
* fix: use start:browser for playwright webServer to load correct browser-preload

The playwright webServer was running 'yarn start' which doesn't set
IS_GENERIC_BROWSER, causing Vite to not resolve .browser.js files.
This resulted in browser-preload.js (empty electron stub) being loaded
instead of browser-preload.browser.js, making window.Actual undefined.

Changed to 'yarn start:browser' which properly sets IS_GENERIC_BROWSER=1
via the watch-browser script.

* chore: update Playwright configuration and add blob-report to .gitignore

- Modified Playwright config to use 'yarn start' with the correct working directory for local builds.
- Added 'blob-report' to .gitignore to exclude it from version control.
- Created release notes for running e2e tests against a local build instead of Netlify.

* chore: update transaction test snapshots for split and transfer transactions

- Updated binary snapshots for split and transfer test transactions in the e2e tests.
- Ensured that the latest visual changes are reflected in the test suite for accurate regression testing.

* chore: update transaction test snapshots for split and transfer transactions

- Updated binary snapshots for split and transfer test transactions in the e2e tests to reflect recent changes.
- Ensured visual consistency for accurate regression testing.

* refactor: change test lifecycle hooks from beforeAll/afterAll to beforeEach/afterEach

- Updated test files to use beforeEach and afterEach hooks for better isolation of tests.
- This change ensures that each test starts with a fresh state, improving reliability and reducing side effects across tests.

* chore: update e2e test workflow to disable translation downloads

- Modified the e2e test workflow to include a new input parameter `download-translations` set to 'false' for the setup action.
- This change aims to streamline the testing process by preventing unnecessary translation downloads during the test runs.

* chore: update e2e test snapshots for settings page visuals

- Updated binary snapshots for the settings page in e2e tests to reflect recent visual changes.
- Ensured that the latest visual updates are accurately represented for regression testing.

* fix: safely close page in e2e tests

- Updated all e2e test files to use optional chaining when closing the page, ensuring that the close method is only called if the page is defined.
- This change improves the robustness of the tests by preventing potential errors when the page object is not available.
2025-12-13 18:27:40 +00:00
Michael Clark
87cfcd35f7 📜 Docusaurus config for gh-pages (#6386)
* docusaurus config for gh-pages

* [autofix.ci] apply automated fixes

* workflow

* deploy:docs

* using github actions bot as name

* release notes

* adding jekyll to excludes

* nojeklyll

* setup first then deploy

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-13 15:05:45 +00:00
Matiss Janis Aboltins
4ae85096cd feat: trigger VRT updates via /update-vrt comment (#6380)
* feat: trigger VRT updates via /update-vrt comment

- Change vrt-update-generate.yml to trigger on issue_comment with /update-vrt
- Update VRT failure comment to inform users about the /update-vrt command
- Add step to fetch PR details since issue_comment events don't provide them

* fix: update VRT trigger condition to use startsWith for command detection

- Modify the condition in vrt-update-generate.yml to use startsWith instead of contains for the /update-vrt command in PR comments, ensuring more accurate command detection.
2025-12-13 10:28:28 +00:00
Matiss Janis Aboltins
ecb8a1a548 Shard e2e ci jobs (#6359)
* Refactor e2e-test workflow to improve Playwright test sharding and report handling

- Restore full shard count (5 shards) for Playwright tests to enhance test coverage and performance
- Re-enable functional desktop app tests with proper xvfb setup
- Simplify Playwright test command structure for better readability
- Refactor VRT blob report merging process with improved artifact handling
- Update Playwright reporter configuration to use blob reporter in CI
- Streamline artifact paths and download/merge operations for better organization

* Remove VRT environment variable from e2e-test workflow to streamline test execution

* Update e2e-test workflow to always upload VRT blob report artifacts, ensuring consistent artifact handling regardless of job cancellation.
2025-12-12 21:39:20 +00:00
Michael Clark
cb4d616761 Add Flathub badge to release (#6376)
* add link to flathub to release

* style a bit better

* release notes
2025-12-11 22:04:21 +00:00
Matiss Janis Aboltins
b99d3ab802 Use PAT to trigger CI workflows in VRT update workflow (#6363) 2025-12-11 21:02:10 +00:00
Michael Clark
64bc7dbf6e 🤖 Adding path filters so workflows only run when required (#6364)
* adding path filters to workflows so they only run when required

* trigger them also when the workflow changes

* adding yarn lock in case packages affect e2e

* release notes

* add the package.json in case we modify the scripts

* Remove API changes from size comparison workflow

* Clarify size impact of package changes in workflow

Updated comments to clarify that certain package changes don't affect the size of the web/api.

* Fix comments for VRT update exclusions

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6364

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6364

* Fix comment formatting in VRT update workflow

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-11 19:20:36 +00:00
Michael Clark
ef222f395b :electron: Add reviewers to Flathub release pr & documentation (#6361)
* add reviewers to flathub pr

* release notes

* some docs for flathub release

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6361

* documentation

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-11 15:54:17 +00:00
Matiss Janis Aboltins
6f76b67da7 Use personal access token securely for VRT update workflow push (#6356)
* Use personal access token securely for VRT update workflow push

* Update button label from 'Apply budget template' to 'Overwrite budget template' in mobile budget menu modal for consistency with recent changes.

* Update button label from 'Overwrite budget template' to 'Overwrite with template' in mobile budget menu modal for clarity and consistency.
2025-12-10 19:25:07 +00:00
Matiss Janis Aboltins
91f444d788 Use ACTIONS_UPDATE_TOKEN for workflows that push to forks (#6349)
GITHUB_TOKEN doesn't have permission to push to fork branches. Use a PAT stored as ACTIONS_UPDATE_TOKEN instead for:
- VRT update workflow (checkout and push to contributor forks)
- AI-generated release notes (commit files to PR branches)
2025-12-09 22:47:33 +00:00
Matiss Janis Aboltins
0aa96ecaee Fix lint violations (vol.3) (#6301)
* Fix lint violations

* Refactor code for clarity and consistency

- Updated various components to improve readability and maintainability, including:
  - Changed `while (1)` to `while (true)` for better clarity.
  - Simplified conditional checks by removing unnecessary boolean casts.
  - Added missing `key` props in mapped elements to ensure proper rendering in lists.
  - Adjusted the handling of hidden states in budget components for clearer logic.
  - Cleaned up linting rules in `.oxlintrc.json` to streamline configuration.

* Enhance accessibility and linting compliance

- Updated `.oxlintrc.json` to add a warning for `jsx-a11y/no-autofocus` and removed several disabled rules.
- Added `aria-level` attributes to improve semantic structure in `Page.tsx`, `Modal.tsx`, and `ReportCardName.tsx`.
- Replaced `<label>` elements with `<Text>` components in various modals to ensure proper accessibility.
- Added `htmlFor` attributes to labels in `ImportTransactionsModal.tsx` for better form accessibility.
- Disabled specific linting rules inline to address accessibility concerns in `Image.jsx` and `Toggle.tsx`.

* Add new keywords to spelling allowlist

- Updated `.github/actions/docs-spelling/allow/keywords.txt` to include `oxfmt` and `oxlint` for improved spell-checking in documentation and code comments.

* Disable no-autofocus rule in .oxlintrc.json

* Update Trans component usage in MergeUnusedPayeesModal

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-09 21:39:50 +00:00
Michael Clark
f24ec41fd3 :electron: Add flathub store publish pipeline (#6307)
* add tokens to replace in release pipeline for metainfo release dates/versions

* validate the metainfo in pipeline

* install appstream first

* release notes in the metainfo

* release notes for metainfo - testing pipeline

* pipeline works

* brand colors as per flathub recommendation

* picked colours following flathubs recommendations

* contrast

* contrast checked

* updating nightly flow to also work with new metainfo for testing

* replacing manifest info and creating pr

* minor improvements

* release notes

* upgrade action
2025-12-08 17:15:15 +00:00
Matiss Janis Aboltins
879fd1b054 chore: replace Prettier with oxfmt and add oxlint (#6259)
* chore: replace Prettier with oxfmt and add oxlint

- Replace Prettier with oxfmt (Prettier-compatible formatter from OXC project)
- Add oxlint for fast linting alongside ESLint
- Add eslint-plugin-oxlint to disable ESLint rules covered by oxlint
- Update lint scripts to run oxfmt, oxlint, then eslint
- Update lint-staged configuration for pre-commit hooks
- Create .oxfmtrc.json and .oxlintrc.json configuration files
- Remove .prettierrc.json and .prettierignore
- Reformat codebase with oxfmt

* chore: update dependencies in yarn.lock

* chore: update oxlint configuration to disable additional rules

* chore: update oxfmt and oxlint configurations, enhance test readability
2025-12-04 19:55:10 +00:00
github-actions[bot]
bf71fe5992 🔖 (25.12.0) (#6285)
* 🔖 (25.12.0)

* force ci

* Remove used release notes

* add blog post

* fix spelling

* make netlify happy?

* last one

* fix some formatting

* remove icns from allowed spelling to avoid accidental missspellings

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6285

* force ci

* force ci

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6285

* revert flaky vrt.  please don't update again...

* make the release dates match

---------

Co-authored-by: youngcw <28542559+youngcw@users.noreply.github.com>
Co-authored-by: youngcw <calebyoung94@gmail.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>
2025-12-03 16:54:03 +00:00
Michael Clark
9ceb74cf6e :electron: Make it easier to download the desktop app installers (#6246)
* make it easier to download the desktop app artifacts

* release notes

* naming the artifacts *.zip becuase zips are mandatory

* Revert "naming the artifacts *.zip becuase zips are mandatory"

This reverts commit 02f9fcaa69.
2025-11-25 20:30:23 +00:00
Michael Clark
3df3b5e145 :electron: Add workflow for nightly signed desktop app (#6242)
* add workflow for nightly signed desktop app build

* release ntoes
2025-11-24 22:22:36 +00:00
Juulz
c17fa45692 Add PWA install instructions and links to Pikapods doc - fixes #6191 (#6215)
* Update pikapods.md

* Update pikapods.md

Added info and links to PWA installation

* Update pikapods.md

* Update pikapods.md

A couple of formatting changes

* Update pikapods.md

* Update notification method for PikaPods

* Update packages/docs/docs/install/pikapods.md

Co-authored-by: Matt Fiddaman <github@m.fiddaman.uk>

* Update pikapods.md

* Update pikapods.md

* Update expect.txt - add 'taskbar'

* Update expect.txt

* Update pikapods.md

* Update packages/docs/docs/install/pikapods.md

Co-authored-by: Matt Fiddaman <github@m.fiddaman.uk>

* Update pikapods.md

* Update pikapods.md

* Update pikapods.md

---------

Co-authored-by: Matt Fiddaman <github@m.fiddaman.uk>
2025-11-24 13:39:40 +00:00
Michael Clark
f3cd0f2091 📜 Docs: Update downloads page table to have less duplication (#6231)
* update downloads page table to have less duplication

* color from variable

* add component to exclude for spell check

* adding workflow to docs files for release notes exclusion

* release notes

* cli tool added to the server download list
2025-11-22 22:12:03 +00:00
Matiss Janis Aboltins
9824a47a86 Revert "Add workflow to auto-assign maintainers to PRs on comment/review" (#6230)
* Revert "Add workflow to auto-assign maintainers to PRs on comment/review (#6156)"

This reverts commit dc2dd2ee6f.

* Add release notes for PR #6230

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-22 20:56:07 +00:00
Matiss Janis Aboltins
4081a6f5e5 Fix typechecker - update mismatched type in DiscoverScheduleEntity (#6227)
* Fix typechecker - update mismatched type in DiscoverScheduleEntity

* Add merge_group to GitHub Actions workflows for better concurrency management
2025-11-22 16:20:11 +00:00
Matiss Janis Aboltins
dc2dd2ee6f Add workflow to auto-assign maintainers to PRs on comment/review (#6156) 2025-11-20 21:20:41 +00:00
Matt Fiddaman
30f4a7fa9d make docs issue titles consistent (#6192) 2025-11-18 01:13:10 +00:00
Matiss Janis Aboltins
7648fc6809 Combine bundle stats comments in PR (#6101)
* Combine bundle stats comments in PR

* Refactor bundle stats comment generation to use a mapping approach for base and head stats, improving argument parsing and validation in the CI action.

* Enhance size comparison workflow by adding steps to checkout the base branch and set up the environment, ensuring accurate build status checks for pull requests.

* Implement size comparison job in GitHub Actions workflow, replacing the deprecated size-compare.yml. This new job downloads build stats from both the base and head branches, processes the stats files, and generates a combined comment for pull requests, enhancing visibility into bundle size changes.

* Add release notes for bundle size stats update, consolidating workflow and PR comment generation.

* Refactor GitHub Actions workflows by removing the deprecated size comparison job from build.yml and introducing a new size-compare.yml workflow. This new workflow enhances build status checks and ensures accurate reporting of bundle size changes for pull requests.

* chore: update action versions and improve error messages in bundle stats scripts

- Updated GitHub Actions to specific commit versions for `upload-artifact` and `checkout`.
- Enhanced error messages in `bundle-stats-comment.mjs` and `update-bundle-stats-comment.mjs` for better clarity and consistency, replacing standard quotes with typographic quotes.

* fix: standardize error messages in bundle-stats-comment.mjs

- Updated error messages in `bundle-stats-comment.mjs` to remove typographic quotes for consistency and clarity.
2025-11-13 18:11:34 +00:00
Matt Fiddaman
033fd2d7e1 change terminology used in count-points script (#6138)
* terminology

* note
2025-11-13 17:57:09 +00:00
Matt Fiddaman
774e3b7f92 amend the contributor points calculation logic to handle the docs merge (#6127) 2025-11-12 23:03:35 +00:00
Matt Fiddaman
d9c590bf54 fix VRT workflow artifact download (#6126) 2025-11-12 13:33:16 +00:00
Matt Fiddaman
03e3cdbc65 fix error in feature request workflow (#6125) 2025-11-12 13:32:19 +00:00
Matt Fiddaman
004b5287c7 remove release note check for documentation changes (#6122)
* don't check for release note on docs changes

* note
2025-11-12 11:01:04 +00:00
Matt Fiddaman
e64a042f0c fix github action version resolution (#6114)
* pin to sha

* note
2025-11-11 23:26:07 +00:00
Matt Fiddaman
0e8aa7ddc4 initial cleanup post docs merge (#6095) 2025-11-10 11:38:48 +00:00
Matt Fiddaman
407a0d2f7f fix GitHub workflows in the compare sizes action (#6079)
* fix compare sizes workflow versions

* note
2025-11-06 01:01:12 +00:00
Matt Fiddaman
25f9ea3f97 ⬆️ bump github action versions (#6014)
* actions/checkout v5

* actions/setup-node v6

* actions/upload-artifact v5

* actions/download-artifact v6

* actions/stale v10

* aidan-mundy/react-to-issue v1

* twk3/rollup-size-compare-action v1

* actions/github-script v8

* dawidd6/action-download-artifact v11

* fountainhead/action-wait-for-check v1

* peter-evans/create-or-update-comment v5

* docker/build-push-action v6

* note
2025-11-05 23:56:17 +00:00
Matiss Janis Aboltins
57d01467ca Refactor test execution to use lage task runner (#5964) 2025-10-21 08:58:26 +02:00
Matt Fiddaman
155558ee62 drop support for node 20 (#5937)
* node 24

* node types

* dockerfiles

* readme

* note
2025-10-18 23:58:27 +01:00
Matiss Janis Aboltins
31a9ba629b Change "/update-vrt" workflow (#5952) 2025-10-18 11:46:52 +01:00
Michael Clark
4e42cda29e :electron: Prep for flathub - arm64 support and metainfo (#5947)
* prep for flathub -arm64 build and metainfo

* release note

* spelling mistake

* whitespace removal

* arch build issues

* hmm

* removing arm64 from flatpak - that would get bundled by flathub anyway
2025-10-17 21:08:59 +01:00
Michael Clark
19675a7de6 ⬆️ Update flatpak sdk and platform (#5935)
* update flatpak sdk and platform

* release notes

* flatpak version config

* going to 24.08 to support as many distros as possible

* remove unneded file
2025-10-16 18:59:19 +01:00
Julian Dominguez-Schatz
c1d97fcc75 Allow size-compare action to run immediately after artifact upload (#5912)
* Allow size-compare action to run immediately after artifact upload

* Add release notes
2025-10-13 09:20:18 -07:00
Matiss Janis Aboltins
614bedcfbf Trigger edge docker release on master push (#5897) 2025-10-10 09:37:54 +02:00
Michael Clark
5b9bcc94f6 ⬆️ Upgrade electron-builder (#5857)
* upgrade electron-builder

* no postinstall when yarn immutable

* downgrade to last version without the bug

* fix issue with wrappy

* release notes

* regen yarn lock

* react-sprint

* hmm

* update yarn manually...

* fixing spring?

* lock

* finally

* conflict

* put package back
2025-10-08 22:20:29 +01:00
Matt Fiddaman
2e439aacba ⬆️ bump various dependencies (#5886)
* bump various dependencies

* note

* update playwright images

* globals 16.4.0

* react-router 7.9.4
2025-10-08 21:01:27 +01:00
Matt Fiddaman
499f24f7fd ♻️ bump non-react deps in desktop-client (#5858)
* patch/minor deps

* @vitejs/plugin-basic-ssl 2.1.0

* remove chokidar

* cross-env 10.1.0

* downshift 9.0.10

* remove focus-visible

* jsdom 27.0.0

* rollup-plugin-visualizer 6.0.4

* note
2025-10-06 16:28:04 +01:00
Matt Fiddaman
6365a8f4bb replace deprecated function in count points script (#5791)
* fix deprecated function call in count points script

* note
2025-09-25 21:03:44 +01:00
Michael Clark
9af4ba4d07 🔽 Downgrade Ubuntu image for more compatibility with older distros (#5788)
* downgrade ubuntu image for more compatibility with older distros

* release ntoes
2025-09-24 19:37:31 +01:00
Matiss Janis Aboltins
7c07295448 Issues: add issue types (#5648) 2025-09-07 19:13:15 +01:00
Julian Dominguez-Schatz
4df05aa37c Fix version bump logic to work if the month has rolled over (#5662)
* Fix version bump logic to work if the month has rolled over

* Refactor script to be more testable

* Add tests for regression

* Move tests to dedicated package

* Add release notes

* Coderabbit
2025-09-05 07:31:53 -04:00
Matiss Janis Aboltins
30102b1474 Revert "Dispatch github ci jobs after running update-vrt workflow (#5586)" (#5590)
This reverts commit 3a8eb96d76.
2025-08-20 21:28:27 +01:00
Matiss Janis Aboltins
3a8eb96d76 Dispatch github ci jobs after running update-vrt workflow (#5586)
* Enhance CI workflows to support repository dispatch events and improve branch handling

- Added support for `repository_dispatch` events in build, check, and codeql workflows.
- Updated concurrency group to include `client_payload.pr_number` for better context.
- Modified checkout steps to reference the correct branch from `client_payload` if available.

* Add release notes for PR #5586

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 21:12:16 +01:00
Michael Clark
be20f65b6e 🛠️ Moving loot-core to Vite (#5379)
* Moving loot core to Vite
2025-08-13 20:49:48 +01:00