Commit Graph

20 Commits

Author SHA1 Message Date
DJ Mountney
3324dd5fa0 Fix docker start browser error (#2304)
* Fix docker start browser error

Don't launch browser when in docker
2024-02-02 17:18:27 -08:00
Matiss Janis Aboltins
7ace8c52dd 🔧 (electron) release electron app to app store (osx) (#2182) 2024-01-09 18:54:57 +00:00
Matiss Janis Aboltins
6817c45ddc ⬆️ upgrade absurd-sql and remove patch-package (#1632) 2023-09-03 17:26:01 +01: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
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
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
Shazib Hussain
461132b95e Fix electron app (#1003)
Updates to the latest version of electron and moves the backend-frontend
communication from node-ipc to websockets. This resolves the previous
roadblock regarding `nodeIntegration` .

Done

- Remove node-ipc in favour of websockets. 
- Move file copying out of `preload.js` to avoid importing module `fs`
there
- Bump all electron pacakge versions to the latest
- Added new package for finding open ports as node-ipc is gone
- Tweaked webpack config for above changes


Partially fixes #468

Questions/ Pending:
- Literally every single test fails for me, presumably some issue with
my setup/environment.
- The websocket communication is not using TLS. I'm not sure how to
enable this, or if we even need to as its all local.
- Still need to create the CI for building/deploying but I'm not sure
where start in this regard as i have no exp with it. Presumably we will
need to point the electron auto-updater to the github releases url's. If
people are happy with this PR I will look at adding the CI before its
merged.
- In dev mode only, I have disabled TLS security becuase my docker
container's cert is not signed. I _assume_ this will be true for other
people who spin up the server on thier own hardware. Perhaps I just need
to change my cert to one from letsencrypt or something...

Notes.
I have not touched javascript in eons so my apologies if the commit
trail is a bit fragmented. I tried to keep them fairly contained and
then there is a slightly gnarly final commit fixing all the linter
issues... Please let me know if you want me to squash some commits etc.

I initially tried to move this to web workers the same way the web app
does it but this was unsuccessful. I have found no way to spin up a
worker in one place (frontend/backend) and then pass this worker to the
other. The electron ipc channels don't allow you to directly pass
objects such as workers, everything is cloned/serialised. Passing a port
number so the other end can spin up its own socket works fine.

---------

Co-authored-by: Shazib Hussain <contact@shazib.com>
Co-authored-by: Jed Fox <git@jedfox.com>
2023-05-18 19:56:48 -04:00
Jed Fox
2762495a68 Fix end-to-end testing workflow (#758) 2023-03-14 19:33:15 -04:00
Matiss Janis Aboltins
851a25a62a 🔥 removing sentry (#448) 2023-01-14 19:35:49 +00:00
Matiss Janis Aboltins
ae7378252f 🔥 removal of react-native mobile apps (#443) 2023-01-12 18:19:38 +00:00
Tom French
9b671026a7 refactor: use yarnv3 magic for updating client 2022-08-23 12:35:54 +01:00
Tom French
da62f9b5d9 refactor: move script to update client build into electron package 2022-08-23 12:34:48 +01:00
Tom French
1a4b46cb6c feat: stop sending beta releases to jlongster.com 2022-08-23 12:34:48 +01:00
Tom French
3e9cfece83 chore: update package scripts to take advantage of yarn v3 2022-08-22 22:35:07 -04:00
Tom French
86fbab2d2a ci: avoid attempting to get CSC_KEY_PASSWORD interactively in github actions 2022-06-29 13:24:34 -04:00
Tom French
91147285f0 ci: avoid duplicate linting in CI 2022-06-29 13:24:34 -04:00
Tom French
c97b378ccc fix: use bash over sh in package-browser 2022-06-29 10:31:58 -04:00
Tom French
908def3957 build: add a yarn clean script to desktop-electron 2022-06-29 10:04:10 -04:00
Tom French
c2e9227ea1 build: make use of new build script in bin/package 2022-06-29 10:04:10 -04:00
James Long
4d9fdfc590 Initial (open-source) 2022-04-28 22:44:38 -04:00