Commit Graph

740 Commits

Author SHA1 Message Date
Jed Fox
2108712f2d Fix size comparison workflow on fork PRs (#1214)
This PR moves the size comparison action back to a separate workflow
which now uses the `pull_request_target` event. This event is triggered
at all the same times as the `pull_request` action, except that the
workflow file content comes from the target branch of the PR, and it is
run in the context of the repo owning the target branch. Practically,
this means that it will still have access to post a comment even if the
PR comes from a fork.

We don’t want the build actions to be run in a `pull_request_target`
workflow because they would get access to the secrets and be able to
perform arbitrary actions on the repository, even from fork PRs.

See the current version failing here:
https://github.com/actualbudget/actual/actions/runs/5395184895/jobs/9797388016?pr=1122
2023-06-28 12:04:15 -04:00
Jed Fox
982d57c9ae Move the rest of the syncing protobuf code to the CRDT package (#1217) 2023-06-28 07:03:52 -04:00
Jed Fox
38b8000d2a Bundle only the variable font version of Inter (#1213) 2023-06-28 07:02:59 -04:00
Jed Fox
d5387c5d46 Improve some of the typings in loot-core (#1180)
<!-- Thank you for submitting a pull request! Make sure to follow the
instructions to write release notes for your PR — it should only take a
minute or two:
https://github.com/actualbudget/docs#writing-good-release-notes -->
2023-06-27 13:02:58 -04:00
Jed Fox
081c9d068f Display bundle size changes in comments on opened PRs (#1205) 2023-06-27 12:46:27 -04:00
Jed Fox
aa503d6a74 Consistently use ExternalLink (#1184)
This cleans up all of the usage of `<a>` in the codebase. Now all
external links get the appropriate attributes added.
2023-06-27 08:46:38 -04:00
Jed Fox
ed50e2b392 Run ESLint at the top level once (#1202)
This significantly speeds up `yarn lint` for me. It also ensures we’re
listing all source files in the project, including the `.eslintrc` files
and any other files that may be present.
2023-06-26 15:32:56 -04:00
Jed Fox
ea4a68e06c Add public/data to .eslintignore in desktop-client (#1199)
This fixes an error that you’ll see about an unused export if you build
before linting.
2023-06-26 15:19:38 -04:00
Jed Fox
45247e6d59 Remove unused deps from desktop-client (#1200)
This will reduce install/lockfile size but won’t affect the built bundle
size. Still nice, hopefully!
2023-06-26 15:15:47 -04:00
Jed Fox
6fd2ad21ec Add release note 2023-06-26 14:59:19 -04:00
Matiss Janis Aboltins
b7d5602cce ⬆️ upgrade hotkeys-js from v3.8.2 to v3.10.3, remove monkeypatch (#1195) 2023-06-26 17:19:11 +01:00
Jed Fox
53df1a03a3 Fix navigating to the per-category per-month page (#1182)
I checked through the other references to `navigate` and none of them
appeared to be affected.
2023-06-26 09:13:20 -04:00
Matiss Janis Aboltins
0f81d877ef ⬆️ upgrade react-dnd and remove monkeypatch (#1192)
Another monkeypatch bites the dust.

AFAIK there is no regression in functionality. But please test
yourselves too to double check.
2023-06-26 07:03:04 +01:00
Matiss Janis Aboltins
a3ca5a26ae ⬆️ upgrade @reach/listbox and remove monkeypatch (#1190)
It me it seems the monkey patch is no longer necessary.. At least I'm
not able to reproduce any `escape` key related issues. But LMK what you
think.

The `@reach/listbox` component is used for the custom select component
(for example: for filters).
2023-06-25 22:09:31 +01:00
Matiss Janis Aboltins
dacaef6fa4 🔥 remove beta code and some unused scripts (#1189)
Just removing some unused/unnecessary scripts and `IS_BETA` env variable
+ the associated code (we don't use this in the OS version of Actual).
2023-06-25 21:47:23 +01:00
shall0pass
78e7468715 Goals: Use shared 'months' functions for time (#1082)
Based on Tom's comment
(https://github.com/actualbudget/actual/pull/1058#issuecomment-1568030881)
I've eliminated all direct use of date-fns and only use the functions in
months.ts.

---------

Co-authored-by: Matiss Janis Aboltins <matiss@mja.lv>
2023-06-25 16:45:49 -04:00
Jed Fox
d48add55b6 Fix completed feature request handling (#1183) 2023-06-25 12:55:27 -04:00
Jed Fox
bb3ed4cea4 Fix “delete file” modal layout (#1170) 2023-06-25 12:55:08 -04:00
Tom French
fddcdec81f chore: enforce proper types in sync/index (#1077)
I've updated the return values in `sync/index` to sensible values based
on how they're being called.

I've updated the type of `msg.value` to be `string | number | null` to
match the values expected by `serializeValue`
2023-06-25 17:33:57 +01:00
Jed Fox
0e7de456f6 Fix transaction list page being blank on mobile (#1171)
Also remove the need to unmount & remount when switching between
accounts. Fixes #1169
2023-06-24 17:39:55 -04:00
Joel Jeremy Marquez
64408495ee Automatic category selection for new category transactions (#1176)
For #1152
2023-06-24 17:01:06 -04:00
Shazib Hussain
228cff3cfd New linter rule import/no-unused-modules & fixing import on typescript (#1173)
- New linter rules are now added
- Perhaps the `createPayee` method i've tagged with a disable should be
deleted.
- I have ignored unused methods in Plaid/Mobile as this stuff is still
WIP/experimental?
2023-06-24 11:58:40 -04:00
Trevor Farlow
f3f2c8485a React Router 6 fixes (#1178)
* Provide `match` prop to class components that still rely on it.
* Fixes #1169
* Fixes an unrelated crash on Payees
2023-06-24 07:40:17 -06:00
Shazib Hussain
83459b4c78 Remove remaining tutorial code (#1174)
Looks like this got missed in the last PR!
2023-06-23 19:52:20 -04:00
Trevor Farlow
9d041aaa7a react-router 6 upgrade (#1066)
Co-authored-by: Jed Fox <git@jedfox.com>
2023-06-23 14:40:59 -04:00
Shazib Hussain
0c0f9e6ccf Deleting all unused files, deleting unused functions from loot-core (#1158)
Last one before I add the actual linter rules!
2023-06-23 14:38:57 -04:00
Jed Fox
d6ed860bc3 Log more details when migrations are out of sync (#1161) 2023-06-23 06:40:25 -04:00
Jed Fox
c6443f24b2 Remove upgrade notifications code (#1156)
None of this code is relevant to people who have used the open source
app. I initially wanted to leave it in so it could be used for major new
features in the future, but as it falls further and further out of date
I think it’s best to just delete it in a clean PR that can be referenced
later if desired.
2023-06-21 15:16:37 -04:00
Matiss Janis Aboltins
2b64a49359 🔥 removing needs-triage github label (#1157) 2023-06-21 20:08:42 +01:00
Shazib Hussain
287fb9b9d6 Tidy up exports in loot-core (#1147)
Following on from #1146 this PR removes all unused exports from
`loot-core/`
2023-06-20 20:57:19 +01:00
Matiss Janis Aboltins
c286f1c5f3 🐛 remove 'we have been notified' copy (#1155)
Closes #1069

I've not actually tested this change. Which is why I'm not changing it
to direct links (as they might not work).

Instead I'm just applying a very quick patch so the message would not be
misleading anymore.
2023-06-20 20:56:23 +01:00
Jed Fox
977e0c9008 Updates to the server button at the top right (#1141)
It now always shows a menu, so the user doesn’t unexpectedly perform an
action.
2023-06-20 14:57:23 -04:00
Joel Jeremy Marquez
497a3104f0 Expand / collapse all categories (#1143)
This PR is for the first item listed in #559: `Expand All / Collapse All
Categories`

For the expand / collapse all categories functionality, I was choosing
between having a single `Expand / collapse all categories` button or one
for each: `Expand all categories` and `Collapse all categories` buttons.

For the initial implementation, I have opted with the latter. Please let
me know which one is the right way to go or if there are other
suggestions and I'll just accordingly.


![image](https://github.com/actualbudget/actual/assets/20313680/64d0e498-1139-4dd0-9b7f-4d478ab947aa)
2023-06-20 14:35:01 -04:00
Matiss Janis Aboltins
adc5e324a7 (nordigen) release the feature (#1135) 2023-06-20 19:21:30 +01:00
Jed Fox
2c6cca6bf6 Improve error logging in the API (#1121) 2023-06-19 06:41:49 -04:00
Matiss Janis Aboltins
610c42a1ae ♻️ (crdt) moved re-used utils in actual-server to separate package (#1150)
actual-server does not need to import the full actual-app/api package.
It can import only the CRDT stuff.. so I'm extracting it into a new
package to reduce the size of actual-server and make the link between
things more transparent.
2023-06-18 20:16:50 +01:00
Shazib Hussain
fcb1bba7fa Removing Tutorial code (#1146) 2023-06-17 19:49:48 -04:00
Shazib Hussain
764a20a36b Removing unused functions (#1145)
Continuing on from #1139 this PR deletes all function that are not used
anywhere.

The next PR will include all the entire files that are unused & deleted.
2023-06-16 21:37:30 -04:00
Jed Fox
b8dbec46bb Revert “Make number parsing agnostic to decimal and thousands separators” (#1144)
This reverts #1029. As raised in #1097, the formatting chosen doesn’t
work well when doing math. There may be a way to balance compatibility
with multiple format styles with handling non-currency amounts
correctly, but it will require some more careful consideration. Re-opens
#894.
2023-06-16 15:30:27 -04:00
Jed Fox
a86fd9cf06 Strip a trailing slash off of server URLs (#1140)
URLs with the trailing slash don’t work well — requests end up being
made to `https://example.com//sync/sync` and such which can 404

---------

Co-authored-by: Matiss Janis Aboltins <matiss@mja.lv>
2023-06-16 13:54:13 -04:00
Jed Fox
8f16e0167c Update CONTRIBUTING.md to point to the website (#1138) 2023-06-16 13:38:28 -04:00
Jed Fox
60a8f72be8 Updates to the account creation/linking flow (#1137) 2023-06-16 13:38:16 -04:00
Shazib Hussain
61a5b1a337 Remove 'export' keyword where not needed. (#1139)
As discussed in #1126 creating separate PRs.

The linter rule isn't actually part of this first PR and will likely be
in the final PR as otherwise it will just fail because all the issues
aren't resolved.

The code is 'ready' though so as soon as this is merged I will open next
one(s)
2023-06-15 18:11:45 -04:00
Matiss Janis Aboltins
f8dfa5a6e0 🐛 disable 'all payees' checkbox while schedules are loading (#1136)
Closes #1125

Disables (hides) the "all payees" checkbox when schedules are loading.

Reproduction:
1. open `/schedule/discover`
2. while the data is still loading - click on the checkbox in the table
header
3. after loading finishes - the page crashes with an error
2023-06-15 20:45:04 +01:00
Jed Fox
9aea091f53 Update links to point to new domain (#1129)
Depends on https://github.com/actualbudget/docs/pull/202.
2023-06-15 06:46:04 +01:00
Rich Howell
4bee4584dc Contributing link update (#1134)
Replaced contributing link

<!-- Thank you for submitting a pull request! Make sure to follow the
instructions to write release notes for your PR — it should only take a
minute or two:
https://github.com/actualbudget/docs#writing-good-release-notes -->
2023-06-14 20:08:25 +01:00
Matiss Janis Aboltins
05754d3e42 🐛 (nordigen) expired bank-links (#1133)
Further Nordigen fixes for expired bank-links. With the recent changes
to the router, we had broken this functionality.

<img width="488" alt="Screenshot 2023-06-14 at 09 00 21"
src="https://github.com/actualbudget/actual/assets/886567/8e7516e0-121a-46e0-9e52-24748b161173">
<img width="437" alt="Screenshot 2023-06-14 at 09 00 30"
src="https://github.com/actualbudget/actual/assets/886567/88b36549-1073-4269-b42f-1553c164316f">
2023-06-14 18:13:57 +01:00
Matiss Janis Aboltins
4f5fd6c463 🐛 (nordigen) linking an account via account page (#1128)
Fix linking via the account page. Previously it was not fully working if
the user had not set up the credentials before.



https://github.com/actualbudget/actual/assets/886567/588dc437-b53d-4616-8612-a2ef07445dc8

---------

Co-authored-by: Jed Fox <git@jedfox.com>
2023-06-14 07:38:46 +01:00
Matiss Janis Aboltins
06b2a8757e 🐛 (nordigen) perform status check only if server is online (#1127)
Small bugfix for nordigen.

Do not perform the server status check if the user is actually offline.
2023-06-13 20:47:59 +01:00
Jed Fox
0e2b317eb8 Fix sync-related errors that show up in the console when not using a server (#984)
Previously, the frontend would attempt to make real requests to
`https://not-configured/`, which of course failed. I’ve changed the
internal structure to have the lack of a server expressed as a `null`
server. A new `did-bootstrap` browser-level setting has been added to
track if the user clicked “Don’t use a server.”

Finally, I updated the auth logic for methods that call out to the
server to make them consistent and use the early return style which
reduces indentation.
2023-06-11 13:57:32 -04:00