Commit Graph

51 Commits

Author SHA1 Message Date
Matiss Janis Aboltins
9e7a4cde36 Remove ESLint and complete migration to oxlint (#6584)
* Remove ESLint and migrate fully to oxlint

* Add release notes for PR #6584

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-01-06 23:19:03 +00:00
Matiss Janis Aboltins
f1faf45659 lint: move last remaining native eslint rules to oxlint (create new alternatives) (#6468)
* lint: clean up unnecessary config and disables

* fix: update package import path in browser preload script

* lint: create custom ESLint rules for rules not in oxlint

- Add object-shorthand-properties rule (replaces object-shorthand)
- Add prefer-const rule (replaces prefer-const)
- Add no-anchor-tag rule (replaces no-restricted-syntax for <a> tags)
- Add no-react-default-import rule (replaces no-restricted-syntax for React.*)

These custom rules are needed because oxlint doesn't support these rules yet.
All rules are properly tested and integrated into the ESLint config.

* refactor: enhance prefer-const rule to track variable reassignments by scope

- Introduced a mapping of scopes to reassigned variable names, improving the accuracy of the prefer-const rule.
- Added helper functions to determine variable scopes and reassignment status.
- Updated logic to check variable reassignments during declaration analysis.
- Adjusted test cases to reflect changes in variable handling.
2026-01-05 09:00:44 +00:00
Herbert Kipkoech
88fbfe7078 docs: add guidance on avoiding Nginx header collisions for COOP/COEP (#6477)
* 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
2026-01-05 09:00:41 +00:00
github-actions[bot]
47ffa61f75 🔖 (26.1.0) (#6520)
* 🔖 (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>
2026-01-04 14:00:21 +00:00
Matiss Janis Aboltins
a7ab3f375e Release notes newline fix (#6492)
* Refactor: Remove trailing newline from release notes file

Co-authored-by: matiss <matiss@mja.lv>

* Fix template string for release notes summary

* Add release notes for PR #6492

* [autofix.ci] apply automated fixes

* Add finishing_touches section to config

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-27 13:31:41 +00:00
lelemm
cfea779fc8 AI Generated documentation for excel formula (#6430)
* ai generated documentation

* added words to expect

* removed placeholder images

* Add release notes for PR #6430

* [autofix.ci] apply automated fixes

* Remove release notes for experimental formulas

Co-authored-by: lelemm <lelemm@gmail.com>

* Checkpoint before follow-up message

Co-authored-by: lelemm <lelemm@gmail.com>

* Checkpoint before follow-up message

Co-authored-by: lelemm <lelemm@gmail.com>

* Remove experimental formula card from reports

Co-authored-by: lelemm <lelemm@gmail.com>

* Docs: Update experimental feature warning with feedback issue

Co-authored-by: lelemm <lelemm@gmail.com>

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2025-12-22 18:35:37 +00:00
Matiss Janis Aboltins
07fbcebb6a lint: move eslint-native rules to oxlint (#6449)
* Update linting configuration and fix related issues

* Fix type coercion for comment ID in check-first-comment.js to ensure proper comparison with summary comment IDs
2025-12-19 19:57:30 +00:00
Juulz
596a30fa00 Update tips-tricks.md and add context menus - fixes #6185 (#6417)
* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

* Update expect.txt

Add REGEXREPLACE

* Update tips-tricks.md

* Update tips-tricks.md

* Update expect.txt

Add deselection

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md

Typo

* Update tips-tricks.md

* Update tips-tricks.md

* Update tips-tricks.md
2025-12-17 15:20:18 +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
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
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
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
dc2dd2ee6f Add workflow to auto-assign maintainers to PRs on comment/review (#6156) 2025-11-20 21:20:41 +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
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
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
Matt Fiddaman
d98e8375a8 merge automatic package versioning GitHub workflows (#5480)
* merge bump-package-versions script with get-next-package-version

* note

* appease the rabbit

* add update flag to node script

* use update flag in workflow

* not much has changed but they live underwater
2025-08-05 22:06:37 -04:00
Matt Fiddaman
13bd08d243 clarify ai release note comment (#5440) 2025-08-01 17:03:20 -04:00
lelemm
093d799ba0 Auto generate Release Notes (#5182)
* AI Generated release notes

* lint

* removedverbose console.log
2025-06-19 17:22:44 -03:00
Matiss Janis Aboltins
8ccc1af77e Clean up configuration files (#5181) 2025-06-16 22:22:38 +01:00
Matiss Janis Aboltins
fbd6989a18 Add GitHub workflow and script for counting monthly contributor points (#5147) 2025-06-14 13:18:40 +01:00
Michael Clark
31a7902a08 :octocat: Add workflow for publishing nightly npm packages (#5047)
* add workflow for publishing edge npm packages

* release notes

* alright mr rabbit

* never trust the wabbit

* changing tag to nightly as per maintainer feedback

* fix hotfix script version

* rename workflow

* wabbit

* exit process

* fix reference to package json

* variable scoping

* change nightly version number to yyyymmdd (#17)

---------

Co-authored-by: Matt Fiddaman <github@m.fiddaman.uk>
2025-06-11 21:37:54 +01:00
Matt Fiddaman
6d921a48b6 change minimum version of Node.js to version 20 (#4978)
* update workflows

* update supported engines in package.json

* .nvmrc

* base yarn cache on node version being used rather than .nvmrc

* note
2025-05-12 13:49:09 -04:00
Julian Dominguez-Schatz
e5d301c66b Fix bump versions script (#4740)
* Include sync-server in auto-bumped versions

* Fix version bump logic to work if the month has rolled over

* Add release notes
2025-04-08 18:34:31 -04:00
Julian Dominguez-Schatz
d11fc59ec9 Update bump-package-versions script to handle no input version (#4477) 2025-02-27 19:15:15 -05:00
Julian Dominguez-Schatz
4a7b0e7365 Add an action to automatically generate release PRs (#4306)
* Add an action to automatically generate release PRs

* Add release notes

* PR feedback: error handling
2025-02-06 08:37:42 -05:00
Julian Dominguez-Schatz
5d91d29d77 Exclude untranslated languages from builds (#4148)
* Add script to remove untranslated language JSON files

* Remove untranslated languages in CI

* Add release notes
2025-01-14 09:57:11 -05:00
Julian Dominguez-Schatz
5a34c06859 Include translations in builds (#4089)
* Pull/push strings via Git instead of via API

This is necessary because the Weblate API doesn't handle stale strings
well. In particular, it won't remove them automatically.

* Schedule workflow instead of running on every commit

This is so we can minimize downtime for Weblate translations.

* Prevent pull requests modifying translations

* Don't commit translations during the merge freeze

* Add release notes

* Undo rename

* Don't commit translations nightly, per feedback

* Include translations just-in-time in builds

* Revert "Prevent pull requests modifying translations"

This reverts commit 8c19a0ce13.

* Re-ignore translations

* Update release notes to be accurate

* Create missing directory

* Fix conditional logic
2025-01-09 20:13:25 -05:00
Julian Dominguez-Schatz
9213ed75b5 Upload translations on builds of master (#4002)
* fix: translations were not being loaded properly

* fix: support running GitHub actions locally with `act`

* feat: upload new strings on master build

* Add release notes

* PR feedback: security
2024-12-24 12:48:41 -05:00
Matiss Janis Aboltins
6ae2047ab8 🔧 upgrade deprecated github actions (#2319) 2024-02-02 20:38:57 +00:00
Matiss Janis Aboltins
a0290609f9 👷 visual regression tests (#1553) 2023-08-25 17:34:10 +01:00
Jed Fox
e7d8fdf590 Fix typo in handle-feature-requests.js (#1411) 2023-07-28 17:00:27 -07:00
Jed Fox
c76f39c0fa Fix migration check script (#1307) 2023-07-07 14:56:32 -04:00
Jed Fox
f4940dceb1 Run “Handle completed feature requests” in pull_request_target (#1243) 2023-07-01 06:21:21 -04:00
Shazib Hussain
59a1c38d34 Move netlify-wait-for-build into github/actions folder (#1222)
This script is only used for the github e2e tests so doesn't need to be
inside /bin
2023-06-28 17:10:10 -04:00
Jed Fox
15bc3c45a0 Partition GitHub Actions cache based on Node version (#1118)
This should fix the test failures on `master` — currently tests are
failing because the cache was created with an old version of Node.
2023-06-11 13:37:20 -04:00
Jed Fox
c1af40ff5c Update recommended version to Node.js 18 (#1117)
After #1115, new Node.js versions will be able to be used for
development of the frontend. This PR changes the recommended Node.js
version to 18 (the current LTS version). I have also tested with 16 and
20 and it works.

I also took the opportunity to:

- move the build script that was at the project root to the `bin/`
folder
- update the `browserslist` to target Electron 24 (which is the version
we currently build against). This results in a slightly smaller bundle
due to no longer having to transpile optional chaining.
2023-06-10 13:12:42 -04:00
Jed Fox
6e6d765699 Fix migration ID for “remove account type” migration (#1109)
Good catch @Jackenmen in
https://github.com/actualbudget/actual/pull/948#issuecomment-1580501909
— I’ve also added a CI check to ensure bad migrations aren’t introduced
in the future.

I think if you have a budget that has managed to have this migration
applied successfully, you’ll need to manually patch
`getAppliedMigrations` in
`packages/loot-core/src/server/migrate/migrations.ts` and inject a query
to remove the old migration ID and insert the new one.
2023-06-08 14:52:13 -04:00
Jed Fox
c9576d98e4 Remove “needs votes” label from feature requests that have been implemented (#1001) 2023-05-06 18:06:05 -04:00
Matiss Janis Aboltins
7d2adfa02e 👷 upgrade github actions (#711)
* 👷  upgrade github actions

* Upgrade actions/checkout
2023-03-02 17:02:50 +00:00
Matiss Janis Aboltins
50a71335e6 test: bare-bones e2e testing with playwright (#416) 2023-01-12 22:43:32 +00:00
Tom French
5a00bf6b43 ci: fix CI to an exact node version (#240) 2022-09-02 20:28:33 +01:00
Tom French
8ae21c9782 ci: re-add runner os specific caches 2022-06-29 13:24:34 -04:00