ElectronJS upgrade
Regular change
Summary
- Current version of ElectronJS, which Umami is built on is being deprecated cf. https://www.electronjs.org/releases/stable#end-of-support-for-12xy-1600
Electron 12.x.y has reached end-of-support. As per Electron's new 8-week cadence, we are supporting the latest four versions of Electron until May 2022, with the release of Electron 19. After Electron 19 is released, we'll return to supporting the latest three major versions, as well as the alpha, beta, and nightly releases.
-
In addition to this, @remyzorg pointed out some troubles in the CI with the current version (@remyzorg , feel free to edit this and elaborate in this issue)
-
Maintaining an up to date version of ElectronJS is of the utmost importance as we've seen with #465 (closed) incident with letsencrypt certificates
Area of the system
Umami client AppBackend AppFrontend
How does this currently work?
Current version of Electron = 13.6.1
cf. https://gitlab.com/nomadic-labs/umami-wallet/umami/-/blob/master/package.json#L180
What is the desired way of working?
Target version of Electron = TBD
Version of Electron is up to date and supported.
Change Procedure
-
Change procedure been tested successfully
- Change the Umami code and dependencies so that the ElectronJS version is newer than current 12.2.
- Fix incompatibilities
- Check that the CI behaves correctly
- Perform a full test-run on all Umami features.
Rollback plan
To be decided.
Rollback plan does not really applies as long as Umami client is not released, and releasing Umami with a newer version of Electron implies that the changes have ok.
Metadata
Approvals checklist (all required)
-
Approval from Development -
Approval from Operations -
Approval from Business
@picdc (cc: @remyzorg ) Please approve this regular change on development aspects
@comeh (cc: @philippewang) Please approve this regular change on operations aspects
@SamREye Please approve this regular change on business aspects