emilk / emilk/egui

Repository is too tightly coupled

Open
#3,579 1 comment 3 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
30.6k
Forks
2.1k
Avg merge
1d 9h
Merged PRs (30d)
72

Description

I tried to add support of winit 0.29 to egui-winit because winit 0.29 seems to have nice improvements in handling of Waits (I expect less CPU load on waiting on Windows).

In my project, I need only egui and egui-winit because I have custom renderer on top of Vulkan.
I forked the repo with intention of changing egui-winit.

However, in process of doing so, I found out that changing egui-winit causes compilation errors in eframe. And I cannot just switch eframe to new egui-winit because it causes compilations errors because glutin requires different version of winit and eframe uses same winit objects in both egui-winit and glutin. When I updated glutin, I got new compilation errors because glutin made breaking changes too!

At this point, I am giving up on the idea of contributing to a project. I would probably just link my project to my fork of egui-winit using git dependency and would wait until somebody else does all this work of updating egui to winit 0.29.

I think, it is not a great situation so opening an issue.

Contributor guide

Open the contributing guide

Research direction

Start by examining the dependency relationships among egui-winit, eframe, glutin, and winit, focusing on the compilation errors reported when moving to winit 0.29. Reproduce the version changes in a small project if possible. Done would require a clear project-level approach that permits winit 0.29 support without incompatible shared winit objects across these components.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
18/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.