Skip to content

[WIP] Electron 10 and other goodies #3900

Open
@jostrander

Description

I'm using this as a status tracker for my progress in upgrading the app to electron 10. I have a bit of work to do still, but currently it loads the respective player interfaces and a good majority of stuff works on Ubuntu. This list is not exhaustive and I may update it as more issues arise. I will publish a branch as soon as I fix a few more smaller issues.

To Do:

  • Refactor translation provider to use customElement since registerElement is obsolete.
  • Get electron-rebuild working in electron 10
  • Figure out all of the "global" stuff like Settings / TranslationProvider / Emitters
  • Upgrade build tooling / gulp so we can use node 12+

    Upgraded to gulp 4, node 12/14 works. Removed all the release code in favor of electron forge.

  • Remove obsolete settings that no longer apply
  • Test chrome flags for compatibility with newer version of electron such as hardware acceleration / 5.1 audio, etc.
  • Retool release packagers / tooling

    Upgraded to electron-forge. I don't have signing keys so that is untested. If the documentation is correct it should work.

    • Linux
    • Windows
    • macOS
  • Ensure all tests still work with any modifications
  • Ensure all security related dependencies are up to date
  • Set YouTube music to the primary or only player (if GPM goes EOL before this is done)
  • Test Windows / Mac / Linux for native module support.
  • Upgrade mouse-forward-back to work with newer versions of electron and Context Switching
  • Sound appears to not work intermittently, need to do root-cause analysis.
  • Settings save, but don't update the UI live currently, seems like a react issue.
  • Convert ll-keyboard-hook-win to NAPI for compatibility with electron 10. Convert to NAPI node-lowlevel-keyboard-hook-win#3

Being that this is going to be a slightly large over-haul, maybe we should upgrade to v5? I'll leave that open for discussion.

Now with code!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions