Skip to content

Conversation

Arcitec
Copy link

@Arcitec Arcitec commented Sep 7, 2025

Closes #2543

Checklist

  • Ensure your code works with manual testing.
  • New or updated public/exported symbols have accurate TSDoc documentation.
  • Linter and other CI checks pass.
  • I have licensed the changes to Element by completing the Contributor License Agreement (CLA)

@Arcitec Arcitec requested a review from a team as a code owner September 7, 2025 11:39
@Arcitec Arcitec requested a review from florianduros September 7, 2025 11:39
@github-actions github-actions bot added the Z-Community-PR Issue is solved by a community member's PR label Sep 7, 2025
@dosubot dosubot bot added the T-Defect label Sep 7, 2025
@Arcitec
Copy link
Author

Arcitec commented Sep 7, 2025

I have tested it locally on my machine and it runs perfectly after this fix.

Tested:

  • Native, local binary.
  • Flatpak.
  • Both of them finally work properly after the Electron update.

The yarn.lock is re-created with your current package.json specification exactly as seen in the pull request.

@t3chguy
Copy link
Member

t3chguy commented Sep 7, 2025

By recreating the yarn lock file You updated unrelated dependencies which now mean the linter is unhappy due to some changes in those dependencies, I suggest not doing that.

@Arcitec
Copy link
Author

Arcitec commented Sep 7, 2025

@t3chguy Hmm. What do you suggest doing then? Updating a package.json without updating yarn.lock has no effect. And the only way to update a dependency (such as Electron) is to re-create yarn.lock, since Electron itself can have newer requirements. So doing manual surgery inside yarn.lock isn't recommended either.

I can remove the yarn.lock file changes and only include the package.json change. Or do you have any other solution?

Edit: Either way, those breaking in changes the other dependencies are not good (sounds like your package.json might need to restrict the version-selector for a few more dependencies), so I'll revert the yarn.lock change and force push just the package.json file now.

@Arcitec
Copy link
Author

Arcitec commented Sep 7, 2025

Judging by the previous run log, it seems the issue was that Unicorn ("eslint-plugin-unicorn": "^56.0.0") became updated and no longer contains a unicorn/no-instanceof-builtins. It's strange that they would remove a rule without marking it as a breaking change.

https://github.com/element-hq/element-desktop/actions/runs/17528024776/job/49782843428

Edit: They still list it as a valid rule. So I have no idea why that rule cannot be found by the linter... 🤷‍♂️

@t3chguy
Copy link
Member

t3chguy commented Sep 8, 2025

Normally just using yarn add electron@version would be enough to do everything for you.

@t3chguy
Copy link
Member

t3chguy commented Sep 8, 2025

If you cannot figure it out then we can use #2545 instead

@t3chguy
Copy link
Member

t3chguy commented Sep 8, 2025

I'm not sure we can update right now anyway, as the v38 changelog says "For breaking changes inherited via Chromium, see blog post" and then there is no blog post...

image

@Arcitec
Copy link
Author

Arcitec commented Sep 8, 2025

@t3chguy Ah, I wasn't aware that yarn add can be used for conservative updates. I've always rebuilt the yarn.lock file. :')

I've done that surgical upgrade now and updated this PR. yarn lint passes.

But since the bot has now also prepared a pull request that updates sentry and a lot more dependencies, that might be a better PR if you prefer a newer sentry too.

Regarding the lack of breaking change news, I agree that it's worth waiting until Electron has written a summary of any breaking changes. I'm not seeing any errors in my test usage though, and the linked Chromium + Node changes don't seem to mention anything serious here: https://releases.electronjs.org/release/v38.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T-Defect Z-Community-PR Issue is solved by a community member's PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update Electron version to fix Linux kernel crashes caused by GPU selection bug
2 participants