On 2026-10-09 5:35 AM, Neal Gompa wrote:
However, we will only maintain one version of Electron


That's the most likely outcome, but Fedora is a project that distributes the work of its maintainers, so what will actually happen depends a lot on what work maintainers do.

So, let's talk about what futures are possible:

It's difficult to make very clear statements about Chromium's release schedule for a couple of reasons. First, because releases tagged in their git repo mirror don't appear to agree with the published release schedule. There are releases tagged in the 150 release series after the 152 release series was promoted to stable, which the release documentation suggests would not happen. Second, because in September, Chromium switched from a 4-week release schedule to a 2-week release schedule, and it's possible that undocumented release practices from the past are no longer relevant.

If we ignore tagged releases and use only their documentation as reference, then there are two ways to look at Chromium's release model. One is that Chromium publishes two release channels, labeled "stable" and "extended stable". Both are illustrated as rolling releases, ending the maintenance of a release series once a new release series is promoted to production. One on a two week cadence and the other on an eight week cadence. The other point of view is that Chromium has a staggered release model in which every fourth release is supported for eight weeks while the rest are supported for two weeks.

https://chromiumdash.appspot.com/releases?platform=Linux

https://chromiumdash.appspot.com/schedule

https://chromium.googlesource.com/chromium/src/+/lkgr/docs/process/release_cycle.md

https://github.com/chromium/chromium/tags

Fortunately, Electron aligns with and uses Chromium's "extended stable" release branches. Unfortunately, Electron declares a branch "supported" for 24 weeks, despite the fact that the underlying Chromium release is only maintained for 8 weeks. It's not a great security posture, but it is what it is.

https://www.electronjs.org/docs/latest/tutorial/electron-timelines

https://releases.electronjs.org/schedule

There are a couple of challenges with maintaining release parity with the upstream project (i.e. maintaining all three active branches of Electron in Fedora). One is that the Electron package is based on the Chromium package, and that package is a rolling release stream that follows the "stable" release channel. Even a single release of Electron is going to diverge from Chromium, and we don't know yet how much work it's going to be to update the Electron package's copy of the Chromium source and patches, independent of the Chromium package.

If the Electron package maintains release parity, then every 8 weeks its maintainers need to introduce a new package, deprecate an old package, update three releases of the Electron package, and make sure that all of the packages that rely on Electron have been rebuilt against an actively supported release. We'll also end up with two Electron runtimes that don't have upstream maintenance of the Chromium codebase, which is... not great.

If the Electron package rolls from release to release, then the maintainers still have to deal with diverging from the Chromium package and they still have to make sure that packages that use Electron have been rebuilt against an active release. It's possible that building Electron applications against a rolling-release Electron runtime will be more work than maintaining 3 releases of Electron, but that's not clear yet. The security posture is better here, there's fewer packages to maintain, fewer builds, and less work with new packages / deprecating packages during a release.

Neal and I have talked about creating a Chromium SIG for people who are interested in maintenance of Electron and cef, but I haven't done the initial setup yet. If you are interested, let me know so that I can ping you when it's set up.


--
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it: 
https://forge.fedoraproject.org/infra/tickets/issues/new

Reply via email to