Open lunarcloud opened 4 years ago
Oh dear.
Well, I started upgrading in the the branch electron8. Tracker for issues:
[x] Node integration is now disabled by default in the renderer process. I have now enabled it in main project window when BrowserWindow
is created.
[x] API call upgraded: app.getName()
-> app.name
[x] Warning that app.allowRendererProcessReuse
will be removed and set to true
in Electron 9, so set it to true
now for testing.
[ ] Export to web fails (on mac at least, maybe other platforms.) Gives this message in console, maybe related:
objc[79531]: Class FIFinderSyncExtensionHost is implemented in both /System/Library/PrivateFrameworks/FinderKit.framework/Versions/A/FinderKit (0x7fff97c3d3d8) and /System/Library/PrivateFrameworks/FileProvider.framework/OverrideBundles/FinderSyncCollaborationFileProviderOverride.bundle/Contents/MacOS/FinderSyncCollaborationFileProviderOverride (0x116c90f50). One of the two will be used. Which one is undefined.
[ ] Test more thoroughly across all platforms in general! I've only poked it for about 30 seconds.
Any help to debug so that upgrade can be done would be appreciated!
This would also help with M1 support (though only if using electron v11 and above). With the current version, it is not possible to compile on modern Macs, as far as I can tell.
This would also help with M1 support (though only if using electron v11 and above). With the current version, it is not possible to compile on modern Macs, as far as I can tell.
Yes, before electron v11 there were no apple silicon arm64 support, no corresponding release at all. just did a run check, to migrate current codebase of inky to latest electron v25, many nuanced changes (i don't know exactly how many) and refactoring are needed, too many breaking changes happend throughout the years (not just node integration, but also the removal & replacement of remote module and etc, many practices has changed around the new sandbox model and renderer/main process communication). But it's pointless to migrate to some version in between because we might need to catch up to latest sooner or later. We should definitely keep the usage of @electron/remote as is, since it would be unfeasible to rewrite all of the logic with ipcRenderer#invoke.
https://www.electronjs.org/docs/tutorial/support#supported-versions
Electron versions 1-12 are EOL, this project uses Electron 4.
Version 7 has better support for dark mode autodetection. ( #230 ) Version 8 has the Chrome spell-checker built in. ( #40 ) This should help with further improvements / updates too.